(list_processes_1): Use long format in printf, and cast argument.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
bf6c75c9
AR
12009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
2 Changes for 64-bit compile under Snow Leopard.
3
4 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
5
6 * nsfont.m (ns_char_width): Replace deprecated call (suggested by
7 Erik Charlebois).
8 (ns_findfonts, nsfont_list_family): Use long format in printf, and
9 cast argument.
10 (nsfont_open): Use ns_char_width() everywhere.
11 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where
12 appropriate.
13
14 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
15
16 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
17 where appropriate.
18
19 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
20 where appropriate.
21 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:): Use
22 stringWithUTF8String.
23 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
24
25 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip): Add
26 formal protocol mention to inheritance.
27 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
28
29 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate. Fix
30 printf format.
31 (ns_query_color): Use CGFloat where appropriate.
32 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
33 (EmacsScroller-mouseDown:) Use long format in printf, and cast
34 argument.
35
3d87f118
AR
36 * config.in (NS_HAVE_NSINTEGER): Drop.
37
9ec6f100
GM
382009-10-11 Glenn Morris <rgm@gnu.org>
39
40 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
41
5be883cd
JD
422009-10-08 Jan Djärv <jan.h.d@swipnet.se>
43
44 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
45 menu bar with a small width so it doesn't enlarge the frame.
46
d7a39b51
JB
472009-10-08 Juanma Barranquero <lekktu@gmail.com>
48
49 * fontset.c (Fset_fontset_font): Fix typos in error messages.
50
0c2b6f8e
GM
512009-10-06 Glenn Morris <rgm@gnu.org>
52
53 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
54 SOME_MACHINE_LISP (this enters indirectly via DOC).
55
e02131a2
EZ
562009-10-05 Eli Zaretskii <eliz@gnu.org>
57
58 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
59
b4744254
EZ
602009-10-04 Eli Zaretskii <eliz@gnu.org>
61
62 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
63 Doc fix.
64
dbf64827
JB
652009-10-03 Martin Rudalics <rudalics@gmx.at>
66
67 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
68
e9a0aef8
MA
692009-10-02 Michael Albinus <michael.albinus@gmx.de>
70
71 * lisp.h (Qdelete_directory_internal): Removed, because it is not
72 used anymore outside fileio.c.
73
74 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
75
64eb2b56
JB
762009-10-01 Juanma Barranquero <lekktu@gmail.com>
77
78 * lisp.h (Qdelete_directory_internal):
79 Declare, instead of Qdelete_directory.
80
81 * w32fns.c (Fsystem_move_file_to_trash): Use it.
82
9d28c33e
SM
832009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
84
85 * eval.c (Fcalled_interactively_p): Add `kind' argument.
86
9d8f3bd9
MA
872009-10-01 Michael Albinus <michael.albinus@gmx.de>
88
9d28c33e 89 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
90 Fdelete_directory. It is not a command anymore. It has no file
91 name handler.
92
9694740b
SM
932009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
94
95 * xdisp.c (get_next_display_element): Use an enum in last change.
96
748e162f
KH
972009-09-28 Kenichi Handa <handa@m17n.org>
98
9694740b 99 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
100 unibyte_display_via_language_environment in handling
101 Vnobreak_char_display.
102
17efd58d
AR
1032009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
104
105 * nsterm.h (ns_app_name): New extern variable.
106
107 * nsterm.m (ns_app_name): New variable.
108 (ns_term_init): Set and use it.
109 (ns_term_shutdown): Use it.
110
111 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
112 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
113
114 * nsfns.m (ns_set_name_iconic, ns_set_name)
115 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
116 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
117
9694740b
SM
118 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
119 Remove double-casting in client_data comparison.
31c2d412 120
3208cb35
YM
1212009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
122
123 * keyboard.c (make_lispy_event): Remember last wheel direction.
124 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
125
b7d552d6
GM
1262009-09-26 Glenn Morris <rgm@gnu.org>
127
128 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
129 internal.elc. Add term/pc-win.elc.
130 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
131 term/x-win.elc.
132 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
133 term/w32-win.elc.
134 (NS_SUPPORT): New.
135 (lisp): Add NS_SUPPORT.
136 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
137
4ff670a8
DR
1382009-09-25 David Reitter <david.reitter@gmail.com>
139
140 * nsmenu.m (EmacsMenu-clear): Recognize application menu
141 on Mac OS X 10.6+ (bug#4513).
142
feabfb6c
JB
1432009-09-24 Juanma Barranquero <lekktu@gmail.com>
144
145 * frame.c (xrdb_get_resource): Return nil for empty string resources;
146 some parts of Emacs code (like font selection) don't grok them. See
147 http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
148
de59072a
AS
1492009-09-24 Andreas Schwab <schwab@redhat.com>
150
151 * coding.c (decode_coding_iso_2022): Fix operator precedence.
152
a489517b
JB
1532009-09-24 Juanma Barranquero <lekktu@gmail.com>
154
155 * dired.c (Fdirectory_files): Fix typo in docstring.
156
0592970c
AR
1572009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
158
159 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
160 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
161 (EmacsScroller-setPosition:portion:whole:): Remove -display call
162 under GNUstep.
163 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
164
165 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
166 glyph advancement.
167
48e8a88b
AR
1682009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
169
170 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 171 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
172
173 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
174 deleted (bug #4492).
175
e14f0a78
AR
176 * nsfont.m (Vns_reg_to_script): New lisp variable.
177 (syms_of_nsfont): Declare it.
178 (ns_registry_to_script): New function.
179 (ns_get_req_script): Call it.
180 (ns_findfonts): Don't give up on non-unicode registry.
181
182 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
183
5b650faa
SM
1842009-09-20 Tom Tromey <tromey@redhat.com>
185
186 * eval.c (find_handler_clause): Make stack-trace-on-error work in
187 batch mode (bug#4228).
188
a489517b 1892009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
190
191 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 192 carefully. (Bug #4339)
0bae4e09 193
fcfe06f3
CY
1942009-09-18 Chong Yidong <cyd@stupidchicken.com>
195
d798ba87 196 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 197
31642728
AR
1982009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
199
200 * emacs.c (inhibit_x_resources): Update doc string for NS.
201 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 202 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
203
204 * nsterm.h (ns_no_defaults): Remove.
205
206 * nsterm.m (ns_no_defaults): Remove.
207 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
208 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
209 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
210 don't update the NSWindow itself.
211 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 212 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
213
214 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
215 ns_use_qd_smoothing.
216
217 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
218 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 219 (x-close-connection): Drop PSFlush() under OS X.
a489517b 220 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 221
8686ac71
JB
2222009-09-17 Juanma Barranquero <lekktu@gmail.com>
223
224 * emacs.c (inhibit_x_resources): New variable.
225 (main) [HAVE_NS]: Don't process --quick command line option.
226 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
227
228 * lisp.h (inhibit_x_resources): Declare it extern.
229
230 * w32reg.c (x_get_string_resource):
231 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
232
e227ba05
EZ
2332009-09-17 Eli Zaretskii <eliz@gnu.org>
234
235 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP): Add
236 lisp/term/internal.elc.
237
742d40e8
SM
2382009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
239
240 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
241 (bug#4461).
242
005bd5a2
DN
2432009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
244
245 * puresize.h (BASE_PURESIZE): Increase to 1290000.
246
247 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
248 (OBJECTS_MACHINE): Remove, unused.
249
f9af9719
SM
2502009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
251
252 * frame.c (x_get_resource_string): Remove unused.
253
0307c7d2
JD
2542009-09-15 Jan Djärv <jan.h.d@swipnet.se>
255
256 * xterm.c (x_new_font): Call change_frame_size before calling
257 x_set_window_size, in case frame size won't change.
258
259 * frame.c (x_set_font): Remove dead code.
260
428b13d6
SM
2612009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
262
263 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
264
5766c380
SM
2652009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
266
267 * lread.c (Fload): Don't output a message after loading an obsolete
268 package any more (done in Lisp now).
269
2fd0161b
CY
2702009-09-12 Chong Yidong <cyd@stupidchicken.com>
271
272 * fns.c (syms_of_fns): Doc fix (Bug#4227).
273
bc5e75b6
SM
2742009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
275
276 * keymap.c (Fwhere_is_internal): Use nconc2.
277
c31c985e
AM
2782009-09-11 Alan Mackenzie <acm@muc.de>
279
280 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
281 batch mode.
282
78012bd2
AS
2832009-09-11 Andreas Schwab <schwab@linux-m68k.org>
284
285 * xdisp.c (display_mode_element): Detect cycles.
286
9d889332
SM
2872009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
288
289 * keymap.c (where_is_internal): Don't erroneously return nil right after
290 filling the cache.
291 (where_is_internal_1): Fix up typo.
292
7ab5d780
GM
2932009-09-11 Glenn Morris <rgm@gnu.org>
294
295 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
296 share a common doc-string.
297
5238a749
SM
2982009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
299
66d77eda
SM
300 * keymap.c (get_keymap): Return the actual keymap symbol rather than
301 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
302
5238a749
SM
303 * keymap.c (QCadvertised_binding): New constant.
304 (syms_of_keymap): Initialize it.
305 (Fwhere_is_internal): Try and use bindings from :advertised-binding
306 if applicable.
307
19f48442
SM
3082009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
309
50d4ba39
SM
310 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
311 (parse_menu_item): Streamline since bindings are recomputed all the
312 time anyway. Don't bother checking Vdefine_key_rebound_commands any
313 more and don't support lmenu's menu-alias any more either.
314
a88a5372
SM
315 * keymap.c (where_is_internal_data): Make noindirect a boolean.
316 (where_is_internal): Strip it down to only traverse the keymaps.
317 Move the cache handling from Fwhere_is_internal to here.
318 (Fwhere_is_internal): Move the handling of remapping and the choice of
319 the best binding from where_is_internal to here.
320 Unify the cached/noncached paths, so remapping is also handled
321 correctly when the cache is used, and so the cache can be used to
322 speed up remap-handling when applicable.
323 Give preference to non-remapped bindings.
324 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
325 non-remapped bindings.
326 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
327 command remapping.
328
19f48442
SM
329 * xdisp.c (display_mode_element): Move list length limit from 50 to
330 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
331
599498c3 3322009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
333
334 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
335
f9b7b5ac
SM
3362009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
337
338 * keymap.c (where_is_internal): Filter out shadowed remappings.
339 Assume that where_is_internal returns unshadowed bindings to simplify
340 the code and get rid of the gotos. Use ASIZE.
341
04f4b72d
JD
3422009-09-04 Jan Djärv <jan.h.d@swipnet.se>
343
4da146f2
JD
344 * xterm.c (x_focus_changed): If we get a focusout and pointer
345 is invisible, make it visible.
346
04f4b72d
JD
347 * xterm.h: Remove condition for declaration of
348 x_*_window_to_frame.
349
7cef7ce3
SM
3502009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
351
352 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
353 initial terminal as well.
354
a54fa5b7
JD
3552009-09-02 Jan Djärv <jan.h.d@swipnet.se>
356
357 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 358 x_menubar_window_to_frame.
a54fa5b7
JD
359
360 * xterm.c: Remove declarations also in xterm.h
361 (XTmouse_position): Do not return valid positions
362 for clicks in the menubar and the toolbar for Gtk+.
363
364 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
365 if the widget for the event has the same top level as a frame,
366 return the frame.
367 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
368 internal windows, bug #4122.
369 (x_non_menubar_window_to_frame): Remove.
370
5a021dd0
GM
3712009-09-02 Glenn Morris <rgm@gnu.org>
372
373 * buffer.c (default-major-mode): Move most of the doc from here...
374 (major-mode): ... to here.
375
548fe2f3
NR
3762009-08-30 Nick Roberts <nickrob@snap.net.nz>
377
378 * process.c (wait_reading_process_output): Keep the descriptor
379 when pty is used by a non-child process, e.g., in I/O buffer of
380 GDB this allows inferior to be restarted.
381
e0840eef
EZ
3822009-08-29 Eli Zaretskii <eliz@gnu.org>
383
384 * xdisp.c (redisplay_internal): Remove redundant test and collapse
385 both branches into one.
386
82e98df4
SM
3872009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
388
389 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
390 (main): Use enable-multibyte-characters rather than
391 default-enable-multibyte-characters. Output a warning message when
392 running a unibyte session.
393
890617cb
YM
3942009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
395
396 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
397 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
398 (copy_data_segment): Also copy __program_vars section.
399 (copy_dyld_info) [LC_DYLD_INFO]: New function.
400 (dump_it) [LC_DYLD_INFO]: Use it.
401
402 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
403
e7adeadc
EZ
4042009-08-28 Eli Zaretskii <eliz@gnu.org>
405
406 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
407 $(SRC)/buildobj.h.
408 (buildobj.h): Renamed from $(SRC)/buildobj.h.
409 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
410 $(SRC)/buildobj.h.
411 (clean): Add buildobj.h.
412
3ed8bbdc
TZ
4132009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
414
415 * print.c (print_object): Set escapeflag to 1 when printing
416 hashtable keys and values.
417
155a6764
SM
4182009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
419
420 * lread.c (read_integer): Use doubles (and potentially return a float
421 number) as we do in string-to-number.
422 (read1): Use strtol to read integers, signal errors on strtol's
423 overflow and use floats if strtol's output is too large for
424 Elisp integers.
425
877610de
EZ
4262009-08-27 Eli Zaretskii <eliz@gnu.org>
427
428 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
429 (make-buildobj-SH): Fix last change.
430 (SRC): Move to before where it's first used.
431
ef73e7be
KH
4322009-08-27 Kenichi Handa <handa@m17n.org>
433
550c8289
KH
434 * process.c (send_process): Use encode_coding_object instead of
435 encode_coding_string to perform eol-conversion even if the string
436 is unibyte.
437
60afa08d
KH
438 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
439 character.
440
ef73e7be 441 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 442 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 443
7b3a82d7
DN
4442009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
445
5654bf63
DN
446 * callproc.c (Fcall_process): Remove always true #if.
447
7b3a82d7
DN
448 * lisp.h: Replace #if 0 code for checking with text pointing to
449 the --enable-checking configure flag.
450
451 * emacs.c (main): Mention the --enable-profiling configure flag
452 instead of using CFLAGS.
453
878bde49
KR
4542009-08-26 Ken Raeburn <raeburn@raeburn.org>
455
456 * Makefile.in (buildobj.h): New target.
457 (doc.o): Depend on it.
458 (temacs${EXEEXT}): Don't generate buildobj.lst.
459 (mostlyclean): Delete buildobj.h, not buildobj.lst.
460 * makefile.w32-in ($(SRC)/buildobj.h): New target.
461 ($(BLD)/doc.$(O)): Depend on it.
462 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
463 provided by Eli Zaretskii.)
464 ($(TEMACS)): Don't generate buildobj.lst.
465 * doc.c: Include buildobj.h.
466 (buildobj): New static variable.
467 (Fsnarf_documentation): Use it, instead of opening and reading
468 buildobj.lst.
469
1574224c
MA
4702009-08-25 Michael Albinus <michael.albinus@gmx.de>
471
472 * dbusbind.c (Fdbus_call_method)
473 (Fdbus_call_method_asynchronously): Use English numeric format for
474 timeout values in doc string.
475
d9da2f45
KH
4762009-08-25 Kenichi Handa <handa@m17n.org>
477
ef73e7be
KH
478 * alloc.c (mark_char_table): New function.
479 (mark_object): Use mark_char_table for a char-table.
480
d9da2f45
KH
481 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
482 (CHAR_TABLE_REF): Use it.
483
c8edcc01
KR
4842009-08-23 Ken Raeburn <raeburn@raeburn.org>
485
486 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
487 before invoking the newly build emacs to check for load-path
488 shadowing.
489
7763401b
GM
4902009-08-22 Glenn Morris <rgm@gnu.org>
491
492 * Makefile.in (bootstrap_exe): New variable.
493 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
494 Use ${bootstrap_exe}.
495
729eadda
EZ
4962009-08-22 Eli Zaretskii <eliz@gnu.org>
497
498 * coding.h (encode_coding_string): Don't encode unibyte strings.
499 (Bug#4047)
500
eb4c6ace
MA
5012009-08-22 Michael Albinus <michael.albinus@gmx.de>
502
503 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
504
505 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
506 intended as hotfix only.
507 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
508
36e34d1b
AR
5092009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
510
511 * nsterm.m (ns_get_color): Update documentation properly for last
512 change, and clean up loose ends in the code left by it. Fix
513 longstanding bug with 16-bit hex parsing, and add support for
514 yet another X11 format (rgb:r/g/b) for compatibility.
515 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
516 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
517
f983eb8a
SM
5182009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
519
520 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
521
3f56d3c6
MA
5222009-08-20 Michael Albinus <michael.albinus@gmx.de>
523
524 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
525 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
526 (xd_initialize, xd_pending_messages): Check, whether
527 $DBUS_SESSION_BUS_ADDRESS is set.
528
fb641d68
YM
5292009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
530
531 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
532
533 * nsterm.m (ns_get_color): Remove incompatible color formats again.
534
cf59a374
GM
5352009-08-20 Glenn Morris <rgm@gnu.org>
536
537 * emacs.c (system-type): Doc fix.
538
1373f3be
SM
5392009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
540
541 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
542 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
543
058ed861
MA
5442009-08-18 Michael Albinus <michael.albinus@gmx.de>
545
1373f3be
SM
546 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
547 New functions.
058ed861
MA
548 (xd_initialize): Revert change from 2009-08-16.
549
563a866e 5502009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
551
552 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 553 font-group vector, return nil.
5fc05db0 554
e42bdf01
CY
5552009-08-17 Chong Yidong <cyd@stupidchicken.com>
556
557 * process.c (status_notify): Don't perform redisplay.
558 (Fdelete_process, list_processes_1, process_send_signal):
559 Expliticly perform redisplay.
560 (wait_reading_process_output): Always check process status, but
561 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
562
4230ab74
KR
5632009-08-17 Ken Raeburn <raeburn@raeburn.org>
564
1373f3be 565 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
566 (XFLOAT_INIT): New macro for storing a float value.
567 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
568 * fns.c (sxhash): Copy out the value of a float in order to
569 examine its bytes.
570 * dbusbind.c (xd_append_arg): Likewise.
571
4230ab74
KR
572 * emacs.c (main): Don't call syms_of_data twice.
573
a0645cdd
MA
5742009-08-16 Michael Albinus <michael.albinus@gmx.de>
575
576 * dbusbind.c (xd_initialize): Add connection file descriptor to
577 input_wait_mask, in order to let select() detect, whether a new
578 message has been arrived.
ca4f31ea 579 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 580
485db0ba
MA
5812009-08-15 Michael Albinus <michael.albinus@gmx.de>
582
1373f3be
SM
583 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
584 New functions.
485db0ba
MA
585
586 * lisp.h (xd_pending_messages): Declare.
587
588 * keyboard.c (readable_events): Call xd_pending_messages.
589
b5b98ff4
CY
5902009-08-15 Chong Yidong <cyd@stupidchicken.com>
591
1373f3be 592 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 593
f8354c6e
CY
594 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
595
b5b98ff4
CY
596 * buffer.c (set_buffer_internal_1)
597 (swap_out_buffer_local_variables): Check for unbound local
598 variables (Bug#4138).
599
8b9fc636
EZ
6002009-08-14 Eli Zaretskii <eliz@gnu.org>
601
602 * process.c (create_pty): Fix last change.
603
ce959360
CY
6042009-08-13 Chong Yidong <cyd@stupidchicken.com>
605
606 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
607 (xbm_load_image): Caller changed.
64b807c9 608 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 609
c7baf7e9
NR
6102009-08-13 Nick Roberts <nickrob@snap.net.nz>
611
612 * process.c (create_pty): New function.
613 (Fstart_process): Use it to allow Emacs to just associate a pty
614 with the buffer. See associated change in gdb-mi.el.
615 (list_processes_1): Deal with no program name.
616 (start_process_unwind): Use pid == -2 to mean no process.
617
1ac9108a
SM
6182009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
619
620 * cmds.c (nonundocount): New global variable.
621 (keys_of_cmds): Initialize it.
622 (Fself_insert_command): Use it to combine upto 20 sequential chars
623 into a single undo entry, just like the Qself_insert_command code in
624 keyboard.c does.
625 Call frame_make_pointer_invisible, also like the Qself_insert_command
626 code in keyboard.c does.
627 * keyboard.c (command_loop_1): Use the new global nonundocount rather
628 than its own local replacement for it.
629
e267324c
KR
6302009-08-10 Ken Raeburn <raeburn@raeburn.org>
631
1ac9108a 632 * fns.c (concat): Don't re-set string length to its current value.
77437343 633
1ac9108a
SM
634 * coding.h (decode_coding_string, encode_coding_string):
635 Use SBYTES macro.
f0bed503 636
1ac9108a 637 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
638 (doprnt): Merge with doprnt1, discarding lispstrings code.
639 * lisp.h (doprnt_lisp): Don't declare.
640
416e006d
JL
6412009-08-07 Juri Linkov <juri@jurta.org>
642
643 * puresize.h (BASE_PURESIZE): Increase to 1270000.
644
6f7d5780
DN
6452009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
646
647 * print.c (syms_of_print): Undo previous change.
648
f19a0f5b
TZ
6492009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
650
651 * lread.c (read1, syms_of_lread): Read hashtables back from the
652 readable format.
653
654 * print.c (print_preprocess, print_object): Print hashtables fully
655 and readably.
656 (syms_of_print): Provide 'hashtable-print-readable.
657
b9173dc2
AR
6582009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
659
660 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
661 no family set.
662 (nsfont_open): Handle case when entity has no family.
663
1586503c
AR
6642009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
665
666 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
667 element, not a list, for match case.
668
087048cd
KH
6692009-07-28 Kenichi Handa <handa@m17n.org>
670
671 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
672 rigidly.
673
674 * xfont.c (xfont_list_pattern): Don't ignore the return value of
675 font_parse_xlfd. Check font properties more rigidly.
676
780c2506
DN
6772009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
678
31fd7c5c
JB
679 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
680 bsd-common.h.
780c2506 681
a8c0cc18
KH
6822009-07-27 Kenichi Handa <handa@m17n.org>
683
684 * xfaces.c (face_with_height): Call font_clear_prop.
685
4fbe2306
CY
6862009-07-26 Chong Yidong <cyd@stupidchicken.com>
687
111d9af3
CY
688 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
689
690 * xterm.c (x_term_init): Use Qx.
691
4fbe2306
CY
692 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
693
1ac9108a 694 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
695 (ns_get_color): Revert 2009-07-16 change.
696
beb0b7f9
EZ
6972009-07-25 Eli Zaretskii <eliz@gnu.org>
698
699 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 700 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 701
2baf5e76
KR
7022009-07-25 Ken Raeburn <raeburn@raeburn.org>
703
1ac9108a
SM
704 * coding.h (decode_coding_string, encode_coding_string):
705 Use SCHARS macro.
8890e5f5 706
2baf5e76 707 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 708 (load_depth): Delete.
2baf5e76
KR
709 (Qload_in_progress): New variable.
710 (load_unwind): Don't reference load_depth or load_in_progress.
711 (Fload): Likewise; specbind Qload_in_progress instead.
712 (init_lread): Don't initialize load_depth.
713 (syms_of_lread): Initialize and protect Qload_in_progress.
714
1395c6f5
AR
7152009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
716
717 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
718
4e2f36cf
AR
7192009-07-23 Yavor Doganov <yavor@gnu.org>
720
721 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
722
5dd9a6f7
AR
7232009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
724
725 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
726 Bugs 3792, 3720, 2402.
727 (ns_lookup_indexed_color): Check for bad index.
728 (ns_index_color): Init unused slot to 0.
729 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
730 Bug 3714, possibly 3082.
5dd9a6f7 731
c902b920
JR
7322009-07-22 Jason Rumney <jasonr@gnu.org>
733
1ac9108a
SM
734 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
735 Position IME window at cursor (Bug#2570).
c902b920
JR
736 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
737 (globals_of_w32fns): Dynamically load functions required above.
738
739 * w32term.c (w32_draw_window_cursor): Send message to reposition
740 any IME window.
741
090101cf
CY
7422009-07-21 Chong Yidong <cyd@stupidchicken.com>
743
744 * fileio.c: Revert 2009-07-16 changes.
745 (Vauto_save_include_big_deletions): New variable.
746 (Fdo_auto_save): Disable auto-save only if
747 auto-save-include-big-deletions is nil.
748
e6583e3d
CY
7492009-07-21 Chong Yidong <cyd@stupidchicken.com>
750
751 * xdisp.c (move_it_to): For continued lines ending in a tab, take
752 the overflowed pixels into account (Bug#3879).
753
ece435a5
KR
7542009-07-21 Ken Raeburn <raeburn@raeburn.org>
755
756 * lread.c (load_depth): New variable.
757 (Fload, load_unwind, init_lread): Set it to the load recursion
758 depth; set load_in_progress as a simple boolean based on the
759 current load_depth. (Bug#3892)
760
40b2d973
AR
7612009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
762
763 * nsfont.m (ns_has_attribute): Remove.
764 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
765
10be7e0d
JL
7662009-07-18 Juri Linkov <juri@jurta.org>
767
768 * process.c (Fset_process_query_on_exit_flag): Mention killing
769 a buffer in docstring.
770
fa055055
KH
7712009-07-17 Kenichi Handa <handa@m17n.org>
772
773 * casetab.c (shuffle): Fix the logic of setting up the cycle.
774
042f7b69
YM
7752009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
776
777 * nsfns.m (Fns_set_alpha): Remove function.
778 (syms_of_nsfns): Don't defsubr it.
779
780 * nsterm.m (ns_get_color): Remove incompatible color formats.
781 (ns_color_to_lisp): Generate #rrggbb color format string.
782
4be941e3
RS
7832009-07-16 Richard Stallman <rms@gnu.org>
784
785 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
786 (Fset_buffer_auto_saved): Handle save_length = -2.
787
4e6b227d
CY
7882009-07-16 Chong Yidong <cyd@stupidchicken.com>
789
790 * xterm.c (Qx_gtk_map_stock): New var.
791
792 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
793 of calling intern each time.
794
a1856973
YM
7952009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
796
797 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
798 does tiling.
799
800 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
801
497e54d8
KH
8022009-07-14 Kenichi Handa <handa@m17n.org>
803
72d36834
KH
804 * font.c (font_vconcat_entity_vectors): New function.
805 (struct font_sort_data): New member font_driver_preference.
806 (font_compare): Check font_driver_preference.
807 (font_sort_entities): The format of the first argument changed.
808 (font_delete_unmatched): Likewise.
809 (font_list_entities): The return type changed.
810 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
811 (font_find_for_lface): Adjuste for the above changes.
812 Don't suppress the checking of C even if the repertory supports it.
813 (Flist_fonts): Adjust for the above changes.
72d36834 814
1ac9108a
SM
815 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
816 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
817 Reject a font who has adstyle property that is different from a
818 langname derived from registry property.
1ac9108a 819 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 820
b6046155
EZ
8212009-07-13 Eli Zaretskii <eliz@gnu.org>
822
823 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
824 local copy of dirfilename.
825
fb6b6049
KH
8262009-07-13 Kenichi Handa <handa@m17n.org>
827
e2402a5e
KH
828 * chartab.c (sub_char_table_ref_and_range): Fix the range check
829 against max_char.
830
fb6b6049
KH
831 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
832 calling XSYMBOL (sym).
833
65156807
EZ
8342009-07-11 Eli Zaretskii <eliz@gnu.org>
835
1ac9108a
SM
836 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
837 New function.
838 (directory_files_internal) [WINDOWSNT]:
839 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
840 the filesystem of the directory is fast or slow.
841
842 * w32.c (logon_network_drive): Don't assume PATH is an absolute
843 file name.
844 (is_slow_fs): New function.
845 (stat): Use it to determine whether to issue more system calls to
846 get accurate file attributes, when w32-get-true-file-attributes is
847 `local'.
848
e0ab5fcf
JD
8492009-07-10 Jan Djärv <jan.h.d@swipnet.se>
850
851 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 852 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
853 parameter font-parameter as default to the font dialog.
854
784ceded
KH
8552009-07-10 Kenichi Handa <handa@m17n.org>
856
857 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
858
fb8edc0b
EZ
8592009-07-09 Eli Zaretskii <eliz@gnu.org>
860
1ac9108a 861 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 862
fb8edc0b
EZ
863 * w32.c (stat): Treat UNC file names as residing on remote
864 drives. (Bug#3542)
865
635c75b1
KH
8662009-07-09 Kenichi Handa <handa@m17n.org>
867
868 * fontset.c (fontset_find_font): Fix previous change.
869
c1d5ce94
MA
8702009-07-08 Michael Albinus <michael.albinus@gmx.de>
871
872 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
873 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
874 error flag.
875
edb61b39
KH
8762009-07-08 Kenichi Handa <handa@m17n.org>
877
374bf7e4
KH
878 * fontset.c (fontset_find_font): Fix the logic of handling
879 charset_matched.
880 (font_for_char): Delete unused var.
881 (generate_ascii_font_name): Delete it.
882
edb61b39
KH
883 * coding.h (JIS_TO_SJIS2): Fix the code range check.
884
885 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
886 (encode_coding_sjis): Fix the code range check.
887
0f3f018c
CY
8882009-07-07 Chong Yidong <cyd@stupidchicken.com>
889
890 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
891 (Fexpand_file_name): Copy string data properly (Bug#3772).
892
fcaf6f3a
JD
8932009-07-07 Jan Djärv <jan.h.d@swipnet.se>
894
895 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
896 first MapNotify.
897
6809ca75
KH
8982009-07-07 Kenichi Handa <handa@m17n.org>
899
900 * character.h (unibyte_has_multibyte_table): Delete extern.
901 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
902
903 * charset.c (Fset_charset_priority): Update charset_unibyte.
904 (syms_of_charset): Initialize charset_unibyte.
905
906 * character.c (unibyte_has_multibyte_table): Delete it.
907 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
908 charset_unibyte.
909 (multibyte_char_to_unibyte_safe): Likewise.
910 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
911
1ac9108a 912 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
913 (x_produce_glyphs): Likewise.
914
915 * .gdbinit (xcharset): Fix the treating $arg0.
916
ad9e2d54
EZ
9172009-07-04 Eli Zaretskii <eliz@gnu.org>
918
919 Emulation of `getloadavg' on MS-Windows.
920 * w32.c: Include float.h
921 (g_b_init_get_native_system_info, g_b_init_get_system_times)
922 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
923 (get_native_system_info, get_system_times): New functions.
924 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
925 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
926 (globals_of_w32): Initialize g_b_init_get_native_system_info,
927 g_b_init_get_system_times, and num_of_processors.
928
0a3472c7
JR
9292009-07-03 Jason Rumney <jasonr@gnu.org>
930
931 * w32term.c (w32_initialize): Use standard types.
932
80904120
EZ
9332009-07-03 Eli Zaretskii <eliz@gnu.org>
934
935 * dired.c (Ffile_attributes): Decode user and group names by the
936 locale's encoding. (Bug#3443)
937
6978862d
DN
9382009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
939
f8d23104
DN
940 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
941 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
942
943 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
944
945 * term.c (init_tty): Remove spurious #ifdef.
946
6978862d
DN
947 * m/mips.h: Mention this file is also used for netbsd.
948 * m/pmax.h: Remove file.
949
e044e4fc
JD
9502009-07-03 Jan Djärv <jan.h.d@swipnet.se>
951
952 * xterm.h (struct x_display_info): Add invisible_cursor.
953 (struct x_output): Add current_cursor.
954
955 * xterm.c (XTtoggle_invisible_pointer): New function.
956 (x_define_frame_cursor): Don't define cursor if invisible or the
957 same as before. Set current_cursor.
958 (x_create_terminal): Set toggle_invisible_pointer_hook.
959
960 * xfns.c (make_invisible_cursor): New function.
961 (x_set_mouse_color): Call make_invisible_cursor.
962 Set current_cursor.
963 (x_window): Set current_cursor.
964
965 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
966
967 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
968 inserting a character.
969 (read_avail_input): Call frame_make_pointer_visible.
970
971 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
972 (frame_make_pointer_invisible, frame_make_pointer_visible):
973 New functions.
e044e4fc
JD
974 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
975
976 * frame.h: Declare frame_make_pointer_invisible and
977 frame_make_pointer_visible.
978 (struct frame): Add pointer_invisible.
979
574c8efa
JD
9802009-07-02 Jan Djärv <jan.h.d@swipnet.se>
981
7b507248
JD
982 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
983 frame isn't visible.
984 (xg_frame_resized): If width/height is -1, get size of window
985 from X server.
986
987 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
988 for MapNotify.
989
835bdaa7 990 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 991 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 992 (flush_and_sync): Reintroduce.
574c8efa 993
3f1c6666 9942009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 995
31fd7c5c 996 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
997
998 * xterm.c (x_handle_net_wm_state): Also look for sticky.
999 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1000
1001 * frame.h: Declare Qsticky.
1002
cad9ef74
JD
1003 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1004
1005 * nsfns.m (ns_frame_parm_handlers): Ditto.
1006
1007 * frame.c: Declare Qsticky.
1008 (frame_parms): Add sticky.
1009
1010 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1011
1012 * xterm.h: Declare x_set_sticky.
1013
1014 * xterm.c (x_set_sticky): New function.
1015
69b16610
JD
1016 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1017 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1018 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1019
1020 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1021
1022 * frame.c: Qmaximized is new.
1023 (x_set_frame_parameters): Do not handle fullscreen specially.
1024 Only set width and height if explicitly set.
1025 (x_set_fullscreen): Handle Qmaximized.
1026 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1027 (syms_of_frame): Initialize Qmaximized.
1028
1ac9108a
SM
1029 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1030 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1031
1032 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1033 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1034 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1035 set gravity to NorthWestGravity when USE_GTK.
1036 (set_wm_state): New function.
31fd7c5c 1037 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1038 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1039 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1040 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1041 to x_real_positions and x_fullscreen_adjust.
1042
1043 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1044 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1045 flush_and_sync.
1046 (xg_height_changed): New function.
1047 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1048 and gtk_window_set_policy. Set frame gravity after parsing the
1049 geometry string.
3f1c6666
JD
1050 (xg_update_frame_menubar, free_frame_menubar)
1051 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1052 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1053 Remove calls to xg_frame_set_char_size.
1054
fd503d99
KH
10552009-07-01 Kenichi Handa <handa@m17n.org>
1056
1057 * keyboard.c (decode_keyboard_code): New function.
1058 (tty_read_avail_input): Decode the input bytes if necessary.
1059
1ac9108a
SM
1060 * coding.c (setup_coding_system):
1061 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1062 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1063 use Qno_conversion.
1064
24ed93fb
YM
10652009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1066
1067 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1068
99061dfc
CY
10692009-06-30 Chong Yidong <cyd@stupidchicken.com>
1070
1ac9108a 1071 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1072
ff90fbde
JR
10732009-06-30 Jason Rumney <jasonr@gnu.org>
1074
1075 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1076 is already loaded.
1077 Set user model ID if supported (bug#1849).
1078
5f445726
JM
10792009-06-29 Jim Meyering <meyering@redhat.com>
1080
1081 Remove useless if-before-xfree test.
1082 * nsfont.m (nsfont_close): Remove useless test.
1083 * term.c (delete_tty): Likewise.
1084 * w32.c (system_process_attributes): Likewise.
1085 * w32font.c (w32font_close): Likewise.
1086 * xfaces.c (x_free_gc): Likewise.
1087 * xselect.c (buffer): Likewise.
1088
b9607587
AS
10892009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1090
1091 * process.c (send_process): Keep decoded string in a local
1092 variable and protect it from GC. (Bug#3521)
1093
89ba96f4
EZ
10942009-06-28 Eli Zaretskii <eliz@gnu.org>
1095
1096 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1097 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1098
098a1589
CY
10992009-06-28 Chong Yidong <cyd@stupidchicken.com>
1100
485422be
CY
1101 * xdisp.c (start_display, handle_face_prop)
1102 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1103 (redisplay_window, try_window_id, produce_image_glyph):
1104 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1105
098a1589
CY
1106 * xterm.c (x_update_window_begin, x_new_focus_frame)
1107 (x_scroll_bar_handle_click, handle_one_xevent)
1108 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1109 (x_make_frame_visible, x_make_frame_invisible)
1110 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1111 code chunks that are now obsolete.
1112
78c38319
MA
11132009-06-28 Michael Albinus <michael.albinus@gmx.de>
1114
1115 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1116 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1117 for hours, when optimzation is enabled.
1118 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1119 (xd_read_message): Make them static.
1120
4189ed40
CY
11212009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1122
1123 * term.c (turn_on_face): Allow simultaneously bold and dim
1124 terminal faces (Bug#3530).
1125
cd9b5e16
CY
11262009-06-27 Chong Yidong <cyd@stupidchicken.com>
1127
4e23bedb
CY
1128 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1129
cd9b5e16
CY
1130 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1131 truncation glyphs (Bug#3686).
1132
07cc3c35
GM
11332009-06-27 Glenn Morris <rgm@gnu.org>
1134
1135 * m/pmax.h: Restore file, with only netbsd portions.
1136
31fd7c5c 11372009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1138
cd9b5e16 1139 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1140
42d4a64f
KH
11412009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1142
1143 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1144 the arg FORCE_SYMBOL.
1145
930fe55b 11462009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1147
1148 * fontset.c (fontset_find_font): When a usable rfont_def is found
1149 in a fallback font-group, make it the first element of the group.
1150
57ebc3fd
CY
11512009-06-24 Chong Yidong <cyd@stupidchicken.com>
1152
1153 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1154
f084f942
KH
11552009-06-24 Kenichi Handa <handa@m17n.org>
1156
1157 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1158 set for C.
1159 (fontset_font): Record the availability of a font for C both in
1160 the realized fontsets of the current one and the default one.
1161
2f686c87
DN
11622009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1163
1164 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1165 conditional, it is always defined on AIX.
1166
666e158e
MB
11672009-06-23 Miles Bader <miles@gnu.org>
1168
1169 * window.c (Vrecenter_redisplay): New variable.
1170 (syms_of_window): Initialize it.
1171 (Qtty): New extern declaration.
1172 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1173
c6da7cd2
JM
11742009-06-23 Jim Meyering <meyering@redhat.com>
1175
1ac9108a
SM
1176 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1177 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1178 pointer dereferences are guaranteed to be valid.
c6da7cd2 1179
678dca3d
KH
11802009-06-23 Kenichi Handa <handa@m17n.org>
1181
74d75424
KH
1182 * emacs.c (main): Call init_font ().
1183
1184 * font.h (Vfont_log): Extern it.
1185 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1186
1187 * font.c (font_sort_entities, font_list_entities)
1188 (font_matching_entity, font_open_entity)
1189 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1190 (Vfont_log): Delete static.
1191 (font_log_env_checked): Delete this variable.
1192 (font_add_log): Don't check font_log_env_checked.
1193 (font_deferred_log): Check Vfont_log.
1194 (init_font): New function.
1195
678dca3d
KH
1196 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1197
1198 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1199
1200 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1201
1202 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1203
1204 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1205 (face_for_char): Don't call font_deferred_log here.
1206 (font_for_char): Likewise.
1207
8a668709
CY
12082009-06-22 Chong Yidong <cyd@stupidchicken.com>
1209
9a01ee33
CY
1210 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1211 rather than its background_width for drawing the overline and
1212 underline (Bug#489).
1213
1214 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1215 rather than its background_width for drawing the overline and
1216 underline (Bug#489).
ec7c9926
CY
1217 (xg_default_icon_file): New variable.
1218 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1219 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1220
8a668709
CY
1221 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1222 (load_overlay_strings): Remove externs.
1223 (fast_find_position): Function deleted.
1224 (mouse_face_from_buffer_pos): New function, based on
1225 fast_find_position. Correctly handle before-strings,
1226 display-strings, and after-strings (Bug#1220).
1227 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1228
4d4c02d8
CY
12292009-06-21 Chong Yidong <cyd@stupidchicken.com>
1230
1ac9108a 1231 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1232 (move_it_in_display_line_to, move_it_in_display_line_to)
1233 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1234
70243478
CY
12352009-06-21 Chong Yidong <cyd@stupidchicken.com>
1236
1237 * Branch for 23.1.
1238
13087e59
JR
12392009-06-21 Jason Rumney <jasonr@gnu.org>
1240
1241 * w32term.c (keyboard_codepage): New static variable.
1242 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1243 (w32_read_socket) [WM_CHAR]: Use it to decode character
1244 input (bug#3237).
1245 (w32_initialize): Initialize it.
1246 (codepage_for_locale): New function.
1247
4735b74e
KR
12482009-06-20 Ken Raeburn <raeburn@raeburn.org>
1249
1250 * process.c (status_message): Pass Faset index argument as a lisp
1251 object, so as to work with USE_LISP_UNION_TYPE.
1252
0e727afa
YM
12532009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1254
1255 * coding.c (Ffind_coding_systems_region_internal):
1256 Cache checked characters.
1257
cf299835
KH
12582009-06-18 Kenichi Handa <handa@m17n.org>
1259
1ac9108a 1260 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 1261
90f20d94
AS
12622009-06-18 Andreas Schwab <aschwab@redhat.com>
1263
1264 * xdisp.c (redisplay_internal): Check that the frame is still
1265 live after redisplay of its windows.
1266 (redisplay_windows): Check that the window is still live.
1267
7f1faf1c
KH
12682009-06-17 Andreas Schwab <schwab@linux-m68k.org>
1269
1270 * coding.c (detect_coding_utf_16): Fix previous change.
1271
cc13543e
KH
12722009-06-16 Kenichi Handa <handa@m17n.org>
1273
1274 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
1275 UTF-16 by checking the dispersion of Eth and Oth bytes.
1276
977b85f4
AS
12772009-06-15 Andreas Schwab <schwab@linux-m68k.org>
1278
1279 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
1280
66bd43d1
KH
12812009-06-15 Kenichi Handa <handa@m17n.org>
1282
1283 * process.c (status_message): Fix previous change. Be sure to
1284 decode a localized string.
1285
cb5ca9c5
YM
12862009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1287
1288 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
1289 add comment explaining why.
1290
ec7709ba 12912009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 1292
ec7709ba 1293 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 1294
4b7f335c
AR
12952009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
1296
1297 * nsfont.m (ns_attribute_value): Remove.
1298 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
1299 (ns_has_attribute): Shrink the normal range.
1300 (ns_findfonts): Don't worry about requested spec in determining
1301 need for synthItal.
e41820ee 1302 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 1303
73b26103
SZ
13042009-06-14 Seiji Zenitani <zenitani@mac.com>
1305
1306 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
1307
5753e4da
KH
13082009-06-11 Kenichi Handa <handa@m17n.org>
1309
1310 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1311 overhang for the static composition case.
1312
3561b671
KH
13132009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1314
5753e4da
KH
1315 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1316 overhang for the automatic composition case.
1317
3561b671
KH
1318 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
1319 composition case.
1320
852bbd41
CY
13212009-06-10 Chong Yidong <cyd@stupidchicken.com>
1322
1323 * xdisp.c (get_next_display_element): When handling wrap-prefix
1324 and line-prefix, treat \n as a control character (bug#3502).
1325
9903d1e6
KH
13262009-06-10 Kenichi Handa <handa@m17n.org>
1327
1328 * font.c (font_parse_family_registry): Fix for one-char foundry.
1329 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
1330
0bcbaaaa
CY
13312009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
1332
1333 * process.c (status_message): Fix handling of multibyte signal
1334 string (Bug#3499).
1335
40aa3f13
JM
13362009-06-09 Jim Meyering <meyering@redhat.com>
1337
1f80c7e2
CY
1338 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1339 color name is missing.
40aa3f13 1340
72d51285
KH
13412009-06-09 Kenichi Handa <handa@m17n.org>
1342
1343 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1344 FROM-CODE and TO-CODE are codepoints of CHARSET.
1345
c1d04d84
AR
13462009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1347
1348 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1349
13502009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1351
1352 Changes to support :script/:lang/:otf in NS font driver.
1353 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1354 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1355 indicate not part of font driver interface, and change callers.
1356 (ns_get_family): Remove pointless null check.
1357 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1358 ns_spec_to_descriptor, ns_descriptor_to_entity.
1359 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1360 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1361 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1362 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1363 (ns_get_req_script, ns_accumulate_script_ranges)
1364 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1365 New functions.
1366 (nsfont_list, nsfont_match): Use ns_findfonts.
1367 (nsfont_open): Use font descriptor instead of traits.
1368 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1369 (dump_glyphstring): Rename to ns_dump_glyphstring.
1370
c7eb9816
AR
1371 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1372
c1d04d84
AR
1373 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1374
1375 * fontset.c (fontset_from_font): Remove NS-specific code.
1376
ec7709ba 13772009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1378
1379 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1380 nonactive windows.
1381
31fd7c5c 13822009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1383
1ac9108a 1384 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1385
68852c13 13862009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1387
1388 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1389
6756cd1d
CY
13902009-06-07 Chong Yidong <cyd@stupidchicken.com>
1391
1392 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1393 account for the overflowing of newlines into the last glyph on the
1394 display line (Bug#3482).
1395
28bf482a
DR
13962009-06-05 David Reitter <david.reitter@gmail.com>
1397
ec7709ba
JB
1398 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1399 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1400 Fns_selection_exists_p, Fns_selection_owner_p.
1401
fdb55376
JR
14022009-06-03 Jason Rumney <jasonr@gnu.org>
1403
1404 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1405 available. (Bug#3379)
1406
05129fbe
KH
14072009-05-29 Kenichi Handa <handa@m17n.org>
1408
1ac9108a
SM
1409 * coding.c (get_translation_table):
1410 Check Venable_character_translation.
05129fbe 1411
ec7709ba 14122009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1413
ec7709ba
JB
1414 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1415 (x_make_frame_visible): Move frame to front rather than calling
15891144 1416 ns_raise_frame().
ec7709ba 1417 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1418 isn't key window.
ec7709ba 1419 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1420 drawRect may be called by NSView even if the frame is hidden.
1421
ec7709ba
JB
1422 * nsfns.m (Fx_create_frame): Follow other ports in
1423 determining visibility; default to t. Ensure async_visible is set.
15891144 1424
21f73755
EZ
14252009-05-23 Eli Zaretskii <eliz@gnu.org>
1426
1427 * dired.c (Ffile_attributes): Doc fix.
1428
34001e41
CY
14292009-05-22 Chong Yidong <cyd@stupidchicken.com>
1430
1431 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1432
46306a17
SM
14332009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1434
1435 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1436 and xfont_scratch_props.
1437 (syms_of_xfont): Do it here instead.
1438 (xfont_find_ccl_program): Delete, unused.
1439 (xfont_open): Delete unused var `i'.
1440
ef6e0694
KH
14412009-05-21 Kenichi Handa <handa@m17n.org>
1442
1443 * fontset.c (Qlatin): Don't make it static.
1444
46306a17
SM
1445 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1446 New functions.
ef6e0694
KH
1447 (xfont_scripts_cache, xfont_scratch_props): New variables.
1448 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1449 (xfont_list_pattern): Argument changed. Callers changed.
1450 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1451 (xfont_list): Don't reject a font spec with :script property.
1452 (xfont_has_char): Fix setting of encoding.
1453 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1454 xfont_scratch_props.
1455
14562009-05-19 Kenichi Handa <handa@m17n.org>
1457
46306a17 1458 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1459 Callers changed.
1460
14612009-05-18 Kenichi Handa <handa@m17n.org>
1462
1463 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1464
ac71ced7
SM
14652009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1466
1467 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1468 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1469
1c6d1051
YM
14702009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1471
1472 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1473 (x_delete_terminal): Dissociate resource database from display and
1474 then call XrmDestroyDatabase before closing display.
1475
9b9b779c
AR
14762009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1477
1478 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1479 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1480 whether selected frame is viable before raising it (based on patch
1481 by David Reitter), and improve commentary.
1482 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1483
cccd42d5
KH
14842009-05-15 Kenichi Handa <handa@m17n.org>
1485
1486 * font.c (Ffont_spec): Check arguments.
1487
337fbd17
CY
14882009-05-14 Chong Yidong <cyd@stupidchicken.com>
1489
1490 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1491 weight when testing attributes (Bug#3282).
1492
47a6002f
JD
14932009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1494
1495 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1496 what we expect to get in the next ConfigureNotify event.
1497
9cb363db
YM
1498 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1499 before Xft one (Bug#1696).
1500
b9126609
CY
15012009-05-07 David Reitter <david.reitter@gmail.com>
1502
1503 * nsfns.m (Fx_display_planes): Compute bitplanes using
1504 NSBitsPerPixelFromDepth (Bug#3207).
1505
27a69fd9
CY
15062009-05-10 Chong Yidong <cyd@stupidchicken.com>
1507
1508 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1509
00f37552
TTN
15102009-05-10 Ulrich Mueller <ulm@gentoo.org>
1511
1512 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1513
2d82a920
DR
15142009-05-07 David Reitter <david.reitter@gmail.com>
1515
ec7709ba
JB
1516 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1517 Respect mouse face background.
2d82a920 1518
46b0d52d
DR
15192009-05-07 David Reitter <david.reitter@gmail.com>
1520
ec7709ba
JB
1521 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1522 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1523 in ns_update_begin and ns_update_end.
1524
ce1b23bb
SM
15252009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1526
5996e1b7
SM
1527 * nsfns.m (ns_get_screen): Rewrite.
1528 Don't presume selected-frame is of type `ns'.
1529
ba98e3a0
SM
1530 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1531 all drivers.
1532
ce1b23bb
SM
1533 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1534
bcda200f
YM
15352009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1536
1537 * keyboard.h (add_user_signal): Fix typo in extern.
1538
1539 * lisp.h (add_user_signal): Remove extern.
1540
1541 * unexelf.c (unexec): Consider a section to precede the .bss section
1542 if its addresses overlap that of .bss.
1543 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1544 instead of dumping process.
1545
864660a2
SM
15462009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1547
1548 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1549
50da4e56
SM
15502009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1551
1552 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1553
51520a1a
DN
15542009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1555
1556 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1557 any statements.
1558
409ea3a1
AS
15592009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1560
59c4c60f
AS
1561 * process.c (read_process_output): Make sure the current buffer is
1562 always restored.
1563
409ea3a1
AS
1564 * coding.c (record_conversion_result): Don't modify
1565 Vlast_code_conversion_error for successful result.
1566 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1567
56f00ed2
KH
15682009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1569
1570 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1571 (load_charset_map): Remove unnecessary code.
56f00ed2 1572
4491c9d2
DR
15732009-04-30 David Reitter <david.reitter@gmail.com>
1574
35f5b128 1575 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1576 through f24.
1577
6970f632
CY
15782009-04-30 Chong Yidong <cyd@stupidchicken.com>
1579
1580 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1581
1582 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1583 face_at_buffer_position.
1584 (face_before_or_after_it_pos, get_next_display_element)
1585 (note_mouse_highlight): Update face_at_buffer_position call.
1586
1587 * term.c (term_mouse_highlight):
1588 * msdos.c (IT_note_mouse_highlight):
1589 * fontset.c (Finternal_char_font):
35f5b128 1590 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1591
1592 * dispextern.h (face_at_buffer_position): Update prototype.
1593
0c616f63
KH
15942009-04-30 Kenichi Handa <handa@m17n.org>
1595
35f5b128 1596 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1597
ad3aaf33
AS
15982009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1599
1600 * callproc.c (Fcall_process): Fix GC protection. Make sure
1601 current buffer is always restored.
1602
c3c963a0
YM
16032009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1604
1605 * atimer.c (init_atimer): Also clear stopped_atimers.
1606
1607 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1608
7e3386cb
YM
1609 * process.c (create_process): Clean up merger residues of
1610 2008-07-17 change.
1611
91f68422
CY
16122009-04-29 Ulrich Mueller <ulm@gentoo.org>
1613
1614 * lread.c (Vread_circle): New variable.
1615 (read1): Disable recursive read if Vread_circle is nil.
1616
24b34550
KH
16172009-04-29 Kenichi Handa <handa@m17n.org>
1618
1619 * fontset.h (set_default_ascii_font): Delete extern.
1620
1621 * fontset.c (set_default_ascii_font): Delete this unused function.
1622
1623 * frame.c (x_set_font): When ARG is a font-object, check if the
1624 font-object matches with the ASCII font-spec of the frame's
9c358bda 1625 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1626
77bf07e1
AS
16272009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1628
1629 * fns.c (Flocale_info): Protect vector from GC during decoding.
1630
1631 * process.c (Fstart_process): Protect argv strings from GC during
1632 encoding.
1633
2c55aacf
AS
16342009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1635
1636 * sysdep.c: Include <ctype.h>.
1637
b892d3c9
DR
16382009-04-27 David Reitter <david.reitter@gmail.com>
1639
35f5b128 1640 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1641 Remove commented-out code.
1642
9d0644c4
JB
16432009-04-26 Johan Bockgård <bojohan@gnu.org>
1644
1645 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1646
b7053016
JR
16472009-04-25 Jason Rumney <jasonr@gnu.org>
1648
1649 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1650
4e8231f3
YM
16512009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1652
1653 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1654 Swap bytes in short integer if fringe bitmap width > 8.
1655
493dcf2c
KH
16562009-04-23 Kenichi Handa <handa@m17n.org>
1657
1658 * xfaces.c (Fx_list_fonts): If a font size is specified in
1659 PATTERN, set it in returned scalable fonts.
1660
401e9e57
CY
16612009-04-22 Chong Yidong <cyd@stupidchicken.com>
1662
708e05dc
CY
1663 * keyboard.c (Fset_input_meta_mode): Doc fix.
1664
1665 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1666
1ac9108a 1667 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1668
1669 * coding.c (Fterminal_coding_system): Doc fix.
1670
1671 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1672 (Fx_display_pixel_height, Fx_display_planes)
1673 (Fx_display_color_cells, Fx_server_max_request_size)
1674 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1675 (Fx_display_mm_height, Fx_display_mm_width)
1676 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1677 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1678 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1679 (check_x_display_info): Handle terminal objects instead of
1680 terminal ids.
1681
401e9e57
CY
1682 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1683 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1684 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1685 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1686
df80c7f0
KH
16872009-04-21 Kenichi Handa <handa@m17n.org>
1688
5a8f12af 1689 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1690 (font_score): Check AVGWIDTH too.
908567ef 1691
df80c7f0
KH
1692 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1693 worst case.
1ac9108a
SM
1694 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1695 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1696
705af33f
JR
16972009-04-19 Jason Rumney <jasonr@gnu.org>
1698
1699 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1700 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1701
1702 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1703 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1704 get_phys_cursor_geometry.
1705
b71ac3dd 1706 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1707 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1708 using get_phys_cursor_geometry.
1709
1710 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1711 correctly calculated.
1712
dc2933eb
JD
17132009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1714
1ac9108a
SM
1715 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1716 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1717 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1718 is deprecated.
1719
973e7849
AS
17202009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1721
1722 * font.c (font_put_frame_data): Use xfree instead of free.
1723
314d66f4
JB
17242009-04-17 Juanma Barranquero <lekktu@gmail.com>
1725
1726 * w32font.c (Qja, Qko): Remove declarations.
1727 (syms_of_w32font): Don't DEFSYM them.
1728
cf702558
CY
17292009-04-17 Chong Yidong <cyd@stupidchicken.com>
1730
1731 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1732
1733 * font.h (Qja, Qko): Extern them.
1734
1735 * ftfont.c (Qja, Qko): Remove declarations.
1736
1737 * xfont.c (Qja, Qko): Remove declarations.
1738
b50504f5
KH
17392009-04-17 Kenichi Handa <handa@m17n.org>
1740
bde25748
KH
1741 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1742 string from a vector to handle Latin-1 characters correctly.
1743
b50504f5
KH
1744 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1745 entity even if the cache hits.
1746
f4646fff
AS
17472009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1748
1749 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1750 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1751
e7deaab0
AS
1752 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1753 * lisp.h: Adjust prototypes.
1754
0a0e7d49
CY
17552009-04-16 Chong Yidong <cyd@stupidchicken.com>
1756
1757 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1758 change (Bug#3003).
1759
3c908a57
KH
17602009-04-16 Kenichi Handa <handa@m17n.org>
1761
1ac9108a 1762 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
1763
1764 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1765 adstyle.
1766
1767 * ftfont.c (Qja, Qko): Don't make them static.
1768 (enum ftfont_cache_for): New enum.
1769 (fc_charset_table): Undo the previous change.
1770 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
1771 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
1772 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
1773 non-scarable font, try to get AVERAGE_WIDTH.
1774 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1775 Change ft_face_cache from a list of a hash-table. Don't check
1776 `ja' and `ko' adstyle here.
1777 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1778 FTFONT_CACHE_FOR_CHARET.
1779 (ftfont_get_charset): Undo the previous change.
1ac9108a 1780 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
1781 (ftfont_close): Likewise.
1782 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1783
1784 * font.c (font_sort_entites): Change the meaning of the arg
1785 BEST-ONLY. Don't optimize for VEC of lenght 1.
1786 (font_select_entity): Just return the value of font_sort_entites.
1787
1788 * xfaces.c (merge_face_vectors): Reflect font properties in
1789 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1790 font_clear_prop if a face attribute doesn't change.
1791
3c908a57
KH
1792 * charset.h (charset_ksc5601): Extern it.
1793
1794 * charset.c (charset_ksc5601): New variable.
1795 (Fdefine_charset_internal): Set charset_ksc5601.
1796 (init_charset_once): Initialize charset_ksc5601 to -1.
1797
d65859c3
DN
17982009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1799
1800 * fileio.c (history_delete_duplicates): Remove unused declaration.
1801
1802 * callint.c (history_delete_duplicates): New declaration.
1803 (Fcall_interactively): Remove command history duplicates when
1804 history_delete_duplicates is true.
1805
3ba010e5
EZ
18062009-04-14 Eli Zaretskii <eliz@gnu.org>
1807
1808 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1809
06f19b91
KH
18102009-04-14 Kenichi Handa <handa@m17n.org>
1811
1812 * font.c (Ffont_info): Fix docstring. Fix the second element of
1813 the returned value (bug#2949).
1814
2cce8bfc
CY
18152009-04-14 Chong Yidong <cyd@stupidchicken.com>
1816
1817 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1818
d156542d
KH
18192009-04-14 Kenichi Handa <handa@m17n.org>
1820
1821 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1822 encoding charset is ascii_compatible.
1823
1824 * charset.c (Fdefine_charset_internal): Make charset
1825 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1826 code_offset is 0, and covers all ASCII characters.
1827
86fa089e
SM
18282009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1829
1830 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1831 (ns_string_to_pasteboard_internal):
1832 * nsmenu.m (process_dialog):
1833 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1834 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1835 * lisp.h (Fx_load_color_file): Declare.
1836
a8a3728b
KH
18372009-04-13 Kenichi Handa <handa@m17n.org>
1838
1ac9108a 1839 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
1840 (font_select_entity): Suppress the code to optimize for the same
1841 kind of fonts.
1842 (font_load_for_lface): Get a font that supports at least ASCII
1843 characters.
1844
1845 * ftfont.c (Qja, Qko): New variables.
1846 (fc_charset_table): Delete uniquifier data for iso8859-1.
1847 (ftfont_get_latin1_charset): New function.
1848 (get_adstyle_property): New function.
1849 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1850 bitmap fonts.
1851 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1852 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1853 `ko' or `ja'.
1854 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 1855 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
1856 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1857 property.
1858 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1859 (syms_of_ftfont): DEFSYM Qja and Qko.
1860
483670b5
KH
18612009-04-09 Kenichi Handa <handa@m17n.org>
1862
12b55765
KH
1863 * charset.c (map_charset_chars): For a charset of `superset'
1864 method, fix calculation of code range.
1865
483670b5
KH
1866 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1867 from the list of extra properties.
1868 (font_clear_prop): Be sure to delete `:name' font property.
1869
57d3b93b
KH
18702009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1871
b4b2c2ca
YM
1872 * dispnew.c (redraw_overlapping_rows): Fix detection of
1873 overlapping for topmost and bottommost rows.
1874
1ac9108a 1875 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 1876
472c3609
JR
18772009-04-06 Jason Rumney <jasonr@gnu.org>
1878
1879 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1880
ab193662
KH
18812009-04-06 Kenichi Handa <handa@m17n.org>
1882
1883 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1884
1885 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1886
0c26f026
KH
18872009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1888
1889 * ftfont.c (ftfont_open): Fix checking of the return value of
1890 FT_Load_Char. Fix setting font->underline_thickness.
1891
e173bbce
CY
18922009-04-04 Chong Yidong <cyd@stupidchicken.com>
1893
1894 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1895 (Fterminal_parameters, Fterminal_parameter)
1896 (Fset_terminal_parameter): In doc string, refer to terminal
1897 objects rather than terminal ids.
1898
693a2698
EZ
18992009-04-04 Eli Zaretskii <eliz@gnu.org>
1900
1901 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1902 ret_lim_data. (Bug#2867)
1903
d5221487
CY
19042009-04-03 Chong Yidong <cyd@stupidchicken.com>
1905
1906 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1907 so they don't get wider than the window, matching 2006-01-23
1908 change to the partner function in xdisp.c (Bug#2800).
1909
223509a3
KH
19102009-04-03 Kenichi Handa <handa@m17n.org>
1911
1912 * print.c (print_object): Make each lowest sub_char_table start a
1913 new line (Bug#2866).
1914
74fcd0b1
KH
19152009-04-02 Kenichi Handa <handa@m17n.org>
1916
1917 * fontset.c (fontset_font): Record no-font when a fontset
1918 explicitly tells not to try another font-specs.
1919
c542407d
SM
19202009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1921
1922 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1923
e3869731
KH
19242009-03-30 Kenichi Handa <handa@m17n.org>
1925
d8d2f142
KH
1926 * fontset.c (fontset_from_font): Specify only registry in a
1927 font-spec for all characters supported by that registry.
1928
e3869731
KH
1929 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1930 even if HAVE_M17N_FLT is not defined.
1931
5da5f805
CY
19322009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1933
1934 * ftfont.c: Conditionalize prototyping and use of
1935 ftfont_variation_glyphs.
1936
ab226c50
SM
19372009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1938
9628fed7
SM
1939 * frame.c (delete_frame): Work around compiler bug.
1940
1941 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1942 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1943 Some more EMACS_INT.
1944 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1945
1946 * xdisp.c (dump_glyph): Fix typo.
1947
ae19ba7c
SM
1948 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1949 (adjust_markers_gap_motion, adjust_markers_for_delete)
1950 (adjust_markers_for_insert, adjust_point)
1951 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1952 (make_gap, copy_text, count_size_as_multibyte, insert)
1953 (insert_and_inherit, insert_before_markers)
1954 (insert_before_markers_and_inherit, insert_1)
1955 (count_combining_before, count_combining_after, insert_1_both)
1956 (insert_from_string, insert_from_string_before_markers)
1957 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1958 (insert_from_buffer_1, adjust_after_replace)
1959 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1960 (replace_range_2, del_range, del_range_1, del_range_byte)
1961 (del_range_both, del_range_2, modify_region)
1962 (prepare_to_modify_buffer, signal_before_change)
1963 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1964 for buffer positions and sizes.
1965 * lisp.h: Adjust prototypes accordingly.
1966
1967 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1968 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1969 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1970
ab226c50
SM
1971 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1972
46dfb8fb
JD
19732009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1974
1975 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1976 lines and columns so we keep the same pixel height and width.
1977
1978 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1979 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1980 (x_handle_net_wm_state): New function to update frame parameter
1981 fullscreen.
1982 (x_term_init): Initialize atoms for _NET_WM_STATE.
1983
1984 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1985
d347e494
SM
19862009-03-27 Kevin Ryde <user42@zip.com.au>
1987
1988 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1989 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1990 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1991 (Fgpm_mouse_stop): Pass that new parameter.
1992 * termhooks.h (close_gpm): Adjust prototype.
1993
84db11d6
SM
19942009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1995
c95a5008
SM
1996 * lisp.h (Fx_focus_frame): Declare.
1997
84db11d6
SM
1998 * callint.c (Fcall_interactively): For '^' just delegate the work to
1999 handle-shift-selection.
2000 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2001
0a1958d6
CY
20022009-03-24 Chong Yidong <cyd@stupidchicken.com>
2003
0bfdff23
CY
2004 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2005
0a1958d6
CY
2006 * data.c (Qinteractive_form): New variable.
2007 (Finteractive_form): Use it.
2008
2009 * eval.c (Fcommandp): Use Qinteractive_form.
2010
58aec0d6
JR
20112009-03-24 Jason Rumney <jasonr@gnu.org>
2012
2013 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2014 Calculate total size precisely. Decode environment variables
2015 before substituting. (Bug#38)
2016
553dd618
KH
20172009-03-24 Kenichi Handa <handa@m17n.org>
2018
2019 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2020 encoding (Bug#2722).
553dd618 2021
c39ea606
JD
20222009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2023
2024 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2025 that gdpy is set.
2026
bc9b2b5e
AM
20272009-03-22 Alan Mackenzie <acm@muc.de>
2028
2029 * callint.c (Finteractive): Clarify the doc string - even
2030 promptless elements need \n separators.
2031
9f995a76
JR
20322009-03-22 Jason Rumney <jasonr@gnu.org>
2033
2034 * w32term.c (syms_of_w32term): Doc fix for
2035 x-use-underline-position-properties.
2036
22749e9a
EZ
20372009-03-21 Eli Zaretskii <eliz@gnu.org>
2038
2039 * w32.c (getpwuid): Change argument type to unsigned.
2040 (struct w32_id): Change type of `rid' member to unsigned.
2041 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2042 argument ID to unsigned. All callers changed.
2043 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2044
e00553bf
EZ
20452009-03-20 Eli Zaretskii <eliz@gnu.org>
2046
2047 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2048 negative, produce a float value.
2049
2050 * dired.c (make_uid, make_gid): New functions.
2051 (Ffile_attributes): Use them to avoid negative UID and GID.
2052
f761d6b6
JB
20532009-03-20 Juanma Barranquero <lekktu@gmail.com>
2054
2055 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2056 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2057 Fix typos in docstrings.
2058
d507f8d7
KH
20592009-03-19 Kenichi Handa <handa@m17n.org>
2060
2061 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2062 changed, use font_load_for_lface to get a new font object.
2063 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2064
2065 * frame.c (x_set_font): Handle the case that ARG is a cons.
2066
c68845e0
GM
20672009-03-19 Glenn Morris <rgm@gnu.org>
2068
2069 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2070
bfa49dd1
CY
20712009-03-19 Chong Yidong <cyd@stupidchicken.com>
2072
2073 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2074
8458d4c1
KH
20752009-03-19 Kenichi Handa <handa@m17n.org>
2076
2077 * charset.c (load_charset_map_from_file): When a mapfile can't be
2078 loaded, signal an error.
2079
78e7d1fe
EZ
20802009-03-18 Eli Zaretskii <eliz@gnu.org>
2081
2082 * dired.c (Ffile_attributes): Make sure UID and GID are always
2083 positive, even if the value is too large for a positive EMACS_INT.
2084 Doc fix.
2085
2086 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2087
5da9fdfa
YM
20882009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2089
2090 * xmenu.c (xdialog_show): Move Fredisplay call ...
2091 (Fx_popup_dialog): ... here.
2092
7519c40d
SM
20932009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2094
2095 * dired.c (file_name_completion): Disable the first optimization just
2096 installed, since it is not implemented correctly.
2097
2cd298e2
SM
20982009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2099
2100 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2101 only if the entry can affect bestmatch.
2cd298e2
SM
2102 Stop the search early, as Ftry_completion already does.
2103
48d37adf
CY
21042009-03-17 Chong Yidong <cyd@stupidchicken.com>
2105
e10c9c93 2106 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2107
9286b16a
CY
21082009-03-15 Chong Yidong <cyd@stupidchicken.com>
2109
2110 * keyboard.c (parse_menu_item): Don't display remappings as menu
2111 equivalent bindings (Bug#788).
2112
f7b146dc
JR
21132009-03-15 Jason Rumney <jasonr@gnu.org>
2114
2115 * w32term.h (WM_EMACS_PAINT): New message.
2116 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2117 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2118 before passing to lisp thread. (Bug#950)
2119
f761d6b6 21202009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2121
d93f9575
CY
2122 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2123 variable as it was never reset.
2124 (ns_term_init): Remove initialization of Lisp-settable defaults
2125 and ns_expand_space.
2126 (-setPanelFromDefaultValues): Remove ns_expand_space.
2127 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2128 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2129 i.e. no additional spacing, similar to Carbon port.
2130
d93f9575
CY
2131 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2132 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2133
305018ec
JD
21342009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2135
2136 * sound.c (alsa_configure): Remove call to deprecated
2137 snd_pcm_sw_params_set_xfer_align.
2138
f761d6b6 21392009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2140
2141 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2142 after clicking in a detached tool bar.
2143 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2144
46e722a9
SM
21452009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2146
348db3dd
SM
2147 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2148 int/Lisp_Object mixup).
46e722a9 2149
a3d16f39
KH
21502009-03-13 Kenichi Handa <handa@m17n.org>
2151
2152 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2153 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2154 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2155 (set_fontset_font): Change ARG to a vector. Handle range_list in
2156 ARG correctly.
2157 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2158 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2159 the above change.
2160 (fontset_from_font): Fix previous change.
fe24f56a 2161 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2162 entry. If FONTSET is the default fontset, don't set the extra
2163 slot of the returning char-table.
2164
b066e6b6
JB
21652009-03-12 Juanma Barranquero <lekktu@gmail.com>
2166
2167 * nsfns.m (Fx_close_connection): Doc fix.
2168 (Fns_do_applescript): Reflow docstring.
2169 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2170 (Fx_display_pixel_width, Fx_display_pixel_height)
2171 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2172 Fix typos in docstrings.
2173 (Fns_set_alpha): Fix typos in error messages.
2174
d472514e 21752009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2176
d472514e 2177 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2178 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2179 were used for such events.
2180
d472514e
JB
2181 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2182 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2183
d472514e 2184 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2185 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2186
fb930676
KH
21872009-03-11 Kenichi Handa <handa@m17n.org>
2188
ff85581a
KH
2189 * font.h (font_open_by_spec): Extern it.
2190
c50b7e98
KH
2191 * font.c (font_open_by_spec): New function.
2192 (font_open_by_name): Use font_open_by_spec.
2193
fb930676
KH
2194 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2195 fontset of the frame.
2196
2197 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2198 modify the default font of frames that use this fontset.
2199 (num_auto_fontsets): New variable.
2200 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2201 name. Be sure to set FONTSET_ASCII to the correct font name.
2202 (update_auto_fontset_alist): New function.
2203
df4e8455
JB
22042009-03-11 Juanma Barranquero <lekktu@gmail.com>
2205
2206 * makefile.w32-in: Update dependencies.
2207
0a375797
AR
22082009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2209
2210 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2211
61313fa3
SM
22122009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2213
2214 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2215
b55103fb
CY
22162009-03-10 Chong Yidong <cyd@stupidchicken.com>
2217
2218 * lread.c (Feval_buffer): Doc fix.
2219
dde2559c
KH
22202009-03-09 Kenichi Handa <handa@m17n.org>
2221
2222 * charset.c (Qfile_name_handler_alist): Extern it.
2223 (load_charset_map_from_file): Temporarily bind
2224 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2225
df4e8455 22262009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2227
47f588bb
GM
2228 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2229 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2230
4ddf94bd
AR
22312009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2232
4c9bdfc2
AR
2233 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2234 (x_set_window_size): Change back to calculated method of setting
2235 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2236 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2237 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2238
fe41ae9e
AR
2239 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2240
4c9bdfc2
AR
2241 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2242 accelerator in parens under GNUstep.
2243
825d0875
KH
22442009-03-06 Kenichi Handa <handa@m17n.org>
2245
2246 These changes are to detect incorrect composition sequence without
f3b3be74 2247 looking ahead the source. (Bug#2370)
825d0875
KH
2248
2249 * coding.h: Include "composite.h".
2250 (enum compisition_state): New enum.
2251 (struct compisition_status): New struct.
2252 (struct iso_2022_spec): New member cmp_status.
2253 (struct emacs_mule_spec): New struct.
2254 (struct coding_system): New members ctext_extended_segment_len and
2255 embedded_utf_8. Change the union member
2256 spec.emacs_mule_full_support to spec.emacs_mule.
2257
2258 * coding.c (CODING_ISO_CMP_STATUS): New macro.
2259 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 2260 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
2261 (ADD_COMPOSITION_DATA): New arg nbytes.
2262 (emacs_mule_char): New arg cmp_status.
2263 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
2264 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
2265 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
2266 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
2267 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
2268 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
2269 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
2270 (EMACS_MULE_COMPOSITION_END): New macro.
2271 (emacs_mule_finish_composition): New function.
2272 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
2273 (decode_coding_emacs_mule): Avoid long looking ahead while
2274 handling composition.
2275 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
2276 (ENCODE_COMPOSITION_RULE): New macro.
2277 (finish_composition): New function.
2278 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
2279 (DECODE_COMPOSITION_START): New implementation.
2280 (DECODE_COMPOSITION_END): Likewise.
2281 (STORE_COMPOSITION_RULE): New macro.
2282 (decode_coding_iso_2022): Avoid long looking ahead while handling
2283 composition, CTEXT extended segment, and embedded UTF-8.
2284 (setup_coding_system): For a coding of type iso-2022, reset
2285 CODING_ISO_EXTSEGMENT_LEN (coding) and
2286 CODING_ISO_EMBEDDED_UTF_8 (coding).
2287 (get_translation): Delete arguments last_block, from_nchars,
2288 to_nchars. Callers changed.
2289 (produce_chars): Don't modify charbuf. Adjusted for the change of
2290 get_translation.
98a326f7 2291 (produce_composition): Adjust for the new annotation sequence.
825d0875 2292 (handle_composition_annotation): Likewise.
98a326f7 2293 (consume_chars): Adjust for the change of get_translation.
825d0875 2294
ccbc4452
AR
22952009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
2296
4ddf94bd 2297 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 2298
988a7ddb
KH
22992009-03-05 Kenichi Handa <handa@m17n.org>
2300
2301 * font.c (font_select_entity): New function.
2302 (font_find_for_lface): Use font_select_entity to select a font.
2303
2304 * fontset.c (fontset_find_font): If a font found without
a8a3728b 2305 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
2306 font with C restriction.
2307
98a326f7 23082009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 2309
be1bce46 2310 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 2311
10ea2b82
JR
23122009-03-04 Jason Rumney <jasonr@gnu.org>
2313
2c93b248 2314 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 2315 characters that have already been read. (Bug#2569)
2c93b248 2316
10ea2b82
JR
2317 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
2318 Log an error message if check_image_size failed.
2319 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 2320 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 2321
71a0c011
EZ
23222009-03-02 Eli Zaretskii <eliz@gnu.org>
2323
2324 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
2325 when decoding process output.
2326
2f63bba8
RS
23272009-03-01 Richard M Stallman <rms@gnu.org>
2328
2329 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
2330
2331 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
2332
0a9564cb
EZ
23332009-02-28 Eli Zaretskii <eliz@gnu.org>
2334
2335 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2336 (decode_coding_emacs_mule, decode_coding_iso_2022)
2337 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2338 (decode_coding_raw_text, decode_coding_charset)
2339 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2340 Honor inhibit-eol-conversion. (Bug #2186)
2341
449148b3
JR
23422009-02-28 Jason Rumney <jasonr@gnu.org>
2343
2344 * coding.c (detect_coding_charset): If not checking latin extra,
2345 fail on characters between 0x80 and 0xA0. (Bug#2354)
2346
a4aee864
EZ
23472009-02-28 Eli Zaretskii <eliz@gnu.org>
2348
2349 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2350 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2351
d88bee5a
GM
23522009-02-27 Glenn Morris <rgm@gnu.org>
2353
2354 * callint.c (Finteractive): Doc fix.
2355
a808f22d
KH
23562009-02-27 Kenichi Handa <handa@m17n.org>
2357
2358 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2359
caf8d60c
CY
23602009-02-27 Chong Yidong <cyd@stupidchicken.com>
2361
2362 * font.c (font_style_to_value): Set value for unknown symbols to
2363 100 instead of 255.
b61137ea
CY
2364 (weight_table, slant_table, width_table): Treat "unspecified" as
2365 the default value.
caf8d60c 2366
1a0de25c
JB
23672009-02-26 Juanma Barranquero <lekktu@gmail.com>
2368
2369 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2370
8fc45744
JB
23712009-02-25 Juanma Barranquero <lekktu@gmail.com>
2372
107bd7d1
JB
2373 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2374 error as soon as a recursive load is detected.
8fc45744 2375
f097e223
AR
23762009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2377
2378 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2379 before caching.
2380
8810a12f
KH
23812009-02-24 Kenichi Handa <handa@m17n.org>
2382
2383 * fontset.c (fontset_find_font): Fix the condition for checking
2384 unavailable font.
2385
2c7d1565
GM
23862009-02-24 Glenn Morris <rgm@gnu.org>
2387
2388 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2389 whitespace that confuses documentation.
2390
a20878b6
MB
23912009-02-23 Miles Bader <miles@gnu.org>
2392
2393 * process.c (Flist_system_processes, Fprocess_attributes)
2394 (syms_of_process): Rename `system-process-attributes' to
2395 `process-attributes'.
2396
b3b58c01
AS
23972009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2398
1b3b981b
AS
2399 * coding.h (struct coding_system): Make safe_charsets a pointer to
2400 unsigned char.
2401 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2402 being 255.
2403 (SAFE_CHARSET_P): Likewise.
2404 (setup_iso_safe_charsets): Properly setup safe_charsets.
2405 (Fdefine_coding_system_internal): Likewise.
2406 (setup_coding_system): Likewise. Remove unneeded casts.
2407 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2408 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2409 unneeded casts.
2410
b3b58c01
AS
2411 * insdel.c (del_range_2): Don't modify gap contents when called
2412 from decode_coding_object. (Bug#1809)
2413
0b6f228c
CY
24142009-02-21 Chong Yidong <cyd@stupidchicken.com>
2415
2416 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2417 Qfont_object.
2418 (Ftype_of): Recognize font objects.
2419
2420 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2421
2422 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2423 moved to data.c.
2424
52f8870b
AR
24252009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2426
2427 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2428 async_iconified. Based on a patch by Christian Lynbech
2429 <christian.lynbech@tieto.com>.
2430 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2431
7087d5e9
GM
24322009-02-20 Glenn Morris <rgm@gnu.org>
2433
2434 * syntax.c (Fskip_chars_forward): Fix doc typo.
2435
41d2ceef
CY
24362009-02-20 Chong Yidong <cyd@stupidchicken.com>
2437
2438 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2439
1a3b7ca6
CY
24402009-02-19 Chong Yidong <cyd@stupidchicken.com>
2441
2442 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2443
73cce38d
KH
24442009-02-19 Kenichi Handa <handa@m17n.org>
2445
2446 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2447 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2448
a51092ee
DN
24492009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2450
2451 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2452
c423ecca
KH
24532009-02-18 Kenichi Handa <handa@m17n.org>
2454
2455 * font.c (font_check_otf_features): Fix handling of `nil' element.
2456 (Ffont_spec): Describe :lang and :otf in the docstring.
2457
4c1958f4
AS
24582009-02-16 Andreas Schwab <schwab@suse.de>
2459
2460 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2461 string.
2462
5704f39a
KH
24632009-02-16 Kenichi Handa <handa@m17n.org>
2464
2465 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2466 (Bug#1723)
5704f39a 2467
8f0085aa
CY
24682009-02-14 Chong Yidong <cyd@stupidchicken.com>
2469
a057d86a 2470 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2471
2472 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2473 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2474
aff01dd9
EZ
24752009-02-14 Eli Zaretskii <eliz@gnu.org>
2476
2477 * msdos.c (MAX_SCREEN_BUF): New macro.
2478 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2479 Encode the entire run of glyphs sharing the same face, instead of
2480 doing that one glyph at a time (fixes a bug with displaying
2481 double-size characters).
2482
ba301db3
AR
24832009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2484
2485 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2486
2487 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2488 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2489 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2490
2491 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2492 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2493
51d861de
SM
24942009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2495
2496 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2497 invisible areas.
2498
7fed8996
JR
24992009-02-12 Jason Rumney <jasonr@gnu.org>
2500
631ea4fb
JR
2501 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2502 (add_font_entity_to_list): Call check_face_name even when family
2503 is unspecified.
2504
cb4a3e42
JR
2505 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2506 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2507 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2508
7fed8996 2509 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2510 raster fonts. (Bug#2219)
7fed8996 2511
895416e3
KH
25122009-02-12 Kenichi Handa <handa@m17n.org>
2513
2514 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2515 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2516 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2517 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2518 (find_automatic_composition): While looking forward and backward,
2519 check static composition. Fix where to stop looking forward.
2520 (composition_adjust_point): Fix checking of static composition.
2521 (Fcomposition_get_gstring): Pay attention to
1dacf998 2522 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2523
2524 * lisp.h (fast_looking_at): Extern it.
2525
2526 * search.c (fast_looking_at): New function.
2527
51d861de 2528 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2529 <struct glyph>.u.cmp.to.
2530 (append_composite_glyph): Likewise.
2531
51d861de 2532 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2533 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2534 composition.
51d861de 2535 (append_composite_glyph): Adjust for the change of
895416e3
KH
2536 <strcut glyph>.u.cmp.to.
2537
8510724d
JB
25382009-02-11 Juanma Barranquero <lekktu@gmail.com>
2539
2540 * casetab.c (init_casetab_once):
2541 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2542 * font.c (font_update_lface):
2543 * fontset.c (Fnew_fontset):
2544 * ftfont.c (ftfont_drive_otf):
2545 * xfont.c (xfont_open):
2546 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2547
294fa707
SM
25482009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2549
2550 * fileio.c (Fwrite_region): !NILP -> CONSP.
2551
b5bfebec
AS
25522009-02-10 Andreas Schwab <schwab@suse.de>
2553
2554 * process.c (send_process): Properly relocate pointer into data
adab88bd 2555 when using encoded data. (Bug#2272)
b5bfebec 2556
cb84a2be
KH
25572009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2558
2559 * coding.c (detect_coding_charset): Fix previous change.
2560
89e09428
JR
25612009-02-08 Jason Rumney <jasonr@gnu.org>
2562
2563 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2564 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2565
4470a277
AS
25662009-02-07 Andreas Schwab <schwab@suse.de>
2567
2568 * unexelf.c (unexec): Fix error message.
2569
3175b12a
AR
25702009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2571
2572 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2573 when modal window is active. (Bug #2152)
3175b12a
AR
2574 (applicationShouldTerminate:): Remove now-unneeded while loop
2575 around NSRunAlertPanel.
2576
2577 * nsmenu.m (popupSession): New file-global variable.
2578 (pop_down_menu): End the popupSession before closing dialog.
2579 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2580 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2581 don't query NSApp for events (just sleep instead).
2582
8434d0b8
EZ
25832009-02-07 Eli Zaretskii <eliz@gnu.org>
2584
51d861de
SM
2585 * coding.c (syms_of_coding) <translation-table-for-input>:
2586 Modify doc string to discourage use for character code unification.
8434d0b8 2587
aa82edfd
CY
25882009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2589
2590 * atimer.c (run_timers): Update pending_atimers.
2591
2d283c7c
CY
25922009-02-06 Chong Yidong <cyd@stupidchicken.com>
2593
eb306cab
CY
2594 * image.c (svg_load_image): Fix last change.
2595
2d283c7c
CY
2596 * xfns.c (Fx_create_frame): Signal an error if no font is
2597 found (Bug#2147).
2598
4d8e170e
JB
25992009-02-05 Juanma Barranquero <lekktu@gmail.com>
2600
2601 * character.c (syms_of_character) <script-representative-chars>:
2602 Fix typo in docstring.
2603
c96169a0
AR
26042009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2605
2606 * nsmenu.m (pop_down_menu): New function.
2607 (ns_popup_dialog): Call it on unwind.
2608 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2609 call timer_check() (Bug#2154).
2610 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2611 handling_signal is set.
2612 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2613
31fd7c5c 2614 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2615
2616 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2617
2618 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2619
51d861de
SM
2620 * keyboard.c (poll_for_input_1, handle_async_input):
2621 Set handling_signal under HAVE_NS.
c96169a0 2622
aacd8ba1
GM
26232009-02-04 Glenn Morris <rgm@gnu.org>
2624
2625 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2626
4cb75c4b
KH
26272009-02-04 Kenichi Handa <handa@m17n.org>
2628
2629 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2630
2631 * charset.c (Fchar_charset): New optional arg restriction.
2632
2633 * coding.h (coding_system_charset_list): Extern it.
2634
2635 * coding.c (coding_system_charset_list): New function.
2636
2637 * composite.c: Include coding.h and termhooks.h.
2638 (composition_gstring_p): Fix for the terminal case.
2639 (composition_gstring_width): Likewise.
2640 (fill_gstring_body): Likewise.
2641 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2642 the frame.
2643 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2644 is within a composition.
867d4bb3 2645 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2646
2647 * term.c (encode_terminal_code): Fix handling of composition.
2648 (produce_composite_glyph): For static composition, get pixel_width
2649 from struct composition.
2650
826ba17e
AS
26512009-02-02 Andreas Schwab <schwab@suse.de>
2652
2653 * unexelf.c (unexec): Handle unaligned bss offset.
2654
8ad093db
AR
26552009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2656
2657 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2658 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2659
8ad093db
AR
2660 * keyboard.c (handle_interrupt): Don't call
2661 quit_throw_to_read_char() under NS.
d0a76a6e 2662
8ad093db
AR
2663 * blockinput.h: Remove NS-specific code.
2664
4d18a7a2
DN
26652009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2666
db878925
DN
2667 * dispnew.c (window_change_signal): Don't try to get the size of a
2668 suspended tty frame.
2669 * term.c (Fresume_tty): Resize if the size has changed while the
2670 tty was suspended.
2671
4d18a7a2
DN
2672 * alloc.c (mark_stack): Properly conditionalize previous change.
2673
8984df7c
JB
26742009-01-30 Juanma Barranquero <lekktu@gmail.com>
2675
2676 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2677 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2678 Remove; this code is not used on Windows.
2679
75f4f1ac
EZ
26802009-01-30 Eli Zaretskii <eliz@gnu.org>
2681
2682 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2683 EOLs that also has stray ^M characters.
2684
07a1e794
JB
26852009-01-30 Juanma Barranquero <lekktu@gmail.com>
2686
2687 * atimer.c (run_timers, alarm_signal_handler):
2688 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2689 * w32inevt.c (w32_console_read_socket):
2690 * w32term.c (w32_read_socket):
2691 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2692
a8b11cc9
CY
26932009-01-30 Chong Yidong <cyd@stupidchicken.com>
2694
2695 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2696 Initialize it as a relative filename pattern.
2697 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2698 (Fcall_process_region): Simplify temp file creation using
2699 temporary-file-directory.
2700
c279587b
EZ
27012009-01-29 Eli Zaretskii <eliz@gnu.org>
2702
2703 * msdos.c: Rename pending_signals to msdos_pending_signals.
2704 (sig_suspender, sigprocmask): Adjust.
2705
a8fe3242
CY
27062009-01-29 Chong Yidong <cyd@stupidchicken.com>
2707
2708 * keyboard.c (pending_signals): New var.
2709 (poll_for_input, input_available_signal, init_keyboard): Set it.
2710 (process_pending_signals): New function.
2711
2712 * lisp.h (QUIT): Check pending_signals instead of
2713 interrupt_input_pending. Use process_pending_signals.
2714
51d861de 2715 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2716
51d861de 2717 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2718
2719 * sysdep.c (emacs_write): Use process_pending_signals.
2720
2721 * xterm.c (XTread_socket): Update pending_signals.
2722
2723 * w32term.c (w32_read_socket): Update pending_signals.
2724
2725 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2726
6570a1c4
KH
27272009-01-29 Kenichi Handa <handa@m17n.org>
2728
2729 * xftfont.c (xftfont_has_char): New function.
2730 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2731
d72a4afa
AR
27322009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2733
2734 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2735 under GNUstep.
2736 (ns_query_color): New declaration.
2737
2738 * nsterm.m (ns_confirm_quit): New variable.
2739 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2740 (EmacsApp-applicationShouldTerminate:): Use it.
2741 (EmacsPrefsController): Let user set it.
2742 (ns_query_color): New function.
2743 (ns_defined_color): Use it.
2744 (ns_initialize): Drop.
2745 (ns_term_init): Add two lines from ns_initialize(), and set
2746 input_interrupt_mode to nil.
2747
2748 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2749 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2750
9fe78804
KH
27512009-01-28 Kenichi Handa <handa@m17n.org>
2752
2753 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2754 (fontset_get_font_group): Remember that no font-group is specified
2755 for C.
9fe78804 2756
fa57de36
CY
27572009-01-27 Chong Yidong <cyd@stupidchicken.com>
2758
930600e9
CY
2759 * fns.c (concat): Check for string overflow (bug#1787).
2760
fa57de36
CY
2761 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2762 Quadruple undo limits (bug#1501).
2763
7179ce7b
KH
27642009-01-27 Kenichi Handa <handa@m17n.org>
2765
2766 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2767 directly use GT_Get_Char_index.
2768
2769 * xftfont.c (struct xftfont_info): New member `index'.
2770
2771 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2772 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2773
5be8fcc0
CY
27742009-01-26 Kenichi Handa <handa@m17n.org>
2775
2776 * fontset.c (fontset_find_font): Fix handling of non-cons return
2777 value of fontset_get_font_group.
2778 (fontset_font): Revert last change.
2779
19ae3e61
JR
27802009-01-26 Jason Rumney <jasonr@gnu.org>
2781
2782 * w32font.c (w32font_list_internal): Return quickly if registry is
2783 unknown. Simplify final return.
2784 (add_font_entity_to_list): Break complex logic down into more
2785 manageable chunks. Move unknown registry check to
2786 w32font_list_internal.
2787
8612b71a
AR
27882009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2789
2790 Changes to remove Feval calls from GUI under NS.
2791
d8038940
JB
2792 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2793 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2794 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2795
2796 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2797 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2798 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2799 instead of NON_ASCII_KEYSTROKE_EVENT.
2800 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2801 (EmacsApp-applicationShouldTerminate:): Query user.
2802 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2803 instead of Feval.
2804
2805 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2806
2807 * keyboard.c (kbd_buffer_get_event): Check for it.
2808 (keys_of_keyboard): Define lispy keys for
2809 ns-put/unput-working-text.
2810
2811 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2812 versions.
2813 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2814
6288ae55
CY
28152009-01-25 Chong Yidong <cyd@stupidchicken.com>
2816
2817 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2818 setting current_buffer directly. (Bug#2044)
6288ae55 2819
289e7f8f
CY
28202009-01-24 Chong Yidong <cyd@stupidchicken.com>
2821
5ce87308 2822 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2823 any work. (Bug#1952, bug#1990).
5ce87308 2824
64cc3cf6 2825 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2826
b3243e6f
AR
28272009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2828
2829 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2830 (ns_no_defaults): New declaration.
2831 (main): Use it.
e0d2e69a 2832
d900b2af 2833 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2834
d900b2af 2835 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2836
d900b2af
AR
2837 * nsterm.m (ns_no_defaults): New variable.
2838 (ns_initialize): Don't read defaults when ns_no_defaults.
2839 (EmacsView-readSelectionFromPasteboard:)
2840 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2841 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2842 (ns_dumpglyphs_stretch): New function.
2843 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2844 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2845
e0d2e69a
AR
2846 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2847
3ac71f5d
CY
28482009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2849
2850 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2851 call for Sparc64.
2852
3fe53a83
AR
28532009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2854
2855 * nsfns.m:
2856 * nsgui.h:
2857 * nsmenu.m:
2858 * nsselect.m:
2859 * nsterm.h:
2860 * nsterm.m: Remove '23' comments that indicated code added during
2861 update from emacs-20 -> emacs-23.
2862
10f87c6f 28632009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2864
2865 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2866 ns_alternate_modifier. (Bug#1217)
a3b53a85 2867
c7cef62d
AR
2868 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2869 Display all shortcuts, including those w/o super modifier.
2870
575fb8bd
AR
2871 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2872
918b848b
CY
28732009-01-22 Chong Yidong <cyd@stupidchicken.com>
2874
2875 * fileio.c (Vwrite_region_post_annotation_function)
2876 (Vwrite_region_annotation_buffers): New vars.
2877 (build_annotations_unwind): Just reset
2878 Vwrite_region_annotation_buffers.
2879 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2880 Call write-region-post-annotation-function.
2881 (build_annotations): Add to Vwrite_region_annotation_buffers if
2882 buffer changes.
2883
a39e2539
AR
28842009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2885
2886 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2887 Tiger.
51d861de
SM
2888 * nsfns.m (ns_do_applescript):
2889 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2890
35ed44db
AR
28912009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2892
2893 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2894
cbe0b5bf
AR
28952009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2896
2897 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2898
6049d3a0
AR
2899 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2900
2901 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2902 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2903 handle Ctrl-tab. (Bug#1841)
2904 (ns_get_color): Use unsigned long long for scanned hex string value.
2905 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2906 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2907 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2908 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2909 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2910 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2911 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2912
d3810c21 2913 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2914 DPI. (Bug#1316)
d3810c21
AR
2915 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2916 values in onTiger section.
4c7077c3 2917
e301e634
CY
29182009-01-19 Chong Yidong <cyd@stupidchicken.com>
2919
7f82490b
CY
2920 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2921 Check return value of font_spec_from_name.
64cc3cf6 2922 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2923
2924 * font.c (font_spec_from_name): Return Qnil if font name could not
2925 be parsed.
2926 (font_parse_name): Treat a `?' character as part of an XLFD.
2927
e301e634
CY
2928 * fns.c (Fsubstring): Doc fix.
2929
1c0db158
KH
29302009-01-19 Kenichi Handa <handa@m17n.org>
2931
51d861de 2932 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2933 (ftfont_list): Likewise.
2934
acf20901
JB
29352009-01-18 Juanma Barranquero <lekktu@gmail.com>
2936
fff4e459
JB
2937 * dbusbind.c (Fdbus_register_signal):
2938 * process.c (conv_sockaddr_to_lisp):
2939 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2940
acf20901
JB
2941 * callproc.c (Fgetenv_internal): Doc fix.
2942
e7abcdfb
CY
29432009-01-16 Chong Yidong <cyd@stupidchicken.com>
2944
2945 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2946 it is not even used.
2947
b60861e6
GM
29482009-01-16 Glenn Morris <rgm@gnu.org>
2949
2950 * font.c (Ffont_variation_glyphs): Silence compiler.
2951
8db52afe
JB
29522009-01-15 Juanma Barranquero <lekktu@gmail.com>
2953
2954 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2955 Reported by David Robinow <drobinow@gmail.com>.
2956
4cddb209
KH
29572009-01-15 Kenichi Handa <handa@m17n.org>
2958
51d861de 2959 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2960
f247f67b
JR
29612009-01-14 Jason Rumney <jasonr@gnu.org>
2962
2963 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2964 never a fontset. (Bug#1562)
f247f67b 2965
f56a4450
KH
29662009-01-14 Kenichi Handa <handa@m17n.org>
2967
2968 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2969 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2970
4e99855e
CY
29712009-01-13 Chong Yidong <cyd@stupidchicken.com>
2972
2973 * font.c (font_clear_prop): If clearing the family, clear the font
2974 width index too.
2975
fff4e459 2976 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2977
24f01470
JB
29782009-01-12 Juanma Barranquero <lekktu@gmail.com>
2979
2980 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2981 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2982 functions, use sizeof.
2983
a41240a3
MR
29842009-01-12 Martin Rudalics <rudalics@gmx.at>
2985
2986 * keyboard.c (read_char): Fix case where last_nonmenu_event
2987 returned a bad value with submenus. (Bug#447)
2988
944636b8
CY
29892009-01-12 Chong Yidong <cyd@stupidchicken.com>
2990
2991 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2992 family, clear the font width index too.
2993
0dad7c6f
JR
29942009-01-11 Jason Rumney <jasonr@gnu.org>
2995
2996 * keyboard.c (cmd_error_internal): Exit when errors occur before
2997 frame creation and not in daemon mode. (Bug#1836)
2998
7c2363af
CY
29992009-01-10 Chong Yidong <cyd@stupidchicken.com>
3000
3001 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3002 of a display vector, backtrack.
3003 (try_window_reusing_current_matrix): Check glyph type before
3004 referencing charpos member.
3005
97b1b294
EZ
30062009-01-10 Eli Zaretskii <eliz@gnu.org>
3007
3008 Fix Bug #876:
3009
3010 * coding.c (inhibit_null_byte_detection): New variable.
3011 (detect_coding, detect_coding_system): Don't pay attention to null
3012 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3013 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3014 <inhibit-iso-escape-detection>: Doc fix.
3015
4624b6e3
JR
30162009-01-09 Jason Rumney <jasonr@gnu.org>
3017
3018 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3019 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3020 Only report Unicode Plane 2 fonts as unicode-sip.
3021
323b840c
CY
30222009-01-09 Chong Yidong <cyd@stupidchicken.com>
3023
51d861de
SM
3024 * xfaces.c (Fx_font_family_list): Delete function.
3025 Move compatibility version to faces.el.
323b840c 3026
51d861de 3027 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3028
eba7400d
MR
30292009-01-09 Martin Rudalics <rudalics@gmx.at>
3030
3031 * frame.c (x_set_frame_parameters): Remember requested value for
3032 fullscreen before it's reset by the parameter handler.
3033
4b09796d
GM
30342009-01-09 Glenn Morris <rgm@gnu.org>
3035
3036 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3037 (last_command_event): ... and update all users.
4b09796d
GM
3038 (last_input_char): For clarity, rename to...
3039 (last_input_event): ... and update all users.
3040 (last-command-char, last-input-char): Move to subr.el as aliases.
3041 * cmds.c, commands.h: Update for last_command_char rename.
3042
14ccea62
CY
30432009-01-08 Chong Yidong <cyd@stupidchicken.com>
3044
51d861de 3045 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3046
5f004711
JR
30472009-01-08 Jason Rumney <jasonr@gnu.org>
3048
3049 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3050 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3051 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3052 Don't declare.
fff4e459 3053 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3054 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3055
b71f6f73
KH
30562009-01-07 Kenichi Handa <handa@m17n.org>
3057
50b06221 3058 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3059 remember the coding system used for decoding in
50b06221
KH
3060 coding_system (Bug#1039).
3061
b71f6f73 3062 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3063 breaking the loop. (Bug#870)
b71f6f73
KH
3064 (decode_coding_utf_16, decode_coding_emacs_mule)
3065 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3066 (decode_coding_charset): Likewise.
3067
56f668f7
MR
30682009-01-05 Martin Rudalics <rudalics@gmx.at>
3069
3070 * frame.c (x_set_frame_parameters): Make sure height (width) get
3071 applied when fullwidth (fullheight) is set. (Bug#1522)
3072
5da9424d
JB
30732009-01-04 Juanma Barranquero <lekktu@gmail.com>
3074
3075 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3076 (utc_base): Declare as ULONGLONG, not long double.
3077 (convert_time_raw): Delete.
3078 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3079 (initialize_utc_base): New function.
3080 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3081 (convert_from_time_t): Use initialize_utc_base; compute result with
3082 64-bit arithmetic.
3083 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3084
c4605e09
EZ
30852009-01-03 Eli Zaretskii <eliz@gnu.org>
3086
9acef61c 3087 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3088 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3089 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3090 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3091 [!subprocesses]: Define.
3092 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3093 (Flist_system_processes, Fsystem_process_attributes)
3094 [!subprocesses]: Call list_system_processes and
3095 system_process_attributes instead of returning Qnil.
3096
9acef61c
JB
3097 * dosfns.c (system_process_attributes, list_system_processes):
3098 New functions.
c4605e09
EZ
3099
3100 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3101
3102 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3103 Don't use the default (no-op) implementation.
3104
8b7d0a16
JR
31052009-01-03 Jason Rumney <jasonr@gnu.org>
3106
a6d46bc1
JR
3107 * keyboard.c (parse_modifiers_uncached): Wheel events are
3108 clicks (bug#687).
3109
8b7d0a16
JR
3110 * w32term.c (x_query_colors, x_query_color): New functions.
3111
3112 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3113 (svg_load_image): Cast returned pointers from dynamically loaded
3114 functions. Eliminate W32 specific code.
3115
bfe11752
DN
31162009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3117
89e2438a
DN
3118 * nsfns.m (x_set_foreground_color, x_set_background_color)
3119 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3120 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3121 x_ prefix instead of ns_. Update references.
3122 (syms_of_nsfns): Add a FIXME comment.
3123
3124 * nsterm.m (x_set_cursor_type): New prototype.
3125 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3126
bfe11752
DN
3127 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3128 for Solaris instead of incorrectly providing Qutime and Qcutime.
3129
031da700
EZ
31302009-01-02 Eli Zaretskii <eliz@gnu.org>
3131
3132 * w32.c (process_times): Compute sum of utime and stime.
3133 (system_process_attributes): Add Qtime to the alist.
3134
3135 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3136 and add them to the alist.
3137
3138 * process.c (top level) <Qtime, Qctime>: New variables.
3139 (syms_of_process): staticpro them.
3140 (Fsystem_process_attributes): Add their documentation to the doc
3141 string.
3142
3143 * process.h: Declare Qtime and Qctime.
3144
df23bf08
JR
31452009-01-02 Jason Rumney <jasonr@gnu.org>
3146
9acef61c 3147 * image.c (Qgobject): New symbol.
df23bf08
JR
3148 (syms_of_image): Initialize it.
3149 (init_svg_functions): Load some functions from gobject library.
3150
5bbdf7aa
DN
31512009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3152
3153 * frame.c (make_terminal_frame): Remove redundant code and useless
3154 block.
3155
63136da6
AS
31562009-01-01 Andreas Schwab <schwab@suse.de>
3157
3158 * process.c (conv_sockaddr_to_lisp): Add workaround for
3159 getsockname bug on BSD.
3160
9ef69046
CY
31612009-01-01 Chong Yidong <cyd@stupidchicken.com>
3162
d6fafbe0
CY
3163 * xfns.c (x_create_tip_frame): Set border width of the X window.
3164
51d861de 3165 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3166
f9c34147
JR
31672009-01-01 Jason Rumney <jasonr@gnu.org>
3168
9acef61c 3169 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3170 Don't block input, as per earlier xterm.c changes.
3171
f5497e45
AR
31722008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3173
3174 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3175 (ns_appkit_version_int): New function.
3176 (x-server-version): Use ns_appkit_version_int and follow 21+
3177 convention of returning 3 integers.
3178
c19cab20
KH
31792008-12-30 Kenichi Handa <handa@m17n.org>
3180
3181 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3182 (CHAR_SURROGATE_PAIR_P): New macro.
3183
3184 * font.h (struct font_driver): New member get_variation_glyphs.
3185
9acef61c 3186 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3187 (Ffont_variation_glyphs): New function.
3188 (syms_of_font): Defsubr it.
3189
3190 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3191 ftfont_variation_glyphs.
3192 (setup_otf_gstring): New function.
3193 (ftfont_drive_otf): Use it.
3194 (ftfont_shape_by_flt): Handle variation selector.
3195 (ftfont_variation_glyphs): New function.
3196
28cd591f
MR
31972008-12-30 Martin Rudalics <rudalics@gmx.at>
3198
3199 * frame.c (Vemacs_iconified): Remove.
3200
7f714baf
JR
32012008-12-30 Jason Rumney <jasonr@gnu.org>
3202
3203 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3204 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3205
9d2d22ab
CY
32062008-12-30 Chong Yidong <cyd@stupidchicken.com>
3207
3208 * indent.c (Fvertical_motion): Don't advance iterator if we have
3209 reseated to the desired position.
3210
3211 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3212 checking for pos match.
3213
545312c2
KH
32142008-12-30 Kenichi Handa <handa@m17n.org>
3215
1ede3eb6
KH
3216 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3217 just get the low 8-bit of the code.
3218
545312c2
KH
3219 * font.c (font_intern_prop): Validate str as multibyte.
3220
bd7bbf29
DN
32212008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3222
31e0750e
DN
3223 * dispextern.h (struct face): Move lface and hash from the middle
3224 of bitfields.
3225
bd7bbf29
DN
3226 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3227
b5672e7c
DN
32282008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3229
3230 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3231 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3232 instead of intervals.h.
3233
d704470f
AS
32342008-12-26 Andreas Schwab <schwab@suse.de>
3235
3236 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3237 cons.
3238
54b33868
MR
32392008-12-26 Martin Rudalics <rudalics@gmx.at>
3240
3241 * textprop.c (Qminibuffer_prompt): New variable.
3242 (syms_of_textprop): Initialize it.
3243 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3244 in minibuffer-prompt face. (Bug#1662)
3245
40b615d6
JR
32462008-12-25 Jason Rumney <jasonr@gnu.org>
3247
3248 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3249
baae5c2d
JR
32502008-12-24 Jason Rumney <jasonr@gnu.org>
3251
3252 * ralloc.c (r_alloc_reset_variable): New function.
3253
3254 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 3255 record of what points where. (Bug#716)
baae5c2d 3256
a9051c88
DN
32572008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
3258
3259 * minibuf.c (read_minibuf): Follow the non-interactive case when
3260 running as a daemon, before detaching.
3261
8b146312
AS
32622008-12-22 Andreas Schwab <schwab@suse.de>
3263
3264 * buffer.c (init_buffer): Use realloc instead of xrealloc.
3265 * gtkutil.c (free_widget_value): Use xfree instead of free.
3266
56f2de10
MR
32672008-12-22 Martin Rudalics <rudalics@gmx.at>
3268
3269 * frame.c (delete_frame): New function derived from
3270 Fdelete_frame to handle Qnoelisp value for FORCE argument.
3271 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
3272 (Fdelete_frame): Call delete_frame. Remove line from doc-string
3273 saying that FORCE non-nil doesn't run `delete-frame-functions'.
3274 * frame.h: Extern delete_frame.
3275 * window.c (window_loop):
3276 * terminal.c (delete_terminal):
3277 * xterm.c (x_connection_closed):
3278 * xfns.c (Fx_hide_tip):
9acef61c 3279 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 3280
1fc200d6
JR
32812008-12-21 Jason Rumney <jasonr@gnu.org>
3282
3283 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
3284 when character maps to .notdef character.
3285
5e252df2
SM
32862008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3287
3288 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
3289
99b72cc4
JR
32902008-12-20 Jason Rumney <jasonr@gnu.org>
3291
3292 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 3293 a graphical frame on Windows. (Bug#1325)
99b72cc4 3294
acc49a52
JD
32952008-12-20 Jan Djärv <jan.h.d@swipnet.se>
3296
3297 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
3298
6ea15123
CY
32992008-12-20 Chong Yidong <cyd@stupidchicken.com>
3300
3301 * minibuf.c (Fread_buffer): Doc fix.
3302
b2dab6c8
JR
33032008-12-20 Jason Rumney <jasonr@gnu.org>
3304
54ea0c87 3305 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 3306 server name in UNC paths. (Bug#719)
54ea0c87 3307
b2dab6c8 3308 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 3309 charbuf. (Bug#1035)
b2dab6c8 3310
6d1921be
DN
33112008-12-19 Daniel Engeler <engeler@gmail.com>
3312
3313 * sysdep.c (serial_configure): Fix typo.
3314
53934c98
DN
33152008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3316
3317 * sysdep.c: Include alloca.h.
f4f634e8
DN
3318 (system_process_attributes): Add implementation for Solaris.
3319
3320 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 3321
06e111a6
DN
33222008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3323
3324 Reorganize implementation of Flist_system_processes and
3325 Fsystem_process_attributes. No functional changes.
3326 * process.c: Don't #include pwd.h, grp.h and limits.h.
3327 (Flist_system_processes): Just call list_system_processes.
3328 (Fsystem_process_attributes): Just call system_process_attributes.
3329 (procfs_list_system_processes, time_from_jiffies)
3330 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
3331 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
3332
3333 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
3334 (list_system_processes): Rename from
3335 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3336 Provide a do nothing implementation.
3337 (system_process_attributes): Rename from
3338 procfs_list_system_processes.
3339 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3340 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3341
3342 * w32.c (list_system_processes): Rename from
3343 w32_list_system_processes.
3344 (system_process_attributes): Rename from
3345 w32_system_process_attributes.
3346
3347 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3348
3349 * process.h (w32_list_system_processes)
3350 (w32_system_process_attributes): Remove.
3351 (list_system_processes, system_process_attributes): New
3352 prototypes.
3353
6a705b23
KH
33542008-12-19 Kenichi Handa <handa@m17n.org>
3355
3356 * xfont.c (xfont_decode_coding_xlfd): New function.
3357 (xfont_encode_coding_xlfd): New function.
3358 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3359 (xfont_list): Decode and encode XLFD by iso-8859-1.
3360 (xfont_match): Likewise.
3361 (xfont_list_family): Likewise.
3362 (xfont_open): Likewise.
3363
d66c0241 3364 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3365 names are utf-8.
3366
d66c0241 3367 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3368 names are utf-8.
3369
5a130941
JD
33702008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3371
3372 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3373 changed.
bfd20325
JD
3374 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3375 clicked on a detached tool bar button.
5a130941 3376
fd95644b
DN
33772008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3378
3379 * emacs.c (main): Print and error and exit when no data is read
3380 from the pipe.
3381
e6eee6ae
JR
33822008-12-17 Jason Rumney <jasonr@gnu.org>
3383
3384 * w32font.c (w32font_has_char): Always return -1.
3385
a35dd56b
KH
33862008-12-16 Kenichi Handa <handa@m17n.org>
3387
3388 * font.c (font_open_entity): Fix previous change.
3389
0e3635c2
DN
33902008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3391
3392 * process.c: Include <limits.h>.
3393
d4835507 33942008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3395
3396 * font.c (font_update_drivers): Fix mistake in reconstructing the
3397 driver list.
3398
33992008-12-16 Chong Yidong <cyd@stupidchicken.com>
3400
3401 * font.c (font_clear_cache): Fix format of font cache data.
3402
e2cbc401
CY
34032008-12-15 Chong Yidong <cyd@stupidchicken.com>
3404
3405 * xftfont.c (xftfont_open): Free Xft font pattern if
3406 XftFontOpenPattern fails.
3407
3408 * xterm.c (x_free_frame_resources): Remove extraneous call to
3409 free_frame_faces.
3410
b131d535
CY
34112008-12-13 Chong Yidong <cyd@stupidchicken.com>
3412
3413 * xterm.c (x_delete_display): Move xim_close_dpy call to
3414 x_delete_terminal.
3415 (x_delete_terminal): Call xim_close_dpy.
3416
e6df5336
JR
34172008-12-13 Jason Rumney <jasonr@gnu.org>
3418
3419 * w32font.c (intern_font_name): New function.
3420 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3421 (w32font_open_internal, Fx_select_font): Decode font name.
3422 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3423
3424 * w32font.h (intern_font_name): Declare new function.
3425
3426 * w32uniscribe.c (add_opentype_font_name_to_list):
3427 Use intern_font_name.
3428
20d68145
CY
34292008-12-13 Chong Yidong <cyd@stupidchicken.com>
3430
9f2554de
CY
3431 * frame.c (Fdelete_frame): Call free_font_driver_list.
3432
3d9bec9a
CY
3433 * font.c (free_font_driver_list): Implement missing function.
3434
20d68145
CY
3435 * w32term.c (w32_term_init): Don't initialize the image cache
3436 here; it will be done in init_frame_faces.
3437
3438 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3439 (struct x_display_info): Remove unused member null_pixel. New
3440 member xim_callback_data.
3441
3442 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3443 (xim_initialize): Save pointer to callback function data.
3444 (xim_close_dpy): Free callback function data. Call XCloseIM,
3445 reverting 2008-11-04 change by David Smith.
3446 (x_term_init): Don't initialize the image cache here; it will be
3447 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3448 (x_delete_display): Free x_dnd_atoms member.
3449
96f9306b
KH
34502008-12-13 Kenichi Handa <handa@m17n.org>
3451
6dec9044
JB
3452 * font.c (font_rescale_ratio): Moved from xfaces.c.
3453 Argument type changed. Handle a font-spec too.
96f9306b 3454 (font_score): Check Vface_font_rescale_alist.
6dec9044 3455 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3456
3457 * xfaces.c (font_rescale_ratio): Moved to font.c.
3458
8d5b4964
CY
34592008-12-13 Chong Yidong <cyd@stupidchicken.com>
3460
3461 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3462
e6df5336
JR
34632008-12-12 Jason Rumney <jasonr@gnu.org>
3464
3465 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3466 Vwindow_system_version to the real w32 major version.
3467
97c6058a
DN
34682008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3469
3470 * term.c (init_tty): Move setting the terminal name before the
3471 potential user: maybe_fatal.
3472
ec4e88d7
CY
34732008-12-11 Chong Yidong <cyd@stupidchicken.com>
3474
d4835507
JB
3475 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3476 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3477
b4233ec9
JR
34782008-12-11 Jason Rumney <jasonr@gnu.org>
3479
8ec71e23 3480 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3481 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3482
b4233ec9 3483 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3484 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3485
011a0143
JB
34862008-12-11 Juanma Barranquero <lekktu@gmail.com>
3487
3488 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3489
3c309f34
JB
34902008-12-11 Juanma Barranquero <lekktu@gmail.com>
3491
3492 * process.c (Fsystem_process_attributes, syms_of_process):
3493 Fix typo in name of Ssystem_process_attributes.
3494 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3495
fedc6ab5
JB
34962008-12-11 Juanma Barranquero <lekktu@gmail.com>
3497
3498 * syntax.c (Fmodify_syntax_entry): Doc fix.
3499
ba3de0e8
JB
35002008-12-10 Juanma Barranquero <lekktu@gmail.com>
3501
3502 * font.c (Ffont_spec): Move usage to end of docstring.
3503
174f1c74
JR
35042008-12-10 Jason Rumney <jasonr@gnu.org>
3505
3506 * w32font.c (Qcham): New symbol.
3507 (font_supported_scripts): Add cham, and comments for other new
3508 scripts in bitfield from OpenType spec.
9d32f818
JR
3509 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3510 contain characters beyond the bmp.
174f1c74 3511
7b649478
KH
35122008-12-10 Kenichi Handa <handa@m17n.org>
3513
3514 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3515 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3516 Qunicode_sip.
3517
2133e2d1
JB
35182008-12-10 Juanma Barranquero <lekktu@gmail.com>
3519
3520 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3521 (Fcoding_system_put): Use QCdefault_char.
3522 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3523
9af886ee
CY
35242008-12-09 Chong Yidong <cyd@stupidchicken.com>
3525
74d819eb
CY
3526 * xftfont.c (syms_of_xftfont): Fix typo.
3527
4ccfa1c0 3528 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3529
7c19d3ae
DN
35302008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3531
3532 * emacs.c (main): Close daemon_pipe on exec.
3533
567826bb
CY
35342008-12-08 Chong Yidong <cyd@stupidchicken.com>
3535
3536 * termchar.h (struct tty): New members termcap_term_buffer and
3537 termcap_strings_buffer.
3538
3539 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3540 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3541 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3542 All callers changed.
3543 (init_tty): Store termcap data and string buffers in new struct
3544 tty members termcap_term_buffer and termcap_strings_buffer.
3545 (delete_tty): Free them.
4ccfa1c0 3546 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3547
aa96c42b
SZ
35482008-12-07 Seiji Zenitani <zenitani@mac.com>
3549
3550 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3551 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3552
b7e1d896
CY
35532008-12-06 Chong Yidong <cyd@stupidchicken.com>
3554
3555 * coding.c (make_conversion_work_buffer): Disable buffer
3556 modification hooks in the work buffer.
3557
b5ec91a5
EZ
35582008-12-05 Eli Zaretskii <eliz@gnu.org>
3559
3560 * process.c (procfs_system_process_attributes): If `nread' has a
3561 negative value, assign zero to it.
3562
a5d2a52b
CY
35632008-12-05 Chong Yidong <cyd@stupidchicken.com>
3564
68c5540b 3565 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3566
7bf1bb21
KH
35672008-12-05 Kenichi Handa <handa@m17n.org>
3568
3569 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3570 second character is a combining character.
3571
2fdc7d00
EZ
35722008-12-05 Eli Zaretskii <eliz@gnu.org>
3573
3574 * process.c (procfs_system_process_attributes): Don't use cmd,
3575 cmdsize, and q without initializing them first.
3576
bf6bfba8
JR
35772008-12-04 Jason Rumney <jasonr@gnu.org>
3578
3579 * w32font.c (w32font_draw): Initialize orig_clip before getting
3580 it, and delete it when finished.
3581
a3b1a468
DN
35822008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3583
3584 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3585 case when running as a daemon before detaching.
3586
8b8be8eb
JB
35872008-12-03 Juanma Barranquero <lekktu@gmail.com>
3588
805f2638 3589 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3590
b1bde622
KH
35912008-12-03 Kenichi Handa <handa@m17n.org>
3592
e500c47d
KH
3593 * font.c (font_at): Set `multibyte' at first.
3594
ca516334
KH
3595 * coding.c (decode_coding_charset): Check type of an element of
3596 vector VALIDS.
7bf1bb21 3597 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3598
4ccfa1c0 3599 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3600 (font_for_char): Likewise.
3601
1e5ecd37
CY
36022008-12-03 Chong Yidong <cyd@stupidchicken.com>
3603
d5b01609 3604 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3605 (font_update_lface): Handle fonts with corrupted size specs,
3606 i.e. non-int and non-float.
d5b01609 3607
11e3a6e4 3608 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3609 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3610 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3611
ab06788b
CY
3612 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3613
1e5ecd37 3614 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3615 underline_minimum_offset for underline position.
1e5ecd37 3616
63c125ab
DN
36172008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3618
3619 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3620
3621 * character.c (c_string_width): Specify the type for LEN.
3622
3a8406e1
KH
36232008-12-03 Kenichi Handa <handa@m17n.org>
3624
4ccfa1c0 3625 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3626 (decode_coding_utf_8): Likewise.
4ccfa1c0 3627 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3628 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3629
651df7d9
CY
36302008-12-02 Chong Yidong <cyd@stupidchicken.com>
3631
3632 * keyboard.c (make_lispy_position): Only use PT if the selected
3633 window is current.
3634
1f625c6c
AS
36352008-12-02 Andreas Schwab <schwab@suse.de>
3636
f7741ce9
AS
3637 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3638
1f625c6c
AS
3639 * doprnt.c (doprnt1): Fix size of charbuf.
3640
92bc2678
CY
36412008-12-02 Chong Yidong <cyd@stupidchicken.com>
3642
3643 * keyboard.c (timer_check): Revert last change.
3644
93b9e8cc
JB
36452008-12-02 Juanma Barranquero <lekktu@gmail.com>
3646
3647 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3648
fd7a37d5
JB
36492008-12-01 Juanma Barranquero <lekktu@gmail.com>
3650
3651 * makefile.w32-in: Update dependencies.
3652 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3653
c115043b
AS
36542008-12-01 Andreas Schwab <schwab@suse.de>
3655
3656 * font.c (register_font_driver): Use xmalloc.
3657 (font_put_frame_data): Likewise.
3658
f5668d2a
CY
36592008-12-01 Chong Yidong <cyd@stupidchicken.com>
3660
860d96be
CY
3661 * xfaces.c (realize_x_face): Make abort condition clearer.
3662
f5668d2a
CY
3663 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3664
379c17e7
CY
36652008-11-30 Chong Yidong <cyd@stupidchicken.com>
3666
3667 * keyboard.c (timer_check): After a timer runs, ensure that the
3668 selected window's buffer is current.
3669
35f36d65
JB
36702008-11-30 Juanma Barranquero <lekktu@gmail.com>
3671
f952c61c
JB
3672 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3673 It was accidentally restored by the Unicode merge.
3674
35f36d65
JB
3675 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3676
b23077df
JB
36772008-11-29 Juanma Barranquero <lekktu@gmail.com>
3678
3679 * w32proc.c: Include "coding.h".
3680 (Fw32_short_file_name): Encode filename passed to Windows API.
3681 (Fw32_long_file_name): Encode filename passed to Windows API and
3682 decode back the result. (Bug#1433)
3683
b8ebe9dd
KH
36842008-11-29 Kenichi Handa <handa@m17n.org>
3685
8cc53f96
KH
3686 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3687 not before accessing it.
3688
b8ebe9dd
KH
3689 * charset.c (Fdefine_charset_internal): After calculating
3690 min_char, max_char, and fastmap, copy the charset structure again.
3691 (encode_char): Fix the previous change.
3692
59bc82c0
SZ
36932008-11-28 Seiji Zenitani <zenitani@mac.com>
3694
3695 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3696
3697 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3698
3699 * nsterm.m (x_set_frame_alpha): New function.
3700
32247e3d
EZ
37012008-11-27 Eli Zaretskii <eliz@gnu.org>
3702
3703 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3704
b003e5ff
JB
37052008-11-27 Juanma Barranquero <lekktu@gmail.com>
3706
3707 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3708 pointer to check_face_name.
3709
708550f5
KH
37102008-11-27 Kenichi Handa <handa@m17n.org>
3711
3712 * category.h (SET_CATEGORY_SET): Call set_category_set.
3713 (set_category_set): Extern it.
3714
3715 * category.c (hash_get_category_set): New function.
3716 (Fmodify_category_entry): Adjusted for the change of
3717 char_table_ref_and_range. Call hash_get_category_set to get a
3718 category set to store in the table.
3719
3720 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3721 Funify_charset.
3722
2ae37cf0 3723 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3724 (DECODE_CHAR): Check if the decoder vector is ready.
3725 (ENCODE_CHAR): Check if the encoder char-table is ready.
3726 (maybe_unify_char): Extern it.
3727
3728 * charset.c (Vchar_unified_charset_table): Delete it.
3729 (inhibit_load_charset_map): New variable.
3730 (temp_charset_work): New variable.
3731 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3732 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3733 New macros.
3734 (load_charset_map): Meaning of control_flag changed. If
3735 inhibit_load_charset_map is nonzero, setup a table in
3736 temp_charset_work.
3737 (load_charset): New argument control_flag.
3738 (map_charset_for_dump): New function.
3739 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3740 map_charset_for_dump.
3741 (Fdefine_charset_internal): If the charset method is MAP, load
3742 mapping tables by calling load_charset.
3743 (Funify_charset): Don't load a mapping table but directly set
3744 Vchar_unify_table.
3745 (maybe_unify_char): New function.
3746 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3747 Handle the case of inhibit_load_charset_map being nonzero.
3748 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3749 Handle the case of inhibit_load_charset_map being nonzero.
3750 (Fclear_charset_maps): Just free temp_charset_work.
3751 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3752 variable.
3753
3754 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3755 change of char_table_ref_and_range.
3756 (char_table_ref_and_range): Change the meaning of argument FROM
3757 and TO. Now the caller must provide initial values for *FROM
3758 and *TO.
3759
3760 * fontset.c (fontset_add): Adjusted for the change of
3761 char_table_ref_and_range.
3762 (fontset_get_font_group): Likewise.
3763 (Ffontset_info): Likewise.
3764
3765 * keymap.c (describe_vector): Adjusted for the change of
3766 char_table_ref_and_range. For char-table, put boundary between
3767 non-ASCII and 8-bit characters.
3768
3769 * print.c (print_object): For bool-vector, delete unnecessary
3770 check of ASCII_BYTE_P.
3771
9196133b
JR
37722008-11-26 Jason Rumney <jasonr@gnu.org>
3773
3774 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3775 leading in font height. (Bug#879)
9196133b 3776
9f688acf
GM
37772008-11-26 Glenn Morris <rgm@gnu.org>
3778
3779 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3780 redefinition with ifdef. (Bug#1383)
3781
90d19aff
AR
37822008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3783
3784 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3785
4ccfa1c0 37862008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3787
3788 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3789 New EmacsView methods.
3790 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3791 Fixes bug #1048,1357,1414.
3792
37932008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3794
3795 Fix bug #1362.
3796 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3797 is not an indexed color.
3798 * nsterm.m (free_indexed_color): Add argument checking.
3799 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3800
e7d5ecb3
CY
38012008-11-24 Chong Yidong <cyd@stupidchicken.com>
3802
3803 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3804 Document confirm-after-completion value for
3805 minibuffer-completion-confirm.
3806
c285743c
JR
38072008-11-24 Jason Rumney <jasonr@gnu.org>
3808
3809 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3810 warning.
3811
b0857706
JR
38122008-11-23 Jason Rumney <jasonr@gnu.org>
3813
3814 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3815 restored before returning.
3816
3817 * w32font.c (check_face_name): New function.
3818 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3819 fonts. (Bug#642)
b0857706 3820
ee50ff07
MR
38212008-11-22 Martin Rudalics <rudalics@gmx.at>
3822
3823 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3824 confirm-nonexistent-file-or-buffer in doc-string.
3825
b8ff72fa
SM
38262008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3827
3828 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3829 Fix copy/paste typo. Add checks.
3830
cee53ed4
KH
38312008-11-21 Kenichi Handa <handa@m17n.org>
3832
3833 * coding.c (detect_coding_iso_2022): Reject invalid composition
3834 sequence.
3835 (DECODE_COMPOSITION_START): If the current source is the last
3836 block, and the current composition doesn't end, regard this
3837 sequence as invalid.
3838 (decode_coding_iso_2022): Handle invalid composition sequence.
3839
f6ef1e65
MR
38402008-11-20 Martin Rudalics <rudalics@gmx.at>
3841
3842 * window.c (coordinates_in_window): Don't return
3843 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3844 line when the window is not the rightmost one. (Bug#1372)
3845
e08b1705
MR
38462008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3847
3848 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3849
ad98e89f
EZ
38502008-11-15 Eli Zaretskii <eliz@gnu.org>
3851
3852 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3853 and bright_bg if noninteractive is non-zero.
3854
fb098a4b
CY
38552008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3856
3857 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3858 x_draw_glyph_string_background.
3859
3860 * w32term.c (x_draw_glyph_string): Likewise.
3861
ce952b6e
CY
38622008-11-15 Chong Yidong <cyd@stupidchicken.com>
3863
3864 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3865 the next glyph string once past the overhang width.
3866
3867 * nsterm.m (ns_draw_glyph_string): Likewise.
3868
3869 * w32term.c (x_draw_glyph_string): Likewise.
3870
26ea7079
CY
38712008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3872
3873 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3874 double file close.
3875
1c33c906
MR
38762008-11-14 Martin Rudalics <rudalics@gmx.at>
3877
3878 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3879 dedicated status of window before attempting to display another
3880 buffer in it.
3881
8fc29035
JB
38822008-11-14 Juanma Barranquero <lekktu@gmail.com>
3883
3884 * msdos.c (Fmsdos_long_file_names):
3885 (syms_of_msdos) <dos-unsupported-char-glyph>:
3886 * dosfns.c (Fint86): Fix typos in docstrings.
3887
55fb4286
EZ
38882008-11-14 Eli Zaretskii <eliz@gnu.org>
3889
3890 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3891
3fda0315
KY
38922008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3893
3894 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3895
7e849c17
CY
38962008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3897
3898 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3899
3900 * frame.h: Negative alpha means "don't touch".
3901
3902 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3903
3904 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3905
b9fd67bd
DN
39062008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3907
3908 * hftctl.c:
3909 * chpdef.h:
3910 * acldef.h: Remove files used only for systems no longer supported.
3911
3912 * Makefile.in: Fix .o alphabetical ordering.
3913 (hftctl.o): Remove dependency, file removed.
3914 (keymap.o, print.o): Depend on charset.h.
3915
d5998e03
KH
39162008-11-10 Kenichi Handa <handa@m17n.org>
3917
2ae37cf0 3918 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3919
be70e183
CY
39202008-11-08 Chong Yidong <cyd@stupidchicken.com>
3921
3922 * dired.c (file_name_completion): If completion_ignore_case is
3923 enabled, ignore case when checking completion-regexp-list.
3924
7cf94eac
EZ
39252008-11-08 Eli Zaretskii <eliz@gnu.org>
3926
3927 * vm-limit.c (get_lim_data): Fix last change.
3928
ee107a89
KH
39292008-11-08 Kenichi Handa <handa@m17n.org>
3930
3931 * character.c (Fget_byte): New function.
3932 (syms_of_character): Defsubr Fget_byte.
3933
5fd15622
CY
39342008-11-07 Chong Yidong <cyd@stupidchicken.com>
3935
3936 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3937 cursor position is valid after scrolling.
3938
13d62fad
JB
39392008-11-06 Juanma Barranquero <lekktu@gmail.com>
3940
3941 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3942
a1dd2936
GM
39432008-11-06 Glenn Morris <rgm@gnu.org>
3944
3945 * xterm.c (handle_one_xevent): Don't let popup menus cause
3946 mouse-autoselect-window related window switching. (Bug#1261)
3947
860cd236
CY
39482008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3949
3950 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3951
653a3150
AS
39522008-11-04 Andreas Schwab <schwab@suse.de>
3953
3954 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3955
870f5cac
CY
39562008-11-03 Chong Yidong <cyd@stupidchicken.com>
3957
3958 * xfns.c (Fx_wm_set_size_hint): New function.
3959
1e02f3cb
MR
39602008-11-03 Martin Rudalics <rudalics@gmx.at>
3961
3962 * textprop.c (Fprevious_single_char_property_change): Return 0
3963 when there's no change in a string. (Bug#1301)
3964
e630dfc6
MR
39652008-11-02 Martin Rudalics <rudalics@gmx.at>
3966
3967 * frame.c (do_switch_frame): New argument NORECORD passed to
3968 Fselect_window.
3969 (Fselect_frame): New argument NORECORD passed to
3970 do_switch_frame.
3971 (Fset_frame_selected_window): New argument NORECORD passed to
3972 Fselect_frame.
3973 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3974 in call of do_switch_frame.
3975 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3976 Handle NORECORD argument in call of Fselect_frame.
3977 * lisp.h (do_switch_frame, Fselect_frame)
3978 (Fset_frame_selected_window): Adjust declarations.
3979 * window.c (select_frame_norecord): New function.
3980 (run_window_configuration_change_hook): Use it and call
3981 Fselect_frame with NORECORD set.
3982 (Fselect_window): Pass NORECORD to Fselect_frame.
3983 (Fset_window_configuration): Handle NORECORD argument in call of
3984 do_switch_frame.
3985 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3986 Fset_frame_selected_window.
3987 * keyboard.c (command_loop_1): Handle NORECORD in call of
3988 Fselect_frame (currently ifdefd).
3989
9020b223
GM
39902008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3991
3992 * emacs.c (USAGE2): Untabify.
3993
793ffee8
SM
39942008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3995
3996 * composite.c (fill_gstring_header): Fix copy/paste typo.
3997
ab6d1131
MR
39982008-10-31 Martin Rudalics <rudalics@gmx.at>
3999
4000 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4001 (Fother_window): Rename argument and rewrite doc-string.
4002 (select_window_norecord): Fix return value. (Bug#1276)
4003
601a9cf1
JB
40042008-10-30 Juanma Barranquero <lekktu@gmail.com>
4005
4006 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4007 new frames overriding foreground for tooltips. Based on similar patch
4008 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4009
813b0652
CY
40102008-10-29 Chong Yidong <cyd@stupidchicken.com>
4011
4012 * emacs.c (Fdaemon_initialized): Initialize nfd.
4013
4414f58f
MR
40142008-10-29 Martin Rudalics <rudalics@gmx.at>
4015
4016 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4017 (Fwindow_text_height): Clarify doc-strings.
4018 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4019 doc-string of window-scroll-functions.
4020
ecdcaa09
RS
40212008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4022
4023 * category.c (syms_of_category): Fix typo in docstring.
4024
23fe745a
JB
40252008-10-28 Juanma Barranquero <lekktu@gmail.com>
4026
4027 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4028 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4029 Fix typos in docstrings.
4030
ff808935
DN
40312008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4032
4033 * emacs.c (daemon_pipe): Make non-static.
4034 (IS_DAEMON): Move definition ...
4035 * lisp.h (IS_DAEMON): ... here.
4036 (daemon_pipe): Declare.
4037 (is_daemon): Remove.
4038 * dispnew.c (init_display): Use IS_DAEMON.
4039
fc012771
SM
40402008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4041
4042 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4043 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4044
4045 * emacs.c (is_daemon): Remove.
4046 (main): Don't set is_daemon.
4047 (IS_DAEMON): New macro.
4048 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4049 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4050 parent exits.
4051 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4052
d8bdbe6f
CY
40532008-10-27 Chong Yidong <cyd@stupidchicken.com>
4054
d1a072bf
CY
4055 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4056 over-sized glyph, draw it with the default glyph width.
4057
e2e325aa
CY
4058 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4059 glyph, draw it with the default glyph width.
4060
4061 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4062 glyph, draw it with the default glyph width.
4063
d8bdbe6f
CY
4064 * xdisp.c (try_scrolling): When computing the distance from the
4065 scroll margin to PT, try moving some distance past the window
4066 bottom before giving up.
4067
7bfac547
MR
40682008-10-27 Martin Rudalics <rudalics@gmx.at>
4069
4070 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4071 (Fset_window_buffer): Explain in doc-string that a window can be
4072 "strongly" dedicated to its buffer.
4073
4ff029f6
DN
40742008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4075
4076 * emacs.c (daemon_name): New variable.
4077 (main): Deal with --daemon=SERVER_NAME.
4078 (Fdaemonp): Return a name if one was passed to --daemon.
4079
5790ef40
DN
40802008-10-26 Romain Francoise <romain@orebokech.com>
4081
f9bd0df9 4082 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4083 (main): Create a pipe before forking, make the parent exit only after
4084 the child has closed its end of the pipe. Move closing the
4085 descriptors ...
4086 (Fdaemon_initialized): ... here. New function.
4087
f5385255
SM
40882008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4089
4d632321
SM
4090 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4091 the previous unoptimized table.
4092
f5385255
SM
4093 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4094 the distinction between non-nil and non-t value of `dedicated'.
4095
6c56a0f3
CY
40962008-10-25 Chong Yidong <cyd@stupidchicken.com>
4097
4098 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4099 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4100
fec89261
MR
41012008-10-25 Martin Rudalics <rudalics@gmx.at>
4102
4103 * window.c (Fget_buffer_window, Fdelete_windows_on)
4104 (Freplace_buffer_in_windows): Make buffer argument optional and
4105 rename to buffer_or_name.
4106
34fcddd0
CY
41072008-10-24 Chong Yidong <cyd@stupidchicken.com>
4108
f5385255
SM
4109 * xdisp.c (handle_single_display_spec, handle_display_prop):
4110 Undo 2005-05-16 change.
34fcddd0
CY
4111 (handle_stop): Pop iterator if it's loaded with an empty string.
4112 (get_overlay_strings_1): Don't save iterator if it's loaded with
4113 an empty string (bug#1201).
4114
064766f2
KH
41152008-10-24 Kenichi Handa <handa@m17n.org>
4116
4117 * ftfont.c (ftfont_otf_features): Fix previous change.
4118 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4119 calling ftfont_otf_features.
4120
f9bd0df9 41212008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4122
4123 * font.c (font_match_p): Fix for the case that a vector of
4124 characters is in script-representative-chars.
4125
1dae9197
MA
41262008-10-24 Michael Albinus <michael.albinus@gmx.de>
4127
4128 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4129 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4130 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4131 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4132 macro. (Bug#1186).
4133
f9bd0df9 41342008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4135
4136 * s/sol2-10.h: New file.
4137
878a4584
JB
41382008-10-23 Juanma Barranquero <lekktu@gmail.com>
4139
4140 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4141 poor beast has survived 9+ years and the jump from xterm.c!).
4142
cd265ca6
MR
41432008-10-23 Martin Rudalics <rudalics@gmx.at>
4144
4145 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4146 Reword doc-string.
f5385255 4147 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4148
472a4dc9
JB
41492008-10-23 Juanma Barranquero <lekktu@gmail.com>
4150
4151 * character.c (syms_of_character) <script-representative-chars>:
4152 <unicode-category-table>: Doc fixes.
4153
159bd5a2
NF
41542008-10-23 Noah Friedman <friedman@splode.com>
4155
4156 * coding.c (make_conversion_work_buffer): Check that
4157 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4158 Fget_buffer_create.
4159
49f9c344
KH
41602008-10-23 Kenichi Handa <handa@m17n.org>
4161
4162 * font.c (font_add_log): Check the values of extra properties.
4163
12bb3111
MR
41642008-10-22 Martin Rudalics <rudalics@gmx.at>
4165
4166 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4167 Reword doc-string.
4168 (Fset_window_parameter): Use NILP.
4169 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4170 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4171
bbeb4e99
JB
41722008-10-22 Juanma Barranquero <lekktu@gmail.com>
4173
4174 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4175
41762008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4177
4178 * nsfns.m (ns_appkit_version): New function.
4179 (x-server-version): Use it.
4180 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4181 (x-server-vendor): Don't check_ns().
4182
4183 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4184
a9b555d3
JB
41852008-10-22 Juanma Barranquero <lekktu@gmail.com>
4186
4187 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4188 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4189
4626499f
KH
41902008-10-22 Kenichi Handa <handa@m17n.org>
4191
e3681952
KH
4192 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4193 scripts.
4194
4626499f
KH
4195 * category.c (word_boundary_p): Check scripts instead of charset.
4196 Handle nil value in word-separating-categories and
4197 word-combining-categories.
4198 (syms_of_category): Fix docstrings of word-separating-categories
4199 and word-combining-categories.
4200
1560f91a
EZ
42012008-10-21 Eli Zaretskii <eliz@gnu.org>
4202
4203 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4204 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4205
f4668441
MR
42062008-10-21 Martin Rudalics <rudalics@gmx.at>
4207
4208 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4209 Rename arg "buffer" to "buffer_or_name".
4210 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4211 it optional.
4212 (no_switch_window): Remove since the return value is not used.
a9b555d3 4213 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4214 Consider window as dedicated when Fwindow_dedicated_p returns a
4215 non-nil value.
4216 * lisp.h: Remove prototype for no_switch_window.
4217
fd75ddb2
JD
42182008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4219
4220 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4221 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4222
07295713
KH
42232008-10-21 Kenichi Handa <handa@m17n.org>
4224
4225 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4226 check Vlatin_extra_code_table.
4227
712adc82
EZ
42282008-10-20 Eli Zaretskii <eliz@gnu.org>
4229
4230 * fileio.c (Fset_file_modes): Doc fix.
4231
f549eb0b
MA
42322008-10-19 Michael Albinus <michael.albinus@gmx.de>
4233
4234 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4235 in arrays.
4236
aac0c6e3
MR
42372008-10-19 Martin Rudalics <rudalics@gmx.at>
4238
4239 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4240 Mention kill-buffer in doc-string.
4241 (Fset_window_buffer): Reinsert tem check removed in last commit.
4242 (Fenlarge_window, Fshrink_window): Have argument names and
4243 doc-string follow Elisp manual more closely.
4244
42452008-10-18 Eli Zaretskii <eliz@gnu.org>
4246
4247 * fileio.c (Fset_file_modes): Doc fix.
4248
42492008-10-18 Martin Rudalics <rudalics@gmx.at>
4250
4251 * window.c (Fwindow_width, Fset_window_start)
4252 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
4253 (Fdelete_windows_on, Freplace_buffer_in_windows):
4254 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
4255 (Fwindow_dedicated_p): Make window argument optional.
4256 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
4257 (Fset_window_buffer): Respect any non-nil dedicated value for
4258 window. Rename "buffer" argument to "buffer_or_name".
4259
42602008-10-18 Ulrich Mueller <ulm@gentoo.org>
4261
4262 * m/sh3.h: New file, machine description for SuperH.
4263
42642008-10-17 Martin Rudalics <rudalics@gmx.at>
4265
4266 * window.c (Fsplit_window): Rename arg horflag to horizontal.
4267
42682008-10-17 Kenichi Handa <handa@m17n.org>
4269
4270 * ftfont.c (ftfont_otf_features): Fix indexing
4271 gsub_gpos->FeatureList.Feature. Check the validity of indices.
4272
42732008-10-16 Magnus Henoch <mange@freemail.hu>
4274
4275 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
4276 (Fdbus_call_method_asynchronously): Ditto.
4277 This change makes C-h f display the argument list.
4278
42792008-10-16 Chong Yidong <cyd@stupidchicken.com>
4280
4281 * fileio.c (Fexpand_file_name): Doc fix.
4282
4283 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
4284 of :foreground and :background equivalent to unspecified (20.x
4285 compatibility).
4286
42872008-10-15 Eli Zaretskii <eliz@gnu.org>
4288
4289 * buffer.c (syms_of_buffer): Doc fix.
4290
42912008-10-14 Kenichi Handa <handa@m17n.org>
4292
4293 * font.c (font_clear_prop): When clearing font width, clear the
4294 average width field too.
4295
42962008-10-12 Andreas Schwab <schwab@suse.de>
4297
4298 * ftfont.c (ftfont_shape_by_flt): Make static.
4299 * ftfont.h (ftfont_shape_by_flt): Don't declare.
4300
4301 * font.c: Don't include <m17n-flt.h>.
4302
43032008-10-10 Eli Zaretskii <eliz@gnu.org>
4304
4305 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
4306
43072008-10-09 Eli Zaretskii <eliz@gnu.org>
4308
4309 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
4310 away code.
4311
43122008-10-09 Chong Yidong <cyd@stupidchicken.com>
4313
4314 * dispnew.c (update_text_area): Avoid looping due to large glyph
4315 overhangs (bug#1070).
4316
43172008-10-09 Kenichi Handa <handa@m17n.org>
4318
4319 * fontset.c (face_for_char): If face->fontset is negative, just
4320 return ascii_face.
4321
f5385255
SM
4322 * font.c (font_delete_unmatched): Fix previous change.
4323 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
4324
43252008-10-09 Martin Rudalics <rudalics@gmx.at>
4326
4327 * frame.c (Fraise_frame): On text-only terminals select frame in
4328 order to make it visible. (Bug#1061)
4329
43302008-10-08 Chong Yidong <cyd@stupidchicken.com>
4331
4332 * fontset.c (fontset_find_font): Check frame validity.
4333
43342008-10-07 Chong Yidong <cyd@stupidchicken.com>
4335
a9b555d3 4336 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4337 (xg_display_close): Allow Emacs to close all displays (bug#985).
4338
43392008-10-06 Andreas Schwab <schwab@suse.de>
4340
f5385255 4341 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4342
43432008-10-06 Chong Yidong <cyd@stupidchicken.com>
4344
f5385255 4345 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4346
a9b555d3 4347 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4348
4349 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4350 during initialization.
4351
43522008-10-04 Eli Zaretskii <eliz@gnu.org>
4353
4354 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4355 whole thing on MSDOS frames as well as on a TTY.
4356
4357 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4358 well as for TTY.
4359 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4360 well as on a TTY.
4361
4362 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4363 as well as for TTY.
4364
4365 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4366
4367 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4368 MSDOS frames as well.
4369
43702008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4371
4372 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4373 correct arguments.
b71ac3dd 4374 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4375
43762008-10-03 Glenn Morris <rgm@gnu.org>
4377
4378 * emacs.c (USAGE1): Add --daemon.
4379
43802008-10-02 Eli Zaretskii <eliz@gnu.org>
4381
4382 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4383 100, so it's in percents as advertised.
4384
43852008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4386
4387 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4388 (ns_output.current_cursor, ns_output.desired_cursor)
4389 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4390 (FRAME_NEW_CURSOR_COLOR): Remove.
4391
4392 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4393 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4394 enumeration (HOLLOW_BOX_CURSOR, etc.).
4395
4396 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4397 (draw_window_cursor): Simplify code.
f5385255
SM
4398 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4399 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4400 updates manually.
a9b555d3
JB
4401 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4402 Use core Emacs cursor types.
aac0c6e3 4403
b8ff72fa 4404 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4405
44062008-10-02 Martin Rudalics <rudalics@gmx.at>
4407
4408 * process.c (Faccept_process_output): Fix doc-string.
4409
44102008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4411
4412 * gmalloc.c (__sbrk): Also define for uClibc.
4413
4414 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4415 for uClibc.
4416
44172008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4418
4419 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4420 styles.
4421 (nsfont_open): Reenable the cache.
4422
44232008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4424
4425 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4426 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4427
44282008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4429
4430 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4431 a suspended terminal.
4432
44332008-09-30 Michael Albinus <michael.albinus@gmx.de>
4434
4435 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4436
44372008-09-30 Eli Zaretskii <eliz@gnu.org>
4438
4439 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4440
44412008-09-30 Chong Yidong <cyd@stupidchicken.com>
4442
4443 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4444 in a continued line coincides with a line beginning.
4445
44462008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4447
4448 * nsfont.m (nsfont_trait_distance): Fix bug.
4449 (nsfont_list): Return a list rather than a vector (syncs with Handa
4450 changes of 2008-05-14).
4451 (nsfont_open): Improve logging.
4452
44532008-09-29 Andreas Schwab <schwab@suse.de>
4454
4455 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4456
44572008-09-28 Martin Rudalics <rudalics@gmx.at>
4458
4459 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4460 name as char-resolve-modifiers.
4461 Reported by: Markus Triska <markus.triska@gmx.at>
4462
44632008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4464
4465 * dispnew.c (init_display): Return earlier when running as a daemon.
4466
44672008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4468
4469 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4470
44712008-09-27 Eli Zaretskii <eliz@gnu.org>
4472
4473 * composite.c (Fcomposition_get_gstring)
4474 (Fcompose_region_internal, Fcompose_string_internal)
4475 (Ffind_composition_internal): Doc fix.
4476 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4477 (syms_of_composite) <auto-composition-function>: Doc fix.
4478 (syms_of_composite) <composition-function-table>: Doc fix.
4479
44802008-09-25 Chong Yidong <cyd@stupidchicken.com>
4481
4482 * search.c (wordify): New argument for lax word-ends.
4483 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4484
44852008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4486
4487 * lisp.h (is_daemon): Declare.
4488 * dispnew.c (init_display): Do not try to initialize the terminal
4489 when running as a daemon.
4490
44912008-09-22 Chong Yidong <cyd@stupidchicken.com>
4492
4493 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4494 x_display_pixel_height.
4495
44962008-09-22 Martin Rudalics <rudalics@gmx.at>
4497
4498 * undo.c (record_point): Don't call Fundo_boundary for first
4499 change. (Bug#731)
4500
45012008-09-22 Juanma Barranquero <lekktu@gmail.com>
4502
4503 * emacs.c (Fdaemonp): Doc fix.
4504
45052008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4506
4507 * emacs.c (main): Place #ifdef in the proper place.
4508
45092008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4510
4511 * emacs.c (standard_args): Add --daemon.
4512 (main): Disconnect from the terminal when --daemon is passed.
4513 (is_daemon): New variable.
4514 (Fdaemonp): New function.
4515 (syms_of_emacs): Defsubr it.
4516
45172008-09-20 Chong Yidong <cyd@stupidchicken.com>
4518
4519 * xdisp.c (get_next_display_element): Handle string display
4520 correctly when checking for the end of a box run.
4521
45222008-09-20 Glenn Morris <rgm@gnu.org>
4523
4524 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4525 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4526 (Frename_file): Avoid copying to trash if a rename involves
4527 a delete. (Bug#964).
4528
45292008-09-20 Eli Zaretskii <eliz@gnu.org>
4530
4531 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4532 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4533 frames as well as termcap frames.
4534 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4535 get_named_tty.
4536
45372008-09-19 Eli Zaretskii <eliz@gnu.org>
4538
4539 * process.c (procfs_system_process_attributes): Fix cmdline in
4540 case /proc/PID/cmdline is empty.
4541
4542 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4543 x_display_pixel_height.
4544
45452008-09-19 Juanma Barranquero <lekktu@gmail.com>
4546
4547 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4548
4549 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4550 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4551
45522008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4553
4554 * dispextern.h (struct it): Move line_wrap away from the middle of
4555 bitfields. Move voffset in struct iterator_stack_entry after the
4556 bitfields. Move tab_width near after another short.
4557
45582008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4559
4560 * frame.h (struct frame): Move alpha from the middle of bitfields.
4561
4562 * window.h (struct window): Move frozen_window_start_p after the
4563 rest of the bitfields to reduce padding.
4564
45652008-09-18 Chong Yidong <cyd@stupidchicken.com>
4566
4567 * xterm.h (x_display_info): Remove `height' and `width' members.
4568
4569 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4570
4571 * w32term.h (w32_display_info): Remove `height', `width',
4572 `height_in', and `width_in' members.
4573
b8ff72fa
SM
4574 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4575 New functions.
aac0c6e3
MR
4576 (x_calc_absolute_position): Use them.
4577 (x_term_init): Omit removed `height' and `width' members.
4578
b8ff72fa
SM
4579 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4580 New functions.
aac0c6e3
MR
4581 (w32_read_socket, x_calc_absolute_position): Use them.
4582 (w32_initialize_display_info, w32_term_init): Omit removed members
4583 of w32_display_info.
4584
b8ff72fa
SM
4585 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4586 New functions.
4587 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4588
b8ff72fa
SM
4589 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4590 New functions.
aac0c6e3
MR
4591 (x_calc_absolute_position): Use them.
4592 (x_term_init): Omit removed `height' and `width' members.
4593
4594 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4595 (compute_tip_xy):
4596 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4597 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4598 x_display_pixel_width.
4599
46002008-09-18 Kenichi Handa <handa@m17n.org>
4601
4602 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4603 (composition_compute_stop_pos): Fix handling of static composition.
4604 (Fcomposition_get_gstring): Check FROM and TO at first.
4605
46062008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4607
46e722a9 4608 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4609 mixup (YAILOM).
4610
46112008-09-17 Chong Yidong <cyd@stupidchicken.com>
4612
4613 * indent.c (Fvertical_motion): Use position reported by iterator
4614 instead of PT for determining screen motion (bug#943).
4615
46162008-09-17 Romain Francoise <romain@orebokech.com>
4617
4618 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4619
46202008-09-17 Kenichi Handa <handa@m17n.org>
4621
4622 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4623
4624 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4625 if necessary.
4626
46272008-09-16 Kenichi Handa <handa@m17n.org>
4628
4629 * coding.c (make_conversion_work_buffer): Avoid calling
4630 Fget_buffer_create if it is not necessary.
4631
46322008-09-15 Martin Rudalics <rudalics@gmx.at>
4633
4634 * window.c (Fselect_window): Don't update window_select_count and
4635 use_time when norecord is not nil.
4636
46372008-09-14 Kenichi Handa <handa@m17n.org>
4638
4639 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4640 specpdl_ptr.
4641
46422008-09-12 Kenichi Handa <handa@m17n.org>
4643
4644 * indent.c (scan_for_column): Don't handle automatic composition
4645 if the current buffer is not associated with a window.
4646
4647 * composite.c (composition_reseat_it): If the current buffer is
4648 not associated with a window, ignore the automatic composition.
4649 (find_automatic_composition): Likewise.
4650
46512008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4652
4653 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4654 (Fgpm_mouse_stop): Use it.
4655 * termhooks.h (close_gpm): Declare.
4656 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4657 connection if Gpm_GetEvent fails.
4658
4659 * window.c (set_window_buffer): Always preserve current-buffer.
4660
46612008-09-12 Glenn Morris <rgm@gnu.org>
4662
4663 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4664
46652008-09-11 Glenn Morris <rgm@gnu.org>
4666
4667 * charset.c (charset-map-path): Doc fix.
4668
46692008-09-10 Kenichi Handa <handa@m17n.org>
4670
4671 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4672
4673 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4674 compose a grapheme cluster with the preceding base glyph.
4675
4676 * composite.c (composition_compute_stop_pos): Fix previous change.
4677 Reset cmp_it->id to -1 at first.
4678
46792008-09-10 Glenn Morris <rgm@gnu.org>
4680
4681 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4682
46832008-09-09 Chong Yidong <cyd@stupidchicken.com>
4684
4685 * keyboard.c (read_key_sequence): Reapply translation maps when
4686 switching keyboards.
4687
46882008-09-09 Kenichi Handa <handa@m17n.org>
4689
4690 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4691 characters.
4692
4693 * composite.c (FORWARD_CHAR): Fix calculation
4694 of (POSITION).pos_byte.
4695 (composition_compute_stop_pos): Limit the search of composition to
4696 at most 500 characters ahead. If we reach the limit or find a
4697 newline, set cmp_it->ch to -2 and return 0.
4698 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4699
47002008-09-08 Kenichi Handa <handa@m17n.org>
4701
4702 * indent.c (Fvertical_motion): Be sure to set
4703 it_overshoot_expected if it.cmp_it.id is non-negative.
4704
47052008-09-07 Andreas Schwab <schwab@suse.de>
4706
4707 * callproc.c (Fcall_process): Don't hold references to string data
4708 across garbage collection. Move initialisation of new_argv down
4709 to avoid compiler bug.
4710
47112008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4712
4713 * process.c (Fsystem_process_attributes): Doc fix.
4714
47152008-09-07 Chong Yidong <cyd@stupidchicken.com>
4716
4717 * callproc.c (Fcall_process): Canonicalize current directory name.
4718
4719 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4720 iterator advances to the next line if the current line ends in a
4721 continued tab.
4722
47232008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4724
4725 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4726 member to point to cmp_from.
4727
4728 * xdisp.c: Doc fix for references to gidx data member.
4729
47302008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4731
4732 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4733
47342008-09-07 Kenichi Handa <handa@m17n.org>
4735
4736 * composite.c (FORWARD_CHAR): Check STOP after
4737 incrementing (POSITION).pos.
4738
47392008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4740
4741 * process.c (Fsystem_process_attributes): Doc fix.
4742
47432008-09-06 Chong Yidong <cyd@stupidchicken.com>
4744
4745 * keyboard.c (Ftop_level): Doc fix.
4746
47472008-09-06 Eli Zaretskii <eliz@gnu.org>
4748
4749 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4750 minibuffer, don't let lower part of menu invade the echo area.
4751
4752 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4753 "char *q" to access menu text and advance through it. Revert the
4754 change that displayed ">" instead of ASCII character 0x10.
4755
47562008-09-05 Eli Zaretskii <eliz@gnu.org>
4757
4758 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4759 toggle boxes and radio buttons on MS-DOS as well.
4760
47612008-09-05 Kenichi Handa <handa@m17n.org>
4762
4763 * composite.c (autocmp_chars): Check lookback count.
4764 (composition_compute_stop_pos): Set cmp_it->lookback.
4765 (composition_reseat_it): Check lookback count.
4766 (struct position_record): New struct.
4767 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4768 (find_automatic_composition): New function.
4769 (composition_adjust_point): Use find_automatic_composition.
4770
4771 * dispextern.h (struct composition_it): New member lookback.
4772
47732008-09-02 Chong Yidong <cyd@stupidchicken.com>
4774
4775 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4776 if moving by a single line.
4777
47782008-09-02 Andreas Schwab <schwab@suse.de>
4779
4780 * xterm.c (x_delete_display): Fix merge error.
4781
4782 * fileio.c (Fexpand_file_name): Remove unused variables.
4783
47842008-09-02 Eli Zaretskii <eliz@gnu.org>
4785
4786 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4787 storage on all platforms, not just on DOS_NT.
4788
47892008-09-02 Jason Rumney <jasonr@gnu.org>
4790
b8ff72fa
SM
4791 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4792 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4793
47942008-09-01 Chong Yidong <cyd@stupidchicken.com>
4795
4796 * xfaces.c (Finternal_set_alternative_font_family_alist)
4797 (Finternal_set_alternative_font_registry_alist): Properly copy
4798 entire alist structure.
4799
48002008-09-01 Kenichi Handa <handa@m17n.org>
4801
d66c0241 4802 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4803 representative chars of the script is a vector.
d66c0241
JB
4804 (ftfont_list): Handle the case where the representative chars of
4805 the script is a vector.
aac0c6e3
MR
4806
4807 * character.c (syms_of_character): Docstring of
4808 script-representative-chars fixed.
4809
48102008-08-31 Eli Zaretskii <eliz@gnu.org>
4811
4812 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4813 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4814 the menu. Allocate larger buffer for `text', to account for
4815 possible ^C characters.
4816
48172008-08-31 Martin Rudalics <rudalics@gmx.at>
4818
4819 * xdisp.c (prepare_menu_bars): Don't call
4820 Vwindow_size_change_functions with arg Qt.
4821
48222008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4823
4824 * font.h (font_range):
4825 * fileio.c (report_file_error):
46e722a9
SM
4826 * composite.c (composition_update_it): Yet another int/Lisp_Object
4827 mixup (YAILOM).
aac0c6e3
MR
4828
48292008-08-30 Glenn Morris <rgm@gnu.org>
4830
4831 * data.c (Fmake_variable_frame_local): Doc fix.
4832
4833 * frame.c (Fmodify_frame_parameters): Doc fix.
4834
48352008-08-30 Eli Zaretskii <eliz@gnu.org>
4836
4837 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4838 needed by GetTokenInformation.
4839 (w32_system_process_attributes): Check return values of all system
4840 APIs.
4841
4842 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4843 only when the state changes.
4844 (IT_update_begin, IT_update_end): Add termscript trace.
4845
4846 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4847 clipboard is unavailable. Set dst to NULL if it doesn't point to
4848 malloc'ed data.
4849 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4850 passing random values to xfree.
4851
4852 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4853 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4854
48552008-08-29 Jason Rumney <jasonr@gnu.org>
4856
4857 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4858
48592008-08-29 Eli Zaretskii <eliz@gnu.org>
4860
4861 * composite.c (fill_gstring_body): Avoid compiler warnings.
4862
4863 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4864 LGLYPH_SET_CODE to avoid compiler warnings.
4865
2ae37cf0 4866 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4867
4868 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4869
4870 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4871 LGLYPH_SET_CODE.
4872
48732008-08-29 Kenichi Handa <handa@m17n.org>
4874
4875 * fileio.c (report_file_error): Don't downcase the first character
4876 of errstring if it is still unibyte.
4877
48782008-08-29 Kenichi Handa <handa@m17n.org>
4879
4880 These changes are to re-implement the automatic composition so
4881 that it doesn't use text properties.
4882
4883 * Makefile.in (ftfont.o): Depend on composite.h.
4884 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4885
4886 * character.h (Vunicode_category_table): Extern it.
4887
4888 * character.c (Vunicode_category_table): New variable.
4889 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4890
4891 * chartab.c (optimize_sub_char_table): Perform more greedy
4892 optimization.
4893
b8ff72fa
SM
4894 * composite.h (enum composition_method):
4895 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4896 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4897 (Vcomposition_function_table): Extern it.
4898 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4899 (composition_gstring_put_cache, composition_gstring_from_id)
4900 (composition_gstring_p, composition_gstring_width)
4901 (composition_compute_stop_pos, composition_reseat_it)
4902 (composition_update_it, composition_adjust_point): Extern them.
4903 (Fcomposition_get_gstring): EXFUN it.
4904
d66c0241 4905 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4906 (Vcomposition_function_table)
4907 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4908 (gstring_hash_table, gstring_work, gstring_work_headers):
4909 New variables.
aac0c6e3
MR
4910 (gstring_lookup_cache, composition_gstring_put_cache)
4911 (composition_gstring_from_id, composition_gstring_p)
4912 (composition_gstring_width, fill_gstring_header)
4913 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4914 (composition_reseat_it, composition_update_it)
b8ff72fa 4915 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4916 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4917 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4918 Defsubr compostion_get_gstring.
4919
4920 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4921 cmp_id.
4922 (struct glyph_string): Delete the member gidx. New members
4923 cmp_id, cmp_from, and cmp_to.
4924 (enum it_method): Delete GET_FROM_COMPOSITION.
4925 (struct composition_it): New struct.
4926 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4927 Delete c, len, cmp_id, cmp_len in u.comp.
4928
4929 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4930 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4931 (enum lglyph_indices): Likewise.
b8ff72fa 4932 (font_range): Adjust extern.
aac0c6e3
MR
4933 (font_fill_lglyph_metrics): Extern it.
4934
4935 * font.c (QCf): New variable.
4936 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4937 (font_prepare_composition): Delete this function.
4938 (font_range): Type and arguments changed.
4939 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4940 (font_fill_lglyph_metrics): New function.
b8ff72fa 4941 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4942 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4943 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4944 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4945
4946 * fontset.h (font_for_char): Extern it.
4947
4948 * fontset.c (font_for_char): New function.
4949
4950 * ftfont.c: Include composite.h.
4951 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4952 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4953
4954 * indent.c: Include composite.h and dispextern.h.
4955 (check_composition): Delete this function.
4956 (scan_for_column): Handle composition by
4957 composition_compute_stop_pos, composition_reseat_it, and
4958 composition_update_it.
4959 (compute_motion): Likewise.
4960 (Fvertical_motion): Fix checking of composition.
4961
4962 * keyboard.c (adjust_point_for_property): Check composition by
4963 composition_adjust_point.
4964
b8ff72fa 4965 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4966 struct glyph_string.
4967
b8ff72fa
SM
4968 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4969 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4970 struct glyph.
4971 (produce_composite_glyph): Likewise.
4972
b8ff72fa
SM
4973 * w32term.c (x_draw_composite_glyph_string_foreground):
4974 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4975 (x_draw_glyph_string): Likewise.
4976
4977 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4978 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4979
4980 * xdisp.c: Include font.h.
4981 (it_props): Delete the entry for Qauto_composed.
4982 (init_iterator): Initialize it->cmp_it.id to -1.
4983 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4984 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4985 (handle_auto_composed_prop): Delete it.
4986 (handle_composition_prop): Handle only static composition.
4987 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4988 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4989 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4990 (pop_it): Likewise.
4991 (get_next_element): Delete next_element_from_composition.
4992 (CHAR_COMPOSED_P): New macro.
4993 (get_next_display_element): For automatic composition, get a face
4994 from the font in the glyph-string.
4995 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4996 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4997 (next_element_from_string): Check if the character at the current
4998 position is composed by CHAR_COMPOSED_P.
4999 (next_element_from_buffer): Likewise.
d66c0241
JB
5000 (next_element_from_composition): Adjust for the change of struct it.
5001 Update it->cmp_it.
b8ff72fa
SM
5002 (dump_glyph): Adjust for the change of struct glyph.
5003 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5004 it and struct glyph. Don't handle automatic composition here.
5005 (fill_gstring_glyph_string): New function.
5006 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5007 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5008 (BUILD_GSTRING_GLYPH_STRING): New macro.
5009 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5010 automatic composition.
b8ff72fa 5011 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5012 struct glyph.
b8ff72fa 5013 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5014
b8ff72fa 5015 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5016 the change of struct glyph_string.
5017 (x_draw_glyph_string): Likewise.
5018
50192008-08-29 Glenn Morris <rgm@gnu.org>
5020
5021 * buffer.c (word-wrap): Doc fix.
5022 * xdisp.c (truncate-partial-width-windows): Doc fix.
5023 Increase default to 50.
5024
50252008-08-29 Chong Yidong <cyd@stupidchicken.com>
5026
5027 * xdisp.c (update_tool_bar_unwind): New function.
5028 (update_tool_bar): Temporarily set selected frame before building
5029 tool-bar items.
5030
50312008-08-28 Michael Albinus <michael.albinus@gmx.de>
5032
5033 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5034 snprintf, respectively.
5035 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5036
50372008-08-28 Chong Yidong <cyd@stupidchicken.com>
5038
5039 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5040 LDFLAGS to GNUstep CC invocation.
5041
50422008-08-27 Chong Yidong <cyd@stupidchicken.com>
5043
5044 * indent.c (Fvertical_motion): Revert last change. Handle the
5045 general case where we are moving forward, and PT spans multiple
5046 screen lines.
5047
5048 * eval.c (find_handler_clause): Temporarily increase
5049 max-lisp-eval-depth while printing the backtrace buffer, to
5050 guarantee that help-mode code can run.
5051
50522008-08-27 Eli Zaretskii <eliz@gnu.org>
5053
5054 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5055 colors under -rv.
5056 (IT_set_frame_parameters): Don't swap foreground and background
5057 colors if `(reverse . t)' is present in the frame properties.
5058 (internal_terminal_init): Call init_frame_faces only for the
5059 initial frame.
5060
50612008-08-27 Andreas Schwab <schwab@suse.de>
5062
5063 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5064
50652008-08-27 Andreas Schwab <schwab@suse.de>
5066
5067 * search.c (search_buffer): Set char_base to zero only at the end.
5068
50692008-08-27 Kenichi Handa <handa@m17n.org>
5070
b8ff72fa 5071 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5072
50732008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5074
5075 * xterm.c (x_term_init): Temporarily hide the partially
5076 initialized terminal while calling vendor-specific-keysyms.
5077
50782008-08-26 Eli Zaretskii <eliz@gnu.org>
5079
5080 * msdos.c (internal_terminal_init): Most initializations done only
5081 once, especially initial_screen_colors[] and termscript open.
5082
50832008-08-26 Chong Yidong <cyd@stupidchicken.com>
5084
5085 * eval.c (Fcondition_case): Doc fix.
5086
5087 * widgetprv.h (EmacsFramePart): Change font member to the new font
5088 struct.
5089
5090 * widget.c: Include character.h and font.h for XSETFONT.
5091 (setup_frame_gcs): Compute X font id from font struct, just once.
5092
50932008-08-26 Eli Zaretskii <eliz@gnu.org>
5094
5095 * term.c (get_named_tty): Fix last change.
5096
50972008-08-26 Chong Yidong <cyd@stupidchicken.com>
5098
5099 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5100 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5101
51022008-08-25 Eli Zaretskii <eliz@gnu.org>
5103
5104 * frame.c (do_switch_frame): Mark previously displayed frame as
5105 obscured for FRAME_MSDOS_P frames as well.
5106
51072008-08-24 Eli Zaretskii <eliz@gnu.org>
5108
5109 * frame.c (make_terminal_frame): Initialize f->terminal,
5110 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5111 Set the top frame to newly created frame.
5112 (Fmake_terminal_frame): Reuse the_only_display_info.
5113
5114 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5115 estimating available memory.
5116
b97439ce 51172008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5118
5119 * nsterm.m (ns_draw_window_cursor): Don't call
5120 NSDisableScreenUpdates and NSEnableScreenUpdates on
5121 non-NS_IMPL_COCOA systems.
5122
51232008-08-23 Andreas Schwab <schwab@suse.de>
5124
5125 * process.c (procfs_system_process_attributes): Fix use of
5126 uninitialized variables.
5127
51282008-08-23 Eli Zaretskii <eliz@gnu.org>
5129
5130 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5131
5132 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5133 calling tty-set-up-initial-frame-faces.
5134
b8ff72fa
SM
5135 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5136 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5137
5138 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5139 addition to output_termcap.
5140
5141 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5142
5143 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5144 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5145 highlight.
5146
5147 * process.c [!subprocesses]: Define QCname.
5148 (syms_of_process): Intern and staticpro it.
5149
5150 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5151 Adjust for changes in encoding/decoding routines.
5152 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5153 encode_coding and decode_coding.
5154
b8ff72fa 5155 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5156
5157 * dosfns.c: Include frame.h before termhooks.h.
5158 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5159 variable termscript.
5160
5161 * s/msdos.h (USER_FULL_NAME): Define.
5162 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5163
5164 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5165 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5166 pw->pw_gecos.
5167
5168 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5169 SELECTED_FRAME as additional (1st) argument.
5170 (tty_read_avail_input): Handle output_msdos_raw in
5171 addition to output_termcap.
5172
5173 * msdos.c: Include frame.h before termhooks.h.
5174 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5175 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5176 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5177 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5178 (IT_set_terminal_modes, IT_reset_terminal_modes)
5179 (IT_set_frame_parameters): Use tty->termscript instead of a global
5180 variable termscript.
5181 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5182 global variable terminal_coding. Don't refer to
5183 Vnonascii_translation_table.
5184 (internal_terminal_init): Set Vwindow_system in current_kboard.
5185 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5186 Announce date and time of session start, if termscript is open.
5187 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5188 term.c:init_tty). Open termscript only of not already open.
5189 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5190 here instead of dos_ttraw. Don't initialize display if this is an
5191 initial tty. Don't set FRAME_FONT.
5192 (Vwindow_system_version): Bump to 23.
5193 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5194 is available, set up mouse_position_hook.
5195 (dos_ttraw, IT_set_terminal_modes): If called with initial
5196 terminal, do nothing.
5197 (IT_set_frame_parameters): Handle the Qtty_type frame
5198 parameter by calling internal_terminal_init.
5199 (dos_set_window_size, show_mouse_face)
5200 (clear_mouse_face, IT_note_mode_line_highlight)
5201 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5202 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5203 (initialize_msdos_display): New function.
5204 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5205 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5206 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5207 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5208 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5209 (request_sigio, unrequest_sigio): Don't define, now defined on
5210 sysdep.c.
5211 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5212
5213 * term.c [MSDOS]: Include msdos.h.
5214 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5215 conditional to DOS_NT. Allow only one call to this function in a
5216 session. Don't allocate a new struct tty_display_info; instead,
5217 reuse the_only_display_info. Call get_tty_size to get screen
5218 dimensions. Call init_baud_rate to set bad_rate.
5219 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5220 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5221 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5222 (get_tty_terminal, get_named_tty, Ftty_type)
5223 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5224 output_termcap.
b8ff72fa
SM
5225 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5226 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5227 only when subprocesses are supported.
aac0c6e3
MR
5228
5229 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5230 f->output_data.x.
5231 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5232 terminal devices.
5233
5582fbc7 5234 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5235 x_output.
5236 (FRAME_FONT): Use output_data.tty.
5237 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5238 (struct x_display_info): Rename from display_info. Update all users in
5239 msdos.c.
aac0c6e3 5240 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5241 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5242 (dos_ttraw): Update prototype.
5243
5244 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5245 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5246
52472008-08-23 Jason Rumney <jasonr@gnu.org>
5248
5249 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
5250 (fn_TIFFSetDirectory): New library function used.
5251 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
5252 (tiff_load): Use :index to select among multiple images. Set count
5253 property when multiple images exist.
5254 (gif_format): Use :index, not :image.
5255
52562008-08-23 Chong Yidong <cyd@stupidchicken.com>
5257
5258 * xdisp.c (try_scrolling): Check INT_MAX instead of
5259 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
5260 to obtain INT_MAX.
5261
52622008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
5263
5264 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
5265
52662008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
5267
5268 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
5269 GNUstep library location.
5270
52712008-08-21 Chong Yidong <cyd@stupidchicken.com>
5272
5273 * xfaces.c (x_update_menu_appearance): Check validity of menu font
5274 before using it.
5275
5276 * puresize.h (BASE_PURESIZE): Increase to 1250000.
5277
52782008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5279
5280 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
5281 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
5282 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
5283 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
5284 (EmacsApp-cursor_blink_handler): Remove declaration.
5285 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
5286 match 01 Feb 2008 changes in xterm.c.
5287 (ns_read_socket): Add cast to avoid warning.
5288 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
5289 GNUstep.
5290
52912008-08-20 Chong Yidong <cyd@stupidchicken.com>
5292
5293 * xselect.c (x_get_foreign_selection): Return nil if desired
5294 selection could not be obtained, instead of signalling an error.
5295
52962008-08-20 David Reitter <david.reitter@gmail.com>
5297
5298 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
5299 * nsterm.m: Remove ns-specific code for cursor blinking.
5300 (ns_draw_window_cursor): Clear cursor properly rather than
5301 redrawing the area. Respect width of bar cursors.
5302 These changes enable the use of generic blink-cursor-mode and
5303 generic cursor types in NS and support smooth cursor movements (do
5304 not blink off after command).
5305 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
5306 Nextstep, too.
5307
53082008-08-19 Kenichi Handa <handa@m17n.org>
5309
5310 * font.c (Vfont_log_deferred): New variable.
5311 (font_add_log): Check Vfont_log_deferred.
5312 (font_deferred_log): New function.
5313
5314 * font.h (font_deferred_log): Extern it.
5315
5316 * fontset.c (reorder_font_vector): Use encoding charset of fonts
5317 for sorting.
5318 (face_for_char): Use deferred log.
5319
53202008-08-18 Kenichi Handa <handa@m17n.org>
5321
5322 * fontset.c (face_for_char): Add font log.
5323
5324 * font.c (font_add_log): Add the font properties :script, :lang,
5325 and :otf in the log.
5326
53272008-08-17 Chong Yidong <cyd@stupidchicken.com>
5328
5329 * xdisp.c: Remove dead code.
5330 (handle_invisible_prop, next_overlay_string): Defer call to
5331 setup_for_ellipsis.
5332 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
5333
53342008-08-15 Chong Yidong <cyd@stupidchicken.com>
5335
5336 * xfaces.c (lookup_derived_face): Properly handle possible zero
5337 return value of get_lface_attributes.
5338 (merge_faces): Don't tell lookup_derived_face to signal an error
5339 if face is not found.
5340
5341 * dired.c (Fdirectory_files): Doc fix.
5342
5343 * process.c (make_process): Initialize kill_without_query struct
5344 member.
5345
53462008-08-15 Eli Zaretskii <eliz@gnu.org>
5347
5348 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5349 Alternative calculation of totphys for Visual Studio 6.
5350
5351 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5352
5353 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5354 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5355 All users changed.
5356 (stat): Only root directory passed to GetDriveType. Allow RAM
5357 disk as well as local fixed disk when w32-get-true-file-attributes
5358 is set to `local'.
5359 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5360 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5361 (w32_cached_id, w32_add_to_cache): New functions.
5362 (get_name_and_id): Look account names in the cache before calling
5363 lookup_account_sid.
5364 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5365 New initialization flags.
5366 (globals_of_w32): Initialize them to zero.
5367 (w32_system_process_attributes): Use w32_cached_id and
5368 w32_add_to_cache.
5369
53702008-08-14 Lawrence Mitchell <wence@gmx.li>
5371
5372 * lread.c (Fread_char, Fread_char_exclusive): If no character
5373 event is read before timeout is reached, return nil, rather than
5374 converting to a number.
5375
53762008-08-14 Chong Yidong <cyd@stupidchicken.com>
5377
5378 * fns.c (use_dialog_box): Doc fix.
5379
5380 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5381 on OS X.
5382
53832008-08-13 Chong Yidong <cyd@stupidchicken.com>
5384
5385 * frame.c (Qns_parse_geometry): New var.
5386 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5387
53882008-08-11 Chong Yidong <cyd@stupidchicken.com>
5389
5390 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5391 space character in calculating tabs.
5392
53932008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5394
5395 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5396
53972008-08-10 Glenn Morris <rgm@gnu.org>
5398
5399 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5400 silence gcc "limited range of data type" warnings in some
5401 make_fixnum_or_float calls.
5402
54032008-08-09 Eli Zaretskii <eliz@gnu.org>
5404
5405 * w32.c (w32_system_process_attributes): If the process does not
5406 exist, return nil.
5407
5408 * w32.c: Include thelp32.h, psapi.h and coding.h.
5409 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5410 declarations.
5411 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5412 (Process32Next_Proc): New typedefs.
5413 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5414 (g_b_init_process32_next, g_b_init_open_thread_token)
5415 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5416 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5417 (g_b_init_get_process_working_set_size)
5418 (g_b_init_global_memory_status_ex): New static variables.
5419 (globals_of_w32): Initialize them.
5420 (create_toolhelp32_snapshot, process32_first, process32_next)
5421 (open_thread_token, impersonate_self, revert_to_self)
5422 (get_process_memory_info, get_process_working_set_size)
5423 (global_memory_status, global_memory_status_ex): New wrapper
5424 functions.
5425 (w32_list_system_processes, w32_system_process_attributes)
5426 (enable_privilege, restore_privilege, ltime, process_times):
5427 New functions.
5428 (convert_time_raw): New function.
5429 (convert_time): Remove conversion of FILETIME into time in 100
5430 nsec units, call convert_time_raw instead.
5431
5432 * process.h (w32_list_system_processes, w32_system_process_attributes):
5433 Add prototypes.
5434 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5435 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5436 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5437 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5438
5439 * process.c (Fsystem_process_attributes): Doc fix.
5440
54412008-08-08 Chong Yidong <cyd@stupidchicken.com>
5442
5443 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5444 a continued multi-char glyph; if so, advance to the actual glyph.
5445
54462008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5447
5448 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5449
5450 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5451 (.m.o): Use it.
5452 * config.in: Regenerate.
5453
54542008-08-07 Chong Yidong <cyd@stupidchicken.com>
5455
5456 * xdisp.c (redisplay_window): Revert last change.
5457 (try_window): Check bottom scroll margin too.
5458
54592008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5460
5461 * config.in: Regenerate.
5462
5463 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5464 -list-load-path-shadows'.
5465 (nsgui.h): Reduce number of things depending on it.
5466
54672008-08-06 Chong Yidong <cyd@stupidchicken.com>
5468
5469 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5470 instead of window-end which does the wrong thing at eob.
5471 (try_cursor_movement): Minor optimization.
5472 (redisplay_window): If scroll margin is defined, don't assume
5473 window doesn't need scrolling.
5474
54752008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5476
5477 * config.in: Regenerate.
5478
5479 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5480 (mostlyclean): Don't delete *.d under NS.
5481
5482 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5483
54842008-08-06 Kenichi Handa <handa@m17n.org>
5485
5486 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5487
54882008-08-06 Andreas Schwab <schwab@suse.de>
5489
5490 * config.in: Regenerate.
5491
54922008-08-05 Chong Yidong <cyd@stupidchicken.com>
5493
5494 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5495 forcing a window start.
5496
5497 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5498 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5499
55002008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5501
5502 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5503 argument.
5504
55052008-08-05 Juanma Barranquero <lekktu@gmail.com>
5506
5507 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5508 <scroll-down-aggressively, before-change-functions>:
5509 <after-change-functions>: Reflow docstrings.
5510
55112008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5512 Ken Raeburn <raeburn@gnu.org>
5513
5514 Dock menu customization, based on a patch by Ken Raeburn, plus some
5515 other fixes.
5516 * nsmenu.m (dockMenu): New variable.
5517 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5518
5519 * nsterm.h (dockMenu): Declare.
5520
5521 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5522 (ns_term_init): Initialize dockMenu.
5523 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5524 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5525 left.
5526
5527 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5528
55292008-08-04 Chong Yidong <cyd@stupidchicken.com>
5530
5531 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5532
5533 * config.in: Regenerate.
5534
55352008-08-04 Seiji Zenitani <zenitani@mac.com>
5536
5537 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5538
55392008-08-04 Chong Yidong <cyd@stupidchicken.com>
5540
5541 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5542
55432008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5544
5545 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5546
5547 * keyboard.h: Comment an #endif.
5548
5549 * lisp.h (have_menus_p): Adjust comment.
5550
5551 * menu.c (find_and_return_menu_selection): Fix comparison with
5552 client_data.
5553
5554 * nsmenu.m (popup_activated_flag): New variable.
5555 (popup_activated): New function.
5556 (menu-or-popup-active-p): New exported lisp definition.
5557 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5558 when popup done.
5559 (ns_popup_dialog): Set popup_activated_flag.
5560
5561 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5562 version for GNUstep (handled by conditional typedef in nsterm.m).
5563 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5564 in rgb.txt).
5565
5566 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5567
5568 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5569
5570 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5571
5572 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5573 shortcircuit if popup_activated like GTK and X toolkit.
5574
5575 * m/inter386.h: Change DARWIN to DARWIN_OS.
5576
5577 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5578 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5579 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5580 comment on NO_SOCK_SIGIO.
5581
55822008-08-03 Chong Yidong <cyd@stupidchicken.com>
5583
5584 * nsterm.m (windowDidResize): Remove stopModal call.
5585
55862008-08-03 Andreas Schwab <schwab@suse.de>
5587
5588 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5589 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5590
55912008-08-02 Chong Yidong <cyd@stupidchicken.com>
5592
5593 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5594 Don't use uninitialized pointer variable when using getrlimit.
5595
55962008-08-02 Jason Rumney <jasonr@gnu.org>
5597
5598 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5599
56002008-08-02 Eli Zaretskii <eliz@gnu.org>
5601
5602 * alloc.c (NSTATICS): Bump to 0x640.
5603
5604 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5605
5606 * lisp.h: Add prototype for directory_files_internal.
5607
5608 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5609 New functions.
5610 (syms_of_process): Defsubr them. Add initializations for various
5611 Q* symbols used in procfs_system_process_attributes.
5612 (procfs_list_system_processes, procfs_system_process_attributes)
5613 [HAVE_PROCFS]: New functions.
5614 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5615 (procfs_get_total_memory): New functions.
5616
56172008-08-01 Juanma Barranquero <lekktu@gmail.com>
5618
5619 * xfaces.c (Fx_load_color_file): Fix previous change;
5620 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5621
56222008-08-01 Michael Albinus <michael.albinus@gmx.de>
5623
5624 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5625
56262008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5627
5628 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5629
56302008-08-01 Chong Yidong <cyd@stupidchicken.com>
5631
5632 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5633
5634 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5635 define NSApplicationDelegateReplySuccess.
5636 (EmacsView -converstationIdentifier): Use long instead of
5637 NSInteger for GNUstep, since it doesn't have NSInteger.
5638
5639 * xmenu.c: Revert last change.
5640
5641 * keyboard.h: Fix last change.
5642
56432008-08-01 Juanma Barranquero <lekktu@gmail.com>
5644
5645 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5646 on Windows.
5647
56482008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5649
5650 Warning clearing and clean-up in NS port.
5651 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5652 Add prototypes.
5653 * nsgui.h (FACE_DEFAULT): Remove, unused.
5654 (XGCValues): Change colors to unsigned long.
5655 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5656 nsterm.m.
5657 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5658 (ns_list_fonts): Remove, unused.
5659 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5660 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5661 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5662 (nsfont_draw): Compare face colors to 0, not nil.
5663 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5664 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5665 (-addSubmenuWithTitle:): Use NSMenuItem class.
5666 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5667 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5668 (ns_clip_to_row): Make gc arg a BOOL.
5669 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5670 ns_clip_to_row() call.
5671 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5672 used). Cast FRAME_FONT assignments.
5673 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5674 (ns_string_to_lispmod): Change arg to const char.
5675 (ns_term_init): Use NSMenuItem class.
5676 (EmacsApp -openFile:): Move to different section of file.
5677 (EmacsApp -application:openFiles:): Don't return a value, call
5678 -replyToOpenOrPrint:.
5679 (EmacsView -keyDown:): Fix up cast.
5680 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5681 (EmacsView -menuDown:): Cast tag in call to
5682 find_and_call_menu_selection().
5683 (ns_list_fonts): Remove, unused.
5684 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5685 (ns_fontname_to_xlfd): Make static.
5686 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5687 Remove prototypes (now in keyboard.h).
5688 (next_menubar_widget_id): Remove, unused.
5689 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5690 Remove prototypes (now in keyboard.h).
5691 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5692
56932008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5694
5695 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5696 (floatfns.o): Depend on syssignal.h.
5697 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5698
5699 * systty.h: Fix previous change that removed BSD_TERMIOS.
5700 Add comments to #ifdefs.
5701
57022008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5703
5704 * w32fns.c (w32-load-color-file): Remove.
5705 (x-open-connection): Use renamed Fx_load_color_file.
5706 * xfaces.c (x-load-color-file): Add.
5707 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5708 Emacs.clr.
5709 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5710
57112008-07-31 Michael Albinus <michael.albinus@gmx.de>
5712
5713 * dbusbind.c (Fdbus_call_method_asynchronously)
5714 (Fdbus_method_error_internal): New defuns.
5715 (xd_read_message): Handle also reply messages.
5716 (Vdbus_registered_functions_table): Extend docstring.
5717
57182008-07-31 Juanma Barranquero <lekktu@gmail.com>
5719
5720 * keyboard.c (gobble_input): Fix previous change.
5721
57222008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5723
5724 * bitmaps/README:
5725 * xfns.c:
5726 * termcap.c:
5727 * term.c:
5728 * syswait.h:
5729 * systty.h:
5730 * systime.h:
5731 * syssignal.h:
5732 * sysdep.c:
5733 * process.h:
5734 * process.c:
5735 * print.c:
5736 * ndir.h:
5737 * lread.c:
5738 * keyboard.c:
5739 * getpagesize.h:
5740 * floatfns.c:
5741 * fileio.c:
5742 * emacs.c:
5743 * doc.c:
5744 * dispnew.c:
5745 * dired.c:
5746 * data.c:
5747 * callproc.c:
5748 * buffer.c:
5749 * README:
5750 * Makefile.in:
5751 * s/template.h:
5752 * s/msdos.h:
5753 * m/vax.h: Remove VMS support.
5754 * s/vms.h:
5755 * vlimit.h:
5756 * uaf.h:
5757 * temacs.opt:
5758 * param.h:
5759 * ioctl.h: Remove file.
5760
57612008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5762
5763 * s/ms-w32.h (MULTI_KBOARD): Remove.
5764 * xterm.c:
5765 * xselect.c:
5766 * xfns.c:
5767 * window.c:
5768 * w32term.c:
5769 * w32fns.c:
5770 * terminal.c:
5771 * termhooks.h:
5772 * term.c:
5773 * sysdep.c:
5774 * keyboard.h:
5775 * keyboard.c:
5776 * frame.h:
5777 * frame.c:
5778 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5779 * config.in: Regenerate.
5780
57812008-07-30 Jason Rumney <jasonr@gnu.org>
5782
5783 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5784
5785 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5786 (w32font_open_internal): Get unicode version of textmetrics.
5787 Don't enable or disable glyph indices here.
5788 (w32font_open): Disable use of glyph indices.
5789
5790 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5791
57922008-07-30 Chong Yidong <cyd@stupidchicken.com>
5793
5794 * minibuf.c (Vread_buffer_function): Doc fix.
5795
57962008-07-30 John Paul Wallington <jpw@pobox.com>
5797
5798 * minibuf.c (read_buffer_completion_ignore_case): New var.
5799 (Fread_buffer): Use it.
5800
58012008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5802
5803 * systty.h (sensemode): Remove empty #if. Remove reference to
5804 BSD_TERMIOS, unused.
5805
5806 * sysdep.c: Remove reference to DGUX.
5807 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5808
5809 * config.in: Regenerate.
5810
58112008-07-30 Jason Rumney <jasonr@gnu.org>
5812
5813 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5814
58152008-07-29 Jason Rumney <jasonr@gnu.org>
5816
5817 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5818 is populated.
5819 (uniscribe_encode_char): Always use uniscribe.
5820 Avoid using context if cache is populated.
5821
58222008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5823
5824 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5825 open menu.
5826
5827 * gtkutil.c (menu_nav_ended): Remove.
5828 (create_menus): Remove signal connect for menu_nav_ended.
5829
58302008-07-28 Chong Yidong <cyd@stupidchicken.com>
5831
5832 * xdisp.c (redisplay_window): Check return value of
5833 compute_window_start_on_continuation_line before forcing a window
5834 start.
5835
58362008-07-28 Jason Rumney <jasonr@gnu.org>
5837
5838 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5839
5840 * w32term.c (w32_enable_unicode_output, cleartype_active):
5841 Remove obsolete display options.
5842 (x_draw_glyph_string_background): Don't use old cleartype_active
5843 workaround.
5844 (w32_initialize): Remove cleartype_active initialization.
5845 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5846
58472008-07-28 Andreas Schwab <schwab@suse.de>
5848
5849 * lisp.h (init_weak_hash_tables, syms_of_font)
5850 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5851 (remove_hash_entry): Don't declare.
5852 * eval.c (maybe_call_debugger): Make static and move before use.
5853 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5854 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5855 * xterm.h (x_set_frame_alpha): Declare.
5856
58572008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5858
5859 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5860 (create_menus): Connect selection-done to menu_nav_ended.
5861
58622008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5863
5864 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5865 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5866 parameter with read of 'alpha' one.
5867 (Qns_frame_parameter): Remove.
5582fbc7 5868 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5869 (next-selection-coding-system, Vselection_coding_system)
5870 (Vnext_selection_coding_system): Drop.
5871
58722008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5873
5874 * nsfns.m (do-applescript, do_applescript): Rename to
5875 ns-do-applescript, ns_do_applescript, and move within file.
5876
58772008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5878
5879 Remove support for Mac Carbon.
5880 * mactoolbox.c:
5881 * macterm.h:
5882 * macterm.c:
5883 * macselect.c:
5884 * macmenu.c:
5885 * macgui.h:
5886 * macfns.c:
5887 * mac.c: Remove file.
5888 * s/darwin.h:
5889 * m/intel386.h:
5890 * xfaces.c:
5891 * xdisp.c:
5892 * window.c:
5893 * tparam.c:
5894 * termhooks.h:
5895 * termcap.c:
5896 * term.c:
5897 * syssignal.h:
5898 * sysselect.h:
5899 * sysdep.c:
5900 * process.c:
5901 * lread.c:
5902 * lisp.h:
5903 * keyboard.c:
5904 * image.c:
5905 * fringe.c:
5906 * frame.h:
5907 * frame.c:
5908 * fontset.c:
5909 * font.h:
5910 * font.c:
5911 * fns.c:
5912 * fileio.c:
5913 * emacs.c:
5914 * dispnew.c:
5915 * dispextern.h:
5916 * config.in:
5917 * atimer.c:
2ae37cf0 5918 * Makefile.in: Remove code for Carbon.
aac0c6e3 5919
f0131492 59202008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5921
5922 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5923
59242008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5925
5926 * macterm.h (kCGBitmapByteOrder32Host): New define for
5927 non-universal SDKs.
5928
5929 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5930 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5931
5932 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5933 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5934
59352008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5936
5937 * w32inevt.c: Include dispextern.h.
5938
59392008-07-26 Andreas Schwab <schwab@suse.de>
5940
5941 * print.c (print_object): Fix off-by-one in last change.
5942
59432008-07-25 Juanma Barranquero <lekktu@gmail.com>
5944
5945 * term.c (syms_of_term): Don't initialize default_orig_pair,
5946 default_set_foreground and default_set_background on Windows.
5947
59482008-07-25 Jason Rumney <jasonr@gnu.org>
5949
5950 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5951 ScriptItemize. Clean up return value checking. Remove unused
5952 variables.
5953 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5954 shaping engine.
5955
5956 * w32font.c (w32font_has_char): Handle the case where we can't
5957 determine the script for a character.
5958
59592008-07-25 Chong Yidong <cyd@stupidchicken.com>
5960
5961 * term.c (syms_of_term): Initialize default_orig_pair,
5962 default_set_foreground, and default_set_background.
5963
5964 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5965 clash (bug#86).
5966 (getloadavg): Callers changed.
5967
5968 * image.c (svg_load_image): Fix last change.
5969 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5970 image size is valid. Use g_object_unref instead of deprecated
5971 rsvg_handle_free to free rsvg handle.
5972 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5973
59742008-07-25 Jason Rumney <jasonr@gnu.org>
5975
5976 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5977 surrogates before looking up glyph index.
5978 (w32font_text_extents): Encode as surrogates if falling back to
5979 functions that need UTF-16 wide chars.
5980
5981 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5982 BMP as surrogates before looking up glyph index.
5983
59842008-07-25 Chong Yidong <cyd@stupidchicken.com>
5985
5986 * image.c (svg_load_image): Check for failure in return value of
5987 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5988
59892008-07-25 Jason Rumney <jasonr@gnu.org>
5990
5991 * w32font.c (Fx_select_font): Reverse sense of second arg.
5992
59932008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5994
5995 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5996 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5997
5998 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5999 (PURESIZE): Use it.
6000
60012008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6002
6003 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6004 * m/alpha.h (TEXT_END):
6005 * m/ibmrs6000.h (TEXT_END):
6006 * m/macppc.h (TEXT_END):
6007 * s/darwin.h (TEXT_END):
6008 * s/msdos.h (TEXT_END): Remove, unused.
6009 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6010 * s/cygwin.h: Remove comment.
6011
6012 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6013 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6014 * m/intel386.h (DOT_GLOBAL_START):
6015 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6016 (USG): Remove, file not used on USG platforms.
6017
6018 * Makefile.in (HAVE_X11): Remove empty #else.
6019
60202008-07-24 Andreas Schwab <schwab@suse.de>
6021
6022 * fileio.c (Finsert_file_contents): Properly adjust undo list
6023 after format conversion.
6024
60252008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6026
6027 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6028 (menu_nav_ended): Remove.
6029 (create_menus): Remove signal connect for menu_nav_ended.
6030 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6031 create_menus.
6032 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6033
60342008-07-23 Jason Rumney <jasonr@gnu.org>
6035
6036 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6037 with opened font.
6038 (w32font_open): Set font type to gdi.
6039
6040 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6041
60422008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6043
6044 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6045 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6046 defines it.
6047 * unexec.c (ADDR_CORRECT): Define unconditionally.
6048
6049 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6050
6051 * unexec.c: Remove code depending on !COFF and USG, the file is
6052 not used for such systems.
6053
6054 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6055 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6056 (LD_SWITCH_SYSTEM_1): Remove, update users.
6057
6058 * s/darwin.h (DATA_END):
6059 * m/intel386.h (DATA_END):
6060 * m/ibmrs6000.h (DATA_END):
6061 * m/alpha.h (DATA_END): Remove, unused.
6062
6063 * config.in: Regenerate.
6064 * s/ms-w32.h (subprocesses): Define unconditionally.
6065 * s/template.h (subprocesses): Update comment.
6066 * s/vms.h (subprocesses):
6067 * s/usg5-4.h (subprocesses):
6068 * s/hpux10-20.h (subprocesses):
6069 * s/gnu-linux.h (subprocesses):
6070 * s/cygwin.h (subprocesses):
6071 * s/bsd-common.h (subprocesses):
6072 * s/aix4-2.h (subprocesses):
6073 * s/darwin.h (subprocesses): Do not define, defined by default now.
6074
6075 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6076 Remove all references.
6077 (temacs): Add GNUstep specific ld flags.
6078
6079 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6080 similarly to what X does.
6081
60822008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6083
6084 * nsfns.m (x-list-fonts): Remove.
6085 (syms_of_nsfns): Drop the x-list-fonts declaration.
6086 * nsterm.m: Get rid of remaining "//" comments.
6087
60882008-07-22 Chong Yidong <cyd@stupidchicken.com>
6089
6090 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6091
6092 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6093 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6094 (Fns_own_selection_internal, Fx_disown_selection_internal)
6095 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6096
6097 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6098 ... */' style of docstrings. Doc fixes.
6099
61002008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6101
6102 * terminfo.c (UP, BC, PC): Undo previous change.
6103
6104 * nsfns.m: Rename ns prefixed functions/variables to the
6105 corresponding x versions. Update references.
6106
61072008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6108
6109 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6110
61112008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6112
6113 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6114 Remove forwarding functions.
6115 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6116 non-static.
6117 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6118 non-static.
6119 (ns_frame_parm_handlers): Use the new names.
6120 (syms_of_nsfns): Move to the end of file.
6121
6122 * nsterm.m (syms_of_nsterm): Move to the end of file.
6123
6124 * dispnew.c (init_display): Remove code for X10.
6125
61262008-07-22 Jason Rumney <jasonr@gnu.org>
6127
6128 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6129 bare drive.
6130
61312008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6132
6133 * nsterm.m (syms_of_nsterm): Remove debugging println.
6134
61352008-07-22 David Reitter <david.reitter@gmail.com>
6136
6137 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6138 Carbon implementation of the same functionality: execute arbitrary
6139 AppleScript code.
6140
61412008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6142
6143 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6144 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6145 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6146 (Fx_display_mm_height, Fx_display_mm_width)
6147 (Fx_display_backing_store, Fx_display_visual_class)
6148 (Fx_display_save_under, Fx_open_connection)
6149 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6150 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6151 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6152 (Fx_display_pixel_width, Fx_display_pixel_height)
6153 (Fx_display_usable_bounds, Fx_display_planes)
6154 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6155 ... */' style of docstrings.
6156
61572008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6158
6159 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6160 on this platform.
6161 (mips):
6162 * m/iris4d.h (mips): Do not define.
6163 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6164
6165 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6166
6167 * image.c:
6168 * nsfns.m:
6169 * nsselect.m:
6170 * nsterm.h:
6171 * nsterm.m: Rename ns prefixed functions/variables to the
6172 corresponding x versions. Update references.
6173
6174 * m/ibms390x.h (NO_REMAP): Do not undefine.
6175
6176 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6177
61782008-07-21 Chong Yidong <cyd@stupidchicken.com>
6179
6180 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6181 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6182 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6183 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6184 (Fns_display_mm_height, Fns_display_mm_width)
6185 (Fns_display_backing_store, Fns_display_visual_class)
6186 (Fns_display_save_under, Fns_open_connection)
6187 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6188 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6189 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6190 (Fns_display_pixel_width, Fns_display_pixel_height)
6191 (Fns_display_usable_bounds, Fx_display_planes)
6192 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6193
61942008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6195
6196 * print.c (print_object): Check print_depth before searching for
6197 circularities.
6198
61992008-07-21 Michael Albinus <michael.albinus@gmx.de>
6200
6201 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6202 only sprintf.
6203
62042008-07-21 Kenichi Handa <handa@m17n.org>
6205
6206 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6207
62082008-07-20 Andreas Schwab <schwab@suse.de>
6209
6210 * syntax.c (find_start_pos, find_start_value)
6211 (find_start_value_byte, find_start_begv, find_defun_start)
6212 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6213
62142008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6215
6216 * s/sol2-3.h: Insert contents of s/sol2.h.
6217 (LD_SWITCH_SYSTEM): Remove redundant definition.
6218 * s/sol2.h: Remove, unused.
6219
62202008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6221
6222 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6223
62242008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6225
6226 * Makefile.in (ns_appdir): Fix typo in find command.
6227
62282008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6229
6230 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6231
6232 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6233 added not supported anymore.
6234
6235 * s/usg5-4-2.h (LIBS_SYSTEM):
6236 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6237
6238 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6239 * s/lynxos.h (GETPGRP_NO_ARG):
6240 * s/hpux10-20.h (NO_SIOCTL_H):
6241 * s/gnu.h (GETPGRP_NO_ARG):
6242 * s/gnu-linux.h (NO_SIOCTL_H):
6243 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6244 * s/cygwin.h (GETPGRP_NO_ARG):
6245 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6246 (C_DEBUG_SWITCH): Remove duplicate definition.
6247
6248 * m/ibms390.h: Remove boilerplate comments.
6249
6250 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
6251
6252 * process.c (HAVE_SERIAL): Consolidate ifdefs.
6253 (wait_reading_process_output): Remove code for SunOS, platform not
6254 supported anymore. Use SOLARIS2 instead of sun.
6255
62562008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6257
6258 * font.c (font_open_by_name): Under NS, default lface height to zero.
6259 (font_open_for_lface): Under NS, set size based on frame fontsize.
6260 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
6261 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
6262
62632008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6264
6265 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
6266 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
6267 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
6268 YES/NO.
6269 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
6270 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
6271 * Makefile.in (clean): Clear out build destination dir.
6272
62732008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6274
6275 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
6276 xterm, xselect.
6277 * lisp.h: Remove declaration of hash_remove.
6278 * nsgui.h: Remove redefinitions of hash_remove.
6279 * fns.c (hash_remove): Rename to hash_remove_from_table.
6280
62812008-07-19 Seiji Zenitani <zenitani@mac.com>
6282
6283 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
6284 strdup() the family UTF8String before modifying it.
6285
62862008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6287
6288 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
6289 NS_FACE_BACKGROUND with 0 instead of nil.
6290 * nsfont.m (nsfont_draw): Same.
6291
62922008-07-19 Chong Yidong <cyd@stupidchicken.com>
6293
6294 * nsfns.m (ns_set_background_color): Fix crash.
6295
62962008-07-18 Chong Yidong <cyd@stupidchicken.com>
6297
6298 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
6299
63002008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
6301
6302 * puresize.h (BASE_PURESIZE): Increase to 1240000.
6303
63042008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6305
6306 * gtkutil.c: Include <config.h> instead of "config.h".
6307
6308 * lisp.h (Foverlay_buffer): Add EXFUN.
6309
6310 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
6311 child process to complete child_setup. Undo 2005-09-21 change.
6312
6313 * s/darwin.h: Mention setsid after vfork.
6314
63152008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6316
6317 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
6318 Depend on macgui.h.
6319
6320 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
6321 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
6322
6323 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
6324 and f19.
6325 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
6326
6327 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
6328 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
6329 Remove enumerators.
6330
6331 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
6332 Check if FACE_FROM_ID returns NULL.
6333
63342008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6335
6336 * w32inevt.c (change_frame_size): Remove extern declaration.
6337 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6338 change_frame_size.
6339
63402008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6341
6342 * getloadavg.c: Revert last change (2008-07-15).
6343
63442008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6345
6346 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
6347 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
6348 from configure.
6349
63502008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6351
6352 * s/sol2.h:
6353 * s/sol2-4.h: Reorganize conditionals.
6354
6355 * ecrt0.c: Remove code depending on m68000, not used anymore.
6356
6357 * fns.c (hash_remove): Make static.
6358 * lisp.h (hash_remove): Don't prototype.
6359
6360 * m/ibmrs6000.h:
6361 * m/ibms390x.h:
6362 * m/macppc.h: Remove boilerplate comments.
6363
6364 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6365 Solaris, which does not need them.
6366
6367 * m/vax.h: Remove comments about unsupported systems.
6368
6369 * s/darwin.h: Reorganize ifdefs.
6370
63712008-07-17 Andreas Schwab <schwab@suse.de>
6372
6373 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6374
63752008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6376
6377 Use SDATA. Follow coding convention of placing operators at
6378 beginning of next line rather than end of previous line, and placing
6379 spaces around infix operators.
6380
6381 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6382 in case it was defined already.
6383 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6384 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6385 ns_default.
6386 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6387 Lisp_Objects.
6388 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6389 (ns_defined_color, ns_color_to_lisp): Declare.
6390 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6391 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6392 it's accepted even with USE_LISP_UNION_TYPE.
6393 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6394 (update_frame_tool_bar): Remove apparently obsolete tests for
6395 non-integerness of f->tool_bar_lines.
6396 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6397 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6398 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6399 (nsfont_open): Don't confuse NULL for Qnil.
6400 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6401 * menu.h (find_and_call_menu_selection):
6402 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6403 (find_and_return_menu_selection): Always return something.
6404 * frame.h: Include dispextern.h for Display_Info.
6405 (display_x_get_resource): Declare.
6406
64072008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6408
6409 * syntax.c: Remove stdio.h include accidentally introduced in
6410 Emacs.app commit.
6411 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6412 NS_IMPL_COCOA.
6413 * keyboard.c (handle_async_input, input_available_signal): Remove
6414 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6415
64162008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6417
6418 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6419 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6420 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6421 Use SDATA.
6422
6423 * keymap.c: Remove all NS-specific code.
6424 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6425 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6426 where_is_preferred_modifier, return a different value depending on how
6427 preferred is the binding.
6428 (where_is_internal): Adjust accordingly.
6429 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6430 Adjust to new preferred_sequence_p.
6431 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6432 * keyboard.c (parse_solitary_modifier): Not static any more.
6433 * keyboard.h (parse_solitary_modifier): Declare.
6434
64352008-07-16 Andreas Schwab <schwab@suse.de>
6436
6437 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6438 of easymenu.
6439
64402008-07-16 Chong Yidong <cyd@stupidchicken.com>
6441
6442 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6443 that we don't move off the line.
6444
64452008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6446
6447 * keyboard.c (Qsuper): Remove.
6448 (parse_menu_item): Don't call where_is_internal specially for NS.
6449
64502008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6451
6452 * s/gnu-linux.h: Remove boilerplate comments.
6453
6454 * m/alpha.h (__ELF__): Consolidate conditions.
6455
6456 * m/m68k.h (linux): Use GNU_LINUX instead.
6457 Remove boilerplate comments.
6458
6459 * m/intel386.h: Undo refactoring from previous change.
6460 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6461 too, remove dead code.
6462 (linux): Use GNU_LINUX instead.
6463
64642008-07-16 Jason Rumney <jasonr@gnu.org>
6465
6466 * w32gui.h: Repeat 26 June changes lost by last change.
6467
64682008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6469
6470 * systty.h: Remove code for Aix on 386, unsupported platform.
6471
6472 * s/ms-w32.h: Remove boilerplate comments.
6473 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6474
6475 * s/gnu-linux.h (TERM): Remove support.
6476 (HAVE_SYSVIPC): Remove, unused.
6477 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6478 for this system.
6479
6480 * process.c: Remove support for IRIS, unused.
6481 Remove support for TERM, not relevant anymore.
6482
6483 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6484 used with the definition.
6485
6486 * s/aix4-2.h (static): Do not undef.
6487
6488 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6489 only used on Aix.
6490 (HAVE_SYSVIPC): Remove, unused.
6491
6492 * m/hp800.h (CANNOT_DUMP): Do not undef.
6493
6494 * m/alpha.h: Fix comment.
6495
6496 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6497 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6498 used by this configuration.
6499 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6500 * unexec.c: Remove code depending on HPUX and
6501 USG_SHARED_LIBRARIES, not used with this file. Remove code
6502 depending on IRIS, unused. Remove if 0-ed code.
6503
6504 * s/template.h: Remove comments about static.
6505
6506 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6507 Remove if 0-ed code.
6508 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6509 were the same as the default.
6510 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6511 Remove boilerplate comments.
6512 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6513 (HAVE_SYSVIPC): Remove, unused.
6514 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6515
6516 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6517 Remove boilerplate comments.
6518 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6519 Remove boilerplate comments.
6520 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6521 Remove boilerplate comments.
6522 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6523
6524 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6525 USG systems which do not use DATA_SEG_BITS.
6526 Refactor code. Remove boilerplate comments.
6527
6528 * m/ibms390.h:
6529 * m/m68k.h:
6530 * s/bsd-common.h:
6531 * s/cygwin.h:
6532 * s/darwin.h:
6533 * s/freebsd.h:
6534 * s/gnu.h:
6535 * s/msdos.h: Remove boilerplate comments.
6536
6537 * m/iris4d.h: Remove boilerplate comments and code for systems that
6538 do not use this file.
6539 (IRIS_4D): Remove, unused.
6540
6541 * m/mips.h: Remove boilerplate comments and code for systems that
6542 do not use this file.
6543 (SIGN_EXTEND_CHAR):
6544 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6545 * unexmips.c: Remove file, unused.
6546
6547 * editfns.c (Fuser_full_name): Replace the only use of
6548 USER_FULL_NAME with its value.
6549 * config.in: Regenerate.
6550
65512008-07-16 David Reitter <david.reitter@gmail.com>
6552
6553 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6554 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6555
65562008-07-16 Glenn Morris <rgm@gnu.org>
6557
6558 * emacs.c (system-type): Doc fix.
6559
65602008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6561
6562 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6563 If the cache doesn't work, let's fix it, rather than work around it.
6564
65652008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6566
6567 * Makefile.in: Correct additions for nsfont.o in last commit.
6568 * nsfont.m: New file (forgot last commit).
6569
65702008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6571
6572 * callproc.c (set_initial_environment): Initialize
6573 Vprocess_environment under CANNOT_DUMP (fixes crash when
6574 batch-compiling for bootstrap).
6575
65762008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6577 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6578
6579 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6580 fix crash due to different init order.
6581
65822008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6583
6584 Changes and additions for NeXTstep windowing system (Cocoa and
6585 GNUstep) support.
6586
6587 * Makefile.in:
6588 * config.in: Support defines and build commands for NS port.
6589 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6590 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6591 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6592 windowing.
6593 (struct face): Add synth_ital field.
6594 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6595 (init_display): Initialize Vinitial_window_system to "ns" when so
6596 compiled.
6597 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6598 (display_arg): Use under NS.
6599 (main): Under NS, allocate autorelease pool and handle command line
6600 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6601 (standard_args): Add NS-specific args.
6602 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6603 * font.c (DEFAULT_ENCODING): New variable.
6604 (font_find_for_lface): Use it.
6605 (syms_of_font): Load syms_of_nsfont under NS.
6606 * font.h: Declare nsfont_driver when compiled under NS.
6607 * fontset.c: When compiling under NS, include nsterm.h.
6608 (fontset_from_font): Autoconstruct fontset under NS.
6609 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6610 symbol, document and use it.
6611 (do_switch_frame): When for_deletion under Cocoa, add
6612 Fraise_frame(Qnil).
6613 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6614 (x_get_arg): Allow "yes" and "no" as boolean values.
6615 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6616 Qright under Cocoa.
6617 (focus-follows-mouse): Default to 0 under NS.
6618 * frame.h (enum output_method): Add output_ns.
6619 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6620 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6621 (FRAME_WINDOW_P): NS-specific definition.
6622 * fringe.c (max_used_fringe_bitmap): Make public.
6623 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6624 (getloadavg): Use NeXT code under descendant OS's.
6625 * image.c (includes and header section, x_create_bitmap_from_data)
6626 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6627 (image_background_transparent, x_clear_image_1)
6628 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6629 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6630 (x_to_xcolors, x_from_xcolors, x_disable_image)
6631 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6632 other GUIs, including XPM support using code originally written for
6633 Carbon GUI.
6634 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6635 using NS API.
6636 (image_ascent): Use font metrics macros instead of direct struct field
6637 access.
6638 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6639 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6640 Also, handle NS as GTK for menu bar purposes.
6641 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6642 toolkit where they differ.
6643 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6644 use cachelist, still needed under NS.
6645 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6646 (struct widget_value): Define it here for menu.c.
6647 * keymap.c (includes): Include modifier internals.
6648 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6649 NS.
6650 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6651 support for preferring sequences using certain modifiers, specified by
6652 the FIRSTONLY argument.
6653 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6654 under NS GNUstep implementation.
6655 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6656 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6657 * menu.c: Include nsterm.h under NS.
6658 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6659 (free_menubar_widget_tree_value, update_submenu_strings)
6660 (find_and_call_menu_selection): Treat NS as X and NT.
6661 (find_and_return_menu_selection): New function, used for popup menus.
6662 * nsgui.h:
6663 * nsterm.h:
6664 * nsfns.m:
6665 * nsimage.m:
6666 * nsmenu.m:
6667 * nsselect.m:
6668 * nsterm.m: New files.
6669 * process.c (wait_reading_process_output): Under NS, call ns_select()
6670 instead of plain select().
6671 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6672 beginning of buffer.
6673 * sysselect.h (init_process): Rename when compiling under Cocoa to
6674 avoid name conflict.
6675 * termhooks.h (display_info): Add ns_display_info to union.
6676 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6677 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6678 COCOA environment.
6679 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6680 unexec() signature. (Note, this will dump, but the resulting file
6681 crashes; unexosx is used instead; keeping around for reference and
6682 possible aid in getting dump working under GNUstep.)
6683 * w32gui.h (button_type, widget_value): Remove definitions (now in
6684 keyboard.h).
6685 * window.c: Include nsterm.h when compiling under NS.
6686 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6687 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6688 other GUI windowing systems.
6689 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6690 GTK.
6691 (x_consider_frame_title): Under NS, set icon type and frame
6692 modified-state indicator; use ns_set_name_as_filename() when using
6693 formatted title.
6694 (update_window_cursor): Make public when compiling under NS.
6695 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6696 (hourglass_atimer, Vhourglass_delay
6697 * xfaces.c (header section, init_frame_faces, clear_font_table)
6698 (defined_color, unload_color, x_face_list_fonts)
6699 (prepare_face_for_display): Add NS support parallel to other GUIs.
6700 Emulate GCs like other non-X GUIs.
6701 (split_font_name): Don't lowercase font name under NS.
6702 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6703 under NS.
6704 * s/darwin.h: Add support for compilation under NS.
6705
67062008-07-15 Jason Rumney <jasonr@gnu.org>
6707
6708 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6709 (w32_show_hourglass): Rename from show_hourglass.
6710 (w32_hide_hourglass): Rename from hide_hourglass.
6711 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6712 (Vhourglass_delay): Declare extern.
6713 (hourglass_started): Remove.
6714
6715 * xdisp.c (Vhourglass_delay): Remove static.
6716 (hourglass_started, start_hourglass, cancel_hourglass):
6717 Don't include these versions on WINDOWSNT.
6718
67192008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6720
6721 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6722 variables (formerly in xfns.c).
6723 (show_hourglass, hide_hourglass): New prototypes (same).
6724 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6725 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6726 in xfns.c).
6727 (syms_of_xdisp): Declare/initialize display-hourglass,
6728 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6729 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6730 formerly in xfns.c.
6731 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6732 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6733 (start_hourglass, cancel_hourglass): Remove.
6734 (show_hourglass, hide_hourglass): Remove prototypes and static
6735 modifiers.
6736 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6737 hourglass_atimer, hourglass_shown_p declaration/initialization.
6738 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6739 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6740 (start_hourglass, cancel_hourglass): Remove.
6741 (show_hourglass, hide_hourglass): Remove prototypes and static
6742 modifiers.
6743 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6744 hourglass_atimer, hourglass_shown_p declaration/initialization.
6745 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6746 (DEFAULT_HOURGLASS_DELAY): Remove.
6747 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6748 hourglass_shown_p declaration/initialization.
6749
67502008-07-14 Jason Rumney <jasonr@gnu.org>
6751
6752 * w32fns.c (w32_get_arg): Remove wrapper function.
6753 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6754 directly.
6755 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6756
67572008-07-14 Kenichi Handa <handa@m17n.org>
6758
6759 * xfont.c (xfont_open): Add workaround for X's bug.
6760
67612008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6762
6763 * fontset.c: Include <stdio.h> unconditionally.
6764
67652008-07-13 Michael Albinus <michael.albinus@gmx.de>
6766
6767 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6768 for filtering.
6769
67702008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6771
6772 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6773
6774 * m/macppc.h:
6775 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6776
6777 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6778 (SPECIAL_EMACS_INT):
6779 * m/ia64.h (SPECIAL_EMACS_INT):
6780 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6781 * s/gnu.h (NLIST_STRUCT):
6782 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6783 * s/gnu-linux.h (LINUX):
6784 * s/msdos.h (HAVE_FACES):
6785 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6786
6787 * systty.h:
6788 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6789 anymore.
6790
67912008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6792
6793 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6794 always defined as int.
6795
6796 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6797 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6798 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6799 * s/freebsd.h (HAVE_WAIT_HEADER):
6800 * s/bsd-common.h (HAVE_UNION_WAIT):
6801 * s/aix4-2.h (HAVE_WAIT_HEADER):
6802 * m/mips.h (HAVE_UNION_WAIT):
6803 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6804 (COFF, static): Do not define, they are undefined later in the file.
6805
6806 * process.c (update_status): Don't use a union.
6807 (status_convert):
6808 (sigchld_handler): Use int instead of WAITTYPE.
6809
68102008-07-12 Chong Yidong <cyd@stupidchicken.com>
6811
6812 * indent.c (Fvertical_motion): Restore hscroll before moving to
6813 goal column.
6814
68152008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6816
6817 * lisp.h: Remove left over code.
6818
68192008-07-11 Andreas Schwab <schwab@suse.de>
6820
6821 * lisp.h: Fix logic in last change.
6822
6823 * menu.h: New file.
6824 * menu.c: Include it.
6825 * xmenu.c: Likewise.
6826 * Makefile.in: Update dependencies.
6827
68282008-07-11 Kenichi Handa <handa@m17n.org>
6829
6830 * fontset.c (fontset_from_font): Cancel the previous change.
6831
68322008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6833
6834 * lisp.h:
6835 * w32heap.c:
6836 * emacs.c:
6837 * alloc.c: Replace all references of NO_UNION_TYPE with
6838 USE_LISP_UNION_TYPE.
6839
6840 * m/xtensa.h (NO_UNION_TYPE):
6841 * m/vax.h (NO_UNION_TYPE):
6842 * m/template.h (NO_UNION_TYPE):
6843 * m/sparc.h (NO_UNION_TYPE):
6844 * m/mips.h (NO_UNION_TYPE):
6845 * m/macppc.h (NO_UNION_TYPE):
6846 * m/m68k.h (NO_UNION_TYPE):
6847 * m/iris4d.h (NO_UNION_TYPE):
6848 * m/intel386.h (NO_UNION_TYPE):
6849 * m/ibms390x.h (NO_UNION_TYPE):
6850 * m/ibms390.h (NO_UNION_TYPE):
6851 * m/ibmrs6000.h (NO_UNION_TYPE):
6852 * m/ia64.h (NO_UNION_TYPE):
6853 * m/hp800.h (NO_UNION_TYPE):
6854 * m/arm.h (NO_UNION_TYPE):
6855 * m/amdx86-64.h (NO_UNION_TYPE):
6856 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6857 defining it the same.
6858
68592008-07-10 Chong Yidong <cyd@stupidchicken.com>
6860
6861 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6862
68632008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6864
6865 * fileio.c:
6866 * sysdep.c
6867 * systty.h:
6868 * m/ibmrs6000.h:
6869 * m/iris4d.h:
6870 * s/aix4-2.h:
6871 * s/freebsd.h:
6872 * s/gnu-linux.h:
6873 * s/hpux10-20.h:
6874 * s/hpux11.h:
6875 * s/netbsd.h:
6876 * s/sol2-3.h:
6877 * s/sol2-4.h:
6878 * s/sol2.h:
6879 * s/usg5-4.h:
6880 * s/vms.h: Remove references to unused variables.
6881
68822008-07-10 Andreas Schwab <schwab@suse.de>
6883
6884 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6885 pattern before matching the generic family.
6886
68872008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6888
6889 * unexec.c:
6890 * s/vms.h:
6891 * s/usg5-4-2.h:
6892 * s/sol2-5.h:
6893 * s/freebsd.h:
6894 * s/darwin.h: Remove dead code.
6895
6896 * m/template.h:
6897 * m/sparc.h:
6898 * m/mips.h:
6899 * m/m68k.h:
6900 * m/iris4d.h:
6901 * m/intel386.h:
6902 * m/ibms390x.h:
6903 * m/ibms390.h:
6904 * m/ia64.h:
6905 * m/hp800.h:
6906 * m/arm.h:
6907 * m/amdx86-64.h: Remove dead code and references to unused
6908 and compiler defined symbols.
6909
6910 * unexmips.c:
6911 * unexelf.c: Remove references to desupported systems.
6912
6913 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6914
6915 * m/powermac.h: Remove boilerplate comments.
6916 (NO_REMAP): Remove unused definition.
6917
6918 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6919 define them.
6920
69212008-07-10 Kenichi Handa <handa@m17n.org>
6922
6923 * xfont.c (xfont_open): Log the reason of failure.
6924
69252008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6926
6927 * fontset.c (fontset_get_font_group):
6928 * font.c (font_check_otf): Specify argument types.
6929
69302008-07-09 Kenichi Handa <handa@m17n.org>
6931
6932 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6933 non-ASCII char is found.
6934
6935 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6936 (reorder_font_vector): Change the arg preferred_family to font.
6937 Prefer the spec matching with font.
6938 (fontset_get_font_group): New function.
6939 (fontset_find_font): Change the format of an element of a realized
6940 fontset. Use fontset_get_font_group.
6941 (fontset_font): Try the current fontset, the default fontset, the
6942 fallbacks of the current fontset, and the fallbacks of the default
6943 fontset in this order.
6944 (face_for_char): Delete the shortcut to use the current font.
6945 (fontset_from_font): Don't set fonts for Latin in the fontset.
6946
6947 * font.h (font_make_object, font_match_p): Adjust prototypes.
6948
6949 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6950
6951 * font.c (font_make_object): New arg entity and pixelsize.
6952 (font_check_otf_features, font_check_otf): New functions.
6953 (font_match_p): Check :lang, :script, and :otf properties.
6954
6955 * xfont.c (xfont_open): Adjust it for the change of
6956 font_make_object.
6957 (xfont_text_extents): Fix initial setting of metrics.
6958
6959 * ftfont.c (struct ftfont_info): New member index, delete member
6960 fc_charset_idx. Make the member order compatible with struct
6961 xftfont_info.
6962 (fc_charset_table): Change charset names to registry names.
6963 (ftfont_pattern_entity): Delete the args registry and
6964 fc_charset_idx. Change the value of :font-entity property
6965 to (FONTNAME . INDEX). Always set :registry property to
6966 `iso10646-1'.
6967 (struct ftfont_cache_data): New struct.
6968 (ftfont_lookup_cache): New arg for_face.
6969 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6970 (ftfont_driver): Set the member otf_capability.
6971 (ftfont_get_charset): Adjust it for the change of
6972 fc_charset_table.
6973 (OTF_TAG_SYM): New macro.
6974 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6975 for the change of fc_charset_table.
6976 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6977 ftfont_pattern_entity. Add FC_INDEX to objset.
6978 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6979 and ftfont_pattern_entity.
6980 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6981 font_make_object, struct ftfont_info.
6982 (ftfont_has_char): Use ftfont_get_fc_charset.
6983 (ftfont_otf_features, ftfont_otf_capability): New functions.
6984 (ftfont_shape): Use ftfont_get_otf.
6985 (ftfont_text_extents): Fix initial setting of metrics.
6986
6987 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6988 member order compatible with struct ftfont_info.
6989 (xftfont_open): Add FC_CHARSET to the pattern. Set
6990 xftfont_info->ft_size. Don't unlock the face. Check BDF
6991 properties if appropriate.
6992 (xftfont_close): Unlock the face.
6993 (xftfont_anchor_point, xftfont_shape): Deleted.
6994 (syms_of_xftfont): Don't set members anchor_point and shape of
6995 xftfont_driver.
6996
6997 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6998 font_make_object.
6999
7000 * w32font.c (w32font_open): Adjust it for the change of
7001 font_make_object.
7002 (w32font_open_internal): Don't set properties of font_object here.
7003
70042008-07-08 Chong Yidong <cyd@stupidchicken.com>
7005
7006 * macfns.c (x_create_tip_frame):
7007 * w32fns.c (x_create_tip_frame):
7008 * xfns.c (x_create_tip_frame): Pass parameter argument to
7009 face-set-after-frame-default.
7010
7011 * xfaces.c (Finternal_merge_in_global_face): Save merged
7012 attributes for the default face back into the face vector.
7013
70142008-07-08 Andreas Schwab <schwab@suse.de>
7015
7016 * fontset.h: Declare fontset_from_font. Don't declare
7017 new_fontset_from_font and fontset_from_font_name.
7018 * xterm.c: Include "fontset.h".
7019 * Makefile.in (xterm.o): Update dependencies.
7020
70212008-07-08 Glenn Morris <rgm@gnu.org>
7022
7023 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7024 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7025
70262008-07-07 Chong Yidong <cyd@stupidchicken.com>
7027
7028 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7029 (x_set_frame_parameters): Don't bind it.
7030
70312008-07-07 Juanma Barranquero <lekktu@gmail.com>
7032
7033 * w32fns.c (map_w32_filename): Declare extern.
7034
70352008-07-07 Jason Rumney <jasonr@gnu.org>
7036
7037 * w32term.c (WS_EX_LAYERED): Define if not already.
7038
70392008-07-06 Chong Yidong <cyd@stupidchicken.com>
7040
7041 * xfaces.c (set_font_frame_param): Don't try to set the font
7042 parameter if it is still unspecified in the lface.
7043
70442008-07-05 Chong Yidong <cyd@stupidchicken.com>
7045
7046 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7047 face if it didn't already exist.
7048
7049 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7050
70512008-07-05 Andreas Schwab <schwab@suse.de>
7052
7053 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7054
70552008-07-05 Chong Yidong <cyd@stupidchicken.com>
7056
7057 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7058 word-wrapping.
7059 (IT_DISPLAYING_WHITESPACE): New macro.
7060 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7061 when word-wrapping. Simplify word-wrapping logic. Use correct
7062 pixel positions when saving copies of the iterator.
7063 (display_line): Use proper wrap point if the last character on a
7064 line was preceded by whitespace.
7065
70662008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7067
7068 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7069
70702008-07-04 Kenichi Handa <handa@m17n.org>
7071
7072 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7073
7074 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7075
70762008-07-02 Jason Rumney <jasonr@gnu.org>
7077
7078 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7079 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7080
7081 * xdisp.c (next_element_from_display_vector): Move assignment out
7082 of if statement.
7083
70842008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7085
7086 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7087
7088 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7089 (syms_of_fileio): Initialize and export them.
7090 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7091
7092 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7093 (Fsystem_move_file_to_trash): New function.
7094 (syms_of_w32fns): Export it to lisp.
7095
70962008-07-01 Jason Rumney <jasonr@gnu.org>
7097
7098 * w32font.c (w32font_text_extents): Don't count overhang as part
7099 of width.
7100
71012008-06-30 Miles Bader <miles@gnu.org>
7102
7103 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7104 Add `avoid_cursor_p' field.
7105
7106 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7107 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7108 (append_glyph, append_composite_glyph, produce_image_glyph)
7109 (append_stretch_glyph): Initialize avoid_cursor_p.
7110 (get_it_property): Rename from `get_line_height_property'.
7111 (x_produce_glyphs): Use get_it_property.
7112 (handle_line_prefix, push_display_prop): New functions.
7113 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7114 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7115 New variables.
7116 (syms_of_xdisp): Initialize them.
7117
71182008-06-30 Kenichi Handa <handa@m17n.org>
7119
7120 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7121 XftDefaultSubstitute (they are called in XftFontMatch).
7122 (xftfont_open): Fix args to ftfont_font_format.
7123
7124 * ftfont.c (fc_charset_table): New member lang.
7125 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7126 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7127 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7128 (ftfont_open): Fix args to ftfont_font_format.
7129 (ftfont_font_format): New arg filename.
7130
71312008-06-30 Chong Yidong <cyd@stupidchicken.com>
7132
7133 * xfaces.c (Finternal_merge_in_global_face): If default face was
7134 modified, realize it again. Update the font face attribute.
7135
71362008-06-29 Jason Rumney <jasonr@gnu.org>
7137
7138 * w32term.c (x_set_frame_alpha): Fix logic.
7139
71402008-06-29 Kenichi Handa <handa@m17n.org>
7141
7142 * fontset.c (Finternal_char_font): Return font-object instead of
7143 font-name.
7144
7145 * composite.c (get_composition_id): Fix the width calculation for TAB.
7146
71472008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7148
7149 * indent.c (Fvertical_motion): Properly handle float column arg.
7150
71512008-06-28 Jason Rumney <jasonr@gnu.org>
7152
7153 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7154 (pfnSetLayeredWindowAttributes): New function pointer.
7155 (w32_initialize): Initialize it when supported.
7156 (x_set_frame_alpha): New function.
7157
7158 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7159 (w32_frame_parm_handlers): Set alpha handler.
7160
7161 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7162
71632008-06-27 Jason Rumney <jasonr@gnu.org>
7164
7165 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7166 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7167 (w32_to_x_charset, x_to_w32_charset)
7168 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7169 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7170 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7171 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7172 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7173 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7174 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7175 (Qw32_charset_unicode): Remove.
7176 (syms_of_w32fns): Update for above changes.
7177
7178 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7179 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7180 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7181 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7182 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7183 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7184 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7185 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7186 (syms_of_w32font): Update for above changes.
7187
71882008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7189
7190 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7191 removed #if.
7192 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7193
71942008-06-26 Juanma Barranquero <lekktu@gmail.com>
7195 Eli Zaretskii <eliz@gnu.org>
7196
7197 * makefile.w32-in (LOCAL_FLAGS):
7198 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7199
7200 * sysdep.c (_spawnlp, _getpid):
7201 Declare with explicit _cdecl instead of _CRTAPI1.
7202
7203 * editfns.c (Fget_internal_run_time):
7204 Check for WINDOWSNT with #ifdef, not #if.
7205
72062008-06-26 Jason Rumney <jasonr@gnu.org>
7207
7208 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7209
7210 * w32term.c (x_draw_glyph_string_foreground)
7211 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7212 Use FONT_HANDLE macro.
7213 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7214
7215 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7216 (uniscribe_encode_char): Use FONT_HANDLE macro.
7217
7218 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7219 (w32font_text_extents): Use precast w32_font.
7220 (w32font_close): Free cached metrics.
7221 (w32font_open_internal): Allocate space for name on stack.
7222
72232008-06-26 Chong Yidong <cyd@stupidchicken.com>
7224
7225 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7226
72272008-06-26 Jason Rumney <jasonr@gnu.org>
7228
7229 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7230 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7231
72322008-06-26 Juanma Barranquero <lekktu@gmail.com>
7233
7234 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7235
72362008-06-26 Jason Rumney <jasonr@gnu.org>
7237
7238 * w32bdf.c, w32bdf.h: Remove obsolete files.
7239
7240 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7241
7242 * w32gui.h: Don't include w32bdf.h.
7243 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7244 Remove obsolete font support.
7245
7246 * w32font.h (struct w32font_info): Remove compat_w32_font.
7247 Add hfont member.
7248 (FONT_COMPAT): Remove obsolete macro.
7249
7250 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
7251 (w32font_encode_char, w32font_text_extents): Use new hfont member.
7252 (w32font_open_internal): Remove compat code. Set new hfont member.
7253 (Fx_select_font): Use new hfont member.
7254
7255 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7256 (uniscribe_encode_char): Use new hfont member.
7257
7258 * w32term.c (x_draw_glyph_string_foreground)
7259 (x_draw_composite_glyph_string_foreground): Use new hfont member.
7260 (x_draw_glyph_string): Use metrics in w32font_info.
7261
72622008-06-26 Kenichi Handa <handa@m17n.org>
7263
7264 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
7265
72662008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
7267
7268 * unexnext.c:
7269 * m/ews4800.h:
7270 * m/hp9000s300.h:
7271 * m/ibm370aix.h:
7272 * m/mips-siemens.h:
7273 * m/ncr386.h:
7274 * m/next.h:
7275 * m/pmax.h:
7276 * m/powerpcle.h:
7277 * m/tandem-s2.h:
7278 * s/386bsd.h:
7279 * s/bsd386.h:
7280 * s/bsd4-1.h:
7281 * s/bsd4-2.h:
7282 * s/bsdos2-1.h:
7283 * s/bsdos2.h:
7284 * s/bsdos3.h:
7285 * s/bsdos4.h:
7286 * s/nextstep.h:
7287 * s/ultrix4-3.h:
7288 * s/usg5-0.h:
7289 * s/usg5-2-2.h:
7290 * s/usg5-2.h:
7291 * s/usg5-4-3.h:
7292 * s/ux4800.h:
7293 * s/uxpds.h:
7294 * s/uxpv.h: Remove support for obsolete systems.
7295 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 7296 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
7297 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
7298 Remove, insert contents in s/aix4-2.h.
7299 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
7300 * s/bsd4-3.h: Rename to ...
7301 * s/bsd-common.h: ... this.
7302 * data.c:
7303 * doc.c:
7304 * ecrt0.c:
7305 * emacs.c:
7306 * fileio.c:
7307 * floatfns.c:
7308 * keyboard.c:
7309 * mem-limits.h:
7310 * print.c:
7311 * process.c:
7312 * sysdep.c:
7313 * syssignal.h:
7314 * systty.h:
7315 * syswait.h:
7316 * term.c:
7317 * unexec.c:
7318 * unexelf.c:
7319 * unexhp9k800.c:
7320 * m/hp800.h:
7321 * m/ibmrs6000.h:
7322 * m/mips.h:
7323 * m/vax.h:
7324 * s/darwin.h:
7325 * s/freebsd.h:
7326 * s/gnu.h:
7327 * s/ms-w32.h:
7328 * s/msdos.h:
7329 * s/netbsd.h:
7330 * s/template.h: Remove references to obsolete variables.
7331
7332 * Makefile.in: Add dependencies for all unexec files.
7333 (admindir): Remove unused variable.
7334 (UNEXEC_SRC): Remove references.
7335
73362008-06-25 Chong Yidong <cyd@stupidchicken.com>
7337
7338 * xfns.c (x_default_font_parameter): If Xft is available, first
7339 try Monospace-12 for the default font.
7340
73412008-06-25 Jason Rumney <jasonr@gnu.org>
7342
7343 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7344
73452008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7346
7347 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7348
7349 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7350
73512008-06-25 Juanma Barranquero <lekktu@gmail.com>
7352
7353 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7354 <scroll-conservatively>: Fix typo in docstring.
7355
7356 * xselect.c (Fx_send_client_event): Doc fix.
7357
73582008-06-25 Kenichi Handa <handa@m17n.org>
7359
7360 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7361
7362 * font.c (font_parse_fcname): Remove unused variables.
7363 (font_sort_entites): Delete the arg SPEC. Caller changed.
7364 Fix for the case of ! best_only.
7365 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7366
7367 * lisp.h (Fstring_to_unibyte): EXFUN it.
7368
7369 * character.h (str_to_unibyte): Extern it.
7370
7371 * character.c (str_to_unibyte): New function.
7372
7373 * fns.c (Fstring_to_unibyte): New function.
7374 (syms_of_fns): Defsubr it.
7375
73762008-06-24 Kenichi Handa <handa@m17n.org>
7377
7378 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7379 DPI too.
7380 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7381
73822008-06-24 Andreas Schwab <schwab@suse.de>
7383
7384 * Makefile.in (${lispsource}loaddefs.el): Rename from
7385 ../lisp/loaddefs.el.
7386 (bootstrap-clean): Do what distclean does but don't remove
7387 Makefile.
7388 (distclean): Depend on bootstrap-clean and remove Makefile.
7389
73902008-06-24 Chong Yidong <cyd@stupidchicken.com>
7391
7392 * buffer.h (struct buffer): New member word_wrap.
7393
7394 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7395 word-wrap.
7396 (init_buffer_once): Initialize them.
7397
7398 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7399 line_wrap enum possessing three possible values.
7400
7401 * termopts.h: Replace truncate_partial_width_windows with
7402 Vtruncate_partial_width_windows.
7403
7404 * dispnew.c (direct_output_for_insert): Avoid direct output when
7405 inserting a space with word wrap on.
7406
7407 * indent.c (compute_motion): Obey integer values of
7408 truncate-partial-width-windows.
7409
7410 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7411 replacing truncate_partial_width_windows.
7412 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7413 truncate only if the window width is below that integer.
7414 (start_display, resize_mini_window, produce_stretch_glyph)
7415 (display_string, move_it_in_display_line_to): Use line_wrap.
7416 (back_to_previous_visible_line_start, reseat_1): Reset
7417 string_from_display_prop_p.
7418 (display_line): Extend default face to end of line when wrapping.
7419
74202008-06-24 Kim F. Storm <storm@cua.dk>
7421
7422 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7423 to wrap continued lines at word boundaries.
7424
74252008-06-24 Jason Rumney <jasonr@gnu.org>
7426
7427 * font.c (Ffont_face_attributes): Multiply pixel size before point
7428 conversion to avoid multiplying rounding error.
7429
74302008-06-23 Jason Rumney <jasonr@gnu.org>
7431
7432 * w32term.c (x_draw_glyph_string_background)
7433 (x_draw_glyph_string): Remove old bdf font code.
7434
7435 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7436
74372008-06-22 Kenichi Handa <handa@m17n.org>
7438
7439 * font.c (font_find_for_lface): Try the adstyle specified in
7440 the property of LFACE_FONT of LFACE (if any).
7441
74422008-06-21 Seiji Zenitani <zenitani@mac.com>
7443 Ryo Yoshitake <ryo@shiftmode.net>
7444
7445 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7446
74472008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7448
7449 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7450 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7451 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7452 (witness-emacs): Remove.
7453 (lisp, shortlisp): Move loaddefs.el earlier.
7454 (mostlyclean): Forget about witness-emacs.
7455
74562008-06-22 Glenn Morris <rgm@gnu.org>
7457
7458 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7459 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7460
74612008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7462
7463 * Makefile.in (PRECOMP): Remove.
7464 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7465 (witness-emacs): Run `compile-first'.
7466 (.el.elc): Use the new compile-onefile target.
7467
74682008-06-21 Kenichi Handa <handa@m17n.org>
7469
7470 * xftfont.c (xftfont_open): Handle QCembolden only when
7471 FC_EMBOLDEN is defined.
7472
74732008-06-21 Andreas Schwab <schwab@suse.de>
7474
7475 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7476 (.el.elc): Likewise.
7477
74782008-06-21 Miles Bader <miles@gnu.org>
7479
7480 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7481 build dir, not the lisp source dir.
7482
74832008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7484
7485 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7486 (bootstrapclean): Remove.
7487 (.el.elc): New rule.
7488 (PRECOMP): New var.
7489 (../lisp/subdirs.el): Remove.
7490 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7491 (witness-emacs): New target.
7492 (mostlyclean): Remove witness-emacs as well.
7493 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7494 Add witness-emacs dependency.
7495
74962008-06-20 Chong Yidong <cyd@stupidchicken.com>
7497
7498 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7499 defined by the font.
7500
75012008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7502
7503 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7504 (bootstrap-clean): New target that keeps TAGS around.
7505 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7506 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7507
75082008-06-20 Jason Rumney <jasonr@gnu.org>
7509
7510 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7511 Remove obsolete font code.
7512
7513 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7514 to determine language support.
7515
75162008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7517
7518 * sysdep.c (cfsetspeed): New fun extracted from the code.
7519 (cfmakeraw): Move before first use.
7520
75212008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7522
7523 * sysdep.c (cfmakeraw): Provide fallback implementation.
7524 (serial_configure): Provide fallback implementation of cfsetspeed.
7525
75262008-06-20 Kenichi Handa <handa@m17n.org>
7527
7528 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7529 the pattern.
7530
7531 * fontset.c (fontset_from_font): Copy font_spec before changing
7532 the elements.
7533
7534 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7535
75362008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7537
7538 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7539 for explicit `font' parameters.
7540
7541 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7542
75432008-06-19 Kenichi Handa <handa@m17n.org>
7544
7545 * frame.c: Include <ctype.h>.
7546 (x_set_font_backend): Allow spacing characters in the X resource
7547 for FontBackend.
7548
75492008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7550
7551 * w32fns.c, xfns.c (Qfont_param): New var.
7552 (syms_of_w32fns): Initialize it.
7553 (x_default_font_parameter): Record explicit `font' into
7554 `font-parameter'.
7555
75562008-06-18 Kenichi Handa <handa@m17n.org>
7557
7558 * font.c (font_parse_xlfd): Fix previous change.
7559 (font_parse_fcname): Don't use :fc-unknown-spec.
7560 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7561 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7562 (font_add_log): Prepend the driver name to the resulting fonts.
7563
7564 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7565 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7566 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7567
7568 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7569 (QCembolden): New variables.
7570 (syms_of_xftfont): DEFSYM them.
7571 (xftfont_open): Call XftFontMatch. Don't trust the result of
7572 XftTextExtents8 if the pixel_size is less than 5.
7573
75742008-06-18 Andreas Schwab <schwab@suse.de>
7575
7576 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7577 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7578
75792008-06-18 Jason Rumney <jasonr@gnu.org>
7580
7581 * w32font.c (w32font_list, w32font_match): Add logging.
7582
7583 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7584
75852008-06-17 Chong Yidong <cyd@stupidchicken.com>
7586
7587 * font.c (font_parse_fcname): Store divider characters for
7588 unknown-spec list. For known key symbols, intern using correct
7589 symbol name.
7590
75912008-06-17 Kenichi Handa <handa@m17n.org>
7592
7593 * xfaces.c (realize_default_face): If the frame is not on window
7594 system, set the fontset of face to nil.
7595
75962008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7597
7598 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7599
76002008-06-16 Juanma Barranquero <lekktu@gmail.com>
7601
7602 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7603 (build_font_name_from_vector): Delete externs.
7604
7605 * xfaces.c (struct font_name): Don't declare.
7606
76072008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7608
7609 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7610
76112008-06-16 Chong Yidong <cyd@stupidchicken.com>
7612
7613 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7614
76152008-06-16 Juanma Barranquero <lekktu@gmail.com>
7616
7617 * font.c (Ffont_spec): Fix usage in docstring.
7618 (Ffont_face_attributes): Doc fix.
7619
76202008-06-16 Andreas Schwab <schwab@suse.de>
7621
7622 * font.c (Ffont_face_attributes): Fix definition.
7623
76242008-06-16 Jason Rumney <jasonr@gnu.org>
7625
7626 * font.h (font_style_symbolic_from_value): Remove.
7627
7628 * font.c (font_style_symbolic_from_value): Remove.
7629 (font_style_symbolic): Revert to pre 2008-06-13 version.
7630
7631 * w32font.c (w32_to_fc_weight): New function.
7632 (w32font_full_name, logfont_to_fcname): Use it.
7633
76342008-06-16 Kenichi Handa <handa@m17n.org>
7635
7636 * font.c (font_check_object): Delete it.
7637 (font_clear_cache): Check if a font-object is alive.
7638 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7639 font-object to nil.
7640 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7641 (font_at): Don't call font_check_object.
7642 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7643
76442008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7645
7646 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7647
76482008-06-16 Chong Yidong <cyd@stupidchicken.com>
7649
7650 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7651
76522008-06-15 Chong Yidong <cyd@stupidchicken.com>
7653
7654 * font.c (font_parse_fcname): Only one decimal point.
7655 (font_unparse_fcname): Handle data in family and foundry indices
7656 as symbols, not strings.
7657 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7658
7659 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7660
7661 * font.h (font_unparse_gtkname): Add prototype.
7662
76632008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7664
7665 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7666
76672008-06-15 Andreas Schwab <schwab@suse.de>
7668
7669 * font.c (font_update_drivers): Fix crash when no drivers match.
7670
76712008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7672
7673 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7674 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7675
76762008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7677
7678 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7679
76802008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7681
7682 * process.c (Fserial_process_configure, Fprocess_send_eof):
7683 Use EQ to compare Lisp_Objects.
7684
76852008-06-13 Jason Rumney <jasonr@gnu.org>
7686
7687 * w32fns.c (Fw32_select_font): Remove old font API function.
7688
7689 * w32font.c (logfont_to_fcname): New function.
7690 (Fx_select_font): New font dialog function compatible with
7691 GTK/fontconfig version.
7692
7693 * font.c (font_style_symbolic_from_value): New function.
7694 (font_style_symbolic): Use it.
7695
7696 * font.h (font_style_symbolic_from_value): Declare new function.
7697
76982008-06-13 Juanma Barranquero <lekktu@gmail.com>
7699
7700 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7701 <font-width-table>: Fix typos in docstrings.
7702
77032008-06-13 Daniel Engeler <engeler@gmail.com>
7704
7705 These changes add serial port access.
7706 * process.c: Add HAVE_SERIAL.
7707 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7708 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7709 (list_processes_1, select_wrapper, Fstop_process)
7710 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7711 (status_notify): Modify to handle serial processes.
7712 [HAVE_SERIAL] (Fserial_process_configure)
7713 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7714 New functions.
7715 * process.h (struct Lisp_Process): Add `type'.
7716 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7717 New functions.
7718 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7719 serial ports.
b71ac3dd 7720 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7721 * w32.h: Add FILE_SERIAL.
7722 (struct _child_process): Add ovl_read, ovl_write.
7723
77242008-06-13 Kenichi Handa <handa@m17n.org>
7725
7726 * dispextern.h (enum lface_attribute_index): New member
7727 LFACE_FOUNDRY_INDEX.
7728
7729 * font.c (font_score): Delete arg alternate_families. Check only
7730 weight, slant, width, and size. Ignore the difference of alias
7731 style symbols.
7732 (font_sort_entites): Adjust for the above change. Reflect the
7733 order of font-driver to scores.
7734 (font_list_entities): Don't check alternate_familes here.
7735 (font_clear_prop): Handle foundry.
7736 (font_update_lface): Don't parse "foundry-family" form here.
7737 Handle FONT_FOUNDRY_INDEX.
7738 (font_find_for_lface): Likewise. Handle alternate families here.
7739 If registry is nil, try iso8859-1 and ascii-0.
7740 (font_open_for_lface): Pay attention to size in ENTITY.
7741 (font_open_by_name): Simplify by calling font_load_for_lface.
7742 (free_font_driver_list): Delete it.
7743 (font_update_drivers): Preserve the order of backends.
7744 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7745 of font_score and font_sort_entites.
7746 (font_update_sort_order): Likewise.
7747
7748 * xfaces.c (LFACE_FOUNDRY): New macro.
7749 (check_lface_attrs): Check foundry.
7750 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7751 (merge_face_vectors): Check foundry.
7752 (merge_face_ref): Likewise.
7753 (Finternal_set_lisp_face_attribute): Likewise.
7754 (x_update_menu_appearance): Likewise.
7755 (Finternal_get_lisp_face_attribute): Likewise.
7756 (lface_hash): Likewise.
7757 (lface_same_font_attributes_p): Likewise.
7758 (x_supports_face_attributes_p): Likewise.
7759 (tty_supports_face_attributes_p): Likewise.
7760 (Finternal_set_alternative_font_family_alist): Intern strings.
7761 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7762 (realize_default_face): Set LFACE_FOUNDRY (lface).
7763
7764 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7765 font-driver at first.
7766
7767 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7768
77692008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7770
7771 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7772
77732008-06-12 Jim Meyering <meyering@redhat.com>
7774
7775 Make unexec_free handle NULL the same way free does.
7776 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7777
77782008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7779
7780 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7781 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7782 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7783 (WEAK_ALIAS): Simplify.
7784 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7785 when searching a unibyte buffer.
7786
77872008-06-12 Chong Yidong <cyd@stupidchicken.com>
7788
7789 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7790
77912008-06-12 Juanma Barranquero <lekktu@gmail.com>
7792
7793 * w32font.c: Include ctype.h.
7794
77952008-06-11 Jason Rumney <jasonr@gnu.org>
7796
7797 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7798 misreported as space.
7799 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7800 as aliases for registry iso10646-1.
7801
78022008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7803
7804 * buffer.c (clone_per_buffer_values): Skip `name'.
7805
78062008-06-11 Chong Yidong <cyd@stupidchicken.com>
7807
7808 * font.c (font_parse_fcname): Fix last change; accept decimal
7809 points in font size.
7810
78112008-06-10 Jason Rumney <jasonr@gnu.org>
7812
7813 * w32uniscribe.c (add_opentype_font_name_to_list):
7814 Skip non unicode fonts.
7815
78162008-06-10 Chong Yidong <cyd@stupidchicken.com>
7817
7818 * xfns.c (Fx_font_dialog): New function.
7819
7820 * gtkutil.c (xg_dialog_response_cb): Rename from
7821 xg_file_response_callback.
7822 (pop_down_dialog): Rename from pop_down_file_dialog.
7823 (xg_get_file_name): Callers changed.
7824 (xg_get_font_name): New function.
7825
7826 * gtkutil.h (xg_get_font_name): Insert prototype.
7827
78282008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7829
7830 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7831 x_underline_minimum_display_offset.
7832 (syms_of_xdisp): Declare it here rather than in xterm.c.
7833 * dispextern.h (underline_minimum_offset): Declare it.
7834 * w32term.c (x_draw_glyph_string): Use it.
7835 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7836 (syms_of_xterm): Don't declare it any more.
7837 (x_draw_glyph_string): Adjust to the new name.
7838
78392008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7840
7841 * xterm.c (x_underline_minimum_display_offset): New var.
7842 (x_draw_glyph_string): Use it.
7843 (syms_of_xterm): Declare it.
7844
78452008-06-10 Chong Yidong <cyd@stupidchicken.com>
7846
7847 * font.c (font_parse_fcname): Accept GTK-style font names too.
7848
78492008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7850
7851 * dired.c (file_name_completion): Don't return t if the match is exact
7852 but with different capitalization.
7853 * minibuf.c (Ftry_completion): Simplify.
7854
7855 * window.c (Vwindow_point_insertion_type): New var.
7856 (set_window_buffer): Use it.
7857 (syms_of_window): Init and export it to Lisp.
7858
78592008-06-10 Kenichi Handa <handa@m17n.org>
7860
7861 * font.h (font_intern_prop): Prototype adjusted.
7862
7863 * font.c (font_intern_prop): New arg force_symbol.
7864 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7865 Adjust for the change of font_intern_prop.
7866
7867 * ftfont.c (ftfont_pattern_entity):
7868 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7869 (w32_registry):
7870 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7871 the change of font_intern_prop.
7872
78732008-06-09 Juanma Barranquero <lekktu@gmail.com>
7874
7875 * w32menu.c (digest_single_submenu): Declare extern.
7876
78772008-06-09 Jason Rumney <jasonr@gnu.org>
7878
7879 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7880
7881 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7882 (parse_single_submenu): Remove.
7883 (digest_single_submenu): Remove.
7884 (syms_of_w32menu): Don't initialise variables that have moved
7885 to menu.c.
7886 (set_frame_menubar): Sync with version in xmenu.c.
7887 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7888
7889 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7890 Make static again.
7891
78922008-06-09 Jason Rumney <jasonr@gnu.org>
7893
7894 Changes to w32 files related to the move of common menu code
7895 to menu.c on 2008-06-08 by Chong Yidong.
7896
7897 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7898 defs to w32gui.h.
7899 (single_keymap_panes, push_menu_item, push_menu_pane):
7900 Make globally visible.
7901
7902 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7903 (local_free, malloc_widget_value, free_widget_value)
7904 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7905 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7906 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7907 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7908 (menu_items, menu_items_allocated, menu_items_used)
7909 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7910 (init_menu_items, finish_menu_items, discard_menu_items)
7911 (grow_menu_items, push_submenu_start, push_submenu_end)
7912 (push_left_right_boundary, push_menu_pane, push_menu_item)
7913 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7914 (free_menubar_widget_tree_value, parse_single_submenu)
7915 (update_submenu_strings): Remove functions.
7916 (xmalloc_widget_value): Remove and declare extern.
7917
7918 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7919 (OBJ1): Build it.
7920
7921 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7922 (local_heap, local_alloc, local_free, malloc_widget_value)
7923 (free_widget_value): Define here.
7924
79252008-06-09 Kenichi Handa <handa@m17n.org>
7926
7927 * font.h (Qascii_0): Extern it.
7928
7929 * font.c (Qascii_0): New variable.
7930 (syms_of_font): DEFSYM it.
7931 (font_open_by_name): If the registry "iso8859-1" fails, try also
7932 "ascii-0".
7933
7934 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7935
79362008-06-08 Kenichi Handa <handa@m17n.org>
7937
7938 * .gdbinit (xfont): New command.
7939
79402008-06-08 Andreas Schwab <schwab@suse.de>
7941
7942 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7943 * Makefile.in (menu.o): Update dependencies.
7944
7945 * Makefile.in (obj): Always add menu.o.
7946 * emacs.c (main): Always call syms_of_menu.
7947 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7948
79492008-06-08 Chong Yidong <cyd@stupidchicken.com>
7950
7951 * Makefile.in: Compile menu.c.
7952
7953 * lisp.h: Declare syms_of_menu.
7954
7955 * emacs.c (main): Call syms_of_menu.
7956
7957 * keyboard.h: Relocate platform-independent menu definitions from
7958 xmenu.c.
7959
7960 * menu.c: New file. Relocate platform-independent menu
7961 definitions from xmenu.c. Suggested by Adrian Robert.
7962
7963 * xmenu.c: Remove platform-independent menu definitions.
7964 (menu_items menu_items_inuse, menu_items_allocated)
7965 (menu_items_used, menu_items_n_panes)
7966 (menu_items_submenu_depth): Move to keyboard.h.
7967 (init_menu_items, finish_menu_items, unuse_menu_items)
7968 (discard_menu_items, restore_menu_items, save_menu_items)
7969 (grow_menu_items, push_submenu_start, push_submenu_end)
7970 (push_left_right_boundary, push_menu_pane, push_menu_item)
7971 (keymap_panes, single_keymap_panes, single_menu_item)
7972 (list_of_panes, list_of_items, find_and_call_menu_selection)
7973 (xmalloc_widget_value, free_menubar_widget_value_tree)
7974 (parse_single_submenu, digest_single_submenu)
7975 (update_submenu_strings): Move to menu.c.
7976
79772008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7978
7979 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7980
79812008-06-06 Miles Bader <miles@gnu.org>
7982
7983 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7984 face, not frame default.
7985
79862008-06-05 Martin Rudalics <rudalics@gmx.at>
7987
7988 * window.c (pop_up_windows, pop_up_frames)
7989 (display_buffer_reuse_frames, Vpop_up_frame_function)
7990 (Vdisplay_buffer_function, Veven_window_heights)
7991 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7992 (Vspecial_display_function, Vsame_window_buffer_names)
7993 (Vsame_window_regexps, split_height_threshold)
7994 (Vsplit_window_preferred_function): Move those vars to window.el.
7995 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7996 (Fdisplay_buffer): Move those functions to window.el.
7997 (syms_of_window): Remove corresponding declarations.
7998 (display_buffer): New function.
7999 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8000 * dispnew.c (Flast_nonminibuf_frame): New function.
8001 * buffer.c (Fpop_to_buffer): Move to window.el.
8002
80032008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8004
8005 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8006
80072008-06-05 Kenichi Handa <handa@m17n.org>
8008
8009 * coding.c (detect_coding): Fix previous change.
8010 (detect_coding_system): Likewise.
8011
80122008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8013
8014 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8015
8016 * keymap.c (Vminibuffer_local_filename_must_match_map):
8017 Rename from Vminibuffer_local_must_match_filename_map.
8018 (syms_of_keymap):
8019 * minibuf.c (Fcompleting_read): Adjust accordingly.
8020 * commands.h: Rename declaration as well.
8021
80222008-06-05 Kenichi Handa <handa@m17n.org>
8023
8024 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8025 family name.
8026 (Ffont_put): Likewise.
8027
8028 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8029 current font-spec.
8030
8031 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8032 is unspecified.
8033
8034 * xfaces.c (realize_x_face): If the font-related face attributes
8035 are the same as those of default face, realize a new fontset from
8036 default->fontset.
8037 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8038
80392008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8040
8041 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8042 (move_it_in_display_line): New wrapper.
8043
8044 * window.c (window_scroll_pixel_based_preserve_x)
8045 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8046 (window_scroll_pixel_based, window_scroll_line_based):
8047 Use them to preserve column positions.
8048 (syms_of_window): Initialize them.
8049
8050 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8051 (HPOS . VPOS) pair.
8052
8053 * dispextern.h (move_it_in_display_line): Declare.
8054
80552008-06-05 Juanma Barranquero <lekktu@gmail.com>
8056
8057 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8058 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8059 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8060
80612008-06-04 Juanma Barranquero <lekktu@gmail.com>
8062
8063 * window.c (Fset_window_parameter): Doc fix.
8064 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8065
80662008-06-04 Joakim Verona <joakim@verona.se>
8067
8068 * window.h (struct window): Add new member window_parameters.
8069
8070 * window.c (Fwindow_parameters, Fwindow_parameter)
8071 (Fset_window_parameter): New defuns.
8072 (syms_of_window): Defsubr the new defuns.
8073 (make_window): Initialize window_parameters to nil.
8074
80752008-06-04 John Paul Wallington <jpw@pobox.com>
8076
8077 * eval.c (Fdefmacro): Doc fix.
8078
80792008-06-04 Kenichi Handa <handa@m17n.org>
8080
8081 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8082 Be sure to call setup_coding_system when we find a proper coding system.
8083 (detect_coding_system): Fix handling of coding->head_ascii.
8084
80852008-06-03 Andreas Schwab <schwab@suse.de>
8086
8087 * font.c (font_prop_validate_spacing): Fix last change.
8088
80892008-06-03 Kenichi Handa <handa@m17n.org>
8090
8091 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8092 (font_parse_fcname): Fix handling of unknown key.
8093
8094 * xfont.c (xfont_list): Try an alias.
8095
8096 * charset.c (char_charset): Return NULL if the arg charset_list is
8097 specified and C doesn't belong to any of them.
8098
80992008-06-02 Chip Coldwell <coldwell@redhat.com>
8100
8101 * font.c (font_pixel_size): Don't take cdr of an integer.
8102
81032008-06-02 Jim Meyering <meyering@redhat.com>
8104
8105 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8106 * alloc.c (xfree): Return right away for a NULL arg.
8107 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8108 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8109 * mac.c (create_apple_event_from_event_ref): Likewise.
8110 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8111 Likewise.
8112 * doprnt.c (doprnt1): Likewise.
8113 * frame.c (frame): Likewise.
8114 * keyboard.c (wipe_kboard): Likewise.
8115 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8116 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8117 * term.c (tty_default_color_capabilities, maybe_fatal)
8118 (delete_tty): Likewise.
8119 * w16select.c (string): Likewise.
8120 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8121 * w32bdf.c (w32_free_bdf_font): Likewise.
8122 * w32fns.c (w32_unload_font): Likewise.
8123 * w32font.c (w32font_close): Likewise.
8124 * window.c (size_window): Likewise.
8125 * xselect.c (receive_incremental_selection): Likewise.
8126 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8127 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8128 * w32.c (stat): Likewise.
8129
8130 Remove useless if-before-free tests.
8131 * editfns.c (Fset_time_zone_rule): Likewise.
8132 * lread.c (nosuffix): Likewise.
8133 * ralloc.c (get_bloc): Likewise.
8134 * regex.c (reg_free): Likewise.
8135 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8136 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8137 * xsmfns.c (smc_save_yourself_CB): Likewise.
8138
81392008-06-02 Kenichi Handa <handa@m17n.org>
8140
8141 * font.c (font_find_for_lface): Handle float font size.
8142 (font_open_for_lface): Likewise.
8143
8144 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8145 comparing the properties.
8146
81472008-06-01 Jason Rumney <jasonr@gnu.org>
8148
8149 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8150 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8151 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8152 Don't add empty script list.
8153 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8154
81552008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8156
8157 * Makefile.in (dot, dotdot): Remove, update users.
8158 ".." has been used elsewhere in the file for a long time.
8159 (LIBXT_STATIC): Remove conditional based on unused variable.
8160
81612008-06-01 Miles Bader <miles@gnu.org>
8162
8163 * xfaces.c (Vface_remapping_alist): New variable.
8164 (syms_of_xfaces): Initialize it.
8165 (enum named_merge_point_kind): New type.
8166 (struct named_merge_point): Add `named_merge_point_kind' field.
8167 (push_named_merge_point): Make cycle detection respect different
8168 named-merge-point kinds.
8169 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8170 Remove face-name alias resolution.
8171 (lface_from_face_name): New definition using
8172 `lface_from_face_name_no_resolve'.
8173 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8174 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8175 (get_lface_attributes): New definition that layers face-remapping on
8176 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8177 (lookup_basic_face): New function.
8178 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8179 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8180 `get_lface_attributes'.
8181 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8182 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8183 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8184
8185 * xdisp.c (init_iterator): Pass base_face_id through
8186 `lookup_basic_face' when we actually use it as a face-id.
8187 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8188 DEFAULT_FACE_ID.
8189
8190 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8191 lookup the initial face-id.
8192
8193 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8194
81952008-06-01 Juanma Barranquero <lekktu@gmail.com>
8196
8197 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8198 (Fremove_text_properties): Fix typos in docstrings.
8199
82002008-05-31 Kenichi Handa <handa@m17n.org>
8201
8202 * font.c (font_list_entities): Fix the car part of data to be
8203 stored in the cache.
8204
8205 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8206
82072008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8208
8209 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8210 Add a `test' argument so another predicate than `equal' can be used.
8211 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8212 (map_char_table): Remove unused vars `c' and `i'.
8213 * lisp.h (Foptimize_char_table): Adjust declaration.
8214 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8215
82162008-05-30 Kenichi Handa <handa@m17n.org>
8217
8218 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8219 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8220 defined.
8221
82222008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8223
8224 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8225 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8226 frame-local settings for the same variable.
8227
82282008-05-30 Kenichi Handa <handa@m17n.org>
8229
8230 * fontset.c (Ffont_info): Move to font.c.
8231 (syms_of_fontset): Delete defsubr of Sfont_info.
8232
8233 * font.c (font_style_to_value, font_score): Delete casting of the
8234 args to xstcasecmp.
8235 (register_font_driver): Increment num_font_drivers only when
8236 registering the driver globally.
8237 (Ffont_info): Move from fontset.c. Handle a font object too.
8238 (syms_of_font): Defsubr Sfont_info.
8239
82402008-05-29 Kenichi Handa <handa@m17n.org>
8241
8242 * coding.h (enum define_coding_utf8_arg_index): New enum.
8243 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8244 coding_attr_utf_bom.
8245 (enum utf_bom_type): Rename from utf_16_bom_type.
8246 (struct utf_16_spec): Adjust for the above change.
8247 (struct coding_system): Add utf_8_bom in `spec' union.
8248
8249 * coding.c (CODING_UTF_8_BOM): New macro.
8250 (enum coding_category): Delete coding_category_utf_8, add
8251 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
8252 coding_category_utf_8_sig.
8253 (CATEGORY_MASK_UTF_8): Delete it.
8254 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
8255 (CATEGORY_MASK_UTF_8_SIG): New macros.
8256 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
8257 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
8258 CATEGORY_MASK_UTF_8_SIG.
8259 (CATEGORY_MASK_UTF_8): New macro.
8260 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
8261 (detect_coding_utf_8): Check BOM.
8262 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
8263 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
8264 (encode_coding_utf_16): Likewise.
8265 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
8266 (detect_coding, detect_coding_system): Handle utf-8-auto.
8267 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
8268 (syms_of_coding): Fix setting up of Vcoding_category_table.
8269
82702008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
8271
8272 * process.c (Faccept_process_output): If `millisec' is non-nil,
8273 `seconds' default to 0.
8274 (wait_reading_process_output): Also return non-nil if we read output
8275 from a non-running process.
8276
82772008-05-29 Jason Rumney <jasonr@gnu.org>
8278
8279 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
8280 `raster' specified.
8281 (add_font_entity_to_list): Allow non-opentype truetype fonts back
8282 in the uniscribe backend, but disallow any font that has no
8283 unicode subrange support.
8284
82852008-05-29 Juanma Barranquero <lekktu@gmail.com>
8286
8287 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
8288 Fix typos in docstrings.
8289
82902008-05-29 Kenichi Handa <handa@m17n.org>
8291
8292 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
8293 (Fx_family_fonts): Set frame correctly.
8294
82952008-05-28 Jason Rumney <jasonr@gnu.org>
8296
8297 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
8298
82992008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8300
8301 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
8302 calling build_annotations.
8303
83042008-05-28 Juanma Barranquero <lekktu@gmail.com>
8305
8306 * coding.c (Fdecode_coding_region, Fencode_coding_region)
8307 (Fencode_coding_string):
8308 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
8309 <latin-extra-code-table>: Fix typos in docstrings.
8310 (syms_of_coding) <coding-system-alist>: Doc fix.
8311 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
8312
83132008-05-28 Kenichi Handa <handa@m17n.org>
8314
8315 * fontset.c (Ffont_info): Don't call font_close_object.
8316
8317 * font.c (font_parse_family_registry): Use Ffont_put to validate
8318 foundry and family.
8319 (font_delete_unmatched): Don't check spacing.
8320 (font_list_entities): Add spacing to the spec to list fonts.
8321
8322 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
8323 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
8324
8325 * coding.c (encode_coding_raw_text): Fix previous change.
8326 (encode_coding_object): When the dst_object is a buffer and is
8327 different from src_object, move gap to PT.
8328
83292008-05-27 Chong Yidong <cyd@stupidchicken.com>
8330
8331 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
8332
83332008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8334
8335 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8336 all branches. Compute it differently.
8337
8338 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8339
83402008-05-27 Juanma Barranquero <lekktu@gmail.com>
8341
8342 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8343 into "else if () ... else ...".
8344
83452008-05-27 Jason Rumney <jasonr@gnu.org>
8346
8347 * w32font.c (w32font_open_internal): Determine if glyph indices
8348 are likely to work here.
8349
83502008-05-27 Chong Yidong <cyd@stupidchicken.com>
8351
8352 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8353 draw overlap glyphs with appropriate highlighting.
8354
83552008-05-27 Kenichi Handa <handa@m17n.org>
8356
8357 * xfont.c (xfont_open): Fix calculation of font->average_width.
8358
83592008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8360
8361 * casefiddle.c (casify_object): Try to guess better whether the
8362 argument is a byte or a char.
8363
83642008-05-26 Andreas Schwab <schwab@suse.de>
8365
8366 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8367 Always send multiples of format size.
8368
8369 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8370
83712008-05-26 Jason Rumney <jasonr@gnu.org>
8372
8373 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8374 (compute_metrics): Don't set failure if we just cleared the cache.
8375 (w32_weight_table): Remove unused variable.
8376 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8377 backwards compatibility.
8378
83792008-05-25 Kenichi Handa <handa@m17n.org>
8380
8381 * w32term.c (x_draw_glyph_string):
8382 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8383
8384 * xfaces.c: Delete unused function prototypes.
8385 (xstrlwr, font_frame): Delete them.
8386 (clear_face_cache): Delete unused variable.
8387
8388 * xftfont.c (xftfont_open): Delete unused variable.
8389 If underline_thickness is not 1, adjust underline_position.
8390
8391 * ftxfont.c (ftxfont_open): Delete unused variable.
8392
8393 * fontset.c (face_for_char): Optimize for the case of no charset
8394 property.
8395
8396 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8397 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8398 (otf_open, font_otf_capability, generate_otf_features)
8399 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8400 Comment out by surrounding "#if 0" and "#endif" for the moment.
8401 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8402 (syms_of_font): Codes for accessing above commented out.
8403
84042008-05-24 Eli Zaretskii <eliz@gnu.org>
8405
8406 * w32proc.c: Include dispextern.h.
8407
8408 * w32.c: Include dispextern.h.
8409
84102008-05-23 Juanma Barranquero <lekktu@gmail.com>
8411
8412 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8413 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8414 Fix typos in docstrings.
8415
84162008-05-23 Jason Rumney <jasonr@gnu.org>
8417
8418 * xsmfns.c: Remove includes that are already included by config.h.
8419
84202008-05-23 Kenichi Handa <handa@m17n.org>
8421
8422 * charset.c (Qemacs, charset_emacs): New variables.
8423 (char_charset): Fix for non-Unicode characters.
8424 (syms_of_charset): Define charset_emacs.
8425
8426 * w32term.c (x_draw_glyph_string): Be sure to update
8427 s->underline_thickness and s->underline_position. Be sure to draw
8428 underline within the current line area.
8429
8430 * xterm.c (x_draw_glyph_string): Be sure to update
8431 s->underline_thickness and s->underline_position. Be sure to draw
8432 underline within the current line area.
8433
8434 * fontset.c: Delete unused variables and add casting for char *
8435 throughout the file.
8436 (fontset_font): Try the fallback fonts of the current fontset
8437 before consulting the default fontset.
8438
8439 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8440
8441 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8442
84432008-05-22 Jason Rumney <jasonr@gnu.org>
8444
8445 * font.c: Don't include strings.h.
8446
8447 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8448
8449 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8450 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8451 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8452 to call xstrcasecmp.
8453
8454 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8455
8456 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8457
8458 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8459
8460 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8461
84622008-05-22 Kenichi Handa <handa@m17n.org>
8463
8464 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8465
8466 * font.c (font_prop_validate_style): Adjust for the format
8467 change of font_style_table.
8468
8469 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8470 two args.
8471
8472 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8473 two args.
8474
84752008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8476
8477 * minibuf.c (keys_of_minibuf): Delete.
8478 * lisp.h (keys_of_minibuf): Delete.
8479 * emacs.c (main): Don't call keys_of_minibuf.
8480
84812008-05-22 Kenichi Handa <handa@m17n.org>
8482
8483 * ftfont.c (ftfont_resolve_generic_family): Rename from
8484 ftfont_list_generic_family. Return a single family for each
8485 generic family.
8486 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8487 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8488 Call font_add_log.
8489 (ftfont_match): Call font_add_log.
8490
8491 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8492 (FONT_DEBUG): Define it.
8493 (font_add_log): Extern it.
8494 (font_assert): Rename from xassert.
8495
8496 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8497 (xfont_list_family): Call font_add_log.
8498 (xfont_match): Likewise.
8499 (memq_no_quit): Delete.
8500
8501 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8502 call of Ffont_xlfd_name.
8503
8504 * xfaces.c (struct table_entry, slant_table, weight_table)
8505 (swidth_table): Move to font.c.
8506
8507 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8508 xassert are changed to font_assert. Delete many unused variables.
8509 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8510 New variables.
8511 (struct table_entry): Move from xfaces.c and modified.
8512 (weight_table, slant_table, width_table): Move from xfaces.c and
8513 contents adjusted for the change of struct table_entry.
8514 (font_style_to_value, font_style_symbolic): Adjust for the
8515 format change of font_style_table.
8516 (font_parse_family_registry): Don't overwrite existing foundry and
8517 family of font_spec.
8518 (font_score): Fix calculation of diff for sizes.
8519 (font_sort_entites): Call font_add_log.
8520 (font_delete_unmatched): Return a newly created list.
8521 (font_list_entities): Fix previous change. Call font_add_log.
8522 (font_matching_entity, font_open_entity, font_close_entity):
8523 Call font_add_log.
8524 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8525 (Finternal_set_font_style_table): Delete.
8526 (BUILD_STYLE_TABLE): New macro.
8527 (build_style_table): New function.
8528 (Vfont_log, font_log_env_checked): New variables.
8529 (font_add_log): New function.
8530 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8531 Declare Lisp variables "font-weight-table", "font-slant-table",
8532 "font-width-table", and "font-log". Initialize font_style_table.
8533
85342008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8535
8536 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8537
85382008-05-21 Seiji Zenitani <zenitani@mac.com>
8539 Ryo Yoshitake <ryo@shiftmode.net>
8540
8541 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8542 (Vframe_alpha_lower_limit): New variable.
8543 (x_set_alpha): New function.
8544
8545 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8546
8547 * xfns.c (x-create-frame, Qalpha):
8548 Initialize the frame parameter `alpha'.
8549 * xterm.c (OPAQUE, OPACITY): New.
8550 (x_set_frame_alpha): New function.
8551 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8552
8553 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8554 * w32fns.c (w32_frame_parm_handlers): Likewise.
8555
85562008-05-20 Jason Rumney <jasonr@gnu.org>
8557
8558 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8559 truetype fonts to opentype list.
8560
85612008-05-20 Juanma Barranquero <lekktu@gmail.com>
8562
8563 * fontset.c (Ffontset_info): Doc fix.
8564 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8565 <ignore-relative-composition>: Fix typos in docstrings.
8566
8567 * font.c (syms-of-font) <font-encoding-alist>:
8568 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8569 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8570 (Ffont_otf_alternates): Doc fixes.
8571
85722008-05-20 Kenichi Handa <handa@m17n.org>
8573
8574 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8575 font.h through out the file.
8576 (FONT_DRIVERS): Rename from FONTOBJ.
8577 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8578 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8579
8580 * emacs.c (main): Call syms_of_font unconditionally.
8581
8582 * font.h (find_font_encoding): Extern it.
8583
8584 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8585 fontset.c.
8586 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8587 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8588 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8589 only when HAVE_WINDOW_SYSTEM is defined.
8590 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8591 when HAVE_WINDOW_SYSTEM is defined.
8592
8593 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8594 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8595
8596 * xfaces.c: Include font.h unconditionally.
8597 (merge_face_ref, merge_face_vectors)
8598 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8599
86002008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8601
8602 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8603 indirect_variable.
8604 * eval.c (lisp_indirect_variable): New fun.
8605 (Fuser_variable_p): Use it.
8606
86072008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8608
8609 * lisp.h (indirect_variable):
8610 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8611 Use Lisp_Symbol pointers rather than Lisp_Object.
8612 Adjust callers.
8613 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8614 To this end, change calling-convention.
8615
8616 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8617 if some non-hidden buffers are selected by string&pred.
8618
86192008-05-19 Chong Yidong <cyd@stupidchicken.com>
8620
8621 * process.c (wait_reading_process_output): Always check status
8622 when in batch mode.
8623
86242008-05-19 Kenichi Handa <handa@m17n.org>
8625
8626 * font.c (font_list_entities): Fix handling of cache.
8627 (font_matching_entity): Likewise.
8628
8629 * ftfont.c (cs_iso8859_1): Delete.
8630 (ft_face_cache): New variable.
8631 (struct ftfont_info): New member fc_charset_idx.
8632 (ftfont_build_basic_charsets): Delete.
8633 (fc_charset_table): New variable.
8634 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8635 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8636 Callers changed.
8637 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8638 (ftfont_spec_pattern): New argument fc_charset_idx.
8639 Check registry more rigidly. Change callers.
8640 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8641 change of :font-entity property of the font.
8642
8643 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8644 property of the font.
8645
86462008-05-18 Juanma Barranquero <lekktu@gmail.com>
8647
8648 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8649 (Funencodable_char_position, Fcheck_coding_systems_region)
8650 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8651 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8652 (Ffind_operation_coding_system, Fset_coding_system_priority)
8653 (Fcoding_system_eol_type): Doc fixes.
8654
86552008-05-17 Glenn Morris <rgm@gnu.org>
8656
8657 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8658
86592008-05-16 Eli Zaretskii <eliz@gnu.org>
8660
8661 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8662 and st_gid.
8663
8664 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8665 HAVE_WINDOW_SYSTEM is not defined.
8666
8667 * xfaces.c (merge_face_ref, merge_face_vectors)
8668 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8669 HAVE_WINDOW_SYSTEM is defined.
8670 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8671
86722008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8673
8674 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8675
86762008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8677
8678 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8679
86802008-05-15 Kenichi Handa <handa@m17n.org>
8681
8682 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8683 preference.
8684
86852008-05-15 Glenn Morris <rgm@gnu.org>
8686
8687 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8688
86892008-05-15 Chong Yidong <cyd@stupidchicken.com>
8690
8691 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8692 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8693
8694 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8695
86962008-05-15 Kenichi Handa <handa@m17n.org>
8697
8698 * ftfont.c (ftfont_list): Downcase family name to check generic
8699 families.
8700
8701 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8702 font-spec for QCfont value.
8703
8704 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8705 buffer. Check the return value of it.
8706
87072008-05-14 Jason Rumney <jasonr@gnu.org>
8708
8709 * w32term.c (w32_get_glyph_overhangs): Remove.
8710 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8711
87122008-05-14 Kenichi Handa <handa@m17n.org>
8713
8714 * font.c (font_prop_validate): Make nil a valid value.
8715 (font_clear_cache): Check if the cached vector of entities is nil
8716 or not.
8717
87182008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8719
8720 * emacs.c (main_thread): Conditionalize on
8721 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8722 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8723
8724 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8725 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8726 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8727
87282008-05-14 Kenichi Handa <handa@m17n.org>
8729
8730 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8731 has no corresponding coding system.
8732
87332008-05-14 Jason Rumney <jasonr@gnu.org>
8734
8735 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8736
8737 * w32font.h (w32font_open_internal): Update declaration.
8738
8739 * w32font.c (w32font_open_internal): Change last argument from
8740 w32font_info struct to font object. Fill in font object from
8741 font_entity. Get Outline metrics if possible. Use them to
8742 calculate underline position and thickness. Use xlfd name as name
8743 property. Don't set codepage.
8744 (w32font_open): Pass font_object to w32font_open_internal. Don't
8745 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8746 (w32font_draw): Use s->font.
8747 (clear_cached_metrics): Don't clear non-existent blocks.
8748
8749 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8750 font was not found.
8751 (x_draw_glyph_string): Use underline position and thickness from font.
8752
8753 * w32uniscribe.c (uniscribe_open): Pass font_object to
8754 w32font_open_internal.
8755
87562008-05-14 Kenichi Handa <handa@m17n.org>
8757
8758 These changes are to delete all legacy font-handling codes, and
8759 make Emacs use only font-backends.
8760
8761 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8762 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8763
8764 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8765
8766 * charset.h (Vcharset_non_preferred_head)
8767 (Vcurrent_iso639_language): Extern them.
8768
8769 * charset.c (Vcharset_non_preferred_head): New variable.
8770 (Vcurrent_iso639_language): New variable.
8771 (syms_of_charset): Declare it as a Lisp variable.
8772 (char_charset): Don't check non preferred charsets. As a last
8773 resort, return charset_unicode.
8774 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8775
8776 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8777 conditionals. Don't check enable_font_backend. Delete all codes
8778 used only when USE_FONT_BACKEND is not defined.
8779
8780 * dispextern.h (struct glyph_string): Change type of `font' to
8781 `struct font *'.
8782 (struct glyph_string): New member underline_position and
8783 underline_thickness.
8784 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8785 (struct face): Change type of `font' to `struct font *'. Remove
8786 members `font_name', `font_info_id'.
8787 (per_char_metric, encode_char): Delete externs.
8788 (calc_pixel_width_or_height): Adjust the prototype.
8789
8790 * emacs.c (enable_font_backend): Delete extern.
8791 (main): Don't set enable_font_backend. Don't check the command
8792 line argument "-disable-font-backend".
8793
8794 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8795 (enum font_property_index): New members FONT_DPI_INDEX,
8796 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8797 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8798 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8799 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8800 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8801 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8802 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8803 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8804 (struct font_spec, struct font_entity): New structs.
8805 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8806 (struct font): Many members from old "struct font_info" moved to
8807 here. Members font and entity deleted.
8808 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8809 the new font-related objects.
8810 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8811 (CHECK_FONT_GET_OBJECT): Likewise.
8812 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8813 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8814 (struct font_driver): New members case_sensitive anc check. Type
8815 of the member list and open changed.
8816 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8817 (font_symbolic_width, font_find_object, font_get_spec)
8818 (font_set_lface_from_name): Delete extern.
8819 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8820
8821 * font.c: Include <strings.h>.
8822 (enable_font_backend): Delete it.
8823 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8824 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8825 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8826 (null_string): Delete it.
8827 (null_vector): Make it static.
8828 (font_family_alist): Delete it.
8829 (Qnormal): Extern it.
8830 (QCextra, QClanguage): Delete it.
8831 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8832 (font_make_spec, font_make_entity, font_make_object)
8833 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8834 the string. Callers changed.
8835 (font_pixel_size): Adjusted for the format change of font-related
8836 objects.
8837 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8838 (font_style_to_value, font_style_symbolic): New function.
8839 (build_font_family_alist): Delete it.
8840 (font_registry_charsets): Use Fassoc_string instead of
8841 assq_no_quit.
8842 (font_prop_validate_symbol): Don't return null_string.
8843 (font_prop_validate_style): Adjusted for the change of
8844 style-related values in a font vector.
8845 (font_property_table): Delete entries for QClanguage and
8846 QCantialias, add entries for QCavgwidth.
8847 (get_font_prop_index): Delete the 2nd argument FROM.
8848 (font_prop_validate): Arguments changed.
8849 (font_put_extra): Adjusted for the change of font-related objects.
8850 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8851 (font_parse_fcname, font_unparse_fcname)
8852 (font_prepare_composition): Likewise.
8853 (font_parse_family_registry): Renamed from font_merge_old_spec.
8854 (otf_open): Delete the 1st arg entity.
8855 (font_otf_capability): Adjusted for the above change.
8856 (font_score): New arg alternate_families. Adjusted for the change
8857 of font-related objects.
8858 (font_sort_entites): New arg best_only.
8859 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8860 Delete them.
8861 (font_match_p): Check alternate families.
8862 (font_find_object): Delete it.
8863 (font_check_object): New function.
8864 (font_clear_cache): Adjusted for the change of font-related objects.
8865 (font_delete_unmatched): New arg.
8866 (font_list_entities): Call font_driver->list with a spec that
8867 doesn't specify style-related properties.
8868 (font_matching_entity): Arguments changed. Caller changed.
8869 (font_open_entity): Adjusted for the change of font-related objects.
8870 (font_close_object, font_has_char, font_encode_char)
8871 (font_get_name, font_get_spec): Likewise.
8872 (font_spec_from_name, font_clear_prop, font_update_lface):
8873 New functions.
8874 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8875 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8876 (font_at): Adjusted for the change of font-related objects.
8877 (font_range): New function.
8878 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8879 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8880 (Fcopy_font_spec, Fmerge_font_spec): New function.
8881 (Ffont_family_list): Renamed from list-families.
8882 (Finternal_set_font_style_table): Arguments changed.
8883 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8884 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8885 change of font-related objects.
8886 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8887
8888 * fontset.h (struct font_info): Delete it. Most members go to
8889 struct font.
8890 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8891 (enum FONT_SPEC_INDEX): Delete it.
8892 (font_info, list_fonts_func, load_font_func, query_font_func)
8893 (set_frame_fontset_func, find_ccl_program_func)
8894 (get_font_repertory_func, new_fontset_from_font_name): Delete
8895 externs.
8896 (fontset_from_font_name): Extern it.
8897 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8898 (FONT_INFO_FROM_FACE): Deleted.
8899 (face_for_font): Adjust prototype.
8900
8901 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8902 conditionals. Don't check enable_font_backend. Delete all codes
8903 used only when USE_FONT_BACKEND is not defined.
8904 (get_font_info_func, list_font_func, load_font_func)
8905 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8906 (get_font_repertory_func): Delete them.
8907 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8908 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8909 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8910 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8911 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8912 (fontset_compare_rfontdef): New function.
8913 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8914 rfont-defs by qsort. Adjusted for the change of font-group vector.
8915 (load_font_get_repertory): Deleted.
8916 (fontset_find_font): Use new macros to ref/set elements of
8917 font-def and rfont-def.
8918 (fontset_font): Fix the timing of remembering that no font for C.
8919 (free_face_fontset): Do nothing if the face has no fontset.
8920 (face_suitable_for_char_p): Use new macros to ref/set elements of
8921 rfont-def.
8922 (face_for_char): Likewise. Call face_for_char with font_object.
8923 (fs_load_font): Delete. Delete #pragma surrounding it.
8924 (fs_query_fontset): Use strcasecmp instead of strcmp.
8925 (generate_ascii_font_name): Adjusted for the format change of
8926 font-spec.
8927 (Fset_fontset_font): Likewise. Use new macros to set elements of
8928 font-def.
8929 (Fnew_fontset): Use font_unparse_xlfd to generate
8930 FONTSET_ASCII (fontset).
8931 (new_fontset_from_font_name): Deleted.
8932 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8933 a fontset is already created for the font. FIx updating of
8934 Vfontset_alias_alist.
8935 (fontset_ascii_font): Deleted.
8936 (Ffont_info): Adjusted for the format change of font-spec.
8937 (Finternal_char_font): Likewise.
8938 (Ffontset_info): Likewise.
8939 (syms_of_fontset): Don't check load_font_func.
8940
8941 * fns.c (internal_equal): Handle PREV_FONT.
8942
8943 * frame.h: Delete USE_FONT_BACKEND conditional.
8944
8945 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8946 conditionals. Don't check enable_font_backend. Delete all codes
8947 used only when USE_FONT_BACKEND is not defined.
8948 (x_set_font): Call x_new_font, not x_new_fontset2.
8949 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8950 already set for the frame.
8951
8952 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8953 a font-entity by font_make_entity. Use font_intern_prop instead
8954 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8955 font property. If a font is scalable, set avgwidth property to 0.
8956 Set font-entity property by font_put_extra.
8957 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8958 (ffont_driver): Adjusted for the change of struct font_driver.
8959 (ftfont_spec_pattern): New function.
8960 (ftfont_list): Return a list, not vector.
8961 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8962 (ftfont_list_family): Don't downcase names.
8963 (ftfont_free_entity): Deleted.
8964 (ftfont_open): Return a font-object. Adjusted for the change of
8965 struct font. Get underline_thickness and underline_position from
8966 font property. Don't update dpyinfo->smallest_font_height and
8967 dpyinfo->smallest_char_width.
8968 (ftfont_close): Don't free `struct font'.
8969 (ftfont_has_char): Adjusted for the format change of font-entity.
8970 (ftfont_encode_char, ftfont_text_extents): Likewise.
8971
8972 * ftxfont.c (ftxfont_list): Return a list, not vector.
8973 (ftxfont_open): Return a font-object. Adjusted for the change of
8974 struct font. Get underline_thickness and underline_position from
8975 font property. Don't update dpyinfo->smallest_font_height and
8976 dpyinfo->smallest_char_width.
8977 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8978 (ftxfont_draw): Adjusted for the change of struct font.
8979
8980 * image.c (image_ascent): Don't include "charset.h". Include
8981 "character.h" and "font.h".
8982
8983 * lisp.h (enum pvec_type): New member PREV_FONT.
8984 (Fassoc_string): EXFUN it.
8985
8986 * print.c: Include font.h.
8987 (print_object): Handle font-related objects.
8988
8989 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8990 conditionals. Don't check enable_font_backend. Delete all codes
8991 used only when USE_FONT_BACKEND is not defined.
8992 (handle_auto_composed_prop): Do nothing if it->f is not on a
8993 window system. Check how many following characters can be
8994 displayed by the same font.
8995 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8996 'struct font *'.
8997 (get_char_face_and_encoding): Assign the whole encoding task to
8998 the `encode-char' method of a font driver.
8999 (fill_composite_glyph_string): Adjusted for the change of `struct
9000 face' and `struct glyph_string'.
9001 (fill_glyph_string): Likewise.
9002 (get_per_char_metric): Arguments changed.
9003 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9004 and `struct glyph_string'.
9005 (produce_stretch_glyph, calc_line_height_property)
9006 (x_produce_glyphs): Likewise.
9007
9008 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9009 conditionals. Don't check enable_font_backend. Delete all codes
9010 used only when USE_FONT_BACKEND is not defined. Use
9011 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9012 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9013 (Qp): Extern them.
9014 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9015 Deleted.
9016 (struct font_name): Deleted.
9017 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9018 (compare_fonts_by_sort_order): New function.
9019 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9020 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9021 Deleted.
9022 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9023 compare_fonts_by_sort_order.
9024 (Fx_font_family_list): Call Ffont_family_list.
9025 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9026 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9027 (face_symbolic_slant, face_symbolic_swidth)
9028 (split_font_name_into_vector, build_font_name_from_vector)
9029 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9030 (font_rescale_ratio, split_font_name, build_font_name)
9031 (free_font_names, sort_fonts, x_face_list_fonts)
9032 (face_font_available_p, sorted_font_list, cmp_font_names)
9033 (font_list_1, concat_font_list, font_list, remove_duplicates):
9034 Deleted.
9035 (Fx_list_fonts): Use Ffont_list.
9036 (LFACE_AVGWIDTH): Deleted.
9037 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9038 by FONTP.
9039 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9040 (set_lface_from_font_name): Delete it.
9041 (set_lface_from_font): Renamed from
9042 set_lface_from_font_and_fontset. Caller changed. Don't set
9043 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9044 for face.
9045 (merge_face_vectors): Copy font-spec if necessary.
9046 Clear properties of the font-spec if necessary.
9047 (merge_face_ref): Clear properties of the font-spec if necessary.
9048 (Finternal_set_lisp_face_attribute): Likewise.
9049 (set_font_frame_param): Use font_load_for_lface to load a
9050 font-object, and call Fmodify_frame_parameters with it.
9051 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9052 font name by Ffont_xlfd_name.
9053 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9054 QCslant, and QCwidth.
9055 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9056 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9057 Compare fonts by EQ.
9058 (lookup_non_ascii_face): Deleted.
9059 (face_for_font): The 2nd argument changed.
9060 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9061 Check atomic font properties by case insensitive.
9062 (realize_non_ascii_face): Set face->overstrike correctly.
9063 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9064 (dump_realized_face): Get font name from
9065 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9066
9067 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9068 conditionals. Don't check enable_font_backend. Delete all codes
9069 used only when USE_FONT_BACKEND is not defined.
9070 (xic_create_xfontset): Original code deleted and renamed from
9071 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9072 (x_make_gc): Don't set GCFont in GCs.
9073 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9074 opened by "fixed".
9075 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9076 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9077 get_font_repertory_func.
9078
9079 * xfont.c: Include <stdlib.h> and "ccl.h".
9080 (struct xfont_info): New structure.
9081 (xfont_query_font): Deleted.
9082 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9083 moved from xterm.c.
9084 (xfont_driver): Adjusted for the change of struct font_driver.
9085 (compare_font_names): New function.
9086 (xfont_list_pattern): Sort font names case insensitively. Make
9087 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9088 (xfont_list): Return a list, not vector.
9089 (xfont_match): If the font doesn't have QCname property, generate
9090 a name from the other font properties.
9091 (xfont_open): Return a font-object. Adjusted for the change of
9092 struct font. Get underline_thickness and underline_position from
9093 font property. Don't update dpyinfo->smallest_font_height and
9094 dpyinfo->smallest_char_width.
9095 (xfont_close): Don't free struct font.
9096 (xfont_prepare_face): Adjusted for the change of struct font.
9097 (xfont_done_face): Deleted.
9098 (xfont_has_char): Adjusted for the change of struct font.
9099 (xfont_encode_char, xfont_draw): Likewise.
9100 (xfont_check): New function.
9101
9102 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9103 callback function.
9104 (xftfont_match): Adjusted for the format change of font-entity.
9105 (xftfont_open): Adjusted for the format change of font-entity and
9106 font-object. Adjusted for the change of struct font. Return a
9107 font-object. Don't update dpyinfo->smallest_font_height and
9108 dpyinfo->smallest_char_width.
9109 (xftfont_close): Block input while calling XftFontClose.
9110 (xftfont_prepare_face): Don't block input while calling
9111 xftfont_get_colors. Adjusted for the change of struct font.
9112 (xftfont_shape): Return value of error case fixed.
9113
9114 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9115
9116 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9117 conditionals.
9118 (FONT_WIDTH): Return (f)->max_width.
9119 (struct x_display_info): Delete member `font'.
9120 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9121 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9122 (struct x_output): Change type of `font' to `struct font *'.
9123
9124 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9125 conditionals. Don't check enable_font_backend. Delete all codes
9126 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9127 (x_per_char_metric, x_encode_char): Deleted.
9128 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9129 (x_compute_glyph_string_overhangs): Adjusted for the change of
9130 `struct face'.
9131 (x_draw_glyph_string_foreground)
9132 (x_draw_composite_glyph_string_foreground): Likewise.
9133 (x_draw_glyph_string): Likewise. Use font->underline_position and
9134 font->underline_thickness.
9135 (x_new_font): Renamed from x_new_fontset2.
9136 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9137 (x_check_font): Call `check' method of a font driver.
9138 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9139 (x_query_font, x_get_font_repertory): Deleted.
9140 (x_find_ccl_program): Renamed and moved to xfont.c.
9141 (x_redisplay_interface): Adjusted for the change of `struct
9142 redisplay_interface'.
9143
9144 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9145 conditionals. Don't check enable_font_backend. Delete all codes
9146 used only when USE_FONT_BACKEND is not defined. Surround non-used
9147 code by "#ifdef OLD_FONT" and "endif".
9148 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9149
9150 * w32font.h (struct w32font_info): New member.
9151 (FONT_COMPAT): New macro.
9152 (w32font_open_internal): Prototype adjusted.
9153
9154 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9155 OLD_FONT" and "endif".
9156
9157 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9158 conditionals. Don't check enable_font_backend. Delete all codes
9159 used only when USE_FONT_BACKEND is not defined.
9160 (w32font_open): Return a font-object. Make a font-object by
9161 font_make_object. Adjusted for the change of struct w32font_info.
9162 (w32font_close): Don't free struct font. Adjusted for the change
9163 of struct w32font_info.
9164 (w32font_encode_char, w32font_text_extents, w32font_draw):
9165 Adjusted for the change of struct w32font_info.
9166 (w32font_draw): Likewise.
9167 (w32font_list_internal): Return a list, not vector.
9168 (w32font_open_internal): Change the 4th arg to font-object.
9169 Adjusted for the change of struct w32font_info and font-object format.
9170 (add_font_name_to_list): Don't downcase names.
9171 (w32_enumfont_pattern_entity): Make a font-entity by
9172 font_make_entity. Adjusted for the format change of font-entity.
9173 Use FONT_SET_STYLE to set a style-related font property. If a
9174 font is scalable, set avgwidth property to 0. Set font-entity
9175 property by font_put_extra.
9176 (font_matches_spec): Adjusted for the format change of font-entity.
9177 (w32_weight_table, w32_decode_weight): New variables.
9178 (w32_encode_weight): New function.
9179 (fill_in_logfont): Adjusted for the format change of font-spec.
9180 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9181 weight value.
9182 (w32font_driver): Adjusted for the change of struct font_driver.
9183
9184 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9185 conditionals. Don't check enable_font_backend. Surround non-used
9186 code by "#ifdef OLD_FONT" and "endif".
9187 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9188 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9189
9190 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9191 conditionals. Don't check enable_font_backend. Delete all codes
9192 used only when USE_FONT_BACKEND is not defined. Surround non-used
9193 code by "#ifdef OLD_FONT" and "endif".
9194
9195 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9196 (uniscribe_open): Return value changed to font-object.
9197 Adjusted for the format change of font-object.
9198 (uniscribe_otf_capability): Adjusted for the change of struct font.
9199 (add_opentype_font_name_to_list): Don't downcase names.
9200 (uniscribe_font_driver): Adjusted for the change of struct
9201 font_driver.
9202
92032008-05-13 Chong Yidong <cyd@stupidchicken.com>
9204
9205 * dispnew.c (update_frame_1): Check if tty output is still valid
9206 before flushing it.
9207
92082008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9209
9210 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9211 to Gtk+ menus.
9212
92132008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9214
9215 * dired.c (file_name_completion): Tweak the code so as to always do it
9216 in a single pass. Tighten the scope of some variables.
9217
9218 * dired.c (Qdefault_directory): New var.
9219 (file_name_completion): Use it instead of Fexpand_file_name.
9220 (syms_of_dired): Initialize it.
9221
92222008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9223
9224 * fileio.c (double_dollars): Remove dead code.
9225
92262008-05-10 Eli Zaretskii <eliz@gnu.org>
9227
9228 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9229 Mention w32-get-true-file-attributes in doc string.
9230
9231 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9232
92332008-05-09 Glenn Morris <rgm@gnu.org>
9234
9235 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9236 2008-04-23.
9237
92382008-05-09 Eli Zaretskii <eliz@gnu.org>
9239
9240 Support for reporting owner and group of each file on MS-Windows:
9241 * dired.c (stat_uname, stat_gname): New functions, with special
9242 implementation for w32.
9243 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9244
9245 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9246 (dflt_group_name): New static variable.
9247 (dflt_group): Rename from the_group.
9248 (init_user_info): Init dflt_group fields. Get user's group name
9249 from LookupAccountSid.
9250 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
9251 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
9252 New initialization states.
9253 (globals_of_w32): Initialize them to zero. Initialize the default
9254 group name to "None".
9255 (GetFileSecurity_Name): New global var, the name of the function
9256 to call for GetFileSecurity.
9257 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
9258 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
9259 (get_file_security, get_security_descriptor_owner)
9260 (get_security_descriptor_group, is_valid_sid)
9261 (get_file_security_desc, get_rid, get_name_and_id)
9262 (get_file_owner_and_group): New functions.
9263 (stat): Use get_file_security_desc and get_file_owner_and_group to
9264 report the owner and primary group of each file. Don't ignore the
9265 high 32 bits of file's size, now that st_size is 64-bit wide.
9266 Fix test when to get true file attributes.
9267 (init_user_info): Use get_rid instead of equivalent inline code.
9268 (fstat): Don't ignore the high 32 bits of file's size.
9269
92702008-05-09 Chong Yidong <cyd@stupidchicken.com>
9271
9272 * image.c (png_load): Use correct bit-depth for setting background
9273 color.
9274
92752008-05-08 Eli Zaretskii <eliz@gnu.org>
9276
9277 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
9278 epa-hook.elc.
9279
92802008-05-08 Juanma Barranquero <lekktu@gmail.com>
9281
9282 * font.c (Ffont_match_p): Don't use `iff' in docstring.
9283
92842008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
9285
9286 * macfns.c (Fx_create_frame): Make a copy of frame parameters
9287 because the original parameters are in pure storage now.
9288 (mac_window): Remove unused params. Update callers.
9289
92902008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
9291
9292 * lread.c (substitute_object_recurse): Use lower-level primitives.
9293 Don't signal errors when traversing sub-char-tables.
9294 Don't loop over all the possible characters when traversing char-tables.
9295
9296 * print.c (print_preprocess): Add sub-char-tables to the print-table,
9297 just like we do in print.c.
9298
92992008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
9300
9301 * minibuf.c (Ftry_completion): Remove code left over from when we used
9302 scmp instead of Fcompare_strings.
9303
93042008-05-04 Juanma Barranquero <lekktu@gmail.com>
9305
9306 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
9307
93082008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9309
9310 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
9311 Create bitmap context in native byte order.
9312
9313 * macterm.c (XDrawLine)
9314 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
9315 context in native byte order.
9316
93172008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9318
9319 * config.in: Regenerate.
9320
9321 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
9322 New definitions for Image I/O support.
9323 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9324 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
9325 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9326 (mac_data_provider_release_data, image_load_image_io)
9327 [USE_MAC_IMAGE_IO]: New functions.
9328 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
9329 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
9330 (init_image_func_pointer) [MAC_OSX]: Remove function.
9331 (image_load_quartz2d) [MAC_OSX]: Check availability of
9332 CGImageCreateWithPNGDataProvider at compile time.
9333 Use lowercase `false' for boolean constant.
9334 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9335 Use image_load_image_io.
9336 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9337 Don't check MyCGImageCreateWithPNGDataProvider.
9338 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9339 Don't call init_image_func_pointer.
9340
9341 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9342
9343 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9344 Make variable non-static.
9345 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9346 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9347
9348 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9349 (RED_FROM_ULONG): Mask off higher bits.
9350 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9351
9352 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9353 Include AvailabilityMacros.h.
9354 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9355 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9356
93572008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9358
9359 * chartab.c (Fset_char_table_range): If range is t, really set all
9360 chars to that value.
9361
93622008-05-03 Eli Zaretskii <eliz@gnu.org>
9363
9364 * dired.c (Ffile_attributes): Don't allow the device number become
9365 negative.
9366
93672008-05-02 Daiki Ueno <ueno@unixuser.org>
9368
9369 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9370
93712008-05-02 Juri Linkov <juri@jurta.org>
9372
9373 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9374 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9375 DEFAULT argument as a list of default values in docstrings.
9376
93772008-05-01 Chong Yidong <cyd@stupidchicken.com>
9378
9379 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9380
93812008-05-01 Martin Rudalics <rudalics@gmx.at>
9382
9383 * dispnew.c (change_frame_size_1): Preserve small windows when
9384 shrinking frames by calling set_window_height|width with third
9385 arg 2.
9386
9387 * window.h (struct window): Replace field too_small_ok by field
9388 resize_proportionally.
9389
9390 * window.c (make_window): Initialize resize_proportionally.
9391 (enlarge_window): Temporarily set resize_proportionally to make
9392 sure that shrink_windows does scale the window proportionally.
9393 (shrink_windows): When window has resize_proportionally set try
9394 to shrink it proportionally by stealing from other windows.
9395 (struct saved_window, Fset_window_configuration)
9396 (compare_window_configurations): Handle resize_proportionally.
9397 (WINDOW_TOTAL_SIZE): New macro.
9398 (window_min_size, shrink_windows, size_window): Use it.
9399 (check_min_window_sizes): Remove. Invalid values of
9400 window-min-height|width are handled by window_min_size_2 now.
9401 (size_window, Fsplit_window, enlarge_window)
9402 (adjust_window_trailing_edge, grow_mini_window): Don't call
9403 check_min_window_sizes.
9404 (window_min_size_2, window_min_size_1, window_min_size):
9405 New argument safe_p for retrieving "safe" minimum sizes.
9406 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9407 (adjust_window_trailing_edge, grow_mini_window):
9408 Adjust arguments of window_min_size... functions.
9409 (shrink_windows): Argument min_size removed. New argument
9410 safe_p allows shrinking windows to their safe minimum sizes.
9411 Calculate minimum size and decide whether a window shall be
9412 deleted for each window individually.
9413 (size_window): When nodelete_p equals 2, tell shrink_windows to
9414 delete windows only if their new minimum size is no more safe.
9415 (shrink_window_lowest_first): Call window_min_size_1 to make
9416 sure to preserve modeline of bottom-most window when resizing
9417 the minibuffer.
9418 (Fset_window_configuration, Fcurrent_window_configuration)
9419 (compare_window_configurations): Do not handle
9420 window-min-height|width any more.
9421 (syms_of_window): Clarify window-min-height|width doc-strings.
9422
94232008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9424
9425 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9426 some more. Copy some of the code from Ftry_completions.
9427 Remove special case code that dates back to initial revision when the
9428 slash was only added when necessary and that can't trigger nowadays.
9429
94302008-04-27 Kenichi Handa <handa@m17n.org>
9431
9432 * font.c (font_prop_validate): Signal `error' instead of `font'.
9433
94342008-04-29 Jason Rumney <jasonr@gnu.org>
9435
9436 * w32fns.c (Fw32_battery_status): New defun.
9437 (syms_of_w32fns): Defsubr it.
9438
94392008-04-28 Andreas Schwab <schwab@suse.de>
9440
9441 * dired.c (file_name_completion): Fix another mixing of encoded
9442 and decoded names.
9443
94442008-04-28 Juanma Barranquero <lekktu@gmail.com>
9445
9446 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9447
94482008-04-27 Juanma Barranquero <lekktu@gmail.com>
9449
9450 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9451
94522008-04-27 Andreas Schwab <schwab@suse.de>
9453
9454 * dired.c (file_name_completion): Fix inappropriate mixing of
9455 encoded and decoded names.
9456
9457 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9458
9459 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9460
94612008-04-26 Eli Zaretskii <eliz@gnu.org>
9462
9463 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9464 2008-03-31, it's not needed anymore with `struct stat' definition
9465 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9466 for the same reasons.
9467
94682008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9469
9470 * m/sparc.h: Additional redefinitions for GNU/Linux.
9471
94722008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9473
9474 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9475 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9476 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9477 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9478 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9479 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9480 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9481 Likewise.
9482
9483 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9484 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9485 (mac_ax_number_of_characters): Add externs.
9486 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9487 [USE_MAC_TSM]: Likewise.
9488 (mac_handle_text_input_event) [MAC_OSX]:
9489 Handle kEventTextInputOffsetToPos for no active input area case.
9490 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9491 (mac_handle_document_access_event)
9492 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9493 (install_application_handler) [MAC_OSX]: Register handlers for
9494 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9495 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9496 Register mac_handle_document_access_event.
9497
9498 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9499 Make functions non-static.
9500
95012008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9502
9503 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9504 (read_file_name_completion_ignore_case, insert_default_directory)
9505 (Qdefault_directory): Move to minibuffer.el.
9506 (Fread_file_name): Call the new `read-file-name' instead.
9507
95082008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9509
9510 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9511 Make function non-static.
9512 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9513 Remove function.
9514 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9515 Move to mactoolbox.c.
9516 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9517
9518 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9519 (mac_rect_make): New macro.
9520
9521 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9522 instead of float.
9523 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9524 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9525 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9526 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9527 CGRectMake.
9528 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9529 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9530 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9531 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9532 instead of WindowRef in argument type.
9533 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9534 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9535 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9536 instead of DISPLAY. All uses changed.
9537 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9538 (x_calc_absolute_position): Simplify so as not to use
9539 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9540
9541 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9542 instead of WindowRef in argument type.
9543 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9544 [TARGET_API_MAC_CARBON]: Remove externs.
9545 (create_apple_event, mac_event_parameters_to_lisp)
9546 [TARGET_API_MAC_CARBON]: Add externs.
9547
9548 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9549 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9550 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9551 is clicked.
9552 (x_activate_menubar): Remove extern for saved_menu_event_location.
9553 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9554 Move from mac.c.
9555
95562008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9557
9558 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9559 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9560
95612008-04-23 Jason Rumney <jasonr@gnu.org>
9562
9563 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9564 attributes only for local files.
9565
9566 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9567 default to Qlocal.
9568
95692008-04-22 Juri Linkov <juri@jurta.org>
9570
9571 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9572 read-buffer-to-switch instead of using the letter "B".
9573
95742008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9575
9576 * fileio.c (Qdefault_directory): New variable.
9577 (Fread_file_name): Use it to pass `dir' to the completion functions.
9578
95792008-04-20 Chong Yidong <cyd@stupidchicken.com>
9580
9581 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9582
95832008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9584
9585 * keyboard.c (Vpre_help_message): Remove.
9586 (show_help_echo): Remove default C code.
9587
9588 * dired.c (directory_files_internal, file_name_completion):
9589 Only call ENCODE_FILE if the string is indeed decoded.
9590
95912008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9592
9593 * Makefile.in (TOOLKIT_DEFINES): Remove.
9594 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9595
95962008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9597
9598 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9599 (mactoolbox.o): New target.
9600
9601 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9602 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9603
9604 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9605 Use mac_set_frame_window_background instead of XSetWindowBackground.
9606 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9607 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9608 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9609 instead of SetWindowTitleWithCFString.
9610 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9611 Move function to mactoolbox.c.
9612 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9613 Use mac_set_window_modified instead of SetWindowModified.
9614 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9615 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9616 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9617 FrontNonFloatingWindow. Use mac_activate_window instead of
9618 ActivateWindow. Use mac_active_non_floating_window instead of
9619 ActiveNonFloatingWindow.
9620 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9621 Use mac_show_hourglass and mac_hide_hourglass.
9622 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9623 instead of GetGlobalMouse.
9624 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9625 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9626 Use mac_bring_window_to_front instead of BringToFront.
9627 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9628 mactoolbox.c.
9629 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9630 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9631 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9632 mactoolbox.c.
9633
9634 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9635 (XtPointer): Move typedef from macmenu.c.
9636 (enum button_type): Move enum from macmenu.c.
9637 (widget_value): Move typedef from macmenu.c.
9638 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9639 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9640 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9641 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9642 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9643 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9644 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9645 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9646 (Selection): Move typedef from macselect.c.
9647 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9648 macterm.c.
9649 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9650 (mac_is_window_collapsed, mac_bring_window_to_front)
9651 (mac_send_window_behind, mac_hide_window, mac_show_window)
9652 (mac_collapse_window, mac_front_non_floating_window)
9653 (mac_active_non_floating_window, mac_activate_window)
9654 (mac_move_window_structure, mac_move_window, mac_size_window)
9655 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9656
9657 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9658 (enum mac_menu_kind): Move enum to mactoolbox.c.
9659 (min_menu_id): Move variable to mactoolbox.c.
9660 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9661 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9662 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9663 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9664 [TARGET_API_MAC_CARBON]: Likewise.
9665 (XtPointer): Move typedef to macgui.h.
9666 (enum button_type): Move enum to macgui.h.
9667 (widget_value): Move typedef to macgui.h.
9668 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9669 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9670 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9671 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9672 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9673 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9674 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9675 (popup_activated_flag): Make variable non-static.
9676 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9677 (add_menu_item, fill_menu, dispose_menus):
9678 Move functions to mactoolbox.c.
9679 (restore_show_help_function, menu_target_item_handler)
9680 (install_menu_target_item_handler, mac_handle_dialog_event)
9681 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9682 [TARGET_API_MAC_CARBON]: Likewise.
9683 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9684 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9685 (find_and_call_menu_selection, name_is_separator): Make function
9686 non-static.
9687 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9688 to mactoolbox.c.
9689 (set_frame_menubar): Don't call install_menu_quit_handler.
9690 (menu_item_selection): New variable.
9691 (mac_menu_show): Use create_and_show_popup_menu.
9692 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9693 selection but set variable menu_item_selection. All uses changed.
9694 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9695 Call install_menu_quit_handler. Move to mactoolbox.c.
9696
9697 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9698 (Selection): Move typedef to macgui.h.
9699 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9700 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9701 Make variables non-static.
9702 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9703 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9704 Make functions non-static.
9705 (Vmac_service_selection) [MAC_OSX]: Likewise.
9706 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9707 (mac_valid_selection_target_p, mac_clear_selection)
9708 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9709 (mac_put_selection_value, mac_selection_has_target_p)
9710 (mac_get_selection_value, mac_get_selection_target_list)
9711 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9712 Move functions to mactoolbox.c.
9713 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9714 Likewise.
9715 (copy_scrap_flavor_data, mac_handle_service_event)
9716 (install_service_handler) [MAC_OSX]: Likewise.
9717 (syms_of_macselect) <Vmac_dnd_known_types>:
9718 Use mac_dnd_default_known_types.
9719
9720 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9721 Move to mactoolbox.c.
9722 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9723 (Fx_selection_owner_p): Add EXFUN.
9724 (install_window_handler, remove_window_handler, XSetWindowBackground):
9725 Remove externs.
9726 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9727 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9728 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9729 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9730 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9731 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9732 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9733 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9734 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9735 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9736 (mac_valid_selection_target_p, mac_clear_selection)
9737 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9738 (mac_put_selection_value, mac_selection_has_target_p)
9739 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9740 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9741 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9742 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9743 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9744 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9745 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9746 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9747 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9748
9749 * mactoolbox.c: New file.
9750
97512008-04-18 Jason Rumney <jasonr@gnu.org>
9752
9753 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9754
97552008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9756
9757 * character.c (Fmultibyte_char_to_unibyte):
9758 Return latin1 chars unchanged.
9759
9760 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9761 relocated if it points to `name'.
9762
97632008-04-17 Kenichi Handa <handa@m17n.org>
9764
9765 * data.c (Faset): Allow setting a multibyte character in an
9766 ASCII-only unibyte string.
9767
9768 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9769
97702008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9771
9772 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9773 done in config.h.
9774
97752008-04-16 Juanma Barranquero <lekktu@gmail.com>
9776
9777 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9778 (Fchar_direction): Add usage in the docstring.
9779
97802008-04-15 Chong Yidong <cyd@stupidchicken.com>
9781
9782 * keyboard.c (read_key_sequence): Remove always-true checks.
9783
97842008-04-14 Jason Rumney <jasonr@gnu.org>
9785
9786 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9787 compatibility struct, for better underline positioning.
9788
97892008-04-13 David Hansen <david.hansen@gmx.net>
9790
9791 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9792 string.
9793
97942008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9795
9796 * m/hp800.h (XUINT, XSET): Remove.
9797
97982008-04-12 Juanma Barranquero <lekktu@gmail.com>
9799
9800 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9801 previous change.
9802
98032008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9804
9805 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9806 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9807
98082008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9809
9810 * keymap.h (map_keymap_canonical): Declare.
9811 * xmenu.c (single_keymap_panes): Use it.
9812
98132008-04-11 Glenn Morris <rgm@gnu.org>
9814
9815 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9816 set the target's value to that of the alias.
9817
98182008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9819
9820 * term.c (set_tty_color_mode): Left over typo.
9821
98222008-04-10 Michael Albinus <michael.albinus@gmx.de>
9823
9824 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9825 only after check for file name handler functions. Signal, when
9826 native functionality is not supported.
9827 (syms_of_fileio): Declare it unconditionally.
9828
98292008-04-10 Jason Rumney <jasonr@gnu.org>
9830
9831 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9832 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9833
9834 * w32.c (logon_network_drive): Also logon to remote drives that
9835 are mapped to drive letters.
9836
98372008-04-10 Glenn Morris <rgm@gnu.org>
9838
9839 * xdisp.c (truncate-partial-width-windows): Doc fix.
9840
98412008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9842
9843 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9844 Move functions to minibuffer.el.
9845 (syms_of_fileio): Don't declare them.
9846
98472008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9848
9849 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9850 (syms_of_minibuf): Remove its initialization.
9851
9852 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9853
98542008-04-09 Juanma Barranquero <lekktu@gmail.com>
9855
9856 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9857
98582008-04-09 Jason Rumney <jasonr@gnu.org>
9859
9860 * makefile.w32-in (distclean): Delete makefile too.
9861 (maintainer-clean): New target.
9862
9863 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9864
9865 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9866 for new font backend and composite cases.
9867
98682008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9869
9870 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9871 Most of the code moved to run_timers.
9872 (do_pending_atimers): Call run_timers.
9873 (run_timers): New function.
9874
9875 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9876 run atimers.
9877
9878 * process.c (wait_reading_process_output): The same as above.
9879
98802008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9881
9882 * minibuf.c (last_exact_completion): Remove variable.
9883 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9884 (complete_and_exit_1, complete_and_exit_2)
9885 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9886 (Fdisplay_completion_list, display_completion_list_1)
9887 (Fminibuffer_completion_help, Fself_insert_and_exit)
9888 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9889 minibuffer.el.
9890 (syms_of_minibuf): Remove corresponding initializations.
9891
9892 * keyboard.c (Qdeactivate_mark): New var.
9893 (command_loop_1): Use it to call `deactivate-mark'.
9894 (syms_of_keyboard): Initialize it.
9895
9896 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9897 to another frame.
9898 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9899 Don't call set_tty_color_mode.
9900 (store_frame_param): Reset previous_frame rather than call
9901 set_tty_color_mode.
9902 * term.c (set_tty_color_mode): Rewrite.
9903 * dispextern.h (set_tty_color_mode): New type.
9904 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9905
99062008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9907
9908 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9909 for generic chars, which do not exist any more in emacs-unicode.
9910
99112008-04-08 Michael Albinus <michael.albinus@gmx.de>
9912
9913 * coding.c (detect_coding_emacs_mule)
9914 (Ffind_operation_coding_system): Fix typo.
9915
99162008-04-08 Jason Rumney <jasonr@gnu.org>
9917
9918 * w32uniscribe.c (SNAME): Extract only symbol name.
9919
9920 * w32font.h (struct w32_metric_cache): New struct.
9921 (w32font_info): Use it.
9922 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9923 (CACHE_BLOCKSIZE): New constants.
9924
9925 * w32font.c (Qja, Qko, Qzh): New symbols.
9926 (syms_of_w32font): Initialise them.
9927 (font_matches_spec): Use them to filter by language.
9928 (recompute_cached_metrics): Remove function.
9929 (compute_metrics, clear_cached_metrics): New functions.
9930 (w32font_encode_char): Use them to manage metric cache.
9931 (w32font_text_extents): Cache metrics for all glyphs on demand.
9932 Delay converting glyph indices to WORD until needed.
9933 (w32font_open_internal): Initialize metric cache to empty.
9934 (registry_to_w32_charset): Charset should always be a symbol.
9935 (fill_in_logfont, list_all_matching_fonts): Family should
9936 always be a symbol.
9937
99382008-04-06 Jason Rumney <jasonr@gnu.org>
9939
9940 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9941 Give up if glyph indices not supported. Use uniscribe obtained
9942 ABC widths for individual metrics. Map glyph clusters back to
9943 characters using fClusterStart flag. Return number of glyphs
9944 produced, not chars processed.
9945 (uniscribe_shape): Map char at FROM to current glyph.
9946
99472008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9948
9949 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9950 Use SetMenuItemHierarchicalMenu.
9951
99522008-04-05 Jason Rumney <jasonr@gnu.org>
9953
9954 * image.c (pbm_load): Allow color values up to 65535.
9955 Throw an error if max_color_idx is outside the supported range.
9956 Report an error when image size is invalid.
9957 Read two bytes at a time when raw images have max_color_idx above 255.
9958
99592008-04-05 Eli Zaretskii <eliz@gnu.org>
9960
9961 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9962 cFileName a file name that includes `?' characters, use the 8+3
9963 alias in cAlternateFileName instead.
9964
99652008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9966
9967 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9968 append "CCL: Quitted" when the CCL program is quitted.
9969 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9970
9971 * ccl.h (struct ccl_program): New member quit_silently.
9972
99732008-04-05 Chong Yidong <cyd@stupidchicken.com>
9974
9975 * search.c (compile_pattern_1): Treat non-nil and non-string of
9976 search-spaces-regexp as nil.
9977
9978 * minibuf.c (Fassoc_string): Tweak docstring.
9979
99802008-04-05 Eli Zaretskii <eliz@gnu.org>
9981
9982 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9983 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9984 2008-03-14 to force inode be positive.
9985
9986 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9987 _S_* ones, since we now use our own sys/stat.h.
9988 (stat, fstat): Don't mangle the inode number.
9989 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9990
99912008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9992
9993 * frame.h (struct frame): Give one more bit to `visible' since we use
9994 values larger than 1 to indicate obscured frames on ttys.
9995
9996 * keymap.c (Qkeymap_canonicalize): New var.
9997 (Fmap_keymap_internal): New fun.
9998 (describe_map): Use keymap-canonicalize.
9999
10000 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10001 (Fundo_boundary): Set them.
10002 (syms_of_undo): Initialize them.
10003 (record_point): Use them instead of last_point_position*.
10004 (last_undo_buffer): Change type.
10005
100062008-04-04 Jason Rumney <jasonr@gnu.org>
10007
10008 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10009 (recompute_cached_metrics): Don't set ascent and descent per char.
10010
10011 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10012 (uniscribe_check_otf): Add GC protection before consing.
10013 Rearrange loop for counting features.
10014
100152008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10016
10017 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10018 buffer with byte-size of source buffer.
10019
100202008-04-03 Chong Yidong <cyd@stupidchicken.com>
10021
10022 * callint.c (Fcall_interactively): Handle temporary region even
10023 when shift-select-mode is off.
10024
100252008-04-03 Jason Rumney <jasonr@gnu.org>
10026
10027 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10028
100292008-04-03 Kenichi Handa <handa@m17n.org>
10030
10031 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10032 (CATEGORY_MASK_UTF_16): Likewise.
10033 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10034 binary file.
10035 (detect_coding): Add null-byte detection for a binary file.
10036 (detect_coding_system): Likewise.
10037
100382008-04-03 Jason Rumney <jasonr@gnu.org>
10039
10040 * w32uniscribe.c: New file.
10041
10042 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10043
10044 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10045
10046 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10047 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10048 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10049 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10050 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10051 (Qphonetic): New symbols.
10052 (syms_of_w32font): Initialize them.
10053 (font_supported_scripts): Use them.
10054 (w32font_list_family): List all charsets.
10055 (w32font_text_extents, recompute_cached_metrics): Fix metric
10056 calculations.
10057 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10058 Give opentype fonts their own format.
10059 (font_matches_spec): New arguments backend and logfont.
10060 Handle :otf spec for uniscribe backend.
10061 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10062 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10063
10064 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10065 font backend.
10066 (globals_of_w32fns): Initialize uniscribe font backend.
10067
10068 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10069 dependencies.
10070 (w32uniscribe.$(O)): New file to build.
10071 (FONT_OBJ): Include w32uniscribe.$(O).
10072 (LIBS): Add uniscribe libraries.
10073
10074 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10075
100762008-04-02 Chong Yidong <cyd@stupidchicken.com>
10077
10078 * callint.c (Vshift_select_mode): New var.
10079 (Finteractive): Document new ^ spec.
10080 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10081 is present.
10082
10083 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10084 (command_loop_1): Avoid running the direct display versions of
10085 forward-char and backward-char if shift-selection may occur.
10086 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10087 shift-translation takes place.
10088
10089 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10090 avoid clobbering by define-minor-mode.
10091
10092 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10093 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10094
10095 * syntax.c (Fforward_word): Add ^ interactive spec.
10096
10097 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10098 (Fscroll_right): Add ^ interactive spec.
10099
101002008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10101
10102 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10103
10104 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10105
10106 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10107
101082008-03-31 Juri Linkov <juri@jurta.org>
10109
10110 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10111
101122008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10113
10114 * gtkutil.c (xg_set_geometry): Fix indentation.
10115 (xg_resize_outer_widget): Remove.
10116 (x_wm_size_hint_off): Fix indentation.
10117 (xg_frame_set_char_size): Call flush_and_sync after
10118 gtk_window_resize.
10119 (x_wm_set_size_hint): Pass NULL as geometry window to
10120 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10121 Add menu bar and tool bar height to base height.
10122 (xg_update_frame_menubar, free_frame_menubar)
10123 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10124 (update_frame_tool_bar, free_frame_tool_bar):
10125 Change xg_resize_outer_widget to xg_frame_set_char_size.
10126
101272008-03-30 Michael Albinus <michael.albinus@gmx.de>
10128
10129 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10130 (Fdbus_call_method): New parameter TIMEOUT.
10131 (dbus-send-signal): Optimize UNGCPRO call.
10132
101332008-03-29 Juri Linkov <juri@jurta.org>
10134
10135 * window.c (Fdisplay_buffer): Move call to
10136 Vsplit_window_preferred_function out of conditions that check
10137 if window is eligible for vertical splitting.
10138 When Vsplit_window_preferred_function is non-nil, call it and use
10139 its non-nil return value as window. Otherwise, continue doing
10140 vertical splitting using Fsplit_window with arg horflag=nil.
10141 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10142 default value from `split-window' to nil.
10143
101442008-03-29 Juri Linkov <juri@jurta.org>
10145
10146 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10147 for interactive code letters 'b' and 'B'.
10148
101492008-03-29 Eli Zaretskii <eliz@gnu.org>
10150
10151 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10152 multibyte string.
10153
101542008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10155
10156 * keyboard.c (pending_funcalls): New var.
10157 (timer_check): Run it.
10158 (syms_of_keyboard): Initialize it.
10159 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10160 (Vdelete_terminal_functions): New vars.
10161 (syms_of_terminal): Initialize them.
10162 (Fdelete_terminal): Run delete-terminal-functions.
10163 * xdisp.c (safe_eval): Rewrite.
10164 (safe_call2): New fun.
10165 * frame.c (Qdelete_frame_functions): New var.
10166 (syms_of_frame): Initialize it.
10167 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10168 * lisp.h (safe_call2, pending_funcalls): Declare.
10169
101702008-03-28 Andreas Schwab <schwab@suse.de>
10171
10172 * indent.c (Fmove_to_column): Move declaration before statements.
10173
101742008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10175
10176 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10177 (struct frame): Use bit fields for boolean vars.
10178
10179 * process.c (server_accept_connection): Simplify naming.
10180 (emacs_get_tty_pgrp): Use SDATA.
10181
10182 * coding.c (decode_coding_object): Fix last change.
10183
101842008-03-27 Jason Rumney <jasonr@gnu.org>
10185
10186 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10187
101882008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10189
10190 * charset.c (Fdefine_charset_internal): Change the way of
10191 registering charsets in Vcharset_order_list.
10192 (syms_of_charset): Make the charset `eight-bit' supplementary.
10193
101942008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10195
10196 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10197 operations, to avoid having the difference between pointers
10198 overflow.
10199
102002008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10201
10202 * indent.c (check_display_width): New fun.
10203 (scan_for_column): Use it.
10204
10205 * data.c (syms_of_data): Mark most-positive-fixnum and
10206 most-negative-fixnum as constants.
10207
10208 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10209
10210 * indent.c (scan_for_column): Extract from current_column_1.
10211 Merge with the same code from Fmove_to_column.
10212 (current_column_1, Fmove_to_column): Use it.
10213
102142008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10215
10216 * keymap.c (map_keymap_internal): New fun.
10217 (map_keymap): Use it.
10218 (Fmap_keymap_internal): New fun.
10219 (Fmap_keymap): Remove left-out test from before make_save_value.
10220
10221 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10222
10223 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10224 Use XCAR/XCDR.
10225
10226 * process.h (struct Lisp_Process): Remove filter_multibyte.
10227 * process.c (QCfilter_multibyte): Remove.
10228 (setup_process_coding_systems): Don't use filter_multibyte.
10229 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10230 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10231 (Fset_process_filter_multibyte): Change the coding-system to
10232 approximate the previous behavior.
10233 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10234 coding-system.
10235
10236 * coding.c (decode_coding_object): When not decoding into a buffer,
10237 obey the coding system's preference of (uni|multi)byte.
10238
102392008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10240
10241 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10242 every char is changed and has a different byte-length.
10243 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10244 Fix int -> EMACS_INT.
10245
102462008-03-23 David Hansen <david.hansen@gmx.net>
10247
10248 * dbusbind.c (xd_read_message): Remove extra copying of message
10249 strings. Check for NULL `interface' or `member'.
10250
102512008-03-22 Eli Zaretskii <eliz@gnu.org>
10252
10253 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10254 cFileName a file name that includes `?' characters, use the 8+3
10255 alias in cAlternateFileName instead.
10256
102572008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
10258
10259 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
10260
102612008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10262
10263 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
10264 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
10265 work on current_buffer only instead (that was already the case
10266 for some of the code anyway).
10267 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
10268 (temp_set_point, temp_set_point_both): Use EMACS_INT.
10269 (SET_PT, SET_PT_BOTH): Adjust.
10270 * intervals.h (set_point, temp_set_point, set_point_both)
10271 (temp_set_point_both): Remove redundant declarations.
10272
102732008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10274
10275 * fileio.c (Finsert_file_contents):
10276 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
10277 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
10278 when buffer != current_buffer anyway.
10279
102802008-03-20 Andreas Schwab <schwab@suse.de>
10281
10282 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
10283 as default.
10284
102852008-03-19 Jason Rumney <jasonr@gnu.org>
10286
10287 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
10288 (syms_of_w32fns): Initialize them.
10289 (HOURGLASS_ID): New constant.
10290 (x_window_to_frame): Don't check hourglass_window.
10291 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
10292 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
10293 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
10294 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
10295 Only change the cursor if hourglass is not active.
10296 (Fx_create_frame): Initialize frame's current_cursor.
10297 (hourglass_atimer): Remove.
10298 (hourglass_started): New function.
10299 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
10300 (show_hourglass): Adapt to w32, changing argument to frame.
10301
10302 * w32term.h (struct w32_output): Remove hourglass_window.
10303 Add current_cursor.
10304
10305 * eval.c (call_debugger, Fsignal):
10306 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
10307 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
10308 (Fexecute_extended_command, cancel_hourglass_unwind):
10309 * minibuf.c (read_minibuf):
10310 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
10311
103122008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
10313
10314 * window.c (run_funs): New fun.
10315 (run_window_configuration_change_hook): Use it to run the buffer-local
10316 and the global part of the hook.
10317
10318 * xdisp.c (format_mode_line_unwind_data): Add window argument.
10319 (unwind_format_mode_line): Restore selected window.
10320 (x_consider_frame_title, Fformat_mode_line): Set selected window.
10321
103222008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10323
10324 * editfns.c (Fchar_equal): Check they are valid characters.
10325
10326 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
10327
103282008-03-17 Andreas Schwab <schwab@suse.de>
10329
10330 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
10331 against a charset.
10332
10333 * lisp.h (Fbuffer_list): Declare.
10334
103352008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10336
aac0c6e3
MR
10337 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10338 handlebox_widget is != 0.
10339
103402008-03-16 Juri Linkov <juri@jurta.org>
10341
10342 * callint.c (Fcall_interactively): For interactive code letters
10343 'b' and 'B' put the buffer list into the list of default "future"
10344 values of the minibuffer.
10345
103462008-03-16 Andreas Schwab <schwab@suse.de>
10347
10348 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10349 modifiers.
10350
10351 * regex.c (re_match_2_internal): Correct matching of a charset
10352 against latin-1 characters.
10353
103542008-03-16 Kenichi Handa <handa@m17n.org>
10355
10356 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10357 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10358 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10359 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10360 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10361 CHAR_STRING_ADVANCE.
10362 (produce_chars): Fix for the case that the source and the
10363 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10364 instead of CHAR_STRING_ADVANCE.
10365 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10366 STRING_CHAR_ADVANCE.
10367
103682008-03-15 Andreas Schwab <schwab@suse.de>
10369
10370 * regex.c (re_match_2_internal): Correct matching of eight bit
10371 characters in unibyte strings.
10372
103732008-03-15 Martin Rudalics <rudalics@gmx.at>
10374
10375 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10376 at end of range when it coincides with the end of the buffer.
10377
103782008-03-14 Eli Zaretskii <eliz@gnu.org>
10379
10380 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10381
10382 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10383
103842008-03-14 Jason Rumney <jasonr@gnu.org>
10385
10386 * editfns.c (initial_tz): New variable.
10387 (syms_of_editfns): Initialize it.
10388 (Fset_time_zone_rule): Set it when first called.
10389 Use it when TZSTRING is nil.
10390
10391 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10392 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10393 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10394 (globals_of_w32fns): Initialize them.
10395 (compute_tip_xy): Use them to position tooltips.
10396
103972008-03-14 Glenn Morris <rgm@gnu.org>
10398
10399 * emacs.c (main): Revert previous change.
10400 (standard_args): Revert -internal-script back to -scriptload,
10401 and remove the long-option form.
10402
104032008-03-13 Glenn Morris <rgm@gnu.org>
10404
10405 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10406 Remove option -enable-font-backend.
10407
104082008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10409
10410 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10411
104122008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10413
10414 * xterm.c (x_connection_closed): For GTK: If this is the last
10415 terminal just exit without closing the display.
10416
104172008-03-11 Jason Rumney <jasonr@gnu.org>
10418
10419 * w32font.c (w32font_full_name): Use floor to round.
10420
f0131492 104212008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10422
10423 * sound.c (alsa_configure): Declare vol at beginning of block.
10424
10425 * fontset.c (Ffontset_info): Remove extra semicolon.
10426
104272008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10428
10429 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10430 size of resulting string.
10431
104322008-03-10 Jason Rumney <jasonr@gnu.org>
10433
10434 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10435
104362008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10437
10438 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10439 Don't pretend as if characters with display property haven't been
10440 consumed for string-replacing-string case.
10441
104422008-03-08 Kim F. Storm <storm@cua.dk>
10443
10444 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10445 (get_next_display_element, next_element_from_string)
10446 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10447
104482008-03-08 Andreas Schwab <schwab@suse.de>
10449
10450 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10451
104522008-03-06 Jason Rumney <jasonr@gnu.org>
10453
10454 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10455 when charset not specified. Only translate ANSI to unicode when
10456 font_type is truetype.
10457 (w32font_coverage_ok): New function.
10458 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10459
104602008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10461
10462 * lread.c (Fread_char): Resolve modifiers.
10463 (Fread_char_exclusive): Likewise.
10464
10465 * character.c (char_resolve_modifier_mask): New function.
10466 (char_string): Use char_resolve_modifier_mask.
10467 (Fchar_resolve_modifiers): New function.
10468 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10469 function.
10470
104712008-03-04 Jason Rumney <jasonr@gnu.org>
10472
10473 * makefile.w32-in: Always include w32font.c in the build.
10474 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10475
104762008-03-04 Andreas Schwab <schwab@suse.de>
10477
10478 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10479 (versionclean): Likewise.
10480
104812008-03-04 Juanma Barranquero <lekktu@gmail.com>
10482
10483 * .cvsignore: Add oo.
10484
104852008-03-03 Andreas Schwab <schwab@suse.de>
10486
10487 * coding.c (decode_coding_object): Inhibit gap shrinking while
10488 decoding in place.
10489
104902008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10491
10492 * w32term.c: Remove unused include "gnu.h".
10493 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10494
10495 * gnu.h: Rename to ...
10496 * emacs-icon.h: ... this.
10497 * xterm.c: Use emacs-icon.h instead of gnu.h.
10498 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10499
105002008-03-03 Juanma Barranquero <lekktu@gmail.com>
10501
10502 * w32font.c: Include math.h.
10503
105042008-03-03 Jason Rumney <jasonr@gnu.org>
10505
10506 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10507 Compute options separately.
10508 (w32font_open_internal): Set glyph_idx before caching metrics.
10509
10510 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10511 Define if system headers don't.
10512 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10513 (w32font_encode_char): Don't declare here.
10514
10515 * w32font.c (Quniscribe, QCformat): New symbols.
10516 (syms_of_w32font): Define them.
10517 (w32font_has_char): Indicate uncertainty.
10518 (w32font_encode_char): Encode as glyph point. Make static.
10519 (recompute_cached_metrics): New function.
10520 (w32font_open_internal): Use it. Set font to use glyph points
10521 initially. Set format based on type of font.
10522 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10523 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10524 on it. Set format based on information available here.
10525 (add_font_entity_to_list): Identify backend based on opentype_only.
10526
105272008-03-02 Andreas Schwab <schwab@suse.de>
10528
10529 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10530
10531 * coding.c (decode_coding_big5, produce_chars):
10532 Fix typos in last change.
10533
105342008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10535
10536 * gnu.h: New icon.
10537
105382008-03-02 Kenichi Handa <handa@m17n.org>
10539
10540 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10541 `dos', don't decode '\r' if that is the last in the source.
10542 (decode_coding_utf_16, decode_coding_emacs_mule)
10543 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10544 (decode_coding_raw_text, decode_coding_charset): Likewise.
10545 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10546
105472008-03-01 Jason Rumney <jasonr@gnu.org>
10548
10549 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10550
105512008-03-01 Kim F. Storm <storm@cua.dk>
10552
10553 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10554
105552008-03-01 Jason Rumney <jasonr@gnu.org>
10556
10557 * w32font.c (w32font_full_name): New function.
10558 (w32font_open_internal): Use it.
10559
105602008-03-01 Kim F. Storm <storm@cua.dk>
10561
10562 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10563
105642008-03-01 Jason Rumney <jasonr@gnu.org>
10565
10566 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10567
105682008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10569
10570 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10571 xg_frame_resized when the event is for the edit widget.
10572
10573 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10574
10575 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10576 set_char_size.
10577 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10578 operations on widgets here. Just set frame size if needed.
10579 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10580 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10581 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10582 the whole frame.
10583 (xg_create_tool_bar): Move attachment of the tool bar to
10584 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10585 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10586
105872008-03-01 Jason Rumney <jasonr@gnu.org>
10588
10589 * w32fns.c (w32_msg_pump): Disable debug code.
10590
105912008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10592
10593 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10594
105952008-02-29 Chong Yidong <cyd@stupidchicken.com>
10596
10597 * xdisp.c (next_overlay_string): Don't set
10598 overlay_strings_at_end_processed_p if we're currently reading from
10599 a display string.
10600
106012008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10602
10603 * xdisp.c (get_overlay_strings_1): Fix typo.
10604
106052008-02-29 Chong Yidong <cyd@stupidchicken.com>
10606
10607 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10608
106092008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10610
10611 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10612
10613 * xdisp.c (display_mode_element): Cancel the previous change.
10614 (decode_mode_spec): Likewise.
10615 (handle_auto_composed_prop): Don't make composition if it->string
10616 is a string.
10617
106182008-02-27 Kim F. Storm <storm@cua.dk>
10619
10620 * lisp.h (GLYPH): Change type from int to struct with separate char
10621 and face_id members.
10622 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10623 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10624 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10625 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10626 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10627 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10628 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10629 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10630 handle new Lisp glyph code encoding, either an integer or a cons.
10631
10632 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10633 (GLYPH_ALIAS): Delete.
10634 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10635 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10636 (GLYPH_FROM_CHAR): Replace macro by ...
10637 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10638
10639 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10640 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10641 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10642 (GLYPH_INVALID_P): New macro.
10643 (spec_glyph_lookup_face): Update prototype.
10644
10645 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10646 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10647 new glyph code encoding.
10648 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10649 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10650
10651 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10652 Adapt to new glyph type and new glyph code encoding.
10653
10654 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10655
10656 * indent.c (current_column, current_column_1, Fmove_to_column)
10657 (compute_motion): Adapt to new glyph code encoding.
10658
10659 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10660
106612008-02-27 Chong Yidong <cyd@stupidchicken.com>
10662
10663 * process.c (wait_reading_process_output): Check for window
10664 changes caused by timers.
10665 Suggested by Johan Bockgård.
10666
106672008-02-27 Glenn Morris <rgm@gnu.org>
10668
10669 * emacs.c (USAGE1): Add `--disable-font-backend'.
10670
106712008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10672
10673 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10674 is made to the buffer.
10675
106762008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10677
10678 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10679 (face_at_string_position):
10680 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10681 (face_at_string_position):
10682 * xdisp.c (display_string, next_overlay_change):
10683 * buffer.h (overlays_at):
10684 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10685 Update callers.
10686
106872008-02-26 Chong Yidong <cyd@stupidchicken.com>
10688
10689 * editfns.c (Fformat): Doc fix.
10690
106912008-02-26 Juanma Barranquero <lekktu@gmail.com>
10692
10693 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10694 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10695 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10696
106972008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10698
10699 * buffer.c (Fbuffer_swap_text): New function.
10700 (syms_of_buffer): Defsubr it.
10701
107022008-02-25 Chong Yidong <cyd@stupidchicken.com>
10703
10704 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10705
107062008-02-25 Jason Rumney <jasonr@gnu.org>
10707
10708 * w32font.c (w32font_draw): Draw one character at a time when padding.
10709
107102008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10711
10712 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10713 Handle a nil arg. Use run_window_configuration_change_hook.
10714 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10715 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10716 Use run_window_configuration_change_hook.
10717
107182008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10719
10720 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10721 1-pixel width.
10722
107232008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10724
10725 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10726 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10727 if the glyph in the font is zero pixel with.
10728
10729 * dispextern.h (struct glyph_string): New member padding_p.
10730
10731 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10732
10733 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10734
10735 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10736
10737 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10738
10739 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10740
107412008-02-25 Jason Rumney <jasonr@gnu.org>
10742
10743 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10744
107452008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10746
10747 Allow fine-grained image-cache flushing.
10748 * dispextern.h (struct image): Add `dependencies' field.
10749 (clear_image_caches): Change arg to Lisp_Object.
10750 * image.c (make_image): Initialize `dependencies' field.
10751 (clear_image_cache): Change arg to allow fine-grained flushing.
10752 Perform the flush even if image-cache-eviction-delay is nil.
10753 (clear_image_caches): Change arg to Lisp_Object.
10754 (Fclear_image_cache): Expand meaning of the argument.
10755 (mark_image): Mark `dependencies' field.
10756 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10757 (lface_hash): Use XHASH rather than XFASTINT.
10758 (face_at_buffer_position): Fix int -> EMACS_INT position.
10759 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10760 (select_frame_for_redisplay): Remove code duplication.
10761 (redisplay_internal): Adapt arg to call to clear_image_caches.
10762
107632008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10764
10765 * s/vms4-0.h:
10766 * s/vms4-2.h:
10767 * s/vms4-4.h:
10768 * s/vms5-5.h: Remove, unused.
10769
10770 * s/irix5-2.h:
10771 * s/irix6-0.h:
10772 * s/riscos5.h:
10773 * s/mach-bsd4-3.h:
10774 * m/mips4.h: Remove files for obsolete systems.
10775
10776 * Makefile.in:
10777 * filelock.c:
10778 * unexmips.c:
10779 * m/hp9000s300.h:
10780 * m/iris4d.h:
10781 * s/aix3-1.h:
10782 * s/hpux.h:
10783 * s/msdos.h:
10784 * s/usg5-0.h:
10785 * s/usg5-2-2.h:
10786 * s/usg5-2.h:
10787 * s/usg5-3.h: Remove references to obsolete variables.
10788
10789 * s/irix5-0.h: Remove, move all the contents ...
10790 * s/irix6-5.h: ... here. Simplify.
10791 * config.in: Regenerate.
10792
107932008-02-24 Jason Rumney <jasonr@gnu.org>
10794
10795 * w32term.c (x_draw_glyph_string_background): Clear the background
10796 manually when cleartype is in use.
10797 (x_draw_glyph_string_foreground): Draw text transparently when
10798 cleartype is in use.
10799
10800 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10801 a font into it unless we have to.
10802
108032008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10804
10805 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10806 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10807
aac0c6e3
MR
108082008-02-18 Jason Rumney <jasonr@gnu.org>
10809
10810 * w32fns.c (Fw32_shell_execute): Encode parameters.
10811
108122008-02-09 Eli Zaretskii <eliz@gnu.org>
10813
10814 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10815
108162008-02-05 Juanma Barranquero <lekktu@gmail.com>
10817
10818 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10819
108202008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10821
10822 * xterm.c (x_set_offset): Don't change the gravity if
10823 CHANGE_GRAVITY is -1.
10824
108252008-02-23 Chong Yidong <cyd@stupidchicken.com>
10826
10827 * fileio.c (auto_save_error_occurred): New var.
10828 (auto_save_error): Set it.
10829 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10830 error occurred.
10831
108322008-02-23 Eli Zaretskii <eliz@gnu.org>
10833
10834 * w32.c (globals_of_w32): Add initializations for
10835 g_b_init_get_sid_sub_authority and
10836 g_b_init_get_sid_sub_authority_count.
10837
108382008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10839
10840 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10841 (font_parse_xlfd): Use them for sanity check.
10842 (Finternal_set_font_style_table): Make sure the table is bijective.
10843
10844 Consolidate the image_cache to the terminal struct.
10845 * termhooks.h (P_): Remove redundant def.
10846 (struct terminal): New field `image_cache'.
10847 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10848 of FRAME_X_IMAGE_CACHE.
10849 * xterm.h (struct x_display_info): Remove image_cache field.
10850 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10851 * w32term.h (struct w32_display_info): Remove image_cache field.
10852 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10853 * macterm.h (struct mac_display_info): Remove image_cache field.
10854 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10855 * xterm.c (x_term_init):
10856 * w32term.c (w32_term_init):
10857 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10858 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10859 Remove declarations.
10860 (clear_image_caches, mark_image_cache): New declarations.
10861 * xfaces.c (clear_face_cache):
10862 * xdisp.c (redisplay_internal): Use clear_image_caches.
10863 * image.c (clear_image_cache): Don't check that a frame is on
10864 a window-system before checking if it shares the same cache.
10865 (clear_image_caches): New function.
10866 (Fclear_image_cache): Use it.
10867 (mark_image): Move from allo.c.
10868 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10869 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10870 (mark_object): Don't call mark_image_cache for frames.
10871 (mark_terminals): Call mark_image_cache.
10872
10873 * lisp.h (Fdelete_terminal): Declare.
10874
10875 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10876 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10877 wrong_type_argument.
10878
108792008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10880
10881 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10882 malayalam.el, and tamil.el. Add sinhala.el.
10883
108842008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10885
10886 * xterm.c (x_connection_closed): Consolidate identical tests.
10887 (x_delete_terminal): Don't crash if called via x_connection_closed.
10888
108892008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10890
10891 * xdisp.c (decode_mode_spec): New arg string.
10892 (display_mode_element): Adjust for the above change.
10893
108942008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10895
10896 * callint.c (Fcall_interactively): Use AREF.
10897
108982008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10899
10900 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10901
109022008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10903
10904 * xfns.c (Fx_show_tip): Set string to " " if empty.
10905
109062008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10907
10908 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10909 with Qt.
10910
109112008-02-17 Kenichi Handa <handa@m17n.org>
10912
10913 * ftfont.c (ftfont_shape): Return Lispy number.
10914
10915 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10916 for GCs.
10917 (Finternal_set_font_selection_order): Call font_update_sort_order
10918 only when enable_font_backend is set.
10919 (realize_x_face): Set face->font_info to that of default face only
10920 when enable_font_backend is set.
10921
10922 * xdisp.c (handle_composition_prop): Set it->c to the fist
10923 character of the composed region.
10924 (fill_composite_glyph_string): Set base_face->font_info to
10925 s->font_info. Get a face for ascii from base_face->ascii_face.
10926 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10927 with a face already decided.
10928 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10929 non-negative.
10930 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10931 call font_prepare_composition unconditionally.
10932
10933 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10934
10935 * xterm.h (struct x_display_info): New member font.
10936
10937 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10938 (x_set_mouse_face_gc, x_new_font): Likewise.
10939 (x_term_init): Setup display_info->font.
10940 (x_delete_terminal): Free display_info->font.
10941
10942 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10943
10944 * ftxfont.c (ftxfont_default_fid): Delete it.
10945 (ftxfont_open): Set xfont->fid to 0.
10946 (ftxfont_end_for_frame): Clear data specific to the frame and the
10947 font-driver.
10948
10949 * xftfont.c (xftfont_default_fid): Delete it.
10950 (xftfont_open): Set xfont->fid to 0.
10951
10952 * fontset.c (FONTSET_OBJLIST): New macro.
10953 (fontset_find_font): Update font-object list of the fontset.
10954 (free_realized_fontset): New function.
10955 (free_face_fontset): Call free_realized_fontset.
10956 (Ffont_info): Call font_close_object only when enable_font_backend
10957 is set.
10958
10959 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10960 [HAVE_NTGUI]: Include w32term.h.
10961 [MAC_OS]: Include macterm.ch.
10962 (font_otf_ValueRecord): Use make_number.
10963 (font_finish_cache): Fix handling of reference count.
10964 (font_clear_cache): Update num_fonts.
10965 (font_open_entity): Update smallest_char_width and
10966 smallest_font_height of the frame.
10967 (font_close_object): Update num_fonts.
10968 (Fclear_font_cache): Fix finding the target cache data.
10969
109702008-02-16 Glenn Morris <rgm@gnu.org>
10971
10972 * fontset.c (Finternal_char_font): Fix compilation warning.
10973
109742008-02-16 Eli Zaretskii <eliz@gnu.org>
10975
10976 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10977 instead of char arrays. Enlarge the size of array passed to
10978 get_token_information.
10979
10980 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10981 warnings.
10982
109832008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10984
10985 * .gdbinit: Don't set `args', it breaks gdb --args.
10986
109872008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10988
10989 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10990 within a narrowed buffer.
10991
109922008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10993
10994 * coding.c (decode_coding_object, encode_coding_object):
10995 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10996
109972008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10998
10999 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11000 hardcoding 1.
11001 (detect_coding_system):
11002 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11003 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11004 * insdel.c (insert_from_gap):
11005 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11006 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11007 (string_to_multibyte):
11008 * character.c (chars_in_text, multibyte_chars_in_text):
11009 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11010
11011 * character.h (FETCH_STRING_CHAR_ADVANCE)
11012 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11013 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11014 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11015
11016 * casefiddle.c (casify_region): Only call after-change and composition
11017 functions on the part of the region that was changed.
11018
11019 * keyboard.c (read_avail_input):
11020 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11021
110222008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11023
11024 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11025 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11026
110272008-02-11 Juanma Barranquero <lekktu@gmail.com>
11028
11029 * w32menu.c (push_submenu_start, push_submenu_end)
11030 (push_left_right_boundary, push_menu_pane, push_menu_item):
11031 * keyboard.c (read_key_sequence): Don't pass args with side effects
11032 to AREF, it fails when compiling with -DENABLE_CHECKING.
11033
110342008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11035
11036 * Makefile.in (${lispsource}international/charprop.el):
11037 Delete this target.
11038
11039 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11040 emacs-unicode-2.
11041
110422008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11043
11044 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11045
110462008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11047
11048 * frame.c (Qnoelisp): New symbol.
11049 (syms_of_frame): Initialize it.
11050 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11051 harmless Elisp code, from a strong `force' from x_connection_closed.
11052 * frame.h (Qnoelisp): Declare.
11053 * xterm.c (x_connection_closed): Pass `noelisp'.
11054
11055 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11056 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11057 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11058 rather than `int' for the type of `type'.
11059
110602008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11061
11062 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11063
11064 * Makefile.in (GNUC): Remove support for gcc-1.x.
11065
110662008-02-10 Richard Stallman <rms@gnu.org>
11067
11068 * lisp.h (ASET): Use AREF, not ASLOT.
11069
110702008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11071
11072 * lisp.h (ASET): Check bounds.
11073
110742008-02-10 Glenn Morris <rgm@gnu.org>
11075
11076 * buffer.c (mode-name): Doc fix.
11077
110782008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11079
11080 * Makefile.in:
11081 * emacs.c:
11082 * gmalloc.c:
11083 * keyboard.c:
11084 * lisp.h:
11085 * m/ibm370aix.h:
11086 * process.c:
11087 * regex.c:
11088 * s/hpux.h:
11089 * sysdep.c:
11090 * sysselect.h:
11091 * systty.h:
11092 * unexec.c:
11093 * w32term.c:
11094 * xsmfns.c:
11095 * xterm.c: Remove code that deals with obsolete variables.
11096
11097 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11098
11099 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11100 nothing else needs it anymore.
11101
111022008-02-09 Eli Zaretskii <eliz@gnu.org>
11103
11104 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11105 instead of unibyte_char_to_multibyte.
11106
111072008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11108
11109 * s/gnu-linux.h: Remove commented out code.
11110
11111 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11112
11113 * Makefile.in: Update what RMS says about using autoconf.
11114 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11115 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11116 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11117 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11118
111192008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11120
11121 * keymap.c (Fkey_description): Move side effect outside of macro call.
11122
11123 * xfaces.c (Finternal_make_lisp_face):
11124 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11125
11126 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11127 (syms_of_fontset): Use ASET.
11128
11129 * fns.c (concat): Move side effect outside of macro call.
11130 (hash_clear): Use ASET.
11131
111322008-02-08 Richard Stallman <rms@gnu.org>
11133
11134 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11135 If FORCE, and frame has a surrogate minibuffer for another frame,
11136 delete the other frame first.
11137
111382008-02-07 Timo Savola <timo.savola@iki.fi>
11139
11140 * xterm.c (x_detect_focus_change): Handle embed client message.
11141 (handle_one_xevent): Ditto.
11142 (handle_one_xevent): If embedded and we get a button press/release,
11143 request focus.
11144 (xembed_set_info, xembed_send_message): New functions.
11145 (x_make_frame_visible): Call xembed_set_info if embedded.
11146 (x_make_frame_invisible): Call xembed_set_info if embedded.
11147 (x_term_init): Initialize Xatom_XEMBED.
11148 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11149 (x_iconify_frame): Ditto.
11150
11151 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11152 (enum xembed_info, enum xembed_message, enum xembed_focus)
11153 (enum xembed_modifier, enum xembed_accelerator): New.
11154 (xembed_set_info, xembed_send_message): Declare.
11155 (FRAME_X_EMBEDDED_P): New.
11156
11157 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11158 gtk_plug_new.
11159
11160 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11161 window ID of a frame.
11162 (x_window): Reparent frame if embedded.
11163 (Fx_create_frame): Don't set border width if embedded.
11164
11165 * emacs.c (USAGE3): Add --parent-id.
11166 (standard_args): Ditto.
11167
111682008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11169
11170 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11171
111722008-02-07 Jim Meyering <meyering@redhat.com>
11173
11174 Use "do...while (0)", not "if (1)...else" in macro definitions.
11175 The latter provokes a warning from gcc about the empty else, when
11176 followed by ";". Also, without that trailing semicolon, it would
11177 silently swallow up any following statement.
11178 * syntax.h (SETUP_SYNTAX_TABLE)
11179 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11180 * buffer.h (DECODE_POSITION): Likewise.
11181 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11182 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11183 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11184 (FETCH_CHAR_ADVANCE): Likewise.
11185 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11186
111872008-02-07 Jim Meyering <meyering@redhat.com>
11188
11189 * lread.c [lint]: Don't include <sys/inode.h>.
11190
111912008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11192
11193 * xselect.c (x_handle_dnd_message):
11194 * xmenu.c (digest_single_submenu, xmenu_show):
11195 * xdisp.c (with_echo_area_buffer_unwind_data)
11196 (format_mode_line_unwind_data, unwind_format_mode_line)
11197 (display_menu_bar):
11198 * eval.c (Ffetch_bytecode):
11199 * doc.c (store_function_docstring):
11200 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11201 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11202 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11203
112042008-02-07 Kenichi Handa <handa@m17n.org>
11205
11206 * ftxfont.c (ftxfont_open): Don't set
11207 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11208
11209 * ftfont.c (ftfont_open): Fix previous change.
11210
112112008-02-06 Jason Rumney <jasonr@gnu.org>
11212
11213 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11214 Use cached metrics for ASCII characters.
11215 (w32font_open_internal): Don't set font's owning_frame.
11216 Cache metrics for ASCII characters.
11217
11218 * w32font.h (struct w32font_info): Add ascii_metrics.
11219 Remove owning_frame.
11220
112212008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11222
11223 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11224 to negative value.
11225
11226 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11227
11228 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11229
11230 * charset.c (syms_of_charset): Set QCtest and Qeq.
11231
112322008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11233
11234 * process.c (Fstart_process):
11235 * callproc.c (Fcall_process): Handle the case where
11236 Funhandled_file_name_directory returns nil.
11237
11238 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11239 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11240 * font.c (check_gstring): Use them and AREF to access the vector before
11241 we know it's really a gstring.
11242 (Ffont_shape_text): Fix typo.
46e722a9 11243 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11244
11245 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11246 Declare.
11247
11248 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11249
112502008-02-05 Jason Rumney <jasonr@gnu.org>
11251
11252 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
11253 Set smallest_font_height and smallest_char_width in display info.
11254
112552008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
11256
11257 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
11258
112592008-02-05 Miles Bader <miles@gnu.org>
11260
11261 * xfaces.c (get_lface_attributes, merge_named_face)
11262 (lookup_named_face, lookup_derived_face, realize_named_face):
11263 Revert 2008-02-01 change by cyd@stupidchicken.com.
11264
112652008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
11266
11267 * fontset.c (Ffontset_info): Handle the case of inhibitting the
11268 fallback fonts.
11269 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
11270
112712008-02-04 Jason Rumney <jasonr@gnu.org>
11272
11273 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
11274 set full_name.
11275 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
11276
112772008-02-03 Jason Rumney <jasonr@gnu.org>
11278
11279 * makefile.w32-in (OBJ1): Include font.o here.
11280 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
11281
112822008-02-02 Jason Rumney <jasonr@gnu.org>
11283
11284 * makefile.w32-in (temacs): Bump EMHEAP to 21.
11285
112862008-02-01 Jason Rumney <jasonr@gnu.org>
11287
11288 * s/cygwin.h: Define VIRT_ADDR_VARIES.
11289
11290 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
11291
112922008-02-01 Andreas Schwab <schwab@suse.de>
11293
11294 * Makefile.in (shortlisp, lisp): Update for rename of
11295 ../lisp/language/myanmar.el.
11296
112972008-02-01 Chong Yidong <cyd@stupidchicken.com>
11298
11299 * xfaces.c (get_lface_attributes): Delete function.
11300 (merge_named_face, lookup_named_face, lookup_derived_face)
11301 (realize_named_face): Call lface_from_face_name directly, and use
11302 the fact that merge_face_vectors does not alter its FROM argument.
11303
113042008-02-01 Jason Rumney <jasonr@gnu.org>
11305
11306 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
11307 input in the default locale. Handle non-Unicode multibyte input.
11308
113092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11310
11311 * fontset.c (reorder_font_vector): Exclude nil elements from the
11312 font group. Don't try multiple fonts.
11313 (fontset_font): Adjust for the above change.
11314 (Finternal_char_font): Return nil if the found font doesn't
11315 contain the character ch.
11316
11317 * Makefile.in (lisp, shortlisp): Add cham.el.
11318
113192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11320
11321 * font.h (FONTP): Make it return 1 also for a font-object.
11322
11323 * .gdbinit (xfontset): New function.
11324
11325 * font.c (font_find_for_lface): Check if the character C is
11326 supported or not only for the first font.
11327
11328 * fontset.c (reorder_font_vector): Fix typo.
11329 (fontset_find_font): Don't add a font-spec specifying a script.
11330 Use 0 (not Qt) for the indication of empty font-group. Change the
11331 format of RFONT-DEF. Return Qt if no font in the font-group
11332 support the character.
11333 (fontset_font): Adjust for the above change. If no font was
11334 found the character, remember that.
11335 (face_for_char): Adjust for the change of RFONT-DEF.
11336 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11337 no font for the target.
11338 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11339
113402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11341
11342 * font.c (font_load_for_face): Handle the case that the font in
11343 face->lface is a string.
11344
113452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11346
11347 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11348
113492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11350
11351 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11352 Fix previous change. If the frame is not on a window system,
11353 signal an error.
11354
113552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11356
11357 * coding.c (decode_coding_object, encode_coding_object): Adjust
11358 marker positions after conversion.
11359
11360 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11361
113622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11363
11364 * font.c (font_find_for_lface): Fix the handling of the return
11365 value of font_has_char.
11366 (Ffont_shape_text): Fix previous change.
11367
11368 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11369 (fontset_ref_and_range): Delete it.
11370 (fontset_find_font): Call char_table_ref_and_range instead of
11371 FONTSET_REF_AND_RANGE.
11372 (make_fontset): Don't setup font groups of Latin here.
11373 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11374 (new_fontset_from_font): Make the specified font the default for
11375 all Latin characters.
11376
113772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11378
11379 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11380 is on a window system before accessing the fontset of the frame.
11381
113822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11383
11384 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11385
11386 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11387 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11388
11389 * font.c (Ffont_shape_text): If the font driver doesn't have a
11390 shaper function, make zero-width glyphs to have at least one-pixel
11391 width. Fix setting of `to' field of glyphs.
11392
113932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11394
11395 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11396 glyphs.
11397
11398 * font.h (struct font_driver): Improve docstring of member `shape'.
11399
114002008-02-01 Kenichi Handa <handa@m17n.org>
11401
11402 * composite.c (syms_of_composite): Fix docstring of
11403 auto-composition-function.
11404
11405 * font.h (LGLYPH_SIZE): New macro.
11406
11407 * font.c (Ffont_fill_gstring): Stop filling when a character not
11408 supported by the font is found.
11409 (Ffont_shape_text): When a shape callback function returns nil,
11410 try at most two more times with larger gstring.
11411 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11412
11413 * xdisp.c (handle_auto_composed_prop): Change the argument to
11414 auto-composition-function.
11415
11416 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11417 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11418 Lispy glyph and store it in the lgstring.
11419
11420 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11421
11422 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11423
114242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11425
11426 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11427
11428 * fontset.c (Vfont_encoding_charset_alist): New variable.
11429 (syms_of_fontset): DEFVAR it.
11430 (reorder_font_vector, fontset_find_font): Optimize for the case of
11431 no need of reordering.
11432 (face_for_char): Map the charset property by
11433 Vfont_encoding_charset_alist.
11434
114352008-02-01 Jason Rumney <jasonr@gnu.org>
11436
11437 * w32font.c (logfonts_match): Don't check adstyle here.
11438 (font_matches_spec): Check here against physical font instead.
11439 (add_font_entity_to_list): Avoid some substitutions.
11440
11441 * font.c (font_parse_fcname): Default weight and slant to normal.
11442 (font_score): Prefer normal fonts if weight or slant unspecified.
11443 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11444 match freetype scores.
11445
114462008-02-01 Jason Rumney <jasonr@gnu.org>
11447
11448 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11449 font, as it may have been deleted.
11450 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11451 most common hyphenless variation.
11452 (logfonts_match): Check generic family.
11453 (font_matches_spec): Don't check generic family here.
11454 (fill_in_logfont): Set generic family based on adstyle.
11455
11456 * w32font.h (w32font_get_cache): Update declaration.
11457
114582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11459
11460 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11461
11462 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11463 If none of the new drivers are available, call font_update_drivers
11464 with the old drivers.
11465
11466 * w32font.c (w32font_get_cache): Adjust the argument type.
11467
11468 * xfont.c (xfont_get_cache): Adjust the argument type.
11469
11470 * font.h (struct font_driver): Change argument type of get_cache.
11471
11472 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11473
11474 * font.c (Ffont_get): Fix arguments to Fassoc.
11475 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11476 (font_clear_cache): New function.
11477 (font_list_entities, font_matching_entity): Use font_get_cache.
11478 (font_update_drivers): Call font_clear_cache when finishing a driver.
11479
11480 * fontset.c (fontset_find_font): Fix previous change.
11481
114822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11483
11484 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11485 dpyinfo->font_table.
11486 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11487 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11488
11489 * font.c (font_at): Handle the case that the arg C is negative.
11490 Handle the unibyte case.
11491 (Ffont_at): Call font_at with the arg C -1.
11492
11493 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11494 the position here, and call font_at with the arg C -1.
11495 Don't check the range of the existing composition at the point.
11496
114972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11498
11499 * fontset.c (fontset_add): New args charset_id and family.
11500 Change caller.
11501 (load_font_get_repertory, fontset_find_font): Assume that
11502 font_spec is always a font-spec object.
11503 (Fset_fontset_font): Always store a font-spec object in a fontset.
11504
11505 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11506 instead of get_property_and_range.
11507
115082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11509
11510 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11511 (xftfont_open): Don't keep locking face.
11512 (xftfont_close): Don't unlock face.
11513 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11514
11515 * fontset.c (fontset_find_font): Don't prefer a font of
11516 supplementary charset.
11517
115182008-02-01 Kenichi Handa <handa@m17n.org>
11519
11520 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11521 script, langsys_tag to langsys, new member script.
11522 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11523 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11524 listing to the script specified in that property. Fix arg to
11525 OTF_check_features.
11526
115272008-02-01 Jason Rumney <jasonr@gnu.org>
11528
11529 * w32font.h: New file.
11530
11531 * w32font.c: Include it.
11532 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11533 (w32font_open): Set owning_frame.
11534 (w32font_text_extents): Use owning_frame.
11535 (struct font_callback_data): Add opentype_only field.
11536 (add_font_entity_to_list): Use it to filter fonts.
11537 Don't check against full name.
11538 (w32font_list_internal): New function.
11539 (w32font_list): Use it.
11540 (w32font_match_internal): New function.
11541 (w32font_match): Use it.
11542 (w32font_open_internal): New function.
11543 (w32font_open): Use it.
11544 (w32font_get_cache, w32font_close, w32font_has_char)
11545 (w32font_encode_char, w32font_text_extents, w32font_draw):
11546 Make non-static.
11547
11548 * makefile.w32-in (w32font.o): Depend on w32font.h.
11549
115502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11551
11552 * charset.c (Fdefine_charset_internal): Record a supplementary
11553 charset at the tail of Vcharset_order_list.
11554
11555 * font.c (Ffont_shape_text): Fix the return value.
11556
11557 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11558
11559 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11560
115612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11562
11563 * ftfont.c (struct OpenTypeSpec): New struct.
11564 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11565 (ftfont_get_open_type_spec): New function.
11566 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11567
11568 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11569
115702008-02-01 Jason Rumney <jasonr@gnu.org>
11571
11572 * w32font.c (add_font_entity_to_list): Compare only the beginning
11573 of full name.
11574
115752008-02-01 Kenichi Handa <handa@m17n.org>
11576
11577 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11578 Never return HANDLED_RECOMPUTE_PROPS.
11579
115802008-02-01 Kenichi Handa <handa@m17n.org>
11581
11582 * font.c (font_gstring_produce): Delete it.
11583
11584 * composite.h (COMPOSITION_METHOD):
11585 Handle COMPOSITION_WITH_GLYPH_STRING.
11586
115872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11588
11589 * xfont.c (Qx): Delete.
11590 (syms_of_xfont): Don't initialize Qx.
11591
11592 * composite.h (enum composition_method):
11593 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11594
115952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11596
11597 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11598 (choose_face_font): Accept new form of font-spec.
11599
11600 * frame.h (font_driver_list): Declare it unconditionally.
11601 (struct frame): Define members font_driver_list and font_data_list
11602 unconditionally.
11603
11604 * fontset.c: Include "font.h" unconditionally.
11605 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11606 (Fset_fontset_font): Accept a font-spec object.
11607
11608 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11609 PIXEL_SIZE part a wild card.
11610
11611 * dispextern.h (struct glyph_string): Define members clip and
11612 num_clips unconditionally.
11613 (struct face): Define members font_info and extra unconditionally.
11614
11615 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11616 ftfont_info only when HAVE_LIBOTF is defined.
11617
116182008-02-01 Andreas Schwab <schwab@suse.de>
11619
11620 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11621 and end.
11622
116232008-02-01 Jason Rumney <jasonr@gnu.org>
11624
11625 * w32font.c (w32font_driver): Add new fields.
11626
116272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11628
11629 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11630 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11631 (LIBES): Add @M17N_FLT_CFLAGS@.
11632
11633 * composite.c (compose_text): Don't treat the new style
11634 composition specially.
11635
11636 * emacs.c (main): Call syms_of_font unconditionally.
11637
11638 * font.h (FONT_ENTITY_NOT_LOADABLE)
11639 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11640 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11641 (struct font_driver): New member shape.
11642 (font_registry_charsets): Extern it.
11643 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11644 (font_otf_capability, font_drive_otf): Delete their externs.
11645
11646 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11647 (font_charset_alist, font_registry_charsets): Move from xfont.c
11648 and rename.
11649 (font_prop_validate_otf): New function.
11650 (font_property_table): Register it for QCotf.
11651 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11652 (font_drive_otf): Delete.
11653 (font_prepare_composition): New arg F. Adjust for the change of
11654 lispy gstring.
11655 (font_find_for_lface): New arg C.
11656 (font_load_for_face): Adjust for the change of font_find_for_lface.
11657 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11658 lispy gstring.
11659 (Ffont_shape_text): New function.
11660 (Fopen_font): If the font size is not given, use 12-pixel.
11661 (Ffont_at): New arg STRING.
11662 (syms_of_font): Initalize font_charset_alist.
11663 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11664 conditionally.
11665
11666 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11667 fonts of the same font-spec. Change the format of RFONT-DEF.
11668 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11669 Adjust for the change of RFONT-DEF.
11670 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11671
11672 * ftfont.h: New file.
11673
11674 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11675 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11676 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11677 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11678 font_otf_capability and font_drive_otf, set ftfont_shape.
11679 (ftfont_list): Adjust for the change of :otf property value.
11680 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11681 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11682 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11683 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11684 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11685 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11686
11687 * w32term.c (x_draw_composite_glyph_string_foreground):
11688 Adjust for the change of lispy gstring.
11689
11690 * xdisp.c (handle_composition_prop): Adjust for the change of
11691 lispy gstring. Call a function for auto-composition with the
11692 third arg it->window.
11693 (fill_composite_glyph_string): Adjust for the change of lispy string.
11694 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11695
11696 * xfaces.c (set_font_frame_param): Adjust for the change of
11697 font_find_for_lface.
11698
11699 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11700 (xfont_registry_charsets): Likewise. Change caller.
11701 (syms_of_xfont): Don't handle x_font_charset_alist.
11702
11703 * xftfont.c: Include "ftfont.h".
11704 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11705 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11706 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11707 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11708 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11709 Set xftfont_driver.shape to xftfont_shape.
11710
11711 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11712 the change of lispy gstring.
11713
117142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11715
11716 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11717
117182008-02-01 Jason Rumney <jasonr@gnu.org>
11719
11720 * w32font.c (w32font_draw): Fill background manually.
11721
117222008-02-01 Jason Rumney <jasonr@gnu.org>
11723
11724 * font.c (Qfontp): Remove unused symbol.
11725 (QCantialias): New symbol.
11726 (syms_of_font): Define it.
11727 (font_property_table): Set a validator for QCantialias.
11728
11729 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11730 Define if not already.
11731 (QCfamily): Share with xfaces.c.
11732 (Qstandard, Qsubpixel, Qnatural): New symbols.
11733 (syms_of_w32font): Define them. Don't define QCfamily here.
11734 (w32_antialias_type, lispy_antialias_type): New functions.
11735 (w32_enumfont_pattern_entity): New arg requested_font.
11736 Set antialias parameter if non-default was requested.
11737 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11738
117392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11740
11741 * lread.c (read1): Undo the previous change.
11742
117432008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11744
11745 * frame.c (Fdelete_frame): Call font_update_drivers only when
11746 USE_FONT_BACKEND is defined.
11747
117482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11749
11750 * font.h (struct font_bitmap): New member bits_per_pixel.
11751 (struct font_driver): New members start_for_frame and end_for_frame.
11752 (struct font_data_list): New struct.
11753 (font_put_frame_data, font_get_frame_data): Extern them.
11754
11755 * frame.h (struct frame): New member font_data_list.
11756
11757 * font.c (font_update_drivers): Call driver->start_for_frame and
11758 driver->end_for_frame at proper timings.
11759 (font_put_frame_data, font_get_frame_data): New functions.
11760 (Ffont_spec): Add usage in the docstring.
11761
11762 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11763 (Fdelete_frame): Call font_update_drivers.
11764
11765 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11766 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11767 (xftfont_get_xft_draw): New function.
11768 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11769 (xftfont_end_for_frame): New function.
11770 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11771
11772 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11773 Change argument. Cache GCs in the per-frame data.
11774 (struct ftxfont_frame_data): New struct.
11775 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11776 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11777 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11778 (ftxfont_end_for_frame): New function.
11779 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11780
11781 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11782
117832008-02-01 Kenichi Handa <handa@m17n.org>
11784
11785 * xselect.c (Vselection_coding_system)
11786 (Vnext_selection_coding_system): Delete them.
11787 (syms_of_xselect): Don't declare selection-coding-system and
11788 next-selection-coding-system. They are declared in select.el.
11789
117902008-02-01 Jason Rumney <jasonr@gnu.org>
11791
11792 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11793
11794 * w32fns.c: Include imm.h.
11795 (get_composition_string_fn, get_ime_context_fn): New optional
11796 system functions.
11797 (globals_of_w32fns): Load them from imm32.dll.
11798 (ignore_ime_char): New flag.
11799 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11800 WM_IME_ENDCOMPOSITION messages.
11801
11802 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11803 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11804
118052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11806
11807 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11808 (READCHAR_REPORT_MULTIBYTE): New macro.
11809 (readchar): New 2nd arg MULTIBYTE.
11810 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11811 Make symbol's name multibyte according to the multibyteness of the
11812 source.
11813
118142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11815
11816 * xfaces.c (face_for_overlay_string): Call lookup_face with
11817 correct arguments (fix of synching with the trunk).
11818
118192008-02-01 Kenichi Handa <handa@m17n.org>
11820
11821 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11822 (font_prop_validate_non_neg, font_prop_validate_spacing):
11823 Delete argument prop_index.
11824 (font_property_table): Change arguments to validater. Change Callers.
11825 (font_lispy_object): Delete.
11826 (font_at): Use font_find_object instead fo font_lispy_object.
11827
118282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11829
11830 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11831 and file names.
11832
118332008-02-01 Jason Rumney <jasonr@gnu.org>
11834
11835 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11836 (font_matches_spec): Remove debug output.
11837 (add_font_entity_to_list): Avoid using substituted fonts.
11838
118392008-02-01 Jason Rumney <jasonr@gnu.org>
11840
11841 * doc.c (Fsnarf_documentation):
11842 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11843
118442008-02-01 Miles Bader <miles@gnu.org>
11845
11846 * dispextern.h (struct glyph_row): Only define "clip" field if
11847 HAVE_WINDOW_SYSTEM is defined.
11848
118492008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11850
11851 Fix up multi-tty merge.
11852
11853 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11854 and indentation.
11855
11856 * xfaces.c (free_realized_face, clear_face_gcs):
11857 Include font_done_for_face in the input_blocked section, just in case.
11858
11859 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11860 (get_char_face_and_encoding): Undo last change and remove the *other*
11861 duplicate definition (i.e. keep the one that's better scoped and that
11862 includes code for the font-backend).
11863
11864 * terminal.c (create_terminal): Default keyboard_coding to
11865 `no-conversion' and terminal_coding to `undecided'.
11866
11867 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11868
11869 * fontset.c (free_realized_fontsets): Check that the table entry does
11870 contain a fontset before trying to compare it to `base'.
11871
11872 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11873 syms_of_charset, and syms_of_coding earlier because init_window_once
11874 now needs Vcoding_system_hash_table to be setup.
11875
11876 * coding.h (default_buffer_file_coding): Remove.
11877
11878 * coding.c (default_buffer_file_coding): Remove.
11879 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11880 than ->symbol, and use the terminal-local coding system.
11881 (syms_of_coding): Don't setup the coding-systems that are not
11882 terminal-local.
11883 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11884
11885 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11886 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11887
11888 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11889 in chartab.c and were re-added here by mistake.
11890 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11891
11892 * doc.c (Fsnarf_documentation):
11893 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11894 src to etc.
11895
11896 * ChangeLog.10: Add mistakenly removed entry.
11897
118982008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11899
11900 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11901
119022008-02-01 Miles Bader <miles@gnu.org>
11903
11904 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11905 Add extra args to FACE_FOR_CHAR.
11906
119072008-02-01 Kenichi Handa <handa@m17n.org>
11908
11909 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11910 in sequence.
11911
11912 * chartab.c (map_sub_char_table, map_char_table): If the range
11913 contains just one character, call the function with that character
11914 even if the depth is not 3.
11915
119162008-02-01 Jason Rumney <jasonr@gnu.org>
11917
11918 * w32font.c (w32font_text_extents): Calculate metrics for the
11919 whole string.
11920
119212008-02-01 Jason Rumney <jasonr@gnu.org>
11922
11923 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11924
119252008-02-01 Jason Rumney <jasonr@gnu.org>
11926
11927 * w32term.c (x_set_glyph_string_clipping): Use
11928 get_glyph_string_clip_rects.
11929 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11930 Adjust for the change of struct glyph_string.
11931
11932 * w32font.c (w32font_draw): Do clipping here.
11933
119342008-02-01 Kenichi Handa <handa@m17n.org>
11935
11936 * xftfont.c (xftfont_draw): Adjust for the change of struct
11937 glyph_string.
11938
11939 * xterm.c (x_set_glyph_string_clipping): Use
11940 get_glyph_string_clip_rects.
11941 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11942 Adjust for the change of struct glyph_string.
11943
11944 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11945 the resulting clip(s}.
11946 (expose_overlaps): Add arg r. Change callers. Set it to
11947 row->clip temporarily.
11948 (expose_window): Redraw rows overlapping the exposed area.
11949
11950 * dispextern.h (struct glyph_row): New member clip.
11951 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11952 clip_height, new member clip, and num_clips.
11953
119542008-02-01 Kenichi Handa <handa@m17n.org>
11955
11956 * data.c (Fchar_or_string_p): Fix docstring.
11957
119582008-02-01 Kenichi Handa <handa@m17n.org>
11959
11960 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11961 create a temporary XftDraw object.
11962
119632008-02-01 Kenichi Handa <handa@m17n.org>
11964
11965 * font.c (Ffontp): Fix docstring.
11966
11967 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11968 strong evidence of ISO-2022.
11969
119702008-02-01 Kenichi Handa <handa@m17n.org>
11971
11972 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11973 SYNTAX_ENTRY_FOLLOW_PARENT.
11974
119752008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11976
11977 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11978 its type.
11979 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11980 Update to the new type of weak_hash_tables and next_weak.
11981
11982 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11983 a plain C pointer to Lisp_Hash_Table.
11984
11985 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11986 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11987 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11988 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11989 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11990 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11991 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11992 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11993 (GC_EQ): Remove since they've been identical to their non-GC_
11994 alter-egos ever since the markbit was eradicated.
11995
11996 * alloc.c:
11997 * buffer.c:
11998 * buffer.h:
11999 * data.c:
12000 * fileio.c:
12001 * filelock.c:
12002 * fns.c:
12003 * frame.h:
12004 * lisp.h:
12005 * macterm.c:
12006 * print.c:
12007 * process.c:
12008 * w32fns.c:
12009 * w32menu.c:
12010 * w32term.c:
12011 * xfns.c:
12012 * xmenu.c:
12013 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12014
120152008-02-01 Kenichi Handa <handa@m17n.org>
12016
12017 * chartab.c (map_sub_char_table): Make it work for the top-level
12018 char-table. Fix handling of parent char-table.
12019 (map_char_table): Adjust for the above change.
12020
120212008-02-01 Jason Rumney <jasonr@gnu.org>
12022
12023 * w32font.c (Qgdi): Rename from Qw32.
12024
120252008-02-01 Jason Rumney <jasonr@gnu.org>
12026
12027 * w32bdf.c (get_quoted_string): Make function static.
12028
120292008-02-01 Kenichi Handa <handa@m17n.org>
12030
12031 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12032 bigger ascent and descent than those of the font, use them as
12033 font's ascent and descent.
12034
120352008-02-01 Kenichi Handa <handa@m17n.org>
12036
12037 * Makefile.in (${lispsource}international/charprop.el): Move this
12038 target within "#ifdef HAVE_UNIDATA" and "#endif".
12039
120402008-02-01 Kenichi Handa <handa@m17n.org>
12041
12042 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12043 (shortlisp): Add ../lisp/language/tai-viet.el.
12044
120452008-02-01 Ulrich Mueller <ulm@gentoo.org>
12046
12047 * Makefile.in (${lispsource}international/charprop.el): Depend on
12048 temacs${EXEEXT}.
12049
120502008-02-01 Jason Rumney <jasonr@gnu.org>
12051
12052 * w32font.c (w32font_close): Delete the GDI font object.
12053
12054 * w32menu.c: Include character.h.
12055
12056 * w32proc.c: Likewise.
12057
12058 * w32select.c: Likewise.
12059
12060 * makefile.w32-in (w32proc.o): Depend on character.h.
12061
120622008-02-01 Jason Rumney <jasonr@gnu.org>
12063
12064 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12065
12066 * w32menu.c (syms_of_w32menu): Likewise.
12067
12068 * w32proc.c (syms_of_ntproc): Likewise.
12069
12070 * w32select.c (syms_of_w32select): Likewise.
12071
12072 * w32term.c (syms_of_w32term): Likewise.
12073
120742008-02-01 Jason Rumney <jasonr@gnu.org>
12075
12076 * w32font.c (w32font_draw): Delete brush after using it.
12077
120782008-02-01 Jason Rumney <jasonr@gnu.org>
12079
12080 * w32font.c (w32font_open): Don't set font_idx.
12081 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12082 to font settings.
12083 (w32font_draw): Fill background explicitly.
12084
120852008-02-01 Jason Rumney <jasonr@gnu.org>
12086
12087 * w32term.c (w32_initialize): Don't call w32font_initialize.
12088
12089 * w32font.c (w32font_info): Remove subranges.
12090 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12091 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12092 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12093 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12094 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12095 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12096 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12097 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12098 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12099 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12100 New symbols.
12101 (font_callback_data): New struct.
12102 (w32font_list, w32font_match): Use it.
12103 (w32font_open): Don't populate subranges.
12104 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12105 (w32font_encode_char): Always return unicode code-point as-is.
12106 (w32font_text_extents): Supply a transformation matrix to
12107 GetGlyphOutline. Never look up by glyph index. Avoid looping
12108 twice. Use unicode version of GetTexExtentPoint32 instead of
12109 glyph index version.
12110 (set_fonts_frame): Remove.
12111 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12112 set frame parameter. Use backward compatible fake foundries.
12113 Save generic family in extra slot under QCfamily. Make width slot
12114 constant. Save QCspacing value. Save list of scripts instead of
12115 binary subranges.
12116 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12117 (add_font_entity_to_list): Use font_callback_data struct. Filter
12118 unwanted fonts.
12119 (add_one_font_entity_to_list): Use font_callback_data struct.
12120 (w32_registry): Default to iso10646_1.
12121 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12122 string font registries. Don't fill in font name if it is a generic
12123 family name, fill family instead. Use spacing, family and script
12124 extra info to fill pitch, family and charset fields.
12125 (list_all_matching_fonts): Use font_callback_data struct.
12126 (unicode_range_for_char): Remove.
12127 (font_supported_scripts): New function.
12128 (w32font_initialize): Remove.
12129 (syms_of_w32font): Update which symbols are defined.
12130
121312008-02-01 Jason Rumney <jasonr@gnu.org>
12132
12133 * font.c (font_pixel_size): Reverse assq_no_quit args.
12134
12135 * w32term.h (FONT_WIDTH): Report max width, not average.
12136 (FONT_MAX_WIDTH): Remove.
12137 (FONT_AVG_WIDTH): New macro.
12138
12139 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12140 redefinition of FONT_WIDTH.
12141
12142 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12143 (w32_cache_char_metrics): Use FONT_WIDTH.
12144
12145 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12146
121472008-02-01 Jason Rumney <jasonr@gnu.org>
12148
12149 * w32font.c (w32font_open): Make lfHeight negative.
12150
12151 * w32fns.c (x_default_font_parameter): Use new style font name.
12152 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12153
121542008-02-01 Jason Rumney <jasonr@gnu.org>
12155
12156 * w32font.c (QCsubranges): New symbol.
12157 (w32font_open, w32font_has_char): Get subranges from subproperty
12158 of extra.
12159 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12160 (syms_of_w32font): Define :subranges symbol.
12161
12162 * font.c (font_put_extra): Expose externally.
12163
12164 * font.h (font_put_extra): Move declaration from font.c.
12165
12166 * font.c (Ffont_get): Use font driver to determine otf capability.
12167 (adjust_anchor): Check if driver defines anchor_point before using.
12168
12169 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12170 (w32font_draw): Use options.
12171 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12172 Fix detection of truetype fonts.
12173 (registry_to_w32_charset): Handle charsets other than iso8859-1
12174 expressed as lisp symbols.
12175 (w32_registry): Express charset as lisp symbol.
12176 (fill_in_logfont): Reverse pixel and point height logic.
12177 Don't set width here. Set quality to default.
12178
12179 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12180 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12181
12182 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12183 Remove redundant loop and allocation.
12184
12185 * makefile.w32-in (font.o, w32font.o): New objects.
12186 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12187 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12188
12189 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12190 STORE_XCHARB a valid l-value.
12191
12192 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12193 calculations for non-Truetype fonts.
12194 (x_draw_glyph_string): Sync with xterm.c.
12195 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12196 Remove redundant code.
12197 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12198
12199 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12200 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12201
12202 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12203 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12204
12205 * w32font.c: New file for w32 font backend.
12206
122072008-02-01 Kenichi Handa <handa@m17n.org>
12208
12209 * term.c: Don't include "buffer.h" twice.
12210
122112008-02-01 Kenichi Handa <handa@m17n.org>
12212
12213 * character.c (Funibyte_string): New function.
12214 (syms_of_character): Defsubr it.
12215
122162008-02-01 Jason Rumney <jasonr@gnu.org>
12217
12218 * w32term.c [USE_FONT_BACKEND]:
12219 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12220 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12221 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12222 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12223 (x_free_frame_resources): Sync with xterm.c.
12224
122252008-02-01 Andreas Schwab <schwab@suse.de>
12226
12227 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12228 char-table size.
12229
122302008-02-01 Kenichi Handa <handa@m17n.org>
12231
12232 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12233
122342008-02-01 Kenichi Handa <handa@m17n.org>
12235
12236 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12237 font_otf_gpos, add font_drive_otf.
12238
12239 * fontset.c (fontset_find_font): Pay attention to font size
12240 specified for a font.
12241 (reorder_font_vector): Check contents of font_def.
12242
12243 * font.c (struct otf_list): Delete it.
12244 (otf_list): Make it a lisp variable.
12245 (otf_open): Use lispy otf_list.
12246 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12247 (check_otf_features): New function.
12248 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12249 New functions.
12250 (font_drive_otf): New function merging font_otf_gsub and
12251 font_otf_gpos.
12252 (font_open_for_lface): New arg spec. Change argument order.
12253 (font_load_for_face): Adjust for the change of font_open_for_lface.
12254 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
12255 Ffont_otf_gpos.
12256 (syms_of_font): Staticpro otf_list. Delete defsubr of
12257 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
12258
12259 * xfaces.c (set_font_frame_param): Adjust for the change of
12260 font_open_for_lface.
12261
12262 * font.h (font_open_for_lface): Adjust prototype.
12263 (struct font_driver): Delete members otf_gsub and otf_gpos, add
12264 member otf_drive.
12265 (font_otf_gsub, font_otf_gpos): Delete externs.
12266 (font_drive_otf): Extern it.
12267
122682008-02-01 Kenichi Handa <handa@m17n.org>
12269
12270 * font.c (font_at): If the window W is not on a window system,
12271 return Qnil.
12272
12273 * coding.c (produce_chars, encode_coding): Don't call
12274 insert_from_gap if no characters to produce.
12275
122762008-02-01 Kenichi Handa <handa@m17n.org>
12277
12278 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
12279 Fclear_face_cache.
12280
12281 * xfaces.c (face_for_font): Check also face->font==font->font.font.
12282
122832008-02-01 Miles Bader <miles@gnu.org>
12284
12285 * emacs.c (main): Change default value of `enable_font_backend' to 1.
12286 Parse "--disable-font-backend" option.
12287 (standard_args): Add "--disable-font-backend" option.
12288
122892008-02-01 Kenichi Handa <handa@m17n.org>
12290
12291 * fontset.c (fontset_find_font): New function.
12292 (fontset_font): Use fontset_find_font.
12293 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
12294 Register the specified font for all Latin characters.
12295 (new_fontset_from_font): Register the specified font for all Latin
12296 characters.
12297 (dump_fontset): For a realized fontset, include the base fontset
12298 name in the returned vector.
12299
123002008-02-01 Kenichi Handa <handa@m17n.org>
12301
12302 * character.h (CHAR_STRING): Cast C to unsigned on calling
12303 char_string.
12304
12305 * character.c (char_string): Type of arg C changed to unsigned.
12306 Signal an error if C is an invalid character code.
12307
12308 * editfns.c (general_insert_function, Fchar_to_string):
12309 Use CHARACTERP, not INTEGERP.
12310
123112008-02-01 Kenichi Handa <handa@m17n.org>
12312
12313 * character.h (MIN_MULTIBYTE_LEADING_CODE)
12314 (MAX_MULTIBYTE_LEADING_CODE): New macros.
12315
12316 * regex.c (analyse_first): Fix for multibyte characters in "case
12317 charset:" and "case categoryspec:".
12318
123192008-02-01 Andreas Schwab <schwab@suse.de>
12320
12321 * Makefile.in (LIBES): Move standard libraries to the end.
12322
123232008-02-01 Kenichi Handa <handa@m17n.org>
12324
12325 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
12326 nonzero, don't shrink the buffer nextb.
12327
12328 * buffer.h (struct buffer_text): New member inhibit_shrinking.
12329
12330 * coding.c (coding_alloc_by_making_gap): New arg offset.
12331 (alloc_destination): Call coding_alloc_by_making_gap with the arg
12332 offset.
12333 (decode_coding_iso_2022): Update coding->safe_charsets.
12334 (decode_coding_gap): Temporarily set
12335 current_buffer->text->inhibit_shrinking to 1.
12336
123372008-02-01 Kenichi Handa <handa@m17n.org>
12338
12339 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12340 indexing into elements of s->cmp and s->char2b.
12341
123422008-02-01 Juanma Barranquero <lekktu@gmail.com>
12343
12344 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12345
123462008-02-01 Kenichi Handa <handa@m17n.org>
12347
12348 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12349 target_multibyte instead of multibyte.
12350 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12351 (bcmp_translate): Change the argument name from multibyte to
12352 target_multibyte.
12353
123542008-02-01 Kenichi Handa <handa@m17n.org>
12355
12356 These changes are to compile a regexp into a pattern that can be
12357 used both for multibyte and unibyte targets.
12358
12359 * Makefile.in (search.o): Depend on charset.h.
12360
12361 * character.c (multibyte_char_to_unibyte_safe): New function.
12362
12363 * search.c: Include "charset.h".
12364 (compile_pattern_1): Delete argument multibyte. Don't set
12365 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12366 (compile_pattern): Don't compare cp->buf.target_multibyte.
12367 Compare cp->buf.charset_unibyte.
12368 (compile_pattern): Set cp->buf.target_multibyte.
12369
12370 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12371
12372 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12373
12374 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12375 multibyte. Change callers.
12376 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12377 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12378 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12379 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12380 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12381 (regex_compile): Make the compiled pattern usable both for
12382 multibyte and unibyte targets.
12383 (analyse_first): Make the fastmap usable both for multibyte and
12384 unibyte targets.
12385 (TRANSLATE_VIA_MULTIBYTE): Delete.
12386 (re_match_2_internal): Pay attention to the case that the
12387 multibyteness of bufp and target may be different.
12388
123892008-02-01 Kenichi Handa <handa@m17n.org>
12390
12391 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12392 empty box occupy at least one column width.
12393
123942008-02-01 Miles Bader <miles@gnu.org>
12395
12396 * Makefile.in: Remove redundant HAVE_XFT clause.
12397
123982008-02-01 Kenichi Handa <handa@m17n.org>
12399
12400 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12401
124022008-02-01 Kenichi Handa <handa@m17n.org>
12403
12404 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12405 being nil.
12406
124072008-02-01 Kenichi Handa <handa@m17n.org>
12408
12409 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12410
124112008-02-01 Kenichi Handa <handa@m17n.org>
12412
12413 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12414
124152008-02-01 Kenichi Handa <handa@m17n.org>
12416
12417 * search.c (simple_search): Fix previous change.
12418
124192008-02-01 Kenichi Handa <handa@m17n.org>
12420
12421 * xftfont.c (ftfont_font_format): Extern declaration.
12422
12423 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12424
12425 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12426 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12427
12428 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12429 (ftfont_font_format): Fix previous change.
12430
12431 * font.h (Ffont_xlfd_name): EXFUN it.
12432
12433 * font.c (font_parse_xlfd): Fix the array size of `f'.
12434 (register_font_driver): Use EQ to compare driver->type.
12435
12436 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12437 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12438 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12439
124402008-02-01 Kenichi Handa <handa@m17n.org>
12441
12442 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12443 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12444
124452008-02-01 Kenichi Handa <handa@m17n.org>
12446
12447 * xfont.c (xfont_open): Set font->format.
12448
12449 * xftfont.c (xftfont_open): Set font->format.
12450
12451 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12452 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12453 (ftfont_open): Set font->format.
12454 (ftfont_font_format): New function.
12455
12456 * font.h (struct font): New member format.
12457
12458 * font.c (Qopentype): New variable.
12459 (syms_of_font): Defsym it.
12460 (Fquery_font): Change the format of the last element of the return
12461 value.
12462
124632008-02-01 Kenichi Handa <handa@m17n.org>
12464
12465 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12466 last resort.
12467
124682008-02-01 Kenichi Handa <handa@m17n.org>
12469
12470 * coding.c (detect_coding_charset): Fix detection of multi-byte
12471 charset.
12472
124732008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12474
12475 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12476
124772008-02-01 Kenichi Handa <handa@m17n.org>
12478
12479 * xdisp.c (get_next_display_element): Set it->face_id for the
12480 first component of a composition.
12481 (x_produce_glyphs): Check if the font is changed or not for composition.
12482
124832008-02-01 Kenichi Handa <handa@m17n.org>
12484
12485 * fontset.c (Qlatin): New variable.
12486 (syms_of_fontset): Define it as a lisp symbol.
12487 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12488
124892008-02-01 Kenichi Handa <handa@m17n.org>
12490
12491 * font.c (font_unparse_fcname): Pay attention to the case that
12492 some of font property is a null string.
12493
124942008-02-01 Kenichi Handa <handa@m17n.org>
12495
12496 * term.c: Include "composite.h".
12497 (encode_terminal_code): Output all components of composition.
12498 Check the size of encode_terminal_src.
12499 (produce_glyphs): For composition, call produce_composite_glyph.
12500 (append_composite_glyph, produce_composite_glyph): New functions.
12501
12502 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12503 is not found, get font_info from the current ascii face.
12504
125052008-02-01 Kenichi Handa <handa@m17n.org>
12506
12507 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12508 buffer-file-name to Qnil before calling insert_from_buffer.
12509
12510 * font.c (font_unparse_fcname): Pay attention to the case that
12511 foundry is a null string.
12512
125132008-02-01 Kenichi Handa <handa@m17n.org>
12514
12515 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12516
12517 * font.c (Qunicode_sip): New variable.
12518 (syms_of_font): Declare it as a Lisp symbol.
12519
12520 * font.h (Qunicode_sip): Extern it.
12521
125222008-02-01 Kenichi Handa <handa@m17n.org>
12523
12524 * composite.c (get_composition_id): Pay attention to TAB component.
12525
12526 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12527 TAB. Adjust for the change of s->char2b which always points to
12528 the first element of allocated memory.
12529
12530 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12531
12532 * xdisp.c (handle_composition_prop): Set it->c to the first
12533 non-TAB component.
12534 (fill_composite_glyph_string): Change argument.
12535 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12536 (x_produce_glyphs): Fix handling of left/right padding.
12537
125382008-02-01 Kenichi Handa <handa@m17n.org>
12539
12540 * coding.c (detect_coding_system): Fix for handling off
12541 inhibit_iso_escape_detection. Fix for the case that no coding
12542 system is defined for a specific coding category.
12543
125442008-02-01 Kenichi Handa <handa@m17n.org>
12545
12546 * font.c (font_matching_entity): Delete unused local var.
12547
12548 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12549 opening a font.
12550
12551 * fileio.c (Finsert_file_contents): On recovering a file, assume
12552 Unix-like eol.
12553 (choose_write_coding_system): On auto-saving a file, force
12554 Unix-like eol.
12555
12556 * coding.c (setup_coding_system): Fix setting of
12557 coding->common_flags based on eol_type.
12558 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12559 inherit from it.
12560
125612008-02-01 Kenichi Handa <handa@m17n.org>
12562
12563 * alloc.c (NSTATICS): Increas to 0x600.
12564
125652008-02-01 Kenichi Handa <handa@m17n.org>
12566
12567 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12568 (ftfont_list): Don't check :name property.
12569 (ftfont_match): New function.
12570 (ftfont_pattern_entity): If the pattern doesn't contain
12571 FC_SPACING, don't assume FC_MONO.
12572
12573 * font.h (struct font_driver): New member `match'.
12574 (font_update_drivers): Adjust prototype.
12575
12576 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12577 property of FONT.
12578 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12579 them unconditionally.
12580 (font_matching_entity): New function.
12581 (font_open_by_name): Try font_matching_entity if exact match is
12582 not found.
12583 (font_update_drivers): Delete the arg FONT. Return a list of
12584 actually used backends. Don't free faces, font caches here.
12585 Don't store data in frame parameters. Don't call x_set_font.
12586 (Ffont_spec): Store :name property as is.
12587 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12588 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12589 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12590 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12591 Call font->driver->otf_gsub instead of font_otf_gsub.
12592
12593 * frame.c (x_set_font_backend): Do more works that were done in
12594 font_update_drivers before.
12595
12596 * xfont.c (xfont_match): New function.
12597 (xfont_driver): Set xfont_driver.match to xfont_match.
12598 (xfont_draw): Set font in GC if necessary.
12599
12600 * ftxfont.c (ftxfont_match): New function.
12601 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12602
12603 * xftfont.c (xftfont_match): New function.
12604 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12605
126062008-02-01 Kenichi Handa <handa@m17n.org>
12607
12608 * font.h (struct font): New member scalable.
12609 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12610 (font_otf_gsub): Adjust prototype.
12611
12612 * font.c (font_otf_capability): Fix handling of the default langsys.
12613 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12614 Check the contents of SPEC.
12615 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12616 (check_gstring): New function.
12617 (REPLACEMENT_CHARACTER): New macro.
12618 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12619 glyph codes of GSTRING.
12620 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12621 (font_prepare_composition): Set cmp->glyph_len.
12622 (font_open_entity): Set font->scalable.
12623 (Ffont_get): Handle :otf property.
12624 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12625 functions.
12626 (Fquery_font): Use font->font.full_name.
12627 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12628 Sfont_otf_alternates.
12629
12630 * ftfont.c (ftfont_open): Set font->font.full_name and
12631 font->font.name properly. Fix calculation of font->font.height
12632 and font->min_width.
12633
12634 * ftxfont.c (ftxfont_create_gcs): New function.
12635 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12636 (ftxfont_draw_backgrond): Fix filling region.
12637 (ftxfont_default_fid): New function.
12638 (ftxfont_open): Set xfont->fid to the return value of
12639 ftxfont_default_fid.
12640 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12641 (ftxfont_done_face): Free only GCs that are created by
12642 ftxfont_create_gcs.
12643 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12644
12645 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12646 Clip to src->width, etc (not src->clip_XXX).
12647
12648 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12649 FontBackend frame parameter.
12650
126512008-02-01 Kenichi Handa <handa@m17n.org>
12652
12653 * font.h (struct font_driver_list): New member `on'.
12654 (Fclear_font_cache): EXFUN it.
12655 (font_update_drivers): Extern it.
12656
12657 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12658 (font_list_entities): Check driver_list->on.
12659 (register_font_driver): Initalize `on' member to 0.
12660 (font_update_drivers): New function.
12661 (Fclear_font_cache): Check driver_list->on.
12662
12663 * frame.h (Qfont_backend): Extern it.
12664 (x_set_font_backend): Extern it.
12665
12666 * frame.c (Qfont_backend): New variable.
12667 (frame_parms): New element for font-backend.
12668 (x_set_font_backend): New function.
12669
12670 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12671 FontBackend frame parameter.
12672 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12673 x_set_font_backend.
12674
12675 * xfont.c (xfont_list): Don't try listing by :name property if the
12676 name is not for XLFD.
12677
126782008-02-01 Kenichi Handa <handa@m17n.org>
12679
12680 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12681 (LGLYPH_SET_TO): New macros.
12682 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12683 element of G is vector or not.
12684 (font_at): Extern it.
12685
12686 * font.c: Include window.h.
12687 (font_lispy_object): New function.
12688 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12689 end of valid glyph.
12690 (font_close_object): Fix getting (struct font *).
12691 (font_at): New function.
12692 (Ffont_get): If FONT is a font-object, get entity from it.
12693 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12694 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12695 range check.
12696 (Ffont_at): New function.
12697 (syms_of_font): Defsubr Sfont_at.
12698
12699 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12700 before the entry for Qcomposition.
12701 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12702 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12703 the font in gstring.
12704 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12705 LGLYPH_FORM (g) to detect the end of valid glyph.
12706 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12707 we are composing with gstring.
12708
12709 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12710 Check if adjustment is vector or not.
12711
12712 * Makefile.in (font.o): Make it depends on window.h.
12713
127142008-02-01 Kenichi Handa <handa@m17n.org>
12715
12716 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12717 adjustment is vector or not.
12718
127192008-02-01 Miles Bader <miles@gnu.org>
12720
12721 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12722
127232008-02-01 Kenichi Handa <handa@m17n.org>
12724
12725 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12726 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12727 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12728
12729 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12730 (DEVICE_DELTA): Fix typo.
12731 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12732 LGLYPH format.
12733
12734 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12735 the change of LGLYPH format.
12736
127372008-02-01 Kenichi Handa <handa@m17n.org>
12738
12739 * ftfont.c (ftfont_list): Fix typo.
12740 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12741
127422008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12743
12744 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12745
12746 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12747 xftface_info is non-NULL.
12748
127492008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12750
12751 * ftfont.c (ftfont_list): Move misplaced #endif.
12752
127532008-02-01 Kenichi Handa <handa@m17n.org>
12754
12755 * ftfont.c (ftfont_list): Pay attention to the case that
12756 FC_CAPABILITY is not defined.
12757
127582008-02-01 Kenichi Handa <handa@m17n.org>
12759
12760 * xftfont.c (xftfont_open): Set charset related members to -1.
12761
12762 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12763 QCname.
12764 (ftfont_open): Set charset related members to -1.
12765
12766 * fontset.c (Votf_script_alist): New variable.
12767 (syms_of_fontset): Initialize it.
12768 (fontset_font): Delete unused variable.
12769
12770 * fontset.h (Votf_script_alist): Extern it.
12771
12772 * font.c (font_find_for_lface): Optimize code.
12773
12774 * font.h (font_close_object, font_merge_old_spec): Extern them.
12775
127762008-02-01 Kenichi Handa <handa@m17n.org>
12777
12778 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12779 (syms_of_font): Initialize them.
12780 (font_pixel_size): Allow float value in dpi.
12781 (font_prop_validate_type): Delete.
12782 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12783 Change caller.
12784 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12785 (font_prop_validate_extra): Delete.
12786 (font_prop_validate_spacing): New function.
12787 (font_property_table): Add elements for all known properties.
12788 (get_font_prop_index): Rename from check_font_prop_name. New
12789 argument FROM. Change caller.
12790 (font_prop_validate): Validate all known properties.
12791 (font_put_extra): Delete argument force. Change caller.
12792 (font_expand_wildcards): Make it static. Fix the way of shrinking
12793 the possible range.
12794 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12795 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12796 Change caller.
12797 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12798 (font_parse_fcname): Delete argument merge. Fix parsing of point
12799 size. Don't validate properties values here. Change caller.
12800 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12801 (font_open_by_name): Delete unused variable.
12802 (Ffont_spec): Likewise. Validate property values.
12803 (Ffont_match_p): New function.
12804
12805 * font.h (QCscalable): Extern it.
12806 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12807
12808 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12809
12810 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12811 (xfont_list_pattern): New function.
12812 (xfont_list): Use xfont_list_pattern.
12813
128142008-02-01 Kenichi Handa <handa@m17n.org>
12815
12816 * font.h (Flist_fonts): EXFUN it.
12817
128182008-02-01 Jason Rumney <jasonr@gnu.org>
12819
12820 * w32term.c (w32_initialize): Add back smoothing_type and
12821 smoothing_enabled definitions.
12822
128232008-02-01 Kenichi Handa <handa@m17n.org>
12824
12825 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12826 s->face->font on determining underline position.
12827
128282008-02-01 Kenichi Handa <handa@m17n.org>
12829
12830 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12831 (font_has_char): Accept font-object too.
12832 (font_find_for_lface): Try at first with a size specified in face.
12833
128342008-02-01 Kenichi Handa <handa@m17n.org>
12835
12836 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12837 font_open_by_name.
12838
128392008-02-01 Kenichi Handa <handa@m17n.org>
12840
12841 * font.h (QCspacing, QCdpi): Extern them.
12842 (enum font_spacing): New enum.
12843 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12844
12845 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12846 (QCspacing, QCdpi): New variables.
12847 (syms_of_font): Initialize them.
12848 (font_pixel_size): New function.
12849 (font_put_extra): New function.
12850 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12851 in FONT_EXTRA.
12852 (font_parse_fcname): Handle enumerated values (e.g. bold).
12853 Fix handling font size. Add QCname property that contains only
12854 unknown properties.
12855 (font_score): Change argument. Change caller. Pay attention to
12856 FONT_PIXEL_SIZE_QUANTUM.
12857 (font_sort_entites, font_list_entities, font_find_for_lface)
12858 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12859 (Ffont_spec): Add QCname property that contains only unknown properties.
12860
12861 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12862 include weight in listing pattern, instead check weight of each
12863 listed font. Don't include scalable in pattern. Pay attention to
12864 FONT_PIXEL_SIZE_QUANTUM.
12865
128662008-02-01 Kenichi Handa <handa@m17n.org>
12867
12868 * font.c (font_parse_fcname): Fix parsing of point-size.
12869 (font_unparse_fcname): Produce symbolic names for style properties.
12870 (font_list_entities): Handle float size correctly.
12871 (font_open_by_name): Prefer `normal' property values if the name
12872 doesn't specify them.
12873
12874 * fontset.c (Finternal_char_font): Use font_get_name, not
12875 Ffont_xlfd_name.
12876
12877 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12878 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12879 pattern. Don't force scalable.
12880
12881 * xftfont.c (xftfont_open): For generating a name, start from
12882 96-byte buffer.
12883
128842008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12885
12886 * frame.h (x_new_fontset2): Fix prototype.
12887
128882008-02-01 Kenichi Handa <handa@m17n.org>
12889
12890 * font.h (struct font_driver): Delete member parse_name.
12891 (font_match_p, font_get_spec, font_parse_fcname)
12892 (font_unparse_fcname): Extern them.
12893 (font_get_name): Adjust prototype.
12894
12895 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12896 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12897 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12898 unnecessary checks for weight, slant, and swidth.
12899 (font_parse_fcname): New function.
12900 (font_unparse_fcname): New function.
12901 (font_parse_name): New function.
12902 (font_match_p): New function.
12903 (font_get_name): Change return value to Lisp string.
12904 (font_get_spec): New function.
12905 (Qunspecified, Qignore_defface): Don't extern them.
12906 (font_find_for_lface): Assume that LFACE is fully specified.
12907 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12908 object, use it for FACE.
12909 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12910 driver->parse_name.
12911 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12912
12913 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12914 prototype.
12915
12916 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12917 argument F. Don't call Fnew_fontset. Instead, directly call
12918 make_fontset.
12919
12920 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12921
12922 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12923 of x_new_fontset2.
12924
12925 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12926 (Qsans__serif): New variables.
12927 (ftfont_generic_family_list): New variable.
12928 (syms_of_ftfont): Initialize the above variables.
12929 (ftfont_pattern_entity): Delete argument NAME.
12930 (ftfont_list_generic_family): New function.
12931 (ftfont_parse_name): Delete this function.
12932 (ftfont_list): Try generic family only when FcFontList found no font.
12933 (ftfont_list_family): Fix args to FcObjectSetBuild.
12934
12935 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12936 object in attrs[LFACE_FONT_INDEX].
12937 (set_lface_from_font_name): Cancel all changes for font-backend.
12938 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12939 function.
12940 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12941 font object in QCfont attribute.
12942 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12943 (realize_default_face) [USE_FONT_BACKEND]: Call
12944 set_lface_from_font_and_fontset.
12945
12946 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12947 "fixed", and signal error here if no suitable font was found.
12948
12949 * xfont.c (xfont_parse_name): Delete this function.
12950
12951 * xftfont.c (xftfont_open): Change coding style of error
12952 handling. Generate fontconfig's fontname pattern.
12953
12954 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12955 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12956
12957 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12958 Both args FONTSET and FONT_OBJECT must be existing ones.
12959
129602008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12961
12962 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12963
129642008-02-01 Kenichi Handa <handa@m17n.org>
12965
12966 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12967
12968 * font.h (struct font): Fix typo.
12969
12970 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12971 XLFD_XXX_INDEX.
12972 (enum xlfd_field_mask): New enum.
12973 (intern_font_field): Changed argument. Change caller. If digits
12974 are followed by non-digits, return a symbol.
12975 (font_expand_wildcards): New function.
12976 (font_parse_xlfd): Fix wildcard handling.
12977 (Ffont_spec): If :name is specified, reflect the info in the other
12978 properties.
12979
12980 * ftfont.c (ftfont_pattern_entity): Fix typo.
12981 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12982 locale.
12983
129842008-02-01 Kenichi Handa <handa@m17n.org>
12985
12986 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12987
12988 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12989 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12990 registry doesn't specify encoding part.
12991 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12992 (font_open_by_name): At first try parsing the name.
12993 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12994 as Lisp symbols.
12995
12996 * fontset.c (reorder_font_vector): Pay attention to the case that
12997 the 3rd element of font_def is nil.
12998 (fontset_font): For the default fontset, append one more fontset
12999 elements for a script-based font specification. Don't add script
13000 attribute on finding a font.
13001 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13002 font name.
13003 (fontset_ascii_font): If a font can't be opened, return nil.
13004
13005 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13006 (ftfont_pattern_entity): New function.
13007 (ftfont_get_cache): Assume that freetype_font_cache is already
13008 initialized.
13009 (ftfont_list): Handle the case that a file is specified in font
13010 name. Use ftfont_pattern_entity to generate entities.
13011 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13012 (syms_of_ftfont): Initialize freetype_font_cache.
13013
13014 * xftfont.c (xftfont_open): Make the font name fontconfig's
13015 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13016 (xftfont_close): Free font->font.name if not NULL.
13017
13018 * xfont.c (xfont_list): If script is specified for a font, return
13019 null_vector.
13020 (xfont_list_family): Declare argument type.
13021
13022 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13023 name, set LFACE_FONT (lface) to nil.
13024
13025 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13026 return Qnil.
13027
130282008-02-01 Kenichi Handa <handa@m17n.org>
13029
13030 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13031 (standard_args): Add "-enable-font-backend".
13032
130332008-02-01 Kenichi Handa <handa@m17n.org>
13034
13035 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13036 (struct xftdraw_list, xftdraw_list): Delete them.
13037 (register_xftdraw, check_xftdraw): Delete them.
13038 (xftfont_prepare_face): Don't call register_xftdraw.
13039 (xftfont_done_face): Don't call check_xftdraw.
13040 (xftfont_draw): Get background color only when with_background is
13041 nonzero.
13042
13043 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13044
130452008-02-01 Kenichi Handa <handa@m17n.org>
13046
13047 These changes are for the new font handling codes.
13048
13049 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13050 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13051 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13052 (FONTSRC, FONTOBJ): New variables.
13053 (obj): Add $(FONTOBJ).
13054 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13055 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13056 @LIBOTF_LIBS@.
13057 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13058 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13059
13060 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13061
13062 * character.h (Vscript_representative_chars): Extern it.
13063
13064 * character.c (Vscript_representative_chars): New variable.
13065 (syms_of_character): Declare it as a Lisp variable.
13066
13067 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13068 enable_font_backend is nonzero, accept the composition method
13069 COMPOSITION_WITH_GLYPH_STRING.
13070
13071 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13072 enumeration COMPOSITION_WITH_GLYPH_STRING.
13073
13074 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13075 members clip_x, clip_y, clip_width, and clip_height.
13076 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13077
13078 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13079 --enable-font-backend. Call syms_of_font.
13080
13081 * fns.c (assoc_no_quit): New function.
13082
13083 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13084 (face_for_font, new_fontset_from_font)
13085 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13086
13087 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13088 (fontset_font, fontset_ascii, face_for_char)
13089 (make_fontset_for_ascii_face, Ffont_info)
13090 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13091 is nonzero, use font-backend mechanism.
13092 (find_font_encoding): Make it non-static.
13093 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13094 New functions.
13095
13096 * frame.h (struct frame): New members resx and resy.
13097 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13098 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13099
13100 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13101 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13102
13103 * lisp.h (assoc_no_quit): Extern it.
13104
13105 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13106 Through out the file, use FONT_INFO_FROM_FACE instead of
13107 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13108 rif->per_char_metric.
13109 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13110 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13111 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13112 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13113 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13114 nonzero, use font-backend mechanism.
13115 (get_per_char_metric): New function.
13116
13117 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13118 (set_lface_from_font_name)
13119 (set_font_frame_param, free_realized_face)
13120 (prepare_face_for_display, clear_face_gcs)
13121 (Finternal_set_font_selection_order, realize_x_face)
13122 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13123 font-backend mechanism.
13124 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13125 (load_face_font) [USE_FONT_BACKEND]: Abort.
13126 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13127 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13128
13129 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13130 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13131 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13132 nonzero, register all available font drivers. Call
13133 x_default_font_parameter for deciding a font.
13134 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13135
13136 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13137 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13138 (x_set_glyph_string_clipping_exactly)
13139 (x_compute_glyph_string_overhangs)
13140 (x_draw_glyph_string_foreground)
13141 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13142 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13143 enable_font_backend is nonzero, use font-backend mechanism.
13144 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13145
131462008-02-01 Kenichi Handa <handa@m17n.org>
13147
13148 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13149 system_eol_type.
13150 (syms_of_coding): Initialize system_eol_type.
13151
13152 * process.c (Fset_process_coding_system): Inherit system's eol
13153 format if necessary.
13154
131552008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13156
13157 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13158
131592008-02-01 Kenichi Handa <handa@m17n.org>
13160
13161 * coding.c (decode_eol): Pay attention to buffer relocation in
13162 del_range_2.
13163 (decode_coding): Call decode_eol before restoring undo_list.
13164
131652008-02-01 Kenichi Handa <handa@m17n.org>
13166
13167 * charset.c (Fdefine_charset_internal): Fix setting of
13168 emacs_mule_bytes.
13169
131702008-02-01 Kenichi Handa <handa@m17n.org>
13171
13172 * keyboard.c (read_char): Check if C is a character or not before
13173 looking up Vkeyboard_translate_table.
13174
131752008-02-01 Kenichi Handa <handa@m17n.org>
13176
13177 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13178 condition to terminate the loop.
13179
131802008-02-01 Kenichi Handa <handa@m17n.org>
13181
13182 * coding.c (produce_composition): Compare charbuf[i] instead of
13183 args[i] against 0.
13184 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13185
131862008-02-01 Kenichi Handa <handa@m17n.org>
13187
13188 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13189 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13190 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13191 detect_coding.
13192 (emacs_mule_char): Handle old style (Emacs 20) component character
13193 of a composition.
13194 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13195 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13196 composition rule.
13197 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13198
131992008-02-01 Kenichi Handa <handa@m17n.org>
13200
13201 * coding.c (encode_coding_ccl): Allocate destination dynamically
13202 when necessary.
13203
132042008-02-01 Kenichi Handa <handa@m17n.org>
13205
13206 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13207 the loop. When quitted, show a proper error message.
13208
132092008-02-01 Kenichi Handa <handa@m17n.org>
13210
13211 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13212 src->clip_head and src->clip_tail temporarily instead of src->hl.
13213
13214 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13215 character sequence.
13216 (Fccl_execute_on_string): Use ASET, not XSET.
13217
132182008-02-01 Kenichi Handa <handa@m17n.org>
13219
13220 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13221
132222008-02-01 Kenichi Handa <handa@m17n.org>
13223
13224 * coding.c (decode_coding): Fix the condition of terminating the
13225 decoding loop.
13226
132272008-02-01 Kenichi Handa <handa@m17n.org>
13228
13229 * data.c (Faset): On setting a character bigger than 255 in a
13230 unibyte string, signal an error instead of make the string multibyte.
13231
132322008-02-01 Kenichi Handa <handa@m17n.org>
13233
13234 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13235 made by a mapping table.
13236
132372008-02-01 Kenichi Handa <handa@m17n.org>
13238
13239 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13240 not.
13241 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13242 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13243
13244 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13245 s->face is NULL or not.
13246
132472008-02-01 Kenichi Handa <handa@m17n.org>
13248
13249 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
13250 (x_draw_glyph_string): Fix drawing of right_overhang and
13251 left_overhang around/on cursor.
13252
13253 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
13254
132552008-02-01 Kenichi Handa <handa@m17n.org>
13256
13257 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
13258
132592008-02-01 Kenichi Handa <handa@m17n.org>
13260
13261 * coding.c (Fdefine_coding_system_internal)
13262 (Fdefine_coding_system_alias): Avoid a duplicated element in
13263 Vcoding_system_alist.
13264
132652008-02-01 Kenichi Handa <handa@m17n.org>
13266
13267 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
13268
13269 * coding.c (Qcoding_system_define_form): New variable.
13270 (syms_of_coding): Intern and staticpro it.
13271 (Fcoding_system_p): Check Qcoding_system_define_form.
13272 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
13273
13274 * coding.h (CODING_SYSTEM_P): If ID is not available, call
13275 Fcoding_system_p.
13276 (CHECK_CODING_SYSTEM): If ID is not available, call
13277 Fcheck_coding_system.
13278 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
13279 Try also Fcheck_coding_system.
13280
132812008-02-01 Kenichi Handa <handa@m17n.org>
13282
13283 * coding.c (code_conversion_restore): GCPRO arg.
13284
132852008-02-01 Kenichi Handa <handa@m17n.org>
13286
13287 * character.c (lisp_string_width): Check multibyteness of STRING.
13288
132892008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13290
13291 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
13292 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
13293 (decode_mac_font_name): Use decode_coding_c_string instead of
13294 decode_coding.
13295 (x_load_font): Initialize fontp->fontset to -1. Set
13296 fontp->encoding_type.
13297
132982008-02-01 Kenichi Handa <handa@m17n.org>
13299
13300 * search.c (search_buffer): Give up BM search on case-fold-search
13301 if one of a target character has a case-equivalence of different
13302 byte length even if that target charcter is an ASCII.
13303 (simple_search): Fix calculation of byte length of matched text.
13304 (boyer_moore): Fix handling of case-equivalent multibyte characters.
13305
133062008-02-01 Kenichi Handa <handa@m17n.org>
13307
13308 * coding.c (decode_coding): Fix handling of invalid bytes.
13309
133102008-02-01 Kenichi Handa <handa@m17n.org>
13311
13312 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
13313 Unicode characters.
13314
133152008-02-01 Kenichi Handa <handa@m17n.org>
13316
13317 * coding.c (encode_coding_object): If a pre-write-conversion
13318 function makes a new buffer, kill it.
13319
133202008-02-01 Kenichi Handa <handa@m17n.org>
13321
13322 * coding.c (QCascii_compatible_p): New variable.
13323 (syms_of_coding): Initialize it.
13324 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
13325 calling string_char.
13326 (record_conversion_result): Add `default:' case.
13327 (coding_charset_list): Delete unused variable `coding_type'.
13328 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
13329 property in the plist of the coding system.
13330 (Fcoding_system_put): Check QCascii_compatible_p.
13331
133322008-02-01 Miles Bader <miles@gnu.org>
13333
13334 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13335 removed calculation of frame `f', as it's now used.
13336
133372008-02-01 Kenichi Handa <handa@m17n.org>
13338
13339 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13340 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13341 (UNIDATA): New variable.
13342 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13343 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13344 $(RUN_TEMACS) unconditionally.
13345
133462008-02-01 Kenichi Handa <handa@m17n.org>
13347
13348 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13349 (admindir): New variable.
13350 ($(lispsource)international/charprop.el): New target.
13351
133522008-02-01 Miles Bader <miles@gnu.org>
13353
13354 * character.c (chars-in-region): Remove obsolete function.
13355 (syms_of_character): Remove its initialization.
13356
133572008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13358
13359 * w32select.c (validate_coding_system)
13360 (setup_windows_coding_system): New functions.
13361 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13362 setup_windows_coding_system.
13363 (setup_config, Fw32_get_clipboard_data): Use
13364 validate_coding_system.
13365 (Fx_selection_exists): Move call to setup_config to a place
13366 where signals are allowed.
13367
13368 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13369 (Fcheck_coding_system): Add declarations.
13370
133712008-02-01 Kenichi Handa <handa@m17n.org>
13372
13373 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13374
133752008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13376
13377 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13378 string as the second argument for x_new_fontset.
13379
133802008-02-01 Kenichi Handa <handa@m17n.org>
13381
13382 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13383 (encode_coding_object): Use safe_call instead of call2.
13384
133852008-02-01 Kenichi Handa <handa@m17n.org>
13386
13387 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13388
13389 * Makefile.in (lisp): Include charprop.el.
13390
133912008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13392
13393 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13394 Not sure if it's unnecessary.
13395
133962008-02-01 Steven Tamm <steventamm@mac.com>
13397
13398 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13399 some possibly unnecessary fontset checking code that crashed
13400 when creating a new frame.
13401
134022008-02-01 Kenichi Handa <handa@m17n.org>
13403
13404 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13405 lookup_face.
13406
13407 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13408
13409 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13410
134112008-02-01 Kenichi Handa <handa@m17n.org>
13412
13413 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13414 (coding_charset_list): New function.
13415
13416 * coding.h (coding_charset_list): Extern it.
13417
134182008-02-01 Kenichi Handa <handa@m17n.org>
13419
13420 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13421 concatenation of family and registry.
13422
134232008-02-01 Kenichi Handa <handa@m17n.org>
13424
13425 * character.h (BYTE8_STRING): Fix typo.
13426
13427 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13428 string to multibyte (sync to HEAD).
13429
13430 * casefiddle.c (casify_region): Handle changes in byte-length
13431 using replace_range_2 (sync to HEAD).
13432
134332008-02-01 Andreas Schwab <schwab@suse.de>
13434
13435 * chartab.c (map_char_table): GCPRO table and arg.
13436
134372008-02-01 Kenichi Handa <handa@m17n.org>
13438
13439 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13440 already at limit.
13441
134422008-02-01 Kenichi Handa <handa@m17n.org>
13443
13444 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13445 instead of fast_c_string_match_ignore_case.
13446 (find_font_encoding): Change argument to Lisp_Object. Use
13447 fast_string_match_ignore_case instead of
13448 fast_c_string_match_ignore_case. Change caller.
13449
134502008-02-01 Kenichi Handa <handa@m17n.org>
13451
13452 * xdisp.c (get_next_display_element): In unibyte case, decide to
13453 display in octal form by checking a character by
13454 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13455
13456 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13457
13458 * character.c (unibyte_has_multibyte_table): New variable.
13459
13460 * character.h (unibyte_has_multibyte_table): Extern it.
13461 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13462
134632008-02-01 Kenichi Handa <handa@m17n.org>
13464
13465 * coding.c (encode_coding_iso_2022): Fix handling of charset
13466 annotation.
13467
134682008-02-01 Kenichi Handa <handa@m17n.org>
13469
13470 * coding.c (setup_coding_system): If coding_system is nil, use
13471 Qundecided.
13472 (Fterminal_coding_system): Return nil if terminal coding system is
13473 `undecided'.
13474 (syms_of_coding): Define coding-system `undecided' here. Setup
13475 terminal_coding as `undecided'.
13476
134772008-02-01 Kenichi Handa <handa@m17n.org>
13478
13479 * xdisp.c (message_dolog, set_message_1): Call
13480 unibyte_char_to_multibyte with arg type int.
13481
13482 * lread.c (read1): Fix reading of a char-table.
13483
13484 * print.c (print_object): Include sub char-table in circularities
13485 detection.
13486
134872008-02-01 Kenichi Handa <handa@m17n.org>
13488
13489 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13490 Append the found sequences in car of ARGS instead of prepending.
13491
134922008-02-01 Kenichi Handa <handa@m17n.org>
13493
13494 * fileio.c (report_file_error): Make a unibyte string from
13495 strerror (errorno).
13496 (Fsubstitute_in_file_name): Fix the arg to
13497 unibyte_char_to_multibyte. It is evaluated twice.
13498
134992008-02-01 Kenichi Handa <handa@m17n.org>
13500
13501 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13502
135032008-02-01 Kenichi Handa <handa@m17n.org>
13504
13505 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13506 BOM is not found.
13507 (detect_coding, detect_coding_system): Optimization for ISO-2022
13508 when no 8-bit data is found.
13509
135102008-02-01 Jason Rumney <jasonr@gnu.org>
13511
13512 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13513
135142008-02-01 Kenichi Handa <handa@m17n.org>
13515
13516 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13517 CHARS.
13518
135192008-02-01 Steven Tamm <steventamm@mac.com>
13520
13521 * macterm.c (mac_encode_char): Add charset argument and update
13522 to use encoding_type.
13523 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13524 switch to pure fontset.
13525 (decode_mac_font_name): Temporarily remove decoding.
13526 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13527 (x_load_font): Temporarily remove encoding.
13528
135292008-02-01 Kenichi Handa <handa@m17n.org>
13530
13531 * xfaces.c (Fface_font): If frame is not on a window system,
13532 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13533 refer to face->font.
13534 (split_font_name_into_vector, build_font_name_from_vector)
13535 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13536 when HAVE_WINDOW_SYSTEM is defined.
13537
135382008-02-01 Kenichi Handa <handa@m17n.org>
13539
13540 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13541 (x_produce_glyphs): Fix setting of members of cmp in case
13542 cmp->glyph_len is zero.
13543
13544 * fontset.c (Fset_fontset_font): Fix docstring.
13545 (Ffontset_info): Make it backward compatible. New arg ALL.
13546
135472008-02-01 Kim F. Storm <storm@cua.dk>
13548
13549 * process.c (read_process_output): Grow decoding_buf when needed;
13550 this could cause a crash in allocate_string and compact_small_strings.
13551
135522008-02-01 Kenichi Handa <handa@m17n.org>
13553
13554 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13555
135562008-02-01 Kenichi Handa <handa@m17n.org>
13557
13558 * coding.c (setup_coding_system): Set coding->common_flags
13559 correctly for raw-text.
13560 (consume_chars): On encoding unibyte text by raw-text, don't check
13561 multibyte form.
13562 (encode_coding): On encoding by raw-text, never use translation tables.
13563
13564 * fileio.c (e_write): Short cut for the case of no encoding.
13565
135662008-02-01 Kenichi Handa <handa@m17n.org>
13567
13568 * coding.c (detect_coding, detect_coding_system): Delete unused
13569 variables.
13570
135712008-02-01 Kenichi Handa <handa@m17n.org>
13572
13573 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13574 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13575
135762008-02-01 Kenichi Handa <handa@m17n.org>
13577
13578 * coding.c (Ffind_coding_systems_region_internal): Include
13579 raw-text and no-conversion in the result.
13580
135812008-02-01 Kenichi Handa <handa@m17n.org>
13582
13583 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13584 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13585 FONT_DEF.
13586 (font_def_arg, add_arg, from_arg, to_arg): New args.
13587 (set_fontset_font): Change argument.
13588 (Fset_fontset_font): Fix for the case that TARGET is a script
13589 name and charset name.
13590 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13591
135922008-02-01 Kenichi Handa <handa@m17n.org>
13593
13594 * fontset.c (fontset_font): Rename from fontset_face. Change return
13595 value.
13596 (face_suitable_for_char_p, face_for_char): Adjust for the change
13597 of fontset_font.
13598 (make_fontset_for_ascii_face): Fix setting of the fontset element
13599 for ASCII.
13600 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13601 to get a font name.
13602 (Ffontset_info): Adjust for the change of fontset_font.
13603
13604 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13605
13606 * character.h (LEADING_CODE_LATIN_1_MIN)
13607 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13608
136092008-02-01 Kenichi Handa <handa@m17n.org>
13610
13611 * editfns.c (check_translation): New function.
13612 (Ftranslate_region_internal): Handle M:N mapping.
13613
136142008-02-01 Kenichi Handa <handa@m17n.org>
13615
13616 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13617
136182008-02-01 Kenichi Handa <handa@m17n.org>
13619
13620 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13621 goto invalid_code.
13622 (decode_coding_iso_2022): Fix handling of invalid designation.
13623
13624 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13625 after calling code_conversion_save.
13626
136272008-02-01 Kenichi Handa <handa@m17n.org>
13628
13629 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13630
13631 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13632
13633 * fontset.c: Include "intervals.h".
13634 (fontset_face): Fix comparing of Lisp_Objects.
13635 (free_face_fontset, new_fontset_from_font_name): Fix
13636 Lisp_Object/int mixup.
13637
13638 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13639
13640 * coding.c: Add many prototypes for static functions.
13641 (get_translation_table): Allow max_lookup to be NULL.
13642 (decode_coding, Ffind_coding_systems_region_internal)
13643 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13644 get_translation_table with max_lookup NULL.
13645
136462008-02-01 Kenichi Handa <handa@m17n.org>
13647
13648 * coding.c (get_translation_table): Declare it as Lisp_Object.
13649 (LOOKUP_TRANSLATION_TABLE): New macro.
13650 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13651 instead of CHAR_TABLE_REF.
13652
136532008-02-01 Kenichi Handa <handa@m17n.org>
13654
13655 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13656 annotation data format.
13657 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13658 Change arguments FROM and TO to single argument NCHARS. Change caller.
13659 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13660 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13661 (decode_coding_ccl, decode_coding_charset): Pay attention to
13662 coding->charbuf_used.
13663 (get_translation): New function.
13664 (produce_chars): New arguments translation_table and last_block.
13665 Translate characters here. Return number of carryover chars.
13666 Change caller.
13667 (produce_composition): New argument pos. Change caller.
13668 Adjust for the change of annotation data format.
13669 (produce_charset, produce_annotation): Likewise.
13670 (decode_coding, encode_coding): Don't call translate_chars.
13671 (consume_chars): New arg translation_table. Change caller.
13672 (translate_chars): Delete.
13673 (syms_of_coding): Make translation-table's number of extra slots 2.
13674
136752008-02-01 Kenichi Handa <handa@m17n.org>
13676
13677 * search.c (simple_search): Fix setting this_pos_byte in backward
13678 search.
13679
13680 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13681 byte sequence.
13682 (detect_coding_ccl): Fix setting of the variable valids.
13683
136842008-02-01 Kenichi Handa <handa@m17n.org>
13685
13686 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13687
13688 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13689
13690 * editfns.c (Ftranslate_region_internal): Rename from
13691 Ftranslate_region. Accept a char-table in TABLE.
13692 (syms_of_editfns): Defsubr Stranslate_region_internal.
13693
13694 * xfaces.c (set_lface_from_font_name): If a font is specified for
13695 a frame, generate a fontset from the font.
13696 (build_scalable_font_name): If the scalable font is requested for
13697 a specific size, don't change that size.
13698 (try_font_list): Try a scalable font also in the case that a
13699 pattern string is specified.
13700
137012008-02-01 Kenichi Handa <handa@m17n.org>
13702
13703 * xfaces.c (Fface_font): New optional arg CHARACTER.
13704
137052008-02-01 Kenichi Handa <handa@m17n.org>
13706
13707 * charset.h (CHARSET_OFFSET): New macro.
13708
137092008-02-01 Kenichi Handa <handa@m17n.org>
13710
13711 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13712
13713 * fontset.c (fontset_face): Handle the case that repertory is a
13714 char-table.
13715 (find_font_encoding): Return nil for unknown encoding.
13716 (Fset_fontset_font): Ignore a font of unknown encoding.
13717
137182008-02-01 Kenichi Handa <handa@m17n.org>
13719
13720 * keymap.c (describe_vector): Handle default value of a char table.
13721
13722 * fontset.c (fontset_face): Handle fallback fonts correctly.
13723 (Ffontset_info): Return infomation about fallback fonts.
13724
137252008-02-01 Kenichi Handa <handa@m17n.org>
13726
13727 * fontset.c (FONTSET_DEFAULT): New macro.
13728 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13729 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13730 the case that it is nil.
13731 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13732 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13733
13734 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13735 subset or superset.
13736
137372008-02-01 Kenichi Handa <handa@m17n.org>
13738
13739 * emacs.c (main): Call init_charset after syms_of_XXX.
13740
13741 * charset.c (Vcharset_map_directory): Delete.
13742 (Vcharset_map_path): New variable.
13743 (load_charset_map_from_file): Use Vcharset_map_path instead.
13744 (init_charset): Initialize Vcharset_map_path.
13745 (syms_of_charset): Delete declaration of "charset-map-directory",
13746 add declaration of "charset-map-path".
13747
137482008-02-01 Kenichi Handa <handa@m17n.org>
13749
13750 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13751 ASCII only string.
13752
13753 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13754
13755 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13756 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13757
137582008-02-01 Kenichi Handa <handa@m17n.org>
13759
13760 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13761
13762 * coding.c (QCmnemonic, QCdefalut_char)
13763 (QCdecode_translation_table, QCencode_translation_table)
13764 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13765 (get_translation_table): Return a list of translation tables if
13766 necessary.
13767 (decode_coding): Call get_translation_table with ENCODEP 0.
13768 (char_encodable_p): If translation_table is non-nil, always call
13769 translate_char.
13770 (Fdefine_coding_system_internal): Accept list of translation
13771 tables as :encode-translation-table and :decode-translation-table.
13772 (Fcoding_system_put): New function.
13773 (syms_of_coding): Declare new symbols. Defsubr
13774 Scoding_system_put.
13775 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13776 typically JISX0212.
13777
13778 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13779 when the charset is superset type.
13780
13781 * character.c (translate_char): Accept list of translation tables.
13782
137832008-02-01 Kenichi Handa <handa@m17n.org>
13784
13785 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13786 (CODING_ATTR_TRANS_TBL): New macro.
13787
13788 * coding.c (get_translation_table): New function.
13789 (translate_chars): Fix the bug of skipping annotation data.
13790 (decode_coding, encode_coding): Utilize get_translation_table.
13791 (char_encodable_p, Funencodable_char_position): Translate char if
13792 necessary.
13793 (Ffind_coding_systems_region_internal)
13794 (Fcheck_coding_systems_region): Setup translation table for encode
13795 in a coding system attribute vector in advance.
13796 (Fdefine_coding_system_internal): Allow a symbol as translation
13797 table. For shift-jis type coding system, allow 4th charset.
13798
137992008-02-01 Kenichi Handa <handa@m17n.org>
13800
13801 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13802
13803 * xdisp.c (get_next_display_element): Pass -1 as POS to
13804 FACE_FOR_CHAR if displaying a C-string.
13805
138062008-02-01 Kenichi Handa <handa@m17n.org>
13807
13808 * composite.c (get_composition_id): Handle xoff and yoff in a
13809 composition rule.
13810
13811 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13812 (struct composition): New member lbearing and rbearing.
13813
13814 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13815 (x_get_glyph_overhangs): Handle a composition glyph.
13816 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13817
13818 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13819 composition glyph.
13820
138212008-02-01 Kenichi Handa <handa@m17n.org>
13822
13823 * print.c: Include charset.h.
13824 (Vprint_charset_text_property): New variable.
13825 (Qdefault): Extern it.
13826 (PRINT_STRING_NON_CHARSET_FOUND)
13827 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13828 (print_check_string_result): New variable.
13829 (print_check_string_charset_prop): New function.
13830 (print_prune_charset_plist): New variable.
13831 (print_prune_string_charset): New function.
13832 (print_object): Call print_prune_string_charset if
13833 Vprint_charset_text_property is not t.
13834 (print_interval): Print nothing if interval->plist is nil.
13835 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13836 variable. Init and staticpro print_prune_charset_plist.
13837
138382008-02-01 Kenichi Handa <handa@m17n.org>
13839
13840 * fontset.c (new_fontset_from_font_name): Use the specified font
13841 for all characters in the new fontset.
13842
13843 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13844 OBJECT args.
13845
13846 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13847 OBJECT args for composition too.
13848
13849 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13850 OBJECT args.
13851
138522008-02-01 Kenichi Handa <handa@m17n.org>
13853
13854 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13855
13856 * fontset.c (reorder_font_vector): Adjust for the change of
13857 FONT_DEF format.
13858 (fontset_face): New arg id. Change caller.
13859 (face_for_char): New args pos and object.
13860 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13861 (fs_query_fontset): Check NAME by Fassoc too.
13862 (Fset_fontset_font): Allow non-XLFD font name.
13863 (Ffontset_info): Adjust for the change of FONT_DEF format.
13864
13865 * fontset.h (face_for_char): Adjust prototype.
13866
13867 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13868 (append_space, extend_face_to_end_of_line)
13869 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13870 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13871
13872 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13873 POS and OBJECT args.
13874
13875 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13876 POS and OBJECT args.
13877
138782008-02-01 Jason Rumney <jasonr@gnu.org>
13879
13880 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13881 of GlobalAlloc'ed memory.
13882
138832008-02-01 Kenichi Handa <handa@m17n.org>
13884
13885 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13886
13887 * charset.h (charset_table_used): Delete extern.
13888
13889 * charset.c (charset_table_used): Make it static.
13890 (map_charset_chars): Fix args to c_function with.
13891
13892 * chartab.c (map_sub_char_table_for_charset): Fix args to
13893 c_function with.
13894
13895 * coding.h (enum coding_result_code): Delete
13896 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13897
13898 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13899 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13900 (Vlast_code_conversion_error): New variables.
13901 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13902 (ONE_MORE_BYTE): Record error if any instead of signaling an
13903 error. If non-ASCII multibyte char is found, return the negative
13904 value of the code. All callers changed to check it.
13905 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13906 (record_conversion_result): New function. Change all codes setting
13907 coding->result to call this function.
13908 (detect_coding_utf_8, decode_coding_utf_8)
13909 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13910 Don't use the local variable incomplete.
13911 (emacs_mule_char): Change the second arg to `const'.
13912 (decode_coding): Fix of flushing out unprocessed data.
13913 (make_conversion_work_buffer): Fix making of a work buffer.
13914 (decode_coding_object): Return coding->dst_object.
13915
13916 * fontset.c (set_fontset_font): Fix args.
13917
13918 * lisp.h (CHARACTERBITS): Define as 22.
13919
13920 * process.c (send_process): Be sure to set coding->src_multibyte.
13921
13922 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13923
139242008-02-01 Kenichi Handa <handa@m17n.org>
13925
13926 * xdisp.c (handle_auto_composed_prop): Give limit to
13927 Fnext_single_char_property_change.
13928
139292008-02-01 Kenichi Handa <handa@m17n.org>
13930
13931 * composite.c (syms_of_composite): Don't make the composition hash
13932 table weak.
13933
13934 * fontset.c (Fset_fontset_font): Fix docstring.
13935
13936 * lisp.h (detect_coding_system): Adjust prototype.
13937
13938 * fileio.c (kill_workbuf_unwind): Delete this function.
13939 (Finsert_file_contents): Adjust the call of detect_coding_system.
13940 Get conversion_buffer by code_conversion_save. Use the macro
13941 CODING_MAY_REQUIRE_DECODING. After decoding, update
13942 coding_system.
13943
13944 * coding.h (make_conversion_work_buffer): Delete extern.
13945 (code_conversion_save): Extern it.
13946
13947 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13948 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13949 (decode_coding_utf_8): Don't do eol converion.
13950 (detect_coding_utf_16): Check coding->src_chars, not
13951 coding->src_bytes. Add heuristics for those that have no signature.
13952 (decode_coding_emacs_mule, decode_coding_iso_2022)
13953 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13954 Don't do eol converion.
13955 (adjust_coding_eol_type): Return a new coding system.
13956 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13957 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13958 each change.
13959 (decode_coding): Pay attention to undo_list. Do eol conversion for
13960 all types of coding-systems (if necessary).
13961 (Vcode_conversion_work_buf_list): Delete it.
13962 (Vcode_conversion_reused_workbuf): Rename from
13963 Vcode_conversion_reused_work_buf.
13964 (Vcode_conversion_workbuf_name): New variable.
13965 (reused_workbuf_in_use): New variable.
13966 (make_conversion_work_buffer): Delete the arg DEPTH.
13967 (code_conversion_restore): Change argument to cons.
13968 (code_conversion_save): Delete the argument BUFFER. Change callers.
13969 (detect_coding_system): New argument src_chars. Change callers.
13970 Fix for utf-16 detection.
13971 (init_coding_once): Don't use ISO_carriage_return.
13972 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13973 reused_workbuf_in_use.
13974
139752008-02-01 Kenichi Handa <handa@m17n.org>
13976
13977 * keymap.c (store_in_keymap): Pay attention to the case that idx
13978 is a cons specifying a character range.
13979
139802008-02-01 Kenichi Handa <handa@m17n.org>
13981
13982 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13983 HANDLED_RECOMPUTE_PROPS.
13984
13985 * coding.c (Fdefine_coding_system_internal): Fix checking of
13986 ascii compatibility.
13987
139882008-02-01 Kenichi Handa <handa@m17n.org>
13989
13990 * charset.c (find_charsets_in_text): Delete unused locale variable.
13991 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13992
13993 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13994 Resync charset_list to Vemacs_mule_charset_list.
13995
13996 * keymap.c (store_in_keymap): Pay attention to the case that idx
13997 is a cons specifying a character range.
13998
139992008-02-01 Kenichi Handa <handa@m17n.org>
14000
14001 * composite.c (update_compositions): Bind inhibit-read-only, etc
14002 to t before calling remove-list-of-text-properties.
14003
14004 * print.c (print_object): Always print ASCII chars as is.
14005
140062008-02-01 Kenichi Handa <handa@m17n.org>
14007
14008 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14009
14010 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14011 is a char table.
14012
140132008-02-01 Kenichi Handa <handa@m17n.org>
14014
14015 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14016
140172008-02-01 Kenichi Handa <handa@m17n.org>
14018
14019 * xfaces.c (set_lface_from_font_name): Fix for the case that
14020 FONTNAME is not fontset name.
14021
140222008-02-01 Kenichi Handa <handa@m17n.org>
14023
14024 * fns.c (base64_encode_1): Fix previous change.
14025
140262008-02-01 Kenichi Handa <handa@m17n.org>
14027
14028 * fontset.c (set_fontset_font): New function.
14029 (Fset_fontset_font): If a font is specified for a charset, use
14030 map_charset_chars to store the font spec in a fontset.
14031
140322008-02-01 Kenichi Handa <handa@m17n.org>
14033
14034 * fontset.c (fontset_face): Create a fallback fontset on demand.
14035 (make_fontset): Don't create a fallback fontset here.
14036 (free_face_fontset): Free a fallback fontset (if any) too.
14037 (n_auto_fontsets): Delete this variable.
14038 (auto_fontset_alist): New variable.
14039 (new_fontset_from_font_name): Check auto_fontset_alist.
14040 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14041 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14042 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14043 Defsubr Sfontset_list_all.
14044
140452008-02-01 Kenichi Handa <handa@m17n.org>
14046
14047 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14048
140492008-02-01 Kenichi Handa <handa@m17n.org>
14050
14051 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14052
140532008-02-01 Kenichi Handa <handa@m17n.org>
14054
14055 * editfns.c (Fgoto_char): Fix docstring.
14056
140572008-02-01 Kenichi Handa <handa@m17n.org>
14058
14059 * insdel.c (insert_from_gap): Adjust intervals correctly.
14060
140612008-02-01 Jason Rumney <jasonr@gnu.org>
14062
14063 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14064 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14065 (w32_initialize): Try to load it.
14066 (x_get_font_repertory): Use it if available.
14067 (w32_encode_char): Add shortcut for unicode output.
14068
14069 * w32fns.c (w32_load_system_font): Default charset to -1.
14070 (x_to_w32_charset): Match all fonts for unicode.
14071 (w32_to_x_charset): New parameter matching. Don't return partial
14072 or wildcard charsets.
14073 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14074 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14075 (w32_to_x_font): Match charset to real charset.
14076 (enum_font_cb2): Always list unicode versions.
14077
14078 * makefile.w32-in (temacs): Increase EMHEAP.
14079
140802008-02-01 Jason Rumney <jasonr@gnu.org>
14081
14082 * w32term.c (w32_encode_char): New charset parameter.
14083 font_info.encoding becomes encoding_type.
14084 (x_get_font_repertory): New function. Warning: stub only!
14085 (x_new_font): Return quickly if font already set.
14086 (x_new_fontset): fontsetname parameter is Lisp_Object.
14087 Use new fs_query_fontset. Try new_fontset_from_font_name.
14088 Use fontset_name for return value.
14089
14090 * w32term.h: Declare x_get_font_repertory.
14091
14092 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14093 place of find_charset_in_text. Use encode_coding_object in place
14094 of encode_coding.
14095 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14096 decode_coding.
14097
14098 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14099 of x_new_fontset.
14100 (w32_load_system_font): Initialize charset as unicode.
14101 font_info.encoding becomes encoding_type.
14102 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14103 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14104 (syms_of_w32fns): Set get_font_repertory_func.
14105
14106 * w32console.c: Include character.h. Use terminal_encode_buffer
14107 from term.c.
14108 (write_glyphs): Use new version of encode_terminal_code. Use
14109 encode_coding_object in place of encode_coding.
14110
14111 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14112 encoding becomes encoding_type.
14113
14114 * term.c (terminal_encode_buffer): Make externally visible.
14115
14116 * makefile.w32-in: Add character.h dependancies.
14117 (character.o, chartab.o): New targets.
14118
141192008-02-01 Kenichi Handa <handa@m17n.org>
14120
14121 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14122 CODING_ID_EOL_TYPE.
14123
141242008-02-01 Andreas Schwab <schwab@suse.de>
14125
14126 * coding.c (produce_chars): Revert last change.
14127
141282008-02-01 Kenichi Handa <handa@m17n.org>
14129
14130 * charset.h (charset_unicode): Extern it.
14131
14132 * charset.c (string_xstring_p): Check by (C >= 0x100).
14133 (find_charsets_in_text): Change format of the arc CHARSETS. New
14134 arg MULTIBYTE.
14135 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14136 change of find_charsets_in_text.
14137 (Fsplit_char): Fix doc. Never return unknown.
14138
14139 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14140
14141 * coding.c (Fdefine_coding_system_alias): Update
14142 Vcoding_system_list.
14143
14144 * fontset.c (load_font_get_repertory): Pay attention to the case
14145 that ENCODING of a font is specified by a char-table.
14146
14147 * xterm.c (x_get_font_repertory): Handle the case that the
14148 encoding of font is other than Unicode.
14149
141502008-02-01 Kenichi Handa <handa@m17n.org>
14151
14152 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14153 if a character is encodable by the terminal coding system. If
14154 not, produces proper number of `?'s. Update
14155 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14156 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14157
141582008-02-01 Kenichi Handa <handa@m17n.org>
14159
14160 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14161 variables.
14162 (encode_terminal_code): Change argument. Encode multiple
14163 characters at once. Store the result of encoding in
14164 terminal_encode_buffer.
14165 (write_glyphs, insert_glyphs): Adjust for the change of
14166 encode_terminal_code.
14167 (term_init): Initialize terminal_encode_buffer and
14168 terminal_encode_buf_size.
14169
14170 * coding.c (consume_chars): If coding->src_object is nil, don't
14171 check annotation.
14172
141732008-02-01 Kenichi Handa <handa@m17n.org>
14174
14175 * character.c (char_string): Use ASCII_CHAR_P instead of
14176 SINGLE_BYTE_CHAR_P.
14177
141782008-02-01 Kenichi Handa <handa@m17n.org>
14179
14180 * xdisp.c (handle_auto_composed_prop): Check if the last
14181 characters of auto-composed region is newly composed with the
14182 following characters.
14183 (handle_composition_prop): Fix checking of point being inside
14184 composition.
14185
141862008-02-01 Kenichi Handa <handa@m17n.org>
14187
14188 * fns.c (concat): Don't change multibyteness of the result by
14189 concatenating an 8-bit character.
14190
14191 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14192 multibyteness of the result when newelt is an 8-bit character.
14193
141942008-02-01 Dave Love <fx@gnu.org>
14195
14196 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14197 EMACS_INT.
14198
14199 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14200
14201 * xfaces.c (face_numeric_value): Declare dim size_t.
14202 (Finternal_lisp_face_equal_p): Remove unused f.
14203
14204 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14205 (MATRIX_ROW): Remove unused vars.
14206 (draw_glyphs, x_insert_glyphs, fast_find_position)
14207 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14208 byte/char counts.
14209
14210 * regex.c (regex_compile): Remove unused var.
14211
14212 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14213
14214 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14215 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14216
14217 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14218
14219 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14220
14221 * fileio.c (Fwrite_region): Remove unused var.
14222
14223 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14224 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14225
14226 * composite.c (Fremove_list_of_text_properties): Declare.
14227
14228 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14229 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14230 (coding_inherit_eol_type): Remove unused attrs.
14231 (detect_coding): Cast arg of detect_eol.
14232
14233 * charset.c (syms_of_charset): Remove unused var p.
14234 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14235 byte/char counts.
14236
14237 * casetab.c (set_case_table): Remove unused var.
14238
14239 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14240 unused vars.
14241
142422008-02-01 Dave Love <fx@gnu.org>
14243
14244 * xterm.c (x_bitmap_mask): Declare.
14245
142462008-02-01 Dave Love <fx@gnu.org>
14247
14248 * xterm.c (x_term_init): Fix type error.
14249
14250 * lisp.h: Add Funibyte_char_to_multibyte.
14251
14252 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
14253 (Fset_coding_system_priority): Doc fix.
14254
14255 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
14256
14257 * indent.c (check_composition): Make start and end EMACS_INT.
14258
14259 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
14260
14261 * xdisp.c (handle_composition_prop, check_point_in_composition):
14262 Make buffer positions EMACS_INT.
14263
14264 * composite.c (find_composition, run_composition_function)
14265 (update_compositions, Ffind_composition_internal): Make buffer
14266 positions EMACS_INT.
14267
14268 * composite.h (find_composition, update_compositions): Make
14269 position args EMACS_INT.
14270
14271 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
14272
14273 * intervals.c (get_property_and_range):
14274 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
14275
14276 * unexalpha.c: Don't include varargs.h.
14277
142782008-02-01 Dave Love <fx@gnu.org>
14279
14280 * coding.h (ENCODE_UTF_8): New.
14281
14282 * Makefile.in (gtkutil.o): Depend on coding.h.
14283
14284 * coding.c (Fset_coding_system_priority): Doc fix.
14285
142862008-02-01 Kenichi Handa <handa@m17n.org>
14287
14288 * fileio.c (Finsert_file_contents): Call setup_coding_system in
14289 the case of auto saving.
14290
142912008-02-01 Andreas Schwab <schwab@suse.de>
14292
14293 * chartab.c (map_char_table, map_char_table_for_charset): Protect
14294 `range' from GC.
14295
142962008-02-01 Kenichi Handa <handa@m17n.org>
14297
14298 * coding.c (decode_coding_sjis): Check bytes more rigidly.
14299
143002008-02-01 Kenichi Handa <handa@m17n.org>
14301
14302 * fileio.c (choose_write_coding_system): Return a decided coding system.
14303 (Fwrite_region): Set Vlast_coding_system_used to the return value
14304 of choose_write_coding_system.
14305
143062008-02-01 Kenichi Handa <handa@m17n.org>
14307
14308 * charset.c (Fset_charset_priority): Pay attention to duplicated
14309 arguments.
14310
14311 * coding.c (QCcategory): New variable.
14312 (syms_of_coding): Defsym it. Set all elements of
14313 Vcoding_category_table and their symbol values.
14314 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
14315 coding-category-XXX, and coding-category-list.
14316 (Fdefine_coding_system_internal): Add category in the plist.
14317
143182008-02-01 Kenichi Handa <handa@m17n.org>
14319
14320 * callproc.c (Fcall_process): Handle carryover correctly.
14321
14322 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
14323 (raw_text_coding_system): Check NILP (coding_system).
14324 (coding_inherit_eol_type): Check NILP (coding_system) and
14325 NILP (parent).
14326 (consume_chars): Fix for the case of raw-text.
14327
14328 * process.c (read_process_output): Handle carryover correctly.
14329
143302008-02-01 Dave Love <fx@gnu.org>
14331
14332 * regex.c (re_search_2): Fix last change.
14333
143342008-02-01 Kenichi Handa <handa@m17n.org>
14335
14336 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14337 target_multibyte. Even in a unibyte case, return a converted
14338 multibyte char.
14339 (GET_CHAR_AFTER): New macro.
14340 (PATFETCH): Translate via multibyte char.
14341 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14342 (SETUP_MULTIBYTE_RANGE): New macro.
14343 (regex_compile): Setup compiled code so that its multibyteness
14344 matches that of a target. Fix the handling of "[X-YZ]" using
14345 SETUP_MULTIBYTE_RANGE.
14346 (analyse_first) <charset>: For filling fastmap for all multibyte
14347 characters, don't check by BASE_LEADING_CODE_P.
14348 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14349 the same as RE_MULTIBYTE_P (bufp) now.
14350 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14351 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14352 (TRANSLATE_VIA_MULTIBYTE): New macro.
14353 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14354 It is the same as RE_MULTIBYTE_P (bufp) now.
14355 <exactn>: Translate via multibyte.
14356 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14357 translate it.
14358 <charset, charset_not>: Fetch a character by
14359 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14360 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14361 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14362 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14363 by GET_CHAR_AFTER.
14364 (bcmp_translate): Likewise.
14365
14366 * search.c (compile_pattern): Check the member target_multibyte,
14367 not the member multibyte of buf.
14368
14369 * lread.c (read1): While reading a string, set force_singlebyte
14370 and force_multibyte correctly.
14371
14372 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14373 up of unibyte_to_multibyte_table.
14374
143752008-02-01 Kenichi Handa <handa@m17n.org>
14376
14377 * coding.c (setup_coding_system): If coding has
14378 post-read-conversion or pre-write-conversion, set
14379 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14380 respectively.
14381 (decode_coding_gap): Run post-read-conversion if any.
14382
14383 * fileio.c (Finsert_file_contents): Even if we read into a
14384 unibyte buffer, check if we must decode the result or not.
14385
143862008-02-01 Kenichi Handa <handa@m17n.org>
14387
14388 * coding.c (make_conversion_work_buffer): Change the work buffer
14389 name to the same one as that of Emacs 21.
14390
143912008-02-01 Kenichi Handa <handa@m17n.org>
14392
14393 * coding.h (make_conversion_work_buffer): Adjust prototype.
14394 (code_conversion_restore): Don't extern it.
14395
14396 * coding.c (detected_mask): Delete unused variable.
14397 (decode_coding_iso_2022): Pay attention to the byte sequence of
14398 CTEXT extended segment, and retain those bytes as is.
14399 (decode_coding_ccl): Delete unused variable `valids'.
14400 (setup_coding_system): Delete unused variable `category'.
14401 (consume_chars): Delete unused variable `category'. Make it work
14402 for non-multibyte case.
14403 (make_conversion_work_buffer): Change argument.
14404 (saved_coding): Delete unused variable.
14405 (code_conversion_restore): Don't check saved_coding->destination.
14406 (code_conversion_save): New function.
14407 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14408 instead of record_unwind_protect.
14409 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14410 (detect_coding_system): Delete unused variable `mask'.
14411 (Fdefine_coding_system_internal): Delete unused variable id.
14412
14413 * fileio.c (kill_workbuf_unwind): New function.
14414 (Finsert_file_contents): On replacing, call
14415 make_conversion_work_buffer with correct args, and call
14416 record_unwind_protect with the first arg kill_workbuf_unwind.
14417
14418 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14419
144202008-02-01 Kenichi Handa <handa@m17n.org>
14421
14422 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14423 (fontset_add): Fix for the case that TO is less than TO1.
14424 (Ffontset_info): Don't use fallback fontset on checking the
14425 default fontset.
14426 (dump_fontset): New function for debugging.
14427
14428 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14429 coding_type is Qcharset.
14430
144312008-02-01 Kenichi Handa <handa@m17n.org>
14432
14433 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14434 (map_char_table): Don't inherit the value from the parent on
14435 initializing VAL. Adjust for the above change.
14436
144372008-02-01 Kenichi Handa <handa@m17n.org>
14438
14439 * coding.c (Qsignature, Qendian): Delete these variables.
14440 (syms_of_coding): Don't initialize them.
14441 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14442 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14443 detect_info->found.
14444 (decode_coding_utf_16): Don't detect BOM here.
14445 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14446 is NOT utf_16_without_bom.
14447 (setup_coding_system): For a coding system of type utf-16, check
14448 if the attribute :endian is Qbig or not (not nil or not), and set
14449 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14450 (detect_coding): If coding type is utf-16 and BOM detection is
14451 required, detect it.
14452 (Fdefine_coding_system_internal): For a coding system of type
14453 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14454
144552008-02-01 Kenichi Handa <handa@m17n.org>
14456
14457 * coding.c (coding_set_source): Fix for the case that the current
14458 buffer is different from coding->src_object.
14459 (decode_coding_object): Don't use the conversion work buffer if
14460 DST_OBJECT is a buffer.
14461
144622008-02-01 Dave Love <fx@gnu.org>
14463
14464 * lread.c (read_emacs_mule_char) [len==2]: Index
14465 emacs_mule_charset correctly.
14466
144672008-02-01 Dave Love <fx@gnu.org>
14468
14469 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14470 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14471 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14472 treated specially.)
14473 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14474 (detected_mask): Remove Big5 bits.
14475
144762008-02-01 Kenichi Handa <handa@m17n.org>
14477
14478 The following changes are to make the font rescaling facility
14479 compatible with Emacs 21.
14480
14481 * xfaces.c (Vface_font_rescale_alist): Rename from
14482 Vface_resizing_fonts.
14483 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14484 (font_rescale_ratio): Rename from font_resizing_ratio.
14485 (split_font_name): Set font->rescale_ratio.
14486 (better_font_p): Pay attention to font->rescale_ratio.
14487 (build_scalable_font_name): Likewise. Change RESX, and RESY
14488 fields.
14489 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14490
144912008-02-01 Kenichi Handa <handa@m17n.org>
14492
14493 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14494 (Qutf_16_le): Remove these variables.
14495 (syms_of_coding): Don't DEFSYM them.
14496 (decode_coding_utf_16): Fix handling of BOM.
14497 (encode_coding_utf_16): Fix handling of BOM.
14498
144992008-02-01 Kenichi Handa <handa@m17n.org>
14500
14501 * fileio.c (Finsert_file_contents): On replacing, before decoding
14502 the file into the work buffer, set point of the work buffer to the end.
14503
145042008-02-01 Dave Love <fx@gnu.org>
14505
14506 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14507
145082008-02-01 Dave Love <fx@gnu.org>
14509
14510 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14511 and fix C types.
14512
145132008-02-01 Kenichi Handa <handa@m17n.org>
14514
14515 * xdisp.c (SKIP_GLYPHS): New macro.
14516 (set_cursor_from_row): Pay attention to string display properties.
14517
14518 * category.c (copy_category_entry): Fix for the case that RANGE
14519 is an integer.
14520
14521 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14522
14523 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14524
145252008-02-01 Kenichi Handa <handa@m17n.org>
14526
14527 * charset.c (Fcharset_id_internal): New function.
14528 (syms_of_charset): Defsubr it.
14529
14530 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14531 with the last arg charset_list acquired from coding.
14532 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14533 the attribute coding_attr_ccl_valids.
14534
14535 * coding.h (enum define_coding_ccl_arg_index): Set the first
14536 member coding_arg_ccl_decoder to coding_arg_max.
14537
14538 * ccl.h (ccl_driver): Adjust prototype.
14539
14540 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14541 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14542 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14543 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14544 last arg Qnil.
14545
145462008-02-01 Kenichi Handa <handa@m17n.org>
14547
14548 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14549 call encode_char.
14550
14551 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14552
145532008-02-01 Dave Love <fx@gnu.org>
14554
14555 * composite.c (syms_of_composite): Make composition_hash_table weak.
14556
145572008-02-01 Kenichi Handa <handa@m17n.org>
14558
14559 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14560 (font_name_registry): Don't extern them.
14561 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14562
14563 * fontset.h (Qfontset): Don't extern it.
14564 (new_fontset_from_font_name): Extern it.
14565
14566 * fontset.c: Give 8 extra slots to fontset objects.
14567 (Qfontset_info): New variable.
14568 (syms_of_fontset): Defsym it.
14569 (FONTSET_FALLBACK): New macro.
14570 (fontset_face): Try also the default fontset.
14571 (make_fontset): Realize a fallback fontset from the default fontset.
14572 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14573 using split_font_name_into_vector and build_font_name_from_vector.
14574 (Fset_fontset_font): Access the elements of font_spec by enum
14575 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14576 name by using split_font_name_into_vector.
14577 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14578 generate a proper font name from the fontset name. Update
14579 Vfontset_alias_alist.
14580 (n_auto_fontsets): New variable.
14581 (new_fontset_from_font_name): New function.
14582 (Ffont_info): Store the information about fonts generated from the
14583 default fontset in the first extra slot of the returned char-table.
14584
14585 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14586 (font_name_registry): Delete function.
14587 (split_font_name_into_vector): New function.
14588 (build_font_name_from_vector): New function.
14589 (font_list): The argument REGISTRY is now a list of registry names.
14590 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14591 specifies an explicit font name, return the name as is. Make a
14592 list of registy names.
14593
14594 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14595 of x_new_fontset.
14596 (Fx_create_frame): Don't call x_new_fontset here. Just use
14597 x_list_fonts to check the existence of fonts.
14598
14599 * xterm.h (x_new_fontset): Adjust prototype.
14600
14601 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14602 string. Use new_fontset_from_font_name to create a fontset from a
14603 font name.
14604
146052008-02-01 Kenichi Handa <handa@m17n.org>
14606
14607 * syntax.c (Vfind_word_boundary_function_table): New name for
14608 Vnext_word_boundary_function_table.
14609 (find-word-boundary-function-table): New name for
14610 next-word-boundary-function-table.
14611
146122008-02-01 Dave Love <fx@gnu.org>
14613
14614 * Makefile.in: Fix some dependencies.
14615
14616 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14617 set it to nil before returning.
14618
14619 * composite.c (update_compositions): Fix type error.
14620
14621 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * xterm.c (x_new_font): Optimize for the case that the font is
14626 already set for the frame.
14627
146282008-02-01 Kenichi Handa <handa@m17n.org>
14629
14630 * chartab.c (char_table_ascii): Check if the char table contents
14631 is sub-char-table or not.
14632 (char_table_set, char_table_set_range): Fix argument to
14633 char_table_ascii.
14634
14635 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14636 (detect_coding_utf_8, detect_coding_utf_16)
14637 (detect_coding_emacs_mule, detect_coding_iso_2022)
14638 (detect_coding_sjis, detect_coding_big5)
14639 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14640 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14641 sequence is valid in this coding system. Change callers.
14642 (MAX_ANNOTATION_LENGTH): New macro.
14643 (ADD_ANNOTATION_DATA): New macro.
14644 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14645 ADD_ANNOTATION_DATA. Change the format of annotation data.
14646 (ADD_CHARSET_DATA): New macro.
14647 (emacs_mule_char): New argument ID. Change callers.
14648 (decode_coding_emacs_mule, decode_coding_iso_2022)
14649 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14650 Produce charset annotation data in coding->charbuf.
14651 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14652 to charset annotation data in coding->charbuf.
14653 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14654 coding->common_flags if the coding system is iso-2022 based and
14655 uses designation.
14656 (produce_composition): Adjust for the new annotation data format.
14657 (produce_charset): New function.
14658 (produce_annotation): Handle charset annotation.
14659 (handle_composition_annotation, handle_charset_annotation): New
14660 functions.
14661 (consume_chars): Handle charset annotation. Utilize the above two
14662 functions.
14663 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14664 buffer, get the deleted text as a string and set
14665 coding->src_object to that string.
14666 (detect_coding, detect_coding_system): Use the new struct
14667 coding_detection_info.
14668
14669 * coding.h (struct coding_detection_info): New structure.
14670 (struct coding_system): Adjust prototype of the member `detector'.
14671 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14672
146732008-02-01 Kenichi Handa <handa@m17n.org>
14674
14675 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14676
146772008-02-01 Dave Love <fx@gnu.org>
14678
14679 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14680 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14681 to new local and nullify apropos_accumulate before returning.
14682 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14683
146842008-02-01 Kenichi Handa <handa@m17n.org>
14685
14686 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14687 correctly.
e3eea1fc 14688
aac0c6e3
MR
146892008-02-01 Dave Love <fx@gnu.org>
14690
14691 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14692
146932008-02-01 Kenichi Handa <handa@m17n.org>
14694
14695 The following changes are to make character composition happen
14696 automatically on displaying.
14697
14698 * Makefile.in (lisp, shortlisp): Add composite.elc.
14699
14700 * composite.h (Qauto_composed, Vauto_composition_function)
14701 (Qauto_composition_function): Extern them.
14702
14703 * composite.c (Vcomposition_function_table)
14704 (Qcomposition_function_table): Delete variables.
14705 (Qauto_composed, Vauto_composition_function)
14706 (Qauto_composition_function): New variables.
14707 (run_composition_function): Don't call
14708 compose-chars-after-function.
14709 (update_compositions): Clear `auto-composed' text property.
14710 (compose_chars_in_text): Delete this function.
14711 (syms_of_composite): Staticpro Qauto_composed and
14712 Qauto_composition_function. Declare Vauto_composition_function as
14713 a Lisp variable.
14714
14715 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14716
14717 * xdisp.c (it_props): Add an entry for Qauto_composed.
14718 (handle_auto_composed_prop): New function.
14719
14720 * xselect.c (selection_data_to_lisp_data): Don't call
14721 compose_chars_in_text.
14722
147232008-02-01 Dave Love <fx@gnu.org>
14724
14725 * keyboard.c (read_char): Modify checking around use of
14726 Vkeyboard_translate_table.
14727
14728 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14729 and fix C types.
14730
147312008-02-01 Kenichi Handa <handa@m17n.org>
14732
14733 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14734 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14735 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14736 the case that the last byte is '\r' correctly.
14737 (decode_coding): Flush out the unprocessed data correctly.
14738 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14739
147402008-02-01 Dave Love <fx@gnu.org>
14741
14742 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14743 Add XK_ISO... case.
14744 (xaw_scroll_callback): Revert last change.
14745
147462008-02-01 Kenichi Handa <handa@m17n.org>
14747
14748 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14749
147502008-02-01 Kenichi Handa <handa@m17n.org>
14751
14752 * xfaces.c (Vface_resizing_fonts): New variable.
14753 (struct font_name): New member `resizing_ratio'.
14754 (font_resizing_ratio): New function.
14755 (split_font_name): Set font->resizing_ratio.
14756 (better_font_p): Pay attention to font->resizing_ratio.
14757 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14758 RESX, and RESY fields.
14759 (try_alternative_families): Try scalable fonts if
14760 Vscalable_fonts_allowed is not Qt.
14761 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14762
147632008-02-01 Dave Love <fx@gnu.org>
14764
14765 * xterm.c (xaw_scroll_callback): Cast correctly.
14766
147672008-02-01 Dave Love <fx@gnu.org>
14768
14769 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14770 (lispy_kana_keys): Comment out.
14771 (make_lispy_event) [XK_kana_A]: Comment out.
14772
14773 * xterm.c (xaw_scroll_callback): Cast call_data.
14774 (XTread_socket): Deal with ASCII keysyms.
14775 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14776
147772008-02-01 Dave Love <fx@gnu.org>
14778
14779 * xterm.c (Vx_keysym_table): New.
14780 (syms_of_xterm): Initialize it.
14781 (XTread_socket): Use it.
14782 From head: Eliminate incorrect optimization that tried to avoid
14783 decoding the output of X*LookupString.
14784 (x_get_font_repertory): Delete charset declaration.
14785
147862008-02-01 Kenichi Handa <handa@m17n.org>
14787
14788 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14789 return 0.
14790 (Fdefine_coding_system_internal): Setup
14791 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14792
147932008-02-01 Dave Love <fx@gnu.org>
14794
14795 * coding.c (Fcheck_coding_system): Doc fix.
14796
14797 * editfns.c (Finsert_byte): Return a proper value.
14798
147992008-02-01 Kenichi Handa <handa@m17n.org>
14800
14801 * coding.c (decode_coding): Fix args to translate_chars. Pay
14802 attention to Vstandard_translation_table_for_decode.
14803 (encode_coding): Fix args to translate_chars. Pay attention to
14804 Vstandard_translation_table_for_encode.
14805
14806 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14807 SINGLE_BYTE_CHAR_P.
14808
14809 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14810 not by SINGLE_BYTE_CHAR_P.
14811
14812 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14813 SINGLE_BYTE_CHAR_P.
14814
14815 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14816 SINGLE_BYTE_CHAR_P.
14817
14818 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14819 by SINGLE_BYTE_CHAR_P.
14820
14821 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14822 SINGLE_BYTE_CHAR_P.
14823
148242008-02-01 Dave Love <fx@gnu.org>
14825
14826 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14827
148282008-02-01 Dave Love <fx@gnu.org>
14829
14830 * fns.c (Flanginfo): Fix typo.
14831
14832 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14833
148342008-02-01 Kenichi Handa <handa@m17n.org>
14835
14836 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14837 (detect_coding_emacs_mule, detect_coding_iso_2022)
14838 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14839 incomplete byte sequence. Don't update *mask when correctly detected.
14840 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14841 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14842 (detect_coding, detect_coding_system): Adjust for the changes above.
14843
148442008-02-01 Kenichi Handa <handa@m17n.org>
14845
14846 * character.c (char_string): Rename from
14847 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14848 (string_char): Rename from string_char.
14849
14850 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14851 if C is greater than MAX_3_BYTE_CHAR.
14852 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14853 string_char instead of string_char_with_unification.
14854
148552008-02-01 Dave Love <fx@gnu.org>
14856
14857 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14858
148592008-02-01 Kenichi Handa <handa@m17n.org>
14860
14861 * keymap.c (push_key_description): Pay attention to force_multibyte.
14862
14863 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14864
148652008-02-01 Dave Love <fx@gnu.org>
14866
14867 * charset.c (define_charset_internal): Rename `supprementary'.
14868
14869 * Makefile.in (lisp, shortlisp): Remove latin-N.
14870
148712008-02-01 Dave Love <fx@gnu.org>
14872
14873 * xfns.c (x_window, x_window): Use use_xim.
14874
14875 * xterm.c (use_xim): Initialize.
14876 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14877 (x_term_init): Maybe set use_xim.
14878
14879 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14880
148812008-02-01 Kenichi Handa <handa@m17n.org>
14882
14883 * search.c (search_buffer): Fix case-fold-search of multibyte
14884 characters.
14885 (boyer_moore): Rename the last argument to char_high_bits.
14886
148872008-02-01 Kenichi Handa <handa@m17n.org>
14888
14889 * xdisp.c (display_string): Fix for the case of zero width glyph.
14890
14891 * xfns.c (x_set_font): Change the error message of the case that
14892 x_new_fontset returns Qt.
14893
14894 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14895 (Finternal_set_lisp_face_attribute): Use signal_error for the
14896 error of invalid fontset.
14897
14898 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14899 fontset, return Qt.
14900
149012008-02-01 Dave Love <fx@gnu.org>
14902
14903 * unexelf.c (unexec): Make .got handling not SGI-specific.
14904
14905 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14906
14907 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14908
14909 * keyboard.c (read_key_sequence): Fix type error.
14910
14911 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14912 type error.
14913
14914 * fontset.c (fontset_add): Return Lisp_Object.
14915
149162008-02-01 Dave Love <fx@gnu.org>
14917
14918 * charset.h (charset_ordered_list_tick): Declare extern.
14919
149202008-02-01 Kenichi Handa <handa@m17n.org>
14921
14922 The following changes (and some of 2008-02-01 changes of mine) are
14923 for handling syntax, category, and case conversion for unibyte
14924 characters by converting them to multibyte on the fly. With these
14925 changes, we don't have to setup syntax and case tables for unibyte
14926 characters in each language environment.
14927
14928 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14929 multibyte if necessary.
14930
14931 * bytecode.c (Fbyte_code): Likewise.
14932
14933 * character.h (LEADING_CODE_LATIN_1_MIN)
14934 (LEADING_CODE_LATIN_1_MAX): New macros.
14935 (unibyte_to_multibyte_table): Extern it.
14936 (unibyte_char_to_multibyte): New macro.
14937 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14938 (CHAR_LEADING_CODE): New macro.
14939 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14940
14941 * character.c (unibyte_to_multibyte_table): New variable.
14942 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14943 (multibyte_char_to_unibyte): If C is an eight-bit character,
14944 convert it to the corresponding byte value.
14945
14946 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14947 not 1, signals an error. Update the elements of
14948 unibyte_to_multibyte_table.
14949 (init_charset_once): Initialize unibyte_to_multibyte_table.
14950 (syms_of_charset): Define the charset `iso-8859-1'.
14951
14952 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14953 as is without converting it to unibyte. In a unibyte buffer,
14954 convert C to multibyte before checking the syntax.
14955
14956 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14957
14958 * minibuf.c (Fminibuffer_complete_word): Use the macro
14959 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14960
14961 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14962
14963 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14964 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14965 that is zero, convert an eight-bit char to multibyte.
14966 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14967 non-emacs case.
14968 (PATFETCH): Convert an eight-bit char to multibyte.
14969 (HANDLE_UNIBYTE_RANGE): New macro.
14970 (regex_compile): Setup the compiled pattern for multibyte chars
14971 even if the given regex string is unibyte. Use PATFETCH_RAW
14972 instead of PATFETCH in many places. To handle `charset'
14973 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14974 only for ASCII chars.
14975 (analyse_first) <exactn>: Simplify because the compiled pattern
14976 is multibyte.
14977 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14978 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14979 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14980 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14981 multibyte always 1.
14982 (re_search_2): In emacs, set the locale variable multibyte to 1,
14983 otherwise to 0. New local variable target_multibyte. Check it
14984 to decide the multibyteness of STR1 and STR2. If
14985 target_multibyte is zero, convert unibyte chars to multibyte
14986 before translating and checking fastmap.
14987 (TARGET_CHAR_AND_LENGTH): New macro.
14988 (re_match_2_internal): In emacs, set the locale variable multibyte
14989 to 1, otherwise to 0. New local variable target_multibyte. Check
14990 it to decide the multibyteness of STR1 and STR2. Use
14991 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14992 <charset, charset_not>: If multibyte is nonzero, check fastmap
14993 only for ASCII chars. Call bcmp_translate with
14994 target_multibyte, not with multibyte.
14995 <begline>: Declare the local variable C as `unsigned'.
14996 (bcmp_translate): Change the last arg name to target_multibyte.
14997
14998 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14999 the regexp pattern and the matching target. Set cp->buf.multibyte
15000 to the multibyteness of the regexp pattern. Set
15001 cp->but.target_multibyte to the multibyteness of the matching target.
15002 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15003 FETCH_STRING_CHAR_ADVANCE.
15004 (Freplace_match): Convert unibyte chars to multibyte.
15005
15006 * syntax.c (char_quoted, back_comment, scan_words)
15007 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15008 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15009 unibyte chars to multibyte.
15010 (skip_chars): Delete the arg syntaxp, and move the code for
15011 handling syntaxes to skip_syntaxes. Change callers.
15012 Fix the case that the multibyteness of STRING and the current
15013 buffer doesn't match.
15014 (skip_syntaxes): New function.
15015 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15016 SINGLE_BYTE_CHAR_P.
15017
150182008-02-01 Kenichi Handa <handa@m17n.org>
15019
15020 * xfaces.c (QCfontset): New variable.
15021 (LFACE_FONTSET): New macro.
15022 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15023 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15024 (Finternal_set_lisp_face_attribute)
15025 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15026 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15027 check also LFACE_FONTSET_INDEX.
15028 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15029 attrs[LFACE_FONT_INDEX].
15030 (syms_of_xfaces): Intern and staticpro QCfontset.
15031
15032 * dispextern.h (enum lface_attribute_index): New member
15033 LFACE_FONTSET_INDEX.
15034
15035 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15036
150372008-02-01 Kenichi Handa <handa@m17n.org>
15038
15039 * coding.c (coding_set_destination): Fix coding->destination for
15040 the case converting a region.
15041 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15042 (encode_coding_object): Fix coding->dst_pos and
15043 coding->dst_pos_byte for the case converting a region.
15044
15045 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15046
15047 * character.h (BYTE8_STRING): New macro.
15048
15049 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15050
150512008-02-01 Kenichi Handa <handa@m17n.org>
15052
15053 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15054 characters by octal form.
15055
15056 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15057
15058 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15059 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15060 _fetch_multibyte_char_len.
15061 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15062
15063 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15064
15065 * casefiddle.c (casify_object): Simplify. Handle the case that
15066 the case conversion change the byte length.
15067 (casify_region): Likewise.
15068
15069 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15070
15071 * character.c (_fetch_multibyte_char_len): Delete this variable.
15072 (syms_of_character): Setup Vprintable_chars.
15073
15074 * editfns.c (Fchar_equal): Fix for the unibyte case.
15075 (Finsert_byte): New function.
15076 (syms_of_editfns): Defsubr it.
15077
15078 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15079 of direct code 0x3ffff.
15080
15081 * search.c (Freplace_match): Fix for the unibyte case.
15082
150832008-02-01 Kenichi Handa <handa@m17n.org>
15084
15085 * lread.c (safe_to_load_p): Fix the logic.
15086
15087 * syntax.c (scan_words): Don't treat characters belonging to
15088 different scripts as constituting a word.
15089
15090 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15091
15092 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15093
15094 * emacs.c (main): In the case of --unibyte, instead of aborting on
15095 finding non-empty buffer, make it unibyte.
15096
150972008-02-01 Kenichi Handa <handa@m17n.org>
15098
15099 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15100 to create a fontset.
15101
151022008-02-01 Dave Love <fx@gnu.org>
15103
15104 * character.c (Funibyte_char_to_multibyte): Doc fix.
15105
15106 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15107
151082008-02-01 Kenichi Handa <handa@m17n.org>
15109
15110 * fontset.c (fontset_add): Make the type `int'.
15111 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15112
15113 * character.c (unibyte_char_to_multibyte)
15114 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15115 charset_unibyte, not charset_primary.
15116
15117 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15118
15119 * charset.c (charset_unibyte): Rename from charset_primary.
15120 (Funibyte_charset): Rename from Fprimary_charset.
15121 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15122 (syms_of_charset): Adjust for the above changes.
15123
15124 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15125 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15126 it->multibyte_p is zero.
15127
15128 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15129 Delete extern.
15130
151312008-02-01 Kenichi Handa <handa@m17n.org>
15132
15133 * coding.c (Fdefine_coding_system_internal): Fix category setting
15134 for a coding system of type iso-2022.
15135
151362008-02-01 Kenichi Handa <handa@m17n.org>
15137
15138 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15139
151402008-02-01 Kenichi Handa <handa@m17n.org>
15141
15142 * syntax.c (Vnext_word_boundary_function_table): New variable.
15143 (next-word-boundary-function-table): Declare it as a Lisp variable
15144 in syms_of_syntax.
15145 (scan_words): Call functions in Vnext_word_boundary_function_table
15146 if any.
15147
15148 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15149
15150 * fontset.c (fs_load_font): If fontp->charset is not negative,
15151 return fontp without setting its members.
15152
151532008-02-01 Dave Love <fx@gnu.org>
15154
15155 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15156
15157 * m/sparc.h (HAVE_ALLOCA): Delete.
15158
15159 * s/irix6-5.h: Don't include strings.h.
15160 (bcopy, bzero, bcmp): Don't undef.
15161
15162 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15163
15164 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15165 (TIOCSIGSEND): Don't test IRIX6.
15166 (bcopy, bzero, bcmp): Define conditionally.
15167
151682008-02-01 Kenichi Handa <handa@m17n.org>
15169
15170 * buffer.c (Qas, Qmake, Qto): New variables.
15171 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15172 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15173
15174 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15175 we are inserting a process output into a multibyte buffer.
15176
15177 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15178 multibyte_char_to_unibyte.
15179
15180 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15181 by the primary charset, make it eight-bit char.
15182 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15183
15184 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15185 (charset_8_bit__control, charset_8_bit_graphic)
15186 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15187 (define_charset_internal): New function.
15188 (syms_of_charset): Call define_charset_internal for pre-defined
15189 charsets.
15190
15191 * charset.h (charset_8_bit): Extern it.
15192
15193 * coding.c (make_conversion_work_buffer): Adjust for the change
15194 of Fset_buffer_multibyte.
15195 (encode_coding_raw_text): Increment p0 in the loop.
15196
15197 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15198
15199 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15200 for the change of Fset_buffer_multibyte.
15201
15202 * fns.c (Fstring_to_multibyte): New function.
15203 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15204
152052008-02-01 Dave Love <fx@gnu.org>
15206
15207 * xfns.c (x_put_x_image): Declare args.
15208
15209 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15210 (try_font_list): Declare an arg.
15211
15212 * xdisp.c (message2_nolog, set_message): Declare an arg.
15213
15214 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15215
15216 * syntax.c (scan_sexps_forward): Declare an arg.
15217
15218 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15219 Declare an arg.
15220
15221 * lisp.h (Fnew_fontset): Declare.
15222
15223 * keymap.c (push_key_description): Call CHARACTERP correctly.
15224
15225 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15226 (face_for_char): Delete unused vars.
15227 (Fset_fontset_font): Doc fix. Delete unused vars.
15228
15229 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15230
15231 * composite.c (update_compositions): Declare arg.
15232
15233 * cm.c (calccost, cmgoto): Declare args.
15234
15235 * charset.c: Remove `emacs' conditional. Doc fixes.
15236 (map_char_table_for_charset): Declare.
15237
15238 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15239
15240 * ccl.c: Remove `emacs' conditional.
15241
152422008-02-01 Kenichi Handa <handa@m17n.org>
15243
15244 The following changes are to allow specifying multiple font
15245 patterns for a character range (specified by script or charset).
15246
15247 * Makefile.in (abbrev.o): Depend on syntax.h.
15248 (xfaces.o): Depend on charset.h.
15249
15250 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
15251 SINGLE_BYTE_CHAR_P.
15252
15253 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
15254
15255 * character.h (Vchar_script_table): Extern it.
15256
15257 * character.c (Vscript_alist): Delete.
15258 (Vchar_script_table, Qchar_script_table): New variable.
15259 (syms_of_character): Declare Vchar_script_table as a lisp variable
15260 and initialize it.
15261
15262 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
15263 have property char-table-extra-slots, make no extra slot.
15264
15265 * dispextern.h (struct face): Delete member `charset'.
15266 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
15267 SINGLE_BYTE_CHAR_P.
15268 (choose_face_font, lookup_non_ascii_face, font_name_registry):
15269 Add prototypes.
15270 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
15271 (generate_ascii_font_name): Rename from generate_ascii_font.
15272
15273 * fontset.h (get_font_repertory_func): New prototype.
15274 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
15275 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
15276
15277 * fontset.c (Qprepend, Qappend): New variables.
15278 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
15279 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
15280 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
15281 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
15282 (fontset_ref_and_range, fontset_add, reorder_font_vector)
15283 (load_font_get_repertory): New functions.
15284 (fontset_set): Delete.
15285 (fontset_face): New arg FACE. Return face ID, not face.
15286 Complete re-write to handle new fontset structure. Change caller.
15287 (free_face_fontset): Use ASET istead of AREF (X) = Y.
15288 (face_for_char): Don't call lookup_face.
15289 (make_fontset_for_ascii_face): New arg FACE.
15290 (fs_load_font): New arg CHARSET_ID. Don't check
15291 Vfont_encoding_alist here.
15292 (find_font_encoding): New function.
15293 (list_fontsets): Use STRINGP, not ! NILP.
15294 (accumulate_script_ranges): New function.
15295 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
15296 re-written to handle new fontset structure.
15297 (Ffontset_font): Return a copy of element.
15298 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
15299 docstring of font-encoding-alist.
15300
15301 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
15302 (Fset_fotset_font): Fix arguments to 5.
15303
15304 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
15305
15306 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
15307 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15308 (highlight_trailing_whitespace): Adjust for the change of
15309 lookup_named_face.
15310
15311 * xfaces.c: Include charset.h.
15312 (load_face_font): Delete argument C. Change caller.
15313 (generate_ascii_font_name): Rename from generate_ascii_font.
15314 (font_name_registry): New function.
15315 (cache_face): Store ascii faces before non-ascii faces in buckets.
15316 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
15317 Lookup only ascii faces.
15318 (lookup_non_ascii_face): New function.
15319 (lookup_named_face): Delete argument C. Change caller.
15320 (lookup_derived_face): Delete argument C. Change caller.
15321 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
15322 a string, just call font_list with it.
15323 (choose_face_font): Delete arguments FACE and C. New arg
15324 FONT_SPEC. Change caller.
15325 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
15326 Change caller.
15327 (realize_non_ascii_face): New function.
15328 (realize_x_face): Call load_face_font here.
15329 (realize_tty_face): Delete argument C. Change caller.
15330 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
15331 get a face ID.
15332 (dump_realized_face): Don't print charset of FACE.
15333
15334 * xfns.c (x_set_font): Always call x_new_fontset and
15335 store_frame_parameter.
15336 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15337 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15338
15339 * xterm.h (x_get_font_repertory): Extern it.
15340
15341 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15342 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15343 it->multibyte_p is zero.
15344 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15345 (x_new_fontset): If FONTSETNAME doesn't match any existing
15346 fontsets, create a new one.
15347 (x_get_font_repertory): New function.
15348
153492008-02-01 Kenichi Handa <handa@m17n.org>
15350
15351 * coding.c (Ffind_coding_systems_region_internal): Detect an
15352 ASCII only string correctly.
15353
15354 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15355 version is 0.
15356
153572008-02-01 Kenichi Handa <handa@m17n.org>
15358
15359 * lread.c: Include "coding.h".
15360 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15361 (load_each_byte, unread_char): New variables.
15362 (readchar_backlog): Delete.
15363 (readchar): Return a character unless load_each_byte is nonzero.
15364 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15365 cons. If unread_char is not -1, simply return it.
15366 (unreadchar): Handle the case that readcharfun is
15367 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15368 (read_multibyte): Delete.
15369 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15370 (read_emacs_mule_char): New functions.
15371 (Fload): Even if the file doesn't have the extension ".elc", if
15372 safe_to_load_p returns a positive version number, assume that the
15373 file contains bytecompiled code. If the version is less than 22,
15374 load the file while decoding multibyte sequences by emacs-mule.
15375 (readevalloop): Don't use readchar_backlog.
15376 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15377 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15378 (read_escape): Delete the arg BYTEREP.
15379 (read1): Set load_each_byte to 1 temporarily while handling
15380 #@NUMBER. Don't call read_multibyte.
15381 (read_vector): Call Fread with a cons. If readcharfun is
15382 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15383 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15384 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15385 and Qload_force_doc_strings.
15386
153872008-02-01 Kenichi Handa <handa@m17n.org>
15388
15389 * xdisp.c (face_before_or_after_it_pos): Call
15390 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15391
153922008-02-01 Kenichi Handa <handa@m17n.org>
15393
15394 * character.h (TRAILING_CODE_P): New macro.
15395 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15396 (string_char_with_unification): Fix prototype.
15397 (Vscript_alist): Extern it.
15398
15399 * character.c (Vscript_alist): New variable.
15400 (string_char_with_unification, str_as_unibyte)
15401 (string_escape_byte8): Add `const' to local variables.
15402 (syms_of_character): Declare script-alist as a Lisp variable.
15403
15404 * charset.h (Vcharset_ordered_list): Extern it.
15405 (charset_ordered_list_tick): Extern it.
15406 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15407 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15408 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15409 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15410 (Funify_charset): Adjust for the change of Funify_charset.
15411
15412 * charset.c (charset_ordered_list_tick): New variable.
15413 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15414 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15415 deunify intead of unify a charset.
15416 (string_xstring_p): Add `const' to local variables.
15417 (find_charsets_in_text): Add `const' to arguments and local variables.
15418 (encode_char): Adjust for the change of Funify_charset. Fix
15419 detecting of invalid code.
15420 (Fset_charset_priority): Increment charset_ordered_list_tick.
15421 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15422 and TO_CODE.
15423
15424 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15425 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15426 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15427 (decode_coding_ccl, consume_chars)
15428 (Ffind_coding_systems_region_internal)
15429 (Fcheck_coding_systems_region): Add `const' to local variables.
15430
15431 * print.c (print_object): Use octal form for printing the
15432 contents of a bool vector.
15433
154342008-02-01 Dave Love <fx@gnu.org>
15435
15436 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15437 <version == 20>: Refuse to load.
15438
154392008-02-01 Dave Love <fx@gnu.org>
15440
15441 * fns.c: Move coding.h.
15442 (Qcodeset, Qdays, Qmonths): New.
15443 (concat): Use CHARACTERP instead of INTEGERP.
15444 (Flocale_codeset): Delete.
15445 (Flanginfo): New function.
15446 (syms_of_fns): Change accordingly.
15447
15448 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15449
154502008-02-01 Dave Love <fx@gnu.org>
15451
15452 * casetab.c (init_casetab_once, init_casetab_once): Fix
15453 CHAR_TABLE_SET call.
15454
15455 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15456
15457 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15458
15459 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15460 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15461 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15462
15463 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15464
15465 * coding.c (ENCODE_DESIGNATION, decode_eol)
15466 (make_conversion_work_buffer, code_conversion_restore)
15467 (Fdefine_coding_system_internal): Convert Lisp types.
15468 (code_conversion_restore): Use EQ, not ==.
15469 (Fencode_coding_string): Fix code_convert_string call.
15470
15471 * coding.h (code_convert_region): Fix prototype.
15472
15473 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15474
15475 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15476 (Ffontset_info): Convert Lisp types.
15477
15478 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15479
15480 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15481
15482 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15483
15484 * chartab.c: Include "...h", not <...h> in some cases.
15485
15486 * callproc.c (Fcall_process): Remove unused variables.
15487
154882008-02-01 Dave Love <fx@gnu.org>
15489
15490 * coding.c (Fset_coding_system_priority): Allow null arg list.
15491
154922008-02-01 Dave Love <fx@gnu.org>
15493
15494 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15495 (Fself_insert_and_exit): Use CHARACTERP.
15496
15497 * callproc.c (Fcall_process): Remove unused vars.
15498
15499 * xterm.c (XTread_socket): Add extra dead keysyms.
15500
15501 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15502
15503 * dispextern.h: Remove prototypes for redraw_frame,
15504 redraw_garbaged_frames.
15505
15506 * cmds.c (Fself_insert_command): Use CHARACTERP.
15507
15508 * chartab.c (make_sub_char_table): Remove unused var.
15509 (Fset_char_table_default, Fmap_char_table): Doc fix.
15510
15511 * keymap.c (access_keymap): Remove generic char code.
15512 (push_key_description): Use CHARACTERP.
15513
155142008-02-01 Dave Love <fx@gnu.org>
15515
15516 * charset.c: Doc fixes.
15517 (Funify_charset): Extra checking.
15518
155192008-02-01 Dave Love <fx@gnu.org>
15520
15521 * lread.c: Remove some unused variables.
15522 (safe_to_load_p): If safe, return the magic number version byte.
15523 (Fload): Maybe use load-with-code-conversion.
15524
155252008-02-01 Kenichi Handa <handa@m17n.org>
15526
15527 * category.c (Fmodify_category_entry): Don't modify the contents
15528 of category_set for characters out of the range. Avoid
15529 unnecessary modification.
15530
15531 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15532 Vchar_unify_table. The default value of the table is now nil.
15533
15534 * character.c (syms_of_character): Setup Vchar_width_table for
15535 eight-bit-control and raw-byte chars.
15536
15537 * charset.h (enum define_charset_arg_index): Delete
15538 charset_arg_parents and add charset_arg_subset and
15539 charset_arg_superset.
15540 (enum charset_attr_index): Delete charset_parents and add
15541 charset_subset and charset_superset.
15542 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15543 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15544 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15545 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15546 (CHARSET_SUPERSET): New macros.
15547 (charset_work): Extern it.
15548 (ENCODE_CHAR): Use charset_work.
15549 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15550 (map_charset_chars): Extern it.
15551
15552 * charset.c (load_charset_map): Set the default value of encoder
15553 and deunifier char-tables to nil.
15554 (map_charset_chars): Change argument. Change callers. Use
15555 map_char_table_for_charset instead of map_char_table.
15556 (Fmap_charset_chars): New optional args from_code and to_code.
15557 (Fdefine_charset_internal): Adjust for the change of
15558 `define-charset' (:parents -> :subset or :superset).
15559 (charset_work): New variable.
15560 (encode_char, syms_of_charset): Adjust for the change of
15561 Fdefine_charset_internal.
15562 (Ffind_charset_string): Setup the vector `charsets' correctly.
15563
15564 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15565 the previous change.
15566 (char_table_ref_and_range): Adjust for the above change.
15567 (map_sub_char_table_for_charset): New function.
15568 (map_char_table_for_charset): New function.
15569
15570 * keymap.c (describe_vector): Handle a char-table directly here.
15571 (describe_char_table): Delete.
15572
15573 * lisp.h (map_charset_chars): Delete.
15574
155752008-02-01 Dave Love <fx@gnu.org>
15576
15577 * fns.c (count_combining): Comment out (unused).
15578 (Flocale_codeset): New.
15579 (syms_of_fns): Defsubr it.
15580
15581 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15582 (size_t): Remove.
15583
155842008-02-01 Dave Love <fx@gnu.org>
15585
15586 * Makefile.in (chartab.o): Depend on charset.h.
15587
155882008-02-01 Kenichi Handa <handa@m17n.org>
15589
15590 * character.c (syms_of_character): Set the default value of
15591 Vprintable_chars to Qnil.
15592
155932008-02-01 Dave Love <fx@gnu.org>
15594
15595 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15596
155972008-02-01 Kenichi Handa <handa@m17n.org>
15598
15599 * charset.c (load_charset_map): Handle the case that from < to
15600 correctly.
15601
15602 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15603 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15604 Pay attention to raw-8-bit chars.
15605
156062008-02-01 Kenichi Handa <handa@m17n.org>
15607
15608 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15609 It is not bytecompiled now.
15610
15611 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15612 (charset_jisx0208): New variables.
15613 (Fdefine_charset_internal): Setup them if appropriate.
15614 (init_charset_once): Initialize them to -1.
15615
15616 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15617 (charset_jisx0208): Extern them.
15618
15619 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15620 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15621 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15622 (setup_iso_safe_charsets): Fix arguments to Fassq.
15623 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15624 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15625 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15626 (encode_coding_iso_2022): Change the 1st arg to
15627 ENCODE_ISO_CHARACTER to a variable.
15628
156292008-02-01 Kenichi Handa <handa@m17n.org>
15630
15631 * charset.h (enum define_charset_arg_index): New enums
15632 charset_arg_min_code and charset_arg_max_code.
15633 (struct charset): New member char_index_offset.
15634
15635 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15636 Take charset->char_index_offset into account.
15637 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15638 args[charset_arg_max_code]. Setup charset.char_index_offset.
15639 (syms_of_charset): Fix args to Fdefine_charset_internal.
15640
156412008-02-01 Dave Love <fx@gnu.org>
15642
15643 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15644
156452008-02-01 Dave Love <fx@gnu.org>
15646
15647 * coding.c: Doc fixes.
15648 (Fcoding_system_aliases): Fix return value.
15649 (Qmac): Remove (duplicated) definition.
15650
156512008-02-01 Dave Love <fx@gnu.org>
15652
15653 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15654 functions.
15655
15656 * character.c (Fstring): Doc fix.
15657
15658 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15659
15660 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15661 ids.
15662 (font-encoding-alist): Doc fix.
15663
156642008-02-01 Dave Love <fx@gnu.org>
15665
15666 * term.c (costs_set): Declare static, non-initialized for pcc.
15667 (encode_terminal_code): Remove unused var.
15668
15669 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15670 for K&R.
15671
15672 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15673
15674 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15675 (suffixes): Move out of make_subsidiaries for K&R.
15676
15677 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15678
15679 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15680
156812008-02-01 Dave Love <fx@gnu.org>
15682
15683 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15684
15685 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15686
156872008-02-01 Yong Lu <lyongu@asia-infonet.com>
15688
15689 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15690
15691 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15692
156932008-02-01 Kenichi Handa <handa@m17n.org>
15694
15695 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15696 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15697
156982008-02-01 Kenichi Handa <handa@m17n.org>
15699
15700 * coding.c (decode_coding_charset): Adjust for the change of
15701 Fdefine_coding_system_internal.
15702 (Fdefine_coding_system_internal): For a coding system of
15703 `charset' type, store a list of charset IDs in
15704 `charset_attr_charset_valids' element of coding attributes.
15705
157062008-02-01 Kenichi Handa <handa@m17n.org>
15707
15708 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15709 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15710 caller. Handle 2-byte and 3-byte charsets correctly.
15711 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15712 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15713 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15714 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15715 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15716 sequence.
15717 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15718 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15719 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15720 and alt&rule composition.
15721 (decode_coding_iso_2022): Handle composition correctly.
15722 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15723
15724 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15725 re-defining a charset. If the charset has :emacs-mule-id, setup
15726 emacs_mule_bytes.
15727 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15728
157292008-02-01 Kenichi Handa <handa@m17n.org>
15730
15731 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15732 (encode_coding_big5, encode_coding_charset): If coding requires safe
15733 encoding, produce a character specified by
15734 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15735
157362008-02-01 Dave Love <fx@gnu.org>
15737
15738 * xterm.c (XSetIMValues): Declare.
15739
15740 * process.c: Conditionally include sys/wait.h, pty.h.
15741
15742 * print.c (print_object): Fix print format for 64-bit systems.
15743
15744 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15745
15746 * buffer.c (emacs_strerror): Declare.
15747
15748 * fontset.c (Fclear_face_cache): Declare.
15749 (accumulate_font_info): Comment-out (unused).
15750 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15751 variables.
15752
15753 * character.h (string_escape_byte8): Declare.
15754
15755 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15756 unused vars.
15757 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15758 (Fmap_charset_chars): Doc fix.
15759
15760 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15761 (Fset_coding_system_priority, Fset_coding_system_priority)
15762 (Fdefine_coding_system_internal): Doc fix.
15763
157642008-02-01 Dave Love <fx@gnu.org>
15765
15766 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15767
157682008-02-01 Kenichi Handa <handa@m17n.org>
15769
15770 * character.c (string_escape_byte8): Make multibyte string with
15771 correct size.
15772
15773 * charset.c (Fmake_char): Delete unnecessary code.
15774
157752008-02-01 Kenichi Handa <handa@m17n.org>
15776
15777 * xfns.c (x_encode_text): Allocate coding.destination here, and
15778 call encode_coding_object with dst_object Qnil.
15779
15780 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15781 multibyte form correctly.
15782
15783 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15784 against Vfont_encoding_alist.
15785
15786 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15787 handling of charset list.
15788 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15789 (decode_coding_object): Move point to coding->dst_pos before
15790 calling post-read-conversion function.
15791 (encode_coding_object): Give correct arguments to
15792 pre-write-conversion. Ignore the return value of
15793 pre-write-conversion function. Pay attention to the case that
15794 pre-write-conversion changes the current buffer. If dst_object is
15795 Qt, even if coding->src_bytes is zero, allocate at least one byte
15796 to coding->destination.
15797
15798 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15799
15800 * charset.c (Fmake_char): Make it more backward compatible.
15801 (Fmap_charset_chars): Fix docstring.
15802
158032008-02-01 Dave Love <fx@gnu.org>
15804
15805 * coding.c: Doc fixes.
15806 (Fdefine_coding_system_alias): Use names, not symbols, in
15807 coding-system-alist.
15808
158092008-02-01 Kenichi Handa <handa@m17n.org>
15810
15811 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15812 of calling free_realized_face.
15813
158142008-02-01 Yong Lu <lyongu@asia-infonet.com>
15815
15816 * charset.c (read_hex): Don't treat SPC as a comment starter.
15817 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15818 (Fdecode_char): Fix typo.
15819
158202008-02-01 Kenichi Handa <handa@m17n.org>
15821
15822 * charset.h (struct charset): New member `code_space_mask'.
15823
15824 * coding.c (coding_set_source): Delete the local variable beg_byte.
15825 (encode_coding_charset, Fdefine_coding_system_internal):
15826 Delete the local variable charset.
15827 (Fdefine_coding_system_internal): Setup
15828 attrs[coding_attr_charset_valids] correctly.
15829
15830 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15831 member to check if CODE is valid or not.
15832 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15833 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15834 is within the range of charset->min_code and carset->max_code.
15835
158362008-02-01 Dave Love <fx@gnu.org>
15837
15838 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15839
15840 * dispextern.h (generate_ascii_font): Fix return type.
15841
15842 * xfaces.c (generate_ascii_font): Fix arg declaration.
15843
15844 * coding.c (coding_inherit_eol_type)
15845 (Fset_terminal_coding_system_internal)
15846 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15847
158482008-02-01 Kenichi Handa <handa@m17n.org>
15849
15850 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15851 multiple charsets correctly.
15852
158532008-02-01 Kenichi Handa <handa@m17n.org>
15854
15855 * search.c (boyer_moore): Fix handling of multibyte character
15856 translation.
15857
15858 * xdisp.c (display_mode_element): When the variable `elt' is
15859 changed, update `this' and `lisp_string'.
15860
158612008-02-01 Kenichi Handa <handa@m17n.org>
15862
15863 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15864
15865 * callproc.c (Fcall_process): Be sure to give the current buffer
15866 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15867
15868 * charset.c (struct charset_map_entries): New struct.
15869 (load_charset_map): Rename from parse_charset_map. New args
15870 entries and n_entries. Change caller.
15871 (load_charset_map_from_file): Rename from load_charset_map.
15872 Change caller. New arg control_flag. Call load_charset_map at
15873 the tail.
15874 (load_charset_map_from_vector): New function.
15875 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15876 (encode_char): If the charset is compact, change a character index
15877 to a code point.
15878
15879 * coding.c (coding_alloc_by_making_gap): Check the case that the
15880 source and destination are the same correctly.
15881 (decode_coding_raw_text): Set coding->consumed_char and
15882 coding->consumed to 0.
15883 (produce_chars): If coding->chars_at_source is nonzero, update
15884 coding->consumed_char and coding->consumed before calling
15885 alloc_destination.
15886 (Fdefine_coding_system_alias): Register ALIAS in
15887 Vcoding_system_alist.
15888 (syms_of_coding): Define `no-conversion' coding system at the tail.
15889
15890 * fileio.c (Finsert_file_contents): Set coding_system instead of
15891 val. If the current buffer is multibyte, always call
15892 decode_coding_gap.
15893
15894 * xfaces.c (try_font_list): Give higher priority to fontset's
15895 family than face's family.
15896
158972008-02-01 Kenichi Handa <handa@m17n.org>
15898
15899 * callproc.c (Fcall_process): Be sure to give the current buffer
15900 to decode_coding_c_string.
15901
15902 * xfaces.c (try_font_list): Give a family specified in a fontset
15903 higher priority than a family specified in a face.
15904
159052008-02-01 Kenichi Handa <handa@m17n.org>
15906
15907 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15908 Fix arguments to insert_from_buffer.
15909
15910 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15911
159122008-02-01 Kenichi Handa <handa@m17n.org>
15913
15914 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15915 (decode_coding_gap): Set coding->dst_multibyte correctly.
15916
159172008-02-01 Kenichi Handa <handa@m17n.org>
15918
15919 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15920 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15921 (encode_coding_utf_16): Substitute coding->default_char for
15922 non-Unicode characters.
15923 (decode_coding): Don't call record_insert here.
15924 (setup_coding_system): Initialize `surrogate' of
15925 coding->spec.utf_16 to 0.
15926 (EMIT_ONE_BYTE): Fix for multibyte case.
15927
15928 * insdel.c (insert_from_gap): Call record_insert.
15929
159302008-02-01 Kenichi Handa <handa@m17n.org>
15931
15932 * casefiddle.c (casify_region): Fix multibyte case.
15933
15934 * character.c (c_string_width): Add return type `int'.
15935 (char_string_with_unification): Delete arg ADVANCED.
15936
15937 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15938 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15939 (CHAR_STRING_ADVANCE): Make it do-while statement.
15940
15941 * chartab.c (sub_char_table_set_range): Optimize for the case
15942 DEPTH == 3. Add workaround code for a GCC optimization bug.
15943
15944 * charset.c (parse_charset_map): Remove an unused variable.
15945
15946 * coding.c: Delete unused variables.
15947
15948 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15949 earlier. If inserted is zero and the coding system doesn't
15950 require flushing, don't call decode_coding_gap.
15951
15952 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15953
159542008-02-01 Kenichi Handa <handa@m17n.org>
15955
15956 The following changes are for using Unicode as an internal
15957 character model, and use UTF-8 format for buffer/string
15958 representation.
15959
15960 * .gdbinit (xchartable): Adjust for the change of char table structure.
15961 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15962
15963 * Makefile.in (obj): Add character.o and chartab.o.
15964 (lisp, shortlisp): Remove utf-8.elc.
15965 (*.o): For many files, change dependency on charset.h to
15966 character.h, and add dependency on character.h.
15967 (character.o, chartab.o): New targets.
15968
15969 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15970 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15971 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15972 of "charset.h".
15973
15974 * dired.c, filelock.c: Include "character.h".
15975
15976 * alloc.c: Include "character.h" instead of "charset.h".
15977 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15978 (syms_of_alloc): Remove defsubr for Smake_char_table.
15979
15980 * buffer.c: Include "character.h" instead of "charset.h", don't
15981 include "coding.h".
15982 (Fset_buffer_multibyte): Adjust for UTF-8.
15983
15984 * buffer.h: EXFUN Fbuffer_live_p.
15985
15986 * callproc.c: Include "character.h" instead of "charset.h".
15987 (Fcall_process): Big change for the new code-conversion APIs.
15988
15989 * casetab.c: Include "character.h" instead of "charset.h".
15990 (set_canon, set_identity, shuffle): Adjust for the new
15991 map_char_table spec.
15992 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15993 accessing the char table structure.
15994
15995 * chartab.c: New file that implements char table.
15996
15997 * category.c: Include "character.h".
15998 (copy_category_entry): New function.
15999 (copy_category_table): Call map_char_table and copy_category_entry.
16000 (Fmake_category_table): Initialize all top-level slots.
16001 (char_category_set): New function.
16002 (modify_lower_category_set): Delete.
16003 (Fmodify_category_entry): Call char_table_ref_and_range.
16004
16005 * category.h (CATEGORY_SET): Just call char_category_set.
16006
16007 * ccl.c: Include "character.h".
16008 (Qccl, Qcclp): New variables.
16009 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16010 it's less than 256.
16011 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16012 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16013 and DST type.
16014 (ccl_driver): Change types of argument, adjust code accordingly.
16015 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16016 ccl_driver.
16017 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16018
16019 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16020 New members src_multibyte, dst_multibyte, consumed, and produced.
16021 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16022 (CODING_SPEC_CCL_PROGRAM): New macro.
16023 (ccl_driver): Update prototype.
16024 (Qccl, Qcclp, Fccl_program_p): Extern them.
16025 (CHECK_CCL_PROGRAM): New macro.
16026
16027 * character.c, character.h, chartab.c: New files.
16028
16029 * charset.c: Mostly re-written. Move character and multibyte sequence
16030 handling codes to character.c.
16031
16032 * charset.h: Mostly re-written. Move character and multibyte sequence
16033 handling codes to character.h.
16034
16035 * coding.c, coding.h: Mostly re-written.
16036
16037 * composite.c: Include "character.h" instead of "charset.h".
16038 (CHAR_WIDTH): Move to character.h.
16039 (HASH_KEY, HASH_VALUE): Delete.
16040
16041 * composite.h (enum composition_method): Change order of enumeration
16042 symbols.
16043
16044 * data.c: Include "character.h" instead of "charset.h".
16045 (Faref): Call CHAR_TABLE_REF for a char table.
16046 (Faset): Call CHAR_TABLE_SET for a char table.
16047
16048 * dispextern.h (free_realized_face, check_face_attribytes)
16049 (generate_ascii_font): Extern them.
16050 (free_realized_multibyte_face): Delete extern.
16051
16052 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16053 table structure.
16054
16055 * editfns.c: Include "character.h" instead of "charset.h".
16056 (Fchar_to_string): Always call CHAR_STRING.
16057
16058 * emacs.c (main): Call init_charset_once, init_charset,
16059 syms_of_chartab, and syms_of_character.
16060
16061 * fileio.c: Include "character.h" instead of "charset.h".
16062 (Finsert_file_contents): Big change for the new code-conversion API.
16063 (choose_write_coding_system, Fwrite_region): Likewise.
16064 (build_annotations_2): Delete.
16065 (e_write): Big change for the new code-conversion API.
16066
16067 * fns.c: Include "character.h" instead of "charset.h".
16068 (copy_sub_char_table): Move to chartab.c.
16069 (Fcopy_sequence): Call copy_char_table for a char table.
16070 (concat): Delete codes calling count_multibyte.
16071 (string_char_to_byte, string_byte_to_char): Adjust for the new
16072 multibyte form.
16073 (internal_equal): Adjust for the change of char table structure.
16074 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16075 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16076 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16077 (char_table_translate, optimize_sub_char_table)
16078 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16079 chartab.c.
16080 (char_table_ref_and_index): Delete.
16081 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16082 (Fmd5): Call preferred_coding_system instead of accessing
16083 Vcoding_category_list. Adjust for the new code-conversion API.
16084 (syms_of_fns): Move defsubr for char table related functions to
16085 chartab.c.
16086
16087 * fontset.c: Mostly re-written.
16088
16089 * fontset.h (struct font_info): Change type of the member encoding_type.
16090 (enum FONT_SPEC_INDEX): New enum.
16091 (fontset_font_pattern, fs_load_font): Update prototype.
16092 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16093
16094 * indent.c: Include "character.h" instead of "charset.h".
16095 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16096
16097 * insdel.c: Include "character.h" instead of "charset.h".
16098 (copy_text): Don't refer to Vnonascii_translation_table.
16099 (insert_from_gap): New function.
16100
16101 * keyboard.c: Include "character.h" instead of "charset.h".
16102 (command_loop_1): Never call direct_output_forward_char before
16103 a non-ASCII character.
16104 (read_char): If Vkeyboard_translate_table is a char table, always
16105 translate a character.
16106
16107 * keymap.c: Include "character.h".
16108 (store_in_keymap): Handle the case that IDX is a cons.
16109 (Fdefine_key): Handle the case that KEY is a cons and the car part
16110 is also a cons (range).
16111 (push_key_description): Adjust for the new character code.
16112 (describe_vector): Call describe_char_table for a char table.
16113 (describe_char_table): New function.
16114
16115 * keymap.h (describe_char_table): Extern it.
16116
16117 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16118 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16119 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16120 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16121 Delete.
16122 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16123 structure.
16124 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16125 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16126 (CHARTAB_SIZE_BITS_3): New macros.
16127 (chartab_size): Extern it.
16128 (struct Lisp_Char_Table): Re-design.
16129 (struct Lisp_Sub_Char_Table): New structure.
16130 (HASH_KEY, HASH_VALUE): Move from fns.c.
16131 (CHARACTERBITS): Define as 22.
16132 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16133 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16134 (GC_SUB_CHAR_TABLE_P): New macro.
16135 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16136 (code_convert_string_norecord): Deleted extern.
16137 (init_character_once, syms_of_character, init_charset)
16138 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16139
16140 * lread.c: Include "character.h".
16141 (read_multibyte): New arg NBYTES.
16142 (read_escape): Change the meaning of returned *BYTEREP.
16143 (to_multibyte): Delete.
16144 (read1): Adjust the handling of char table and string.
16145
16146 * print.c: Include "character.h" instead of "charset.h".
16147 (print_string): Convert 8-bit raw bytes to octal form by
16148 string_escape_byte8.
16149 (print_object): Adjust for the new multibyte form. Print 8-bit
16150 raw bytes always in octal form. Handle sub char table correctly.
16151
16152 * process.c: Include "character.h" instead of "charset.h".
16153 (read_process_output, send_process): Adjust for the new
16154 code-conversion API.
16155
16156 * puresize.h (BASE_PURESIZE): Increase.
16157
16158 * regex.c: Include "character.h" instead of "charset.h".
16159 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16160 (regex_compile): Accept a range whose starting and ending
16161 character have different leading bytes.
16162 (analyse_first): Adjust for the above change.
16163
16164 * search.c: Include "character.h" instead of "charset.h".
16165 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16166 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16167
16168 * syntax.c: Include "character.h" instead of "charset.h".
16169 (syntax_parent_lookup): Delete.
16170 (Fmodify_syntax_entry): Accept a cons as CHAR.
16171 (skip_chars): Adjust for the new multibyte form.
16172 (init_syntax_once): Call char_table_set_range instead of directly
16173 accessing the structure of a char table.
16174
16175 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16176 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16177 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16178 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16179
16180 * term.c: Include "buffer.h" and "character.h".
16181 (encode_terminal_code, write_glyphs): Adjust for the new
16182 code-conversion API.
16183 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16184
16185 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16186
16187 * xdisp.c: Include "character.h".
16188 (get_next_display_element): Adjust for the new multibyte form.
16189 (disp_char_vector): Adjust for the new char table structure.
16190 (decode_mode_spec_coding): Adjust for the new structure of
16191 coding system.
16192 (decode_mode_spec): Adjust for the new code-conversion API.
16193
16194 * xfaces.c: Include "character.h" instead of "charset.h".
16195 (load_face_font): Adjust for the change of choose_face_font and
16196 FS_LOAD_FONT.
16197 (generate_ascii_font): New function.
16198 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16199 (set_font_frame_param): Adjust for the change of choose_face_font.
16200 (free_realized_face): Make it public.
16201 (free_realized_faces_for_fontset): Rename from
16202 free_realized_multibyte_face. Free also faces realized for ASCII.
16203 (choose_face_font): Change arguments. Adjust for the change of
16204 fontset_font_pattern and FS_LOAD_FONT.
16205
16206 * xfns.c: Include "character.h".
16207 (x_encode_text): Adjust for the new code-conversion API.
16208
16209 * xselect.c: Don't include "charset.h".
16210 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16211
16212 * xterm.c: Include "character.h".
16213 (x_encode_char): New argument CHARSET. Change caller.
16214 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16215 Call ENCODE_CHAR instead of SPLIT_CHAR.
16216 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16217 CHAR_WIDTH instead of CHARSET_WIDTH.
16218 (XTread_socket): Adjust for the new code-conversion API.
16219 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16220 (x_load_font): Adjust for the change of struct font.
16221
162222008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16223
16224 * xfaces.c (face_at_buffer_position): Remove unused vars.
16225
162262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16227
16228 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16229 Fix overflow checking.
16230
162312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16232
16233 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16234 Cancel previous change.
16235
162362008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16237
16238 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16239 ccl->eight_bit_control. Fix check for buffer overflow.
16240 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16241 (ccl_driver): Initialize extra_bytes to 0.
16242
162432008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16244
16245 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16246 return it ORed with ctrl_modifier.
16247
162482008-01-29 Miles Bader <miles@gnu.org>
16249
16250 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
16251
162522008-01-28 Jason Rumney <jasonr@gnu.org>
16253
16254 * w32.c (stat): Don't double check for networked drive.
16255
162562008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
16257
16258 * window.c (run_window_configuration_change_hook): New function.
16259 Code extracted from set_window_buffer. Set the selected frame.
16260 (set_window_buffer): Use it.
16261 * window.h (run_window_configuration_change_hook): Declare.
16262 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
16263
16264 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
16265
162662008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
16267
16268 * Makefile.in: Remove references to unused macros.
16269
162702008-01-26 Eli Zaretskii <eliz@gnu.org>
16271
16272 * w32.c (g_b_init_get_sid_sub_authority)
16273 (g_b_init_get_sid_sub_authority_count): New static variables.
16274 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
16275 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
16276 (init_user_info): Use them to retrieve uid and gid.
16277 Use 500/513, the Windows defaults, as Administrator's uid/gid.
16278 (fstat): Use pw_uid and pw_gid from the_passwd structure for
16279 st_uid and st_gid of the file.
16280
162812008-01-26 Jason Rumney <jasonr@gnu.org>
16282
16283 * w32.c (logon_network_drive): New function.
16284 (stat): Use it.
16285
162862008-01-26 Chong Yidong <cyd@stupidchicken.com>
16287
16288 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
16289 invisible text covered with an ellipsis.
16290
162912008-01-25 Richard Stallman <rms@gnu.org>
16292
16293 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
16294 jump back to beginning. Move some other initializations after that.
16295 (Qwindow_text_change_functions, Vwindow_text_change_functions):
16296 New variables.
16297 (syms_of_xdisp): Init them.
16298
16299 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
16300
16301 * buffer.c (reset_buffer_local_variables):
16302 Implement `permanent-local-hook'.
16303 (Qpermanent_local_hook): New variable.
16304 (syms_of_buffer): Init and staticpro it.
16305
163062008-01-25 Michael Albinus <michael.albinus@gmx.de>
16307
16308 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
16309
163102008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
16311
16312 * fns.c (Fclrhash): Return TABLE.
16313
163142008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16315
16316 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
16317 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
16318 is set even without positional changes.
16319 (x_scroll_bar_clear): Set bar->redraw_needed_p.
16320
16321 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
16322
163232008-01-23 Jason Rumney <jasonr@gnu.org>
16324
16325 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
16326
16327 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
16328 the unicode range available in MULE by locale-coding-system.
16329 Improve dbcs lead byte detection. Set event timestamp and modifiers
16330 earlier.
16331
163322008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16333
16334 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16335 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16336 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16337 when used on child processes.
16338
163392008-01-21 Michael Albinus <michael.albinus@gmx.de>
16340
16341 * dbusbind.c (Fdbus_method_return_internal): Rename from
16342 Fdbus_method_return.
16343 (Fdbus_unregister_object): Move to dbus.el.
16344 (Fdbus_call_method, Fdbus_method_return_internal)
16345 (Fdbus_send_signal): Improve debug messages.
16346
163472008-01-20 Martin Rudalics <rudalics@gmx.at>
16348
16349 * undo.c (undo_inhibit_record_point): New variable.
16350 (syms_of_undo): Initialize it.
16351 (record_point): Don't record point when undo_inhibit_record_point
16352 is set.
16353
163542008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16355
16356 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16357
16358 * xdisp.c (Qauto_hscroll_mode): New var.
16359 (syms_of_xdisp): Initialize it.
16360 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16361 window's buffer.
16362 (hscroll_windows): Don't check automatic_hscrolling_p here.
16363
16364 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16365 vscroll if we're setting window-buffer to the value it already has.
16366
163672008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16368
16369 * m/intel386.h: Remove references to XENIX.
16370
163712008-01-17 Andreas Schwab <schwab@suse.de>
16372
16373 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16374 instead of HAVE_X86_64_LIB64_DIR.
16375 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16376
163772008-01-17 Glenn Morris <rgm@gnu.org>
16378
16379 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16380 to HAVE_X86_64_LIB64_DIR.
16381
163822008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16383
16384 * s/irix3-3.h:
16385 * s/irix4-0.h:
16386 * s/386-ix.h:
16387 * s/domain.h:
16388 * s/hpux9-x11r4.h:
16389 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16390
16391 * sysdep.c: Remove code containing references to symbols defined
16392 by unsupported systems.
16393
163942008-01-16 Glenn Morris <rgm@gnu.org>
16395
16396 * coding.c (select-safe-coding-system-function): Doc fix.
16397
163982008-01-15 Glenn Morris <rgm@gnu.org>
16399
16400 * config.in: Revert 2008-01-13 change: this is a generated file.
16401
164022008-01-13 Tom Tromey <tromey@redhat.com>
16403
16404 * lisp.h: Fix typo.
16405
164062008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16407
16408 * m/sequent-ptx.h:
16409 * m/sequent.h:
16410 * s/ptx.h:
16411 * s/ptx4-2.h:
16412 * s/ptx4.h: Remove files for systems no longer supported.
16413
16414 * callproc.c (Fcall_process): Fix previous change.
16415
164162008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16417
16418 * unexsunos4.c: Remove file, system not supported anymore.
16419
16420 * m/mips.h:
16421 * m/intel386.h:
16422 * callproc.c:
16423 * config.in:
16424 * ecrt0.c:
16425 * emacs.c:
16426 * fileio.c:
16427 * frame.c:
16428 * getpagesize.h:
16429 * keyboard.c:
16430 * lread.c:
16431 * process.c:
16432 * puresize.h:
16433 * sysdep.c:
16434 * systty.h:
16435 * syswait.h:
16436 * unexec.c:
16437 * xdisp.c:
16438 * alloc.c: Remove code containing references to symbols defined by
16439 unsupported systems.
16440
164412008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16442
16443 * coding.c (detect_coding_mask): Fix previous change.
16444
164452008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16446
16447 * coding.c (detect_coding_iso2022): New arg
16448 latin_extra_code_state. Allow Latin extra codes only
16449 when *latin_extra_code_state is nonzero.
16450 (detect_coding_mask): If there is a NULL byte, detect the encoding
16451 as UTF-16 or binary. If Latin extra codes exist, detect the
16452 encoding as ISO-2022 only when there's no other proper encoding is
16453 found.
16454
164552008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16456
16457 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16458 #ifdef MAC_OS.
16459
164602008-01-08 Richard Stallman <rms@gnu.org>
16461
16462 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16463
164642008-01-06 Nick Roberts <nickrob@snap.net.nz>
16465
16466 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16467 menu bar in parentheses.
16468
164692008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16470
16471 * m/7300.h:
16472 * m/acorn.h:
16473 * m/alliant-2800.h:
16474 * m/alliant.h:
16475 * m/alliant1.h:
16476 * m/alliant4.h:
16477 * m/altos.h:
16478 * m/amdahl.h:
16479 * m/apollo.h:
16480 * m/att3b.h:
16481 * m/aviion-intel.h:
16482 * m/aviion.h:
16483 * m/celerity.h:
16484 * m/clipper.h:
16485 * m/cnvrgnt.h:
16486 * m/convex.h:
16487 * m/cydra5.h:
16488 * m/delta88k.h:
16489 * m/dpx2.h:
16490 * m/dual.h:
16491 * m/elxsi.h:
16492 * m/f301.h:
16493 * m/gould-np1.h:
16494 * m/gould.h:
16495 * m/i860.h:
16496 * m/ibmps2-aix.h:
16497 * m/ibmrt-aix.h:
16498 * m/ibmrt.h:
16499 * m/irist.h:
16500 * m/is386.h:
16501 * m/isi-ov.h:
16502 * m/mega68.h:
16503 * m/mg1.h:
16504 * m/news-r6.h:
16505 * m/news-risc.h:
16506 * m/news.h:
16507 * m/nh3000.h:
16508 * m/nh4000.h:
16509 * m/ns16000.h:
16510 * m/ns32000.h:
16511 * m/nu.h:
16512 * m/orion.h:
16513 * m/orion105.h:
16514 * m/paragon.h:
16515 * m/pfa50.h:
16516 * m/plexus.h:
16517 * m/pyramid.h:
16518 * m/pyrmips.h:
16519 * m/sh3el.h:
16520 * m/sps7.h:
16521 * m/sr2k.h:
16522 * m/stride.h:
16523 * m/sun1.h:
16524 * m/sun2.h:
16525 * m/sun3-68881.h:
16526 * m/sun3-fpa.h:
16527 * m/sun3-soft.h:
16528 * m/sun3.h:
16529 * m/sun386.h:
16530 * m/symmetry.h:
16531 * m/tad68k.h:
16532 * m/tahoe.h:
16533 * m/targon31.h:
16534 * m/tek4300.h:
16535 * m/tekxd88.h:
16536 * m/tower32.h:
16537 * m/tower32v3.h:
16538 * m/ustation.h:
16539 * m/wicat.h:
16540 * m/xps100.h:
16541 * s/cxux.h:
16542 * s/cxux7.h:
16543 * s/dgux.h:
16544 * s/dgux4.h:
16545 * s/dgux5-4-3.h:
16546 * s/dgux5-4r2.h:
16547 * s/esix.h:
16548 * s/esix5r4.h:
16549 * s/hiuxmpp.h:
16550 * s/hiuxwe2.h:
16551 * s/iris3-5.h:
16552 * s/iris3-6.h:
16553 * s/isc2-2.h:
16554 * s/isc3-0.h:
16555 * s/isc4-0.h:
16556 * s/isc4-1.h:
16557 * s/newsos5.h:
16558 * s/newsos6.h:
16559 * s/osf1.h:
16560 * s/osf5-0.h:
16561 * s/riscix1-1.h:
16562 * s/riscix12.h:
16563 * s/sco4.h:
16564 * s/sco5.h:
16565 * s/sunos4-0.h:
16566 * s/sunos4-1.h:
16567 * s/sunos413.h:
16568 * s/sunos4shr.h:
16569 * s/umax.h:
16570 * s/unipl5-2.h:
16571 * s/xenix.h:
16572 * cxux-crt0.s:
16573 * unexapollo.c:
16574 * unexconvex.c:
16575 * unexenix.c:
16576 * unexsni.c: Remove files for systems no longer supported.
16577
16578 * m/intel386.h: Remove references to unsupported systems.
16579
16580 * w32.c (get_emacs_configuration): Remove reference to i860.
16581
16582 * sysdep.c: Remove dead code.
16583
165842008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16585
16586 * s/rtu.h:
16587 * m/masscomp.h: Remove files. Platform is obsolete.
16588
165892008-01-04 Michael Albinus <michael.albinus@gmx.de>
16590
16591 * dbusbind.c (Fdbus_method_return): New function.
16592 (xd_read_message): Add the serial number to the event.
16593 (Fdbus_register_method): Activate the function.
16594
165952008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16596
16597 * keyboard.c (read_key_sequence): Fix typo.
16598
165992008-01-03 Michael Albinus <michael.albinus@gmx.de>
16600
16601 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16602 (xd_signature, xd_append_arg): Handle element type detection for
16603 empty arrays.
16604 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16605 SDATA () calls; this must be solved more general.
16606 (Fdbus_register_signal): Use SBYTES instead of strlen.
16607
166082008-01-03 Magnus Henoch <magnus@zemdatav>
16609
16610 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16611 unsigned int for byte values (necessary for big-endian platform).
16612 (Fdbus_call_method): Handle the case of no returned arguments.
16613
166142007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16615
16616 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16617
166182007-12-31 Magnus Henoch <mange@freemail.hu>
16619
16620 * dbusbind.c (xd_signature): Signature of variant is just "v".
16621
166222007-12-30 Michael Albinus <michael.albinus@gmx.de>
16623
16624 * dbusbind.c: Fix several errors and compiler warnings.
16625 Reported by Tom Tromey <tromey@redhat.com>.
16626 (XD_ERROR, XD_DEBUG_MESSAGE)
16627 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16628 (xd_append_arg): Part for basic D-Bus types rewritten.
16629 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16630 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16631 appropriate.
16632 (xd_read_message): Return Qnil. Don't signal an error; it is not
16633 useful during event reading.
16634 (Fdbus_register_signal): Signal an error if the check for
16635 FUNCTIONP fails.
16636 (Fdbus_register_method): New function. The implementation is not
16637 complete, the call of the function signals an error therefore.
16638 (Fdbus_unregister_object): New function, renamed from
16639 Fdbus_unregister_signal. The initial check signals an error, if
16640 the object is not well formed.
16641
166422007-12-30 Richard Stallman <rms@gnu.org>
16643
16644 * textprop.c (get_char_property_and_overlay):
16645 Signal error if POSITION is out of range in a buffer.
16646
166472007-12-29 Martin Rudalics <rudalics@gmx.at>
16648
16649 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16650 because the original parameters are in pure storage now.
16651
166522007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16653
16654 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16655
166562007-12-22 Eli Zaretskii <eliz@gnu.org>
16657
16658 * callint.c (syms_of_callint) <command-history>: Add reference to
16659 history-length in the doc string.
16660
166612007-12-17 Jason Rumney <jasonr@gnu.org>
16662
16663 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16664 before passing as wParam.
16665
166662007-12-22 Michael Albinus <michael.albinus@gmx.de>
16667
16668 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16669 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16670 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16671 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16672 as number.
16673 (Fdbus_call_method): Fix docstring.
16674
166752007-12-21 Michael Albinus <michael.albinus@gmx.de>
16676
16677 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16678 New macros.
16679 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16680 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16681 Simplify.
16682 (xd_signature): New function.
16683 (xd_append_arg): Compute also signatures. Major rewrite.
16684 (xd_retrieve_arg): Make debug messages friendly.
16685 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16686 Check for signatures of arguments.
16687
166882007-12-19 Michael Albinus <michael.albinus@gmx.de>
16689
16690 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16691 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16692 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16693 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16694 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16695 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16696 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16697 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16698 (xd_retrieve_value): Remove. Functionality included in ...
16699 (xd_append_arg): New function.
16700 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16701
167022007-12-16 Michael Albinus <michael.albinus@gmx.de>
16703
16704 * dbusbind.c (top): Include <stdio.h>.
16705 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16706 dbus_message_new_method_call and dbus_message_new_signal.
16707 (Fdbus_register_signal): Rename unique_name to uname.
16708 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16709 non-existing unique name. Fix typos in matching rule. Return an
16710 object which is useful in Fdbus_unregister_signal.
16711 (Fdbus_unregister_signal): Reimplementation, in order to remove
16712 only the corresponding entry.
16713 (Vdbus_registered_functions_table): Change the order of entries.
16714 Apply these changes in xd_read_message and Fdbus_register_signal.
16715
167162007-12-16 Andreas Schwab <schwab@suse.de>
16717
16718 * fileio.c (Finsert_file_contents): Fix overflow check to not
16719 depend on undefined integer overflow.
16720
167212007-12-14 Jason Rumney <jasonr@gnu.org>
16722
16723 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16724 for characters above 127.
16725
167262007-12-13 Jason Rumney <jasonr@gnu.org>
16727
16728 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16729 before dereferencing array.
16730 (lookup_vk_code): Remove zero comparison.
16731
167322007-12-14 Michael Albinus <michael.albinus@gmx.de>
16733
16734 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16735 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16736 Use `unsigned int' instead of `uint'.
16737 (xd_read_message, Fdbus_register_signal): Split expressions into
16738 multiple lines before operators "&&" and "||", according to the
16739 GNU Coding Standards.
16740
167412007-12-14 Eli Zaretskii <eliz@gnu.org>
16742
16743 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16744
167452007-12-12 Juri Linkov <juri@jurta.org>
16746
16747 * buffer.c (Frename_buffer): In interactive spec replace
16748 `read-buffer' with `read-string' that uses `buffer-name-history'
16749 as history, and the current buffer's name as default.
16750
167512007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16752
16753 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16754 manipulating the backtrace manually.
16755 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16756 (struct backtrace, backtrace_list): Remove.
16757 (command_loop_1): Remove dead var `no_direct'.
16758
16759 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16760 preserve non-built-in buffer-local variables.
16761 (Fkill_all_local_variables): Don't re-create&re-set permanent
16762 buffer-local variables.
16763
167642007-12-09 Juri Linkov <juri@jurta.org>
16765
16766 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16767 Lisp code that uses `read-buffer' with current buffer as default.
16768
167692007-12-08 Michael Albinus <michael.albinus@gmx.de>
16770
16771 * dbusbind.c (xd_read_message): Generate an event for every
16772 registered handler. There might be several handlers registered
16773 for the same signal.
16774 (Fdbus_register_signal): Don't overwrite a registration for the
16775 same signal. Add a new registration if handlers are different.
16776 (Vdbus_registered_functions_table): Rework doc string.
16777
167782007-12-07 Michael Albinus <michael.albinus@gmx.de>
16779
16780 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16781 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16782 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16783 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16784 Unify argument lists.
16785 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16786 arguments and hash table keys. Use unique name for service.
16787 (Fdbus_unregister_signal): Remove checks.
16788 (Vdbus_registered_functions_table): Fix doc string.
16789
167902007-12-05 Magnus Henoch <mange@freemail.hu>
16791
16792 * process.c (make_process): Initialize pty_flag to 0.
16793
167942007-12-05 Jason Rumney <jasonr@gnu.org>
16795
16796 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16797 specified XBMs.
16798
167992007-12-05 Richard Stallman <rms@gnu.org>
16800
16801 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16802
168032007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16804
16805 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16806 New variable.
16807 (mac_try_close_socket) [MAC_OSX]: New function.
16808 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16809 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16810
16811 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16812 Use mac_try_close_socket.
16813
168142007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16815
16816 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16817 reloc_base.
16818 (copy_dysymtab): Compute relocation base here.
16819 (rebase_reloc_address) [__ppc64__]: New function.
16820 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16821 changed.
16822
168232007-12-05 Jason Rumney <jasonr@gnu.org>
16824
16825 * w32proc.c (sys_spawnve): Quote args with wildcards.
16826
168272007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16828
16829 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16830 __objc_* sections.
16831 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16832
168332007-12-05 Michael Albinus <michael.albinus@gmx.de>
16834
16835 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16836 Move check for Vdbus_registered_functions_table to
16837 xd_read_queued_messages.
16838 (xd_read_queued_messages): Protect xd_read_message calls by
16839 internal_condition_case_1.
16840
168412007-12-04 Michael Albinus <michael.albinus@gmx.de>
16842
16843 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16844 Qdbus_system_bus and Qdbus_session_bus, respectively.
16845 (Vdbus_intern_symbols): Remove.
16846 (Vdbus_registered_functions_table): New hash table.
16847 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16848 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16849 Rewrite in order to manage registered functions by hash table
16850 Vdbus_registered_functions_table.
16851
168522007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16853
16854 * xterm.c: Update URL to Window Manager Specification in comment.
16855
168562007-12-02 Michael Albinus <michael.albinus@gmx.de>
16857
16858 * config.in (HAVE_DBUS): Add.
16859
16860 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16861 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16862 (obj): Add $(DBUS_OBJ).
16863 (LIBES): Add $(DBUS_LIBS).
16864 (dbusbind.o): New target.
16865
16866 * dbusbind.c: New file.
16867
16868 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16869
16870 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16871 (Qdbus_event): New Lisp symbol.
16872 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16873 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16874 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16875
16876 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16877
168782007-12-01 Richard Stallman <rms@gnu.org>
16879
16880 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16881
168822007-11-30 Jason Rumney <jasonr@gnu.org>
16883
16884 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16885 (w32con_reset_terminal_modes): Clear screen buffer.
16886 (w32_face_attributes): Don't use color indexes that are out of range.
16887 Only reverse the default colors.
16888
16889 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16890 WINDOWSNT.
16891
16892 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16893
168942007-11-29 Jason Rumney <jasonr@gnu.org>
16895
16896 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16897 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16898 if the terminal colors are initialized.
16899 (unspecified_fg, unspecified_bg): Remove unused declarations.
16900
169012007-11-29 Andreas Schwab <schwab@suse.de>
16902
16903 * keyboard.c (apply_modifiers): Fix typo.
16904
169052007-11-29 Richard Stallman <rms@gnu.org>
16906
16907 * keymap.c (Fcurrent_local_map): Doc fix.
16908
169092007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16910
16911 * s/gnu-kfreebsd.h: New file.
16912
169132007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16914
16915 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16916 Don't cast redundantly.
16917
16918 * keyboard.c (KEY_TO_CHAR): New macro.
16919 (parse_modifiers, apply_modifiers): Accept integer arguments.
16920 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16921 for chars and symbol keys.
16922 After doing such remapping, apply function-key-map again.
16923
169242007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16925
16926 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16927 compiled anymore.
16928
169292007-11-26 Andreas Schwab <schwab@suse.de>
16930
16931 * process.c (list_processes_1): Fix indentation level of the
16932 command column.
16933
169342007-11-23 Andreas Schwab <schwab@suse.de>
16935
16936 * editfns.c (Fformat): Handle %c specially since it requires the
16937 argument to be of type int.
16938
169392007-11-23 Markus Triska <markus.triska@gmx.at>
16940
16941 * emacs.c (main): Call init_editfns before init_process, since
16942 init_process sets Vprocess_connection_type depending on OS release.
16943
169442007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16945
16946 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16947 (find_symbol_value): Use do_symval_forwarding.
16948
16949 * data.c (set_internal): Set the value in the `cons-cell' (for
16950 Buffer_Local_values) not only for frame-local variables.
16951
169522007-11-22 Andreas Schwab <schwab@suse.de>
16953
16954 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16955 values to sprintf.
16956 * keymap.c (Fsingle_key_description): Likewise.
16957 * print.c (print_object): Likewise.
16958
169592007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16960
16961 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16962 file for image is nil.
16963
169642007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16965
16966 * term.c: Include stdarg.h.
16967 (fatal): Implement using varargs.
16968 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16969
169702007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16971
16972 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16973 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16974 Update call to buffer_slot_type_mismatch.
16975 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16976 (buffer_slot_type_mismatch): Update.
16977 * buffer.c (buffer_local_types): Remove.
16978 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16979 (defvar_per_buffer): Set the type in the buffer_objfwd.
16980
169812007-11-21 Jason Rumney <jasonr@gnu.org>
16982
16983 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16984 CreateFileMapping returns NULL on failure.
16985
169862007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16987
16988 * search.c (Fset_match_data): Remove the `evaporate' feature.
16989 (unwind_set_match_data): Don't use the `evaporate' feature.
16990
169912007-11-21 Jason Rumney <jasonr@gnu.org>
16992
16993 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16994
16995 * w32console.c (w32con_write_glyphs): Remove unused variables.
16996
169972007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16998
16999 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17000
17001 * s/darwin.h (MULTI_KBOARD): Remove.
17002
17003 * macfns.c (x_create_tip_frame, Fx_create_frame)
17004 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17005
170062007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17007
17008 * buffer.c (Fbuffer_local_value): Remove redundant test.
17009 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17010 than in `current-buffer' to match the comment.
17011 Do the swap using swap_in_global_binding.
17012
17013 * data.c (store_symval_forwarding, set_internal):
17014 * eval.c (specbind): Remove dead code.
17015
17016 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17017 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17018 Since we do not want to see internal Lisp_*fwd objects here.
17019
170202007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17021
17022 * sysdep.c (init_system_name): Use getaddrinfo if available.
17023
17024 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17025 (x_scroll_bar_note_movement): start, end, with, height in struct
17026 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17027
170282007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17029
17030 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17031
170322007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17033
17034 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17035 This undoes Richard's change of 14-Oct-2002.
17036
17037 * alloc.c (allocate_other_vector):
17038 * lisp.h (allocate_other_vector): Remove.
17039
17040 * window.c (struct save_window_data): Move non-lisp data to the end
17041 and make it `int' rather than Lisp_Object.
17042 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17043 Done wrap/unwrap integer values.
17044 (Fset_window_configuration, compare_window_configurations):
17045 Update use of fields to their new types.
17046
17047 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17048 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17049 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17050 (SET_SCROLL_BAR_X_WINDOW): Remove.
17051 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17052 Access the new x_window field directly.
17053 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17054 Don't wrap/unwrap integers into Lisp_Objects.
17055 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17056 (x_scroll_bar_report_motion):
17057 Don't wrap/unwrap integers into Lisp_Objects.
17058 (x_term_init): Use SDATA.
17059 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17060 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17061 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17062 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17063 * xfns.c (x_set_background_color):
17064 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17065 Access the new x_window field directly.
17066
17067 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17068 (allocate_pseudovector): Make non-static.
17069
17070 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17071 (allocate_pseudovector): Declare.
17072 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17073
170742007-11-15 Andreas Schwab <schwab@suse.de>
17075
17076 * editfns.c (Fformat): Correctly format EMACS_INT values.
17077 Also take precision into account when formatting an integer.
17078
17079 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17080
170812007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17082
17083 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17084 (syms_of_keyboard): Defsubr it.
17085
17086 * data.c (swap_in_global_binding): Fix longstanding bug where
17087 store_symval_forwarding was not called with the right second argument,
17088 thus causing objfwd-ing from being dropped.
17089
170902007-11-14 Juanma Barranquero <lekktu@gmail.com>
17091
17092 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17093 (Fx_display_pixel_height, Fx_display_planes)
17094 (Fx_display_color_cells, Fx_server_max_request_size)
17095 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17096 (Fx_display_visual_class, Fx_display_save_under):
17097 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17098 (Fx_display_pixel_height, Fx_display_planes)
17099 (Fx_display_color_cells, Fx_server_max_request_size)
17100 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17101 (Fx_display_mm_height, Fx_display_mm_width)
17102 (Fx_display_backing_store, Fx_display_visual_class)
17103 (Fw32_select_font, Fx_display_save_under):
17104 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17105 (Fx_display_pixel_height, Fx_display_planes)
17106 (Fx_display_color_cells, Fx_server_max_request_size)
17107 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17108 (Fx_display_save_under): Fix typos in docstrings.
17109
171102007-11-14 Juanma Barranquero <lekktu@gmail.com>
17111
17112 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17113 corresponding to deleted entries; they are an implementation detail.
17114 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17115 Remove variables.
17116 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17117 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17118 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17119 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17120 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17121 (Fw32_define_rgb_color, Fw32_load_color_file)
17122 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17123 Fix typos in docstrings.
17124 (Fx_server_version): Reflow docstring.
17125 (Fw32_shell_execute): Doc fixes.
17126
171272007-11-13 Juanma Barranquero <lekktu@gmail.com>
17128
17129 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17130 if w32_parse_hot_key returned nil.
17131
171322007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17133
17134 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17135
171362007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17137
aac0c6e3
MR
17138 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17139
17140 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17141
17142 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17143 Remove W32_SCROLL_BAR_CLICK_EVENT.
17144
17145 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17146 Add MULTIMEDIA_KEY_EVENT.
17147
17148 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17149 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17150 (make_lispy_event) [WINDOWSNT]: Use it to translate
17151 MULTIMEDIA_KEY_EVENT.
17152
17153 * w32term.h (WM_APPCOMMAND): Define if not already.
17154 (GET_APPCOMMAND_LPARAM): Likewise.
17155
17156 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17157 WM_APPCOMMAND.
17158
17159 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17160 (syms_of_w32fns): Export and initialize it.
17161 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17162
171632007-11-09 Chong Yidong <cyd@stupidchicken.com>
17164
17165 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17166 twice.
17167
17168 * xdisp.c (handle_face_prop): Fix last change.
17169
171702007-11-09 Richard Stallman <rms@gnu.org>
17171
17172 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17173 not just for after-strings and before-strings.
17174 Call face_for_overlay_string and pass the overlay to it.
17175 (handle_display_prop): Determine whether property came from an overlay.
17176 Pass OVERLAY arg to handle_single_display_spec.
17177 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17178 (load_overlay_strings): Fill in it->string_overlays.
17179 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17180
17181 * xfaces.c (face_for_overlay_string): Function renamed from
17182 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17183
17184 * dispextern.h (struct it): New elt string_overlays.
17185 New elt from_overlay, also in stack.
17186 Rearrange a few elements.
17187 (face_for_overlay_string): Decl renamed from
17188 face_at_buffer_position_no_overlays, and add argument.
17189
171902007-11-09 Richard Stallman <rms@gnu.org>
17191
17192 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17193 to get the base face for an overlay string.
17194
17195 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17196
17197 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17198
17199 * xdisp.c (handle_stop): Move some code out of loop.
17200
172012007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17202
17203 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17204 Fix conversion from Lisp object to ATSUFontID.
17205
172062007-11-09 Jason Rumney <jasonr@gnu.org>
17207
17208 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17209
172102007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17211
17212 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17213 Don't assume regions are aligned to page boundary.
17214 (print_load_command_name): Add LC_UUID if defined.
17215
172162007-11-09 Richard Stallman <rms@gnu.org>
17217
17218 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17219
172202007-11-07 Jason Rumney <jasonr@gnu.org>
17221
17222 * s/windows95.h: Remove.
17223
172242007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17225
17226 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17227 abort with a message on unhandled store_type values.
17228
172292007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17230
17231 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17232 Remove HAVE_X11R5 and HAVE_X11R4.
17233
172342007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17235
17236 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17237
172382007-11-01 Johan Bockgård <bojohan@gnu.org>
17239
17240 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17241 Don't set s->stippled_p here, since it has already been set by
17242 x_set_glyph_string_gc from x_draw_glyph_string.
17243
172442007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17245
17246 * sunfns.c: Remove file.
17247
17248 * m/sun386.h:
17249 * m/sun2.h:
17250 * m/sparc.h: Remove Sun windows code.
17251
172522007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
17253
17254 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
17255 (init_keyboard): Set current_kboard's window-system to nil.
17256 (tty_read_avail_input): Typo.
17257 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
17258
172592007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
17260
17261 * s/usg5-4.h:
17262 * s/usg5-3.h:
17263 * s/ptx.h:
17264 * m/is386.h:
17265 * m/ibmps2-aix.h:
17266 * Makefile.in: Remove all mentions of X10.
17267
17268 * dispnew.c (syms_of_display): Don't mention version 10.
17269
172702007-10-28 Juanma Barranquero <lekktu@gmail.com>
17271
17272 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
17273 ($(BLD)/abbrev.$(O)): Remove.
17274
172752007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
17276
17277 Rewrite abbrev.c in Elisp.
17278 * image.c (Qcount): Don't declare as extern.
17279 (syms_of_image): Initialize and staticpro `Qcount'.
17280 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
17281 * emacs.c (main): Don't call syms_of_abbrev.
17282 * Makefile.in (obj): Remove abbrev.o.
17283 (abbrev.o): Remove.
17284 * abbrev.c: Remove.
17285
172862007-10-26 Martin Rudalics <rudalics@gmx.at>
17287
17288 * window.c (window_min_size_2): Don't count header-line.
17289
172902007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
17291
17292 * frame.h (struct frame): Move all bit fields after the first bit
17293 field to take advantage of the available space. Group all the
17294 chars together to reduce wasted space due to padding.
17295
172962007-10-26 Juanma Barranquero <lekktu@gmail.com>
17297
17298 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
17299
17300 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
17301 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
17302 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
17303 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
17304 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
17305 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
17306 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
17307 (last_marked, mark_object_loop_halt): Make static.
17308
17309 * frame.c (syms_of_frame) <delete-frame-functions>:
17310 Fix typo in docstring.
17311
173122007-10-25 Juanma Barranquero <lekktu@gmail.com>
17313
17314 * w32.c (init_environment): Fix tiny memory leak.
17315 (w32_get_resource): Remove unused variable `ok'.
17316
173172007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
17318
17319 Make `window-system' into a keyboard-local variable (rather than
17320 frame-local as done originally by multi-tty).
17321
17322 * keyboard.h (struct kboard): Add Vwindow_system.
17323 * keyboard.c (init_kboard): Set a default for Vwindow_system.
17324 (mark_kboards): Mark Vwindow_system.
17325
17326 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
17327 (init_display): Don't set the obsolete `window-system' frame-param.
17328
17329 * xterm.c (x_term_init):
17330 * w32term.c (w32_create_terminal):
17331 * term.c (init_tty): Set Vwindow_system.
17332 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
17333 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
17334
17335 * xfns.c (Fx_create_frame, x_create_tip_frame):
17336 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17337 * macfns.c (Fx_create_frame):
17338 Don't set the obsolete `window-system' frame-param.
17339
17340 * frame.h (Qwindow_system): Remove.
17341 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17342 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17343
173442007-10-24 Richard Stallman <rms@gnu.org>
17345
17346 * frame.c (x_figure_window_size): For fullscreen case,
17347 set USPosition | PPosition without clobbering rest of window_prompting.
17348
17349 * keyboard.c (Fcurrent_idle_time): Doc fix.
17350
17351 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17352
173532007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17354
17355 * process.c (unwind_request_sigio): Only define if __ultrix__.
17356
17357 * callproc.c (child_setup): Remove spurious *.
17358
17359 * lisp.h (Fget_text_property): Declare.
17360 (have_menus_p): Declare it here rather than in sys-dep header files.
17361 * macterm.h (have_menus_p):
17362 * msdos.h (have_menus_p):
17363 * xterm.h (have_menus_p): Remove.
17364
17365 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17366 (Fmake_variable_frame_local): Just check the variable's const-ness
17367 rather than checking nil or t.
17368
173692007-10-22 Jason Rumney <jasonr@gnu.org>
17370
17371 * w32fns.c: Include math.h.
17372 (w32_abort): Declaration moved to nt/config.nt.
17373
17374 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17375 (abort): Redefinition moved to nt/config.nt.
17376
17377 * m/windowsnt.h: Remove.
17378
173792007-10-22 Juanma Barranquero <lekktu@gmail.com>
17380
17381 * emacs.c (Fdump_emacs): Fix typo in message.
17382 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17383 <installation-directory>: Reflow docstring.
17384
173852007-10-22 Juri Linkov <juri@jurta.org>
17386
17387 * minibuf.c: Allow minibuffer default to be a list of default values.
17388 With empty input use the first element of this list as returned default.
17389 (string_to_object)
17390 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17391 (read_minibuf): If defalt is cons, set histstring to its car.
17392 (Fread_string): If default_value is cons, set val to its car.
17393 (Fread_buffer): If def is cons, use its car.
17394 (Fcompleting_read): If defalt is cons, set val to its car.
17395
173962007-10-21 Michael Albinus <michael.albinus@gmx.de>
17397
17398 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17399
174002007-10-20 Juanma Barranquero <lekktu@gmail.com>
17401
17402 * doc.c (Fdocumentation): Check for advice in all cases.
17403
174042007-10-19 Chong Yidong <cyd@stupidchicken.com>
17405
17406 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17407
174082007-10-19 Richard Stallman <rms@gnu.org>
17409
17410 * doc.c (Fdocumentation): Check for and handle an advised function.
17411
174122007-10-19 Juanma Barranquero <lekktu@gmail.com>
17413
17414 * process.c (Fset_process_filter): Doc fix.
17415
174162007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17417
17418 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17419 which caused key-translation-map to applied repeatedly (thus breaking
17420 double-mode).
17421
174222007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17423
17424 * xselect.c (x_own_selection, x_handle_selection_clear)
17425 (x_clear_frame_selections):
17426 * w32menu.c (list_of_panes, list_of_items):
17427 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17428 * textprop.c (validate_plist, interval_has_all_properties)
17429 (interval_has_some_properties, interval_has_some_properties_list)
17430 (add_properties, text_property_list):
17431 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17432 * minibuf.c (Fassoc_string):
17433 * macselect.c (x_own_selection, x_clear_frame_selections)
17434 (Fx_disown_selection_internal):
17435 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17436 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17437
174382007-10-17 Chong Yidong <cyd@stupidchicken.com>
17439
17440 * process.c: Link to libs for calling res_init() if available.
17441 (Fmake_network_process): Call res_init() before getaddrinfo or
17442 gethostbyname, if possible.
17443
174442007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17445
17446 * lread.c (read1): Set pvectype for char_tables.
17447
17448 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17449 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17450 Add type checks.
17451 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17452
17453 * alloc.c (free_misc): Use XMISCTYPE.
17454 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17455
174562007-10-17 Glenn Morris <rgm@gnu.org>
17457
17458 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17459 (syms_of_minibuf): Add Qcompletion_ignore_case.
17460 * dired.c (Qcompletion_ignore_case): Change to external.
17461 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17462 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17463 (Fread_file_name): Use it rather than intern'ing.
17464
17465 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17466 (Fread_coding_system): Ignore case of user input.
17467
174682007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17469
17470 * xdisp.c (handle_display_prop): Ignore display specs after
17471 replacing one when string text is being replaced.
17472 (handle_single_display_spec): Pretend as if characters with display
17473 property haven't been consumed only when buffer text is being replaced.
17474
174752007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17476
17477 * xfns.c (Fx_create_frame, Fx_display_list):
17478 * window.c (window_fixed_size_p, enlarge_window)
17479 (shrink_window_lowest_first):
17480 * macterm.c (init_font_name_table):
17481 * macfns.c (Fx_create_frame, Fx_display_list):
17482 * lread.c (close_load_descs):
17483 * keyboard.c (read_char_x_menu_prompt):
17484 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17485 * coding.c (code_convert_region_unwind): Test the type of an object
17486 rather than just !NILP before extracting data from it.
17487
17488 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17489
17490 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17491 (XMISCANY): New macro.
17492 (XMISCTYPE): Use it.
17493 (struct Lisp_Misc_Any): New type.
17494 (union Lisp_Misc): Use it.
17495 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17496 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17497 (find_symbol_value, set_internal, default_value, Fset_default)
17498 (Fmake_variable_buffer_local, Fmake_local_variable)
17499 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17500 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17501 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17502 * alloc.c (allocate_buffer): Set the size and tag.
17503 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17504 Use XMISCANY.
17505 (die): Follow the GNU convention for error messages.
17506 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17507 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17508 tag any more.
17509 (set_buffer_internal_1):
17510 * frame.c (store_frame_param):
17511 * eval.c (specbind):
17512 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17513
17514 * doc.c (Fsnarf_documentation): Simplify.
17515
175162007-10-14 Juanma Barranquero <lekktu@gmail.com>
17517
17518 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17519 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17520
175212007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17522
17523 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17524
175252007-10-14 Juanma Barranquero <lekktu@gmail.com>
17526
17527 * eval.c (do_autoload): Don't save autoloads.
17528
17529 * data.c (Ffset): Save autoload of the function being set.
17530
175312007-10-07 John Paul Wallington <jpw@pobox.com>
17532
17533 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17534 parameter before setting up faces.
17535
175362007-10-13 Eli Zaretskii <eliz@gnu.org>
17537
17538 * ccl.c (Fregister_code_conversion_map):
17539 * keyboard.c (append_tool_bar_item): Reformat last change.
17540
17541 * lisp.h (eabs): Rename from `abs'. All callers changed.
17542
175432007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17544
17545 * buffer.c (add_overlay_mod_hooklist):
17546 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17547 * fontset.c (make_fontset):
17548 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17549 (append_tool_bar_item):
17550 * macmenu.c (grow_menu_items):
17551 * w32menu.c (grow_menu_items):
17552 * xmenu.c (grow_menu_items): Use larger_vector.
17553
175542007-10-13 Eli Zaretskii <eliz@gnu.org>
17555
17556 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17557 selected frame'' on MSDOS).
17558
175592007-10-12 Martin Rudalics <rudalics@gmx.at>
17560
17561 * frame.c (Qexplicit_name): New variable.
17562 (x_report_frame_params): Report it in parameter alist.
17563 (syms_of_frame): Intern and staticpro it.
17564
175652007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17566
17567 * macfns.c (x_create_tip_frame): Set terminal for frame.
17568
175692007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17570
17571 * frame.c (Qenvironment): Remove.
17572 (syms_of_frame) <Qenvironment>: Don't initialize.
17573 (Fdelete_frame): Don't treat the `environment' param specially.
17574 * frame.h (Qenvironment): Don't declare.
17575 * callproc.c (set_initial_environment): Don't set unused frame param.
17576
17577 * frame.c (Fframe_with_environment): Remove.
17578 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17579
17580 * lisp.h (Fframe_with_environment): Don't declare.
17581
175822007-10-10 Juanma Barranquero <lekktu@gmail.com>
17583
17584 * indent.c (indent_tabs_mode, last_known_column)
17585 (last_known_column_modified): Make static.
17586 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17587
175882007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17589
17590 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17591
175922007-10-09 Jason Rumney <jasonr@gnu.org>
17593
17594 * w32term.c (x_set_window_size): Disable code that attempts to tell
17595 Lisp code about a size change before it actually happens.
17596
175972007-10-09 Richard Stallman <rms@gnu.org>
17598
17599 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17600 return HANDLED_RETURN.
17601
176022007-10-08 Martin Rudalics <rudalics@gmx.at>
17603
17604 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17605 when there's an unread command event.
17606
17607 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17608 window autoselection act appropriately when leaving selected frame.
17609 (syms_of_frame): Initialize focus_follows_mouse.
17610 * frame.h (focus_follows_mouse): Extern it.
17611 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17612 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17613 * msdos.c (dos_rawgetc): Likewise.
17614 * w32term.c (w32_read_socket): Likewise.
17615 * xterm.c (handle_one_xevent): Likewise.
17616 * xdisp.c (syms_of_xdisp): In doc-string of
17617 mouse-autoselect-window mention focus-follows-mouse.
17618
176192007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17620
17621 * macterm.c (mac_load_query_font): Fix missing return value.
17622 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17623 Add BLOCK_INPUT.
17624
176252007-10-08 Richard Stallman <rms@gnu.org>
17626
17627 * xdisp.c (get_window_cursor_type): Implement documented behavior
17628 for cursor-in-non-selected-windows = t.
17629
176302007-10-08 Jason Rumney <jasonr@gnu.org>
17631
17632 * w32.c (w32_get_resource): Always close registry keys.
17633
176342007-10-08 Jason Rumney <jasonr@gnu.org>
17635
17636 * makefile.w32-in (LIBS): Add COMCTL32.
17637
17638 * w32fns.c (globals_of_w32fns): Init common controls.
17639
176402007-10-08 Richard Stallman <rms@gnu.org>
17641
17642 * image.c (our_memory_buffer): Rename from omfib_buffer.
17643
176442007-10-08 Richard Stallman <rms@gnu.org>
17645
17646 * buffer.c (Foverlays_at): Doc fix.
17647
176482007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17649
17650 * fns.c (Fplist_put): Preserve uneven tail data.
17651
176522007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17653
17654 * termhooks.h (enum event_kind): Remove trailing comma.
17655
17656 * frame.h (enum): Remove trailing comma.
17657
176582007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17659
17660 * w32proc.c (delete_child): Don't terminate threads of zombies.
17661
176622007-10-08 Martin Rudalics <rudalics@gmx.at>
17663
17664 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17665
17666 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17667 last-repeatable-command.
17668 (init_kboard): Initialize Vlast_repeatable_command.
17669 (command_loop_1): Set it to real_this_command unless that was
17670 bound to an input event.
17671 (mark_kboards): Mark it.
17672
176732007-10-08 Richard Stallman <rms@gnu.org>
17674
17675 * eval.c (condition-case): Doc fix.
17676
176772007-10-08 Masatake YAMATO <jet@gyve.org>
17678
17679 * xfaces.c (tty_supports_face_attributes_p): Fix code
17680 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17681 was copied and not edited.
17682
176832007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17684
17685 Add new `input-decode-map' keymap and use it for terminal
17686 escape sequences.
17687 * keyboard.h (struct kboard): Add Vinput_decode_map.
17688 Remove Vlocal_key_translation_map.
17689 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17690 (init_kboard): Init input-decode-map.
17691 Replace local-key-translation-map back with key-translation-map.
17692 (syms_of_keyboard): Declare input-decode-map.
17693 Remove local-key-translation-map. Update docstrings.
17694 (mark_kboards): Mark Vinput_decode_map.
17695 Don't mark Vlocal_key_translation_map.
17696 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17697 Replace local-key-translation-map back with key-translation-map.
17698 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17699 Bind in input-decode-map rather than function-key-map.
17700
17701 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17702 This was made redundant by the previous introduction of XSETPVECTYPE.
17703
177042007-10-09 Richard Stallman <rms@gnu.org>
17705
17706 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17707
177082007-09-29 Richard Stallman <rms@gnu.org>
17709
17710 * eval.c (internal_condition_case_2, internal_condition_case_1)
17711 (internal_condition_case): Reenable abort if x_catching_errors ()
17712 to see if that really happens and why.
17713
177142007-10-06 Andreas Schwab <schwab@suse.de>
17715
17716 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17717
177182007-10-04 Juanma Barranquero <lekktu@gmail.com>
17719
17720 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17721
177222007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17723
17724 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17725
177262007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17727
17728 * window.h (struct window):
17729 * window.c (struct save_window_data, struct saved_window):
17730 * termhooks.h (struct terminal):
17731 * process.h (struct Lisp_Process):
17732 * frame.h (struct frame):
17733 * buffer.h (struct buffer):
17734 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17735 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17736 The size field of (pseudo)vectors is now unsigned.
17737 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17738
17739 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17740 Turn `count' into an integer.
17741
17742 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17743 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17744 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17745 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17746 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17747
17748 * alloc.c (allocate_pseudovector): New fun.
17749 (ALLOCATE_PSEUDOVECTOR): New macro.
17750 (allocate_window, allocate_terminal, allocate_frame)
17751 (allocate_process): Use it.
17752 (mark_vectorlike): New function.
17753 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17754 (mark_terminals): Use it.
17755 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17756 (Fmake_byte_code): Use XSETPVECTYPE.
17757
17758 * frame.c (Fframe_parameters): Minor simplification.
17759
17760 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17761
17762 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17763
17764 * buffer.c (Fget_buffer_create, init_buffer_once):
17765 * lread.c (defsubr):
17766 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17767
17768 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17769 defined differently in the m/*.h files.
17770 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17771 (XSETPVECTYPE): New macro.
17772 (XSETPSEUDOVECTOR): Use it.
17773
17774 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17775 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17776
17777 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17778 * lread.c (defvar_per_buffer):
17779 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17780
17781 * window.c (candidate_window_p): Only consider as visible frames that
17782 are on the same terminal.
17783
17784 * m/ibms390x.h (MARKBIT): Remove unused macro.
17785
177862007-10-01 Juanma Barranquero <lekktu@gmail.com>
17787
17788 * lread.c (Fload): Fix typo in docstring.
17789
177902007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17791
17792 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17793 of a non-zero value can't yield zero.
17794
177952007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17796
17797 * term.c (term_clear_mouse_face, term_mouse_highlight)
17798 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17799
17800 * print.c (safe_debug_print): Use XHASH.
17801
17802 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17803 Lisp elements such as tags.
17804 (XHASH): New macro.
17805 (EQ): Use it.
17806 (SREF, SSET, STRING_COPYIN): Use SDATA.
17807 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17808
17809 * alloc.c (mark_terminal): Remove left-over declaration.
17810 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17811 (allocate_vectorlike): Remove type argument. Adjust callers.
17812 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17813 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17814
17815 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17816 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17817 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17818 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17819 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17820 Use them.
17821
17822 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17823 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17824 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17825
178262007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17827
17828 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17829 loaded by default.
17830
178312007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17832
17833 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17834 on this tty.
17835 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17836
17837 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17838 Update all users.
17839 (handle_one_term_event): Use Gpm_DrawPointer.
17840 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17841 Signal errors instead of returning nil. Always return nil.
17842 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17843 Make it a noop if gpm-mouse was not activated.
17844 (syms_of_term): Update names.
17845
178462007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17847
17848 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17849 (init_sys_modes): Check that gpm_tty is the current tty.
17850
17851 * alloc.c (allocate_terminal): Set the vector size to only count the
17852 lisp fields. Initialize those to nil.
17853 (mark_object): Don't treat terminals specially.
17854 (mark_terminal): Remove.
17855 (mark_terminals): Use mark_object instead.
17856
17857 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17858 the GC to the beginning.
17859
17860 * indent.h:
17861 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17862
17863 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17864
178652007-09-25 Jason Rumney <jasonr@gnu.org>
17866
17867 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17868
17869 * w32console.c (create_w32cons_output): Remove.
17870
17871 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17872
17873 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17874 (reset_sys_modes): Use reset_terminal_modes_hook.
17875
178762007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17877
17878 * eval.c (do_autoload): Don't output any message.
17879
178802007-09-24 Juri Linkov <juri@jurta.org>
17881
17882 * emacs.c (standard_args): Change priority of "--no-splash"
17883 from 40 to 3. Add "--no-desktop" with the same priority.
17884
178852007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17886
17887 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17888 and optimize the case where they are all 1.
17889
178902007-09-23 Johannes Weiner <hannes@saeurebad.de>
17891
17892 * lisp.h (abs): Define if not defined.
17893 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17894 Don't define `abs', since it's defined in lisp.h.
17895
178962007-09-22 Eli Zaretskii <eliz@gnu.org>
17897
17898 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17899 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17900 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17901 (init_tty): Use DEV_TTY instead of "/dev/tty".
17902 [WINDOWSNT]: No need to protect from NAME arg being null.
17903
179042007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17905
17906 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17907 up the tty state.
17908
179092007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17910
17911 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17912 (gpm_tty): Change its type.
17913 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17914 (gpm_tty): Change its type and initialize it.
17915 (Fterm_open_connection): Check the frame is indeed a tty.
17916 Use the new gpm_tty.
17917 (Fterm_close_connection): Use the new gpm_tty.
17918 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17919 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17920
179212007-09-21 Juanma Barranquero <lekktu@gmail.com>
17922
17923 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17924 underline_color, to draw strike-through.
17925
179262007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17927
17928 * lisp.h (allocate_terminal): Declare.
17929
17930 * window.c (candidate_window_p): Consider frames that are being placed
17931 by the user as somewhere between visible and iconified.
17932 (window_loop): Prefer windows on the current frame.
17933 (Fselect_window): Move the use of select-frame to the beginning so we
17934 can just delegate all the work (it'll call us back anyway).
17935
17936 * frame.c (Qdisplay_environment_variable):
17937 * frame.h (Qdisplay_environment_variable): Delete.
17938
17939 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17940 of the first arg, since that value may be a union.
17941
17942 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17943 parameter rather than Qdisplay_environment_variable. If all else
17944 fails, look for DISPLAY in initial-environment.
17945
179462007-09-21 Glenn Morris <rgm@gnu.org>
17947
17948 * Makefile.in (emacstool): Remove target.
17949 (lisp, shortlisp): Remove termdev.elc.
17950
179512007-09-21 Markus Triska <markus.triska@gmx.at>
17952
17953 * xterm.c (x_delete_display): Compile session management conditionally.
17954
179552007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17956
17957 * callproc.c (getenv_internal_1): New function.
17958 (getenv_internal): Use it.
17959 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17960
17961 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17962 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17963 (Fset_terminal_parameter): Work with dead terminals as well.
17964 (Fmodify_terminal_parameters): Remove.
17965
17966 * terminal.c (get_terminal): Handle terminals.
17967 Make sure the terminal returned is live.
17968 (create_terminal): Use allocate_terminal.
17969 (mark_terminals): Move to alloc.c.
17970 (delete_terminal): Use terminal->name as liveness status.
17971 NULL out fields after freeing their contents.
17972 Don't deallocate the object.
17973 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17974 rather than an int.
17975 (Fterminal_live_p): Accept non-integer arguments.
17976 (Fterminal_list): Return terminal objects rather than an ints.
17977
17978 * alloc.c (enum mem_type): New member for `terminal' objects.
17979 (allocate_terminal): New function.
17980 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17981 Handle terminals.
17982 (mark_terminal): New fun.
17983 (mark_terminals): Move from terminal.c.
17984
17985 * term.c (get_tty_terminal): Don't treat output_initial specially.
17986 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17987 (delete_tty): Use terminal->name as liveness status.
17988
17989 * termhooks.h (struct terminal): Make it into a pseudovector.
17990 Remove `deleted' replaced by checking `name's nullness.
17991
17992 * print.c (print_object): Handle terminals.
17993
17994 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17995 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17996
17997 * frame.c (make_terminal_frame):
17998 * keyboard.c (tty_read_avail_input):
17999 * w32term.c (x_delete_terminal):
18000 * xfns.c (Fx_create_frame, x_create_tip_frame):
18001 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18002
180032007-09-20 Glenn Morris <rgm@gnu.org>
18004
18005 * process.c (Fmake_network_process): Doc fix.
18006
180072007-09-19 Jason Rumney <jasonr@gnu.org>
18008
18009 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18010
180112007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18012
18013 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18014 Fix a C warning regarding variable constness.
18015
18016 * xterm.c (handle_one_xevent): Fix a C warning.
18017
180182007-09-18 Jason Rumney <jasonr@gnu.org>
18019
18020 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18021
180222007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18023
18024 * gtkutil.c (gdpy_def): New variable.
18025 (xg_initialize): Initialize gdpy_def.
18026 (xg_display_close): If no other display exists, set gdpy_def to a
18027 new connection.
18028
180292007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18030
18031 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18032 when we have no file name for the icon.
18033 (xg_tool_bar_expose_callback): Remove.
18034 (xg_create_tool_bar): Don't connect expose signal to
18035 xg_tool_bar_expose_callback.
18036 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18037
180382007-09-16 Andreas Schwab <schwab@suse.de>
18039
18040 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18041 values instead of zapping them.
18042
180432007-09-14 Glenn Morris <rgm@gnu.org>
18044
18045 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18046 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18047 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18048 scope and rename to omfib_buffer for clarity.
18049 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18050
180512007-09-14 Kenichi Handa <handa@m17n.org>
18052
18053 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18054
180552007-09-13 Jason Rumney <jasonr@gnu.org>
18056
18057 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18058
18059 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18060
18061 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18062 (mac_term_init): Call here instead, passing rif.
18063
180642007-09-13 Glenn Morris <rgm@gnu.org>
18065
18066 * s/hpux.h: No longer define `static' as nothing.
18067
180682007-09-13 Johan Bockgård <bojohan@gnu.org>
18069
18070 * callint.c (Fcall_interactively): Remove unused var `fun'.
18071
180722007-09-12 Romain Francoise <romain@orebokech.com>
18073
18074 * window.c (prefer_window_split_horizontally, display_buffer):
18075 Revert 2007-09-08 change.
18076
180772007-09-12 Glenn Morris <rgm@gnu.org>
18078
18079 * alloca.c: Remove file.
18080 * Makefile.in (alloca): Do not undef.
18081 (allocaobj, alloca.o): Remove.
18082 (otherobj): Remove allocaobj.
18083 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18084 * regex.c (C_ALLOCA): Remove all references and code that was only
18085 used when this was defined.
18086 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18087 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18088 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18089
18090 * Makefile.in (SOURCES, unlock, relock): Delete.
18091
18092 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18093 (menu_grab_callback): All uses changed.
18094
18095 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18096 (x_reply_selection_request): All uses changed.
18097
180982007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18099
18100 * lread.c (load_warn_old_style_backquotes): Change message to look
18101 better when it appears in the middle of byte-compiler messages.
18102
181032007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18104
18105 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18106
18107 * xterm.c (x_create_terminal): Add comment.
18108
18109 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18110
181112007-09-10 Richard Stallman <rms@gnu.org>
18112
18113 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18114
181152007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18116
18117 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18118 (DEFUN): Document `intspec', use it instead of `prompt'.
18119
18120 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18121
18122 * data.c (Finteractive_form): If the interactive specification starts
18123 with a `(', use it as a Lisp form.
18124
18125 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18126 name and file modes.
18127
18128 * callint.c (Fcall_interactively): Comment fixes.
18129
181302007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18131
18132 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18133 and compiled functions.
18134
181352007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18136
18137 * window.c (prefer_window_split_horizontally): New variable.
18138 (display_buffer): Consider splitting window horizontally depending
18139 on prefer_window_split_horizontally.
18140
181412007-09-08 Eli Zaretskii <eliz@gnu.org>
18142
18143 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18144
181452007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18146
18147 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18148
18149 * frame.c (x_set_frame_parameters): Check number is positive before
18150 using XFASTINT.
18151
18152 * window.c (freeze_window_start): Don't presume selected_window holds
18153 a window object.
18154 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18155
181562007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18157
18158 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18159
181602007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18161
18162 * window.c (Vsplit_window_preferred_function): New var.
18163 (Fdisplay_buffer): Use it.
18164 (syms_of_window): Export, and initialize it.
18165
181662007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18167
18168 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18169
181702007-09-06 Glenn Morris <rgm@gnu.org>
18171
18172 * gtkutil.c (menu_grab_callback) <cnt>:
18173 * xselect.c (x_reply_selection_request) <cnt>: Move static
18174 variable to file scope.
18175
181762007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18177
18178 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18179 consistent values of selected_frame and selected_window.
18180
181812007-09-04 Jason Rumney <jasonr@gnu.org>
18182
18183 * w32console.c (initialize_w32_display): Zero unused hooks.
18184
181852007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18186
18187 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18188 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18189
181902007-09-04 Jason Rumney <jasonr@gnu.org>
18191
18192 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18193 in w32console.c. Set up input. Remove XXX comments that have been
18194 confirmed as correct.
18195
18196 * s/ms-w32.h (MULTI_KBOARD): Define.
18197
18198 * w32console.c (one_and_only_w32cons): Remove.
18199 (initialize_w32_display): Take terminal argument.
18200
18201 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18202 initialize_w32_display.
18203 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18204
18205 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18206
18207 * keyboard.c (discard_mouse_events): Discard it.
18208 (make_lispy_event): Translate it to a lisp event.
18209 (lispy_wheel_names): Add wheel-left and right events.
18210 (syms_of_keyboard): Enlarge wheel_syms.
18211
18212 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18213 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18214
18215 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18216
18217 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18218 from WM_MOUSEHWHEEL.
18219 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18220
18221 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18222 terminal.
18223
18224 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18225 keyboard for the terminal.
18226
182272007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18228
18229 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18230 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18231 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18232 and resume-tty-function to resume-tty-hook.
18233 (Fsuspend_tty, Fresume_tty): Use new names.
18234
182352007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18236
18237 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18238 if it starts with "n:".
18239
182402007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18241
18242 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18243
182442007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18245
18246 * frame.h:
18247 * frame.c (Qterm_environment_variable): Remove.
18248 (syms_of_frame): Don't init and staticpro it.
18249
18250 * callproc.c (getenv_internal): Remove special case for $TERM.
18251
18252 * callproc.c (Vinitial_environment): New variable.
18253 (set_initial_environment): Initialize it.
18254 (syms_of_callproc): Declare it.
18255 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
18256 TERM under which a process runs is never related to the TERM in which
18257 Emacs is running.
18258
182592007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18260
18261 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
18262 * s/darwin.h: ... do it here.
18263
182642007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
18265
18266 * lisp.h (set_initial_environment): Rename from set_global_environment.
18267
18268 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
18269 removed by mistake on the multi-tty branch.
18270
18271 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
18272 (Fmodify_frame_parameters): Return a value.
18273
18274 * image.c (png_load): Comment-out var only used in commented-out code.
18275
18276 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
18277 before passing it to mark_object.
18278
18279 * xfaces.c (internal_resolve_face_name): Return a value.
18280 (internal_resolve_face_name, resolve_face_name_error): Comment out.
18281
18282 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
18283 (x_icon): Comment-out var only used in commented-out code.
18284
182852007-08-29 Romain Francoise <romain@orebokech.com>
18286
18287 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
18288 QUIT hasn't been provided.
18289
182902007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18291
18292 * callproc.c (child_setup, getenv_internal): Use the
18293 display-environment-variable and term-environment-variable frame params.
18294 (set_initial_environment): Initialise Vprocess_environment.
18295
18296 * config.in: Disable multi-keyboard support on a mac.
18297
18298 * frame.c (Qterm_environment_variable)
18299 (Qdisplay_environment_variable): New variables.
18300 (syms_of_frame): Intern and staticpro them.
18301 (Fmake_terminal_frame): Disable output method test.
18302
18303 * frame.h: Declare them here.
18304
18305 * macfns.c (x_set_mouse_color): Get rif from the frame.
18306 (x_set_tool_bar_lines): Don't use updating_frame.
18307 (mac_window): Add 2 new parameters for consistency with other systems.
18308 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
18309 frame parameters following what is done in X11 and w32. Don't use
18310 FRAME_MAC_DISPLAY_INFO.
18311 (Fx_open_connection, start_hourglass): Remove window-system check.
18312 (x_create_tip_frame): Get the keyboard from the terminal.
18313
18314 * macmenu.c: Reorder includes.
18315 (Fx_popup_menu): Use terminal specific mouse_position_hook.
18316
18317 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
18318 terminal parameter.
18319 (x_clear_frame): Add a frame parameter.
18320 (note_mouse_movement): Get rif from the frame.
18321 (mac_term_init): Initialize the terminal.
18322 (mac_initialize): Make static and move terminal initialization ...
18323 (mac_create_terminal): ... to this new function.
18324
18325 * macterm.h (struct mac_display_info): Add terminal.
18326 (mac_initialize): Delete declaration.
18327
18328 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
18329
18330 * sysdep.c: Comment out text after #endif.
18331
18332 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
18333 is defined. Better initialize ttys in windows. Use terminal
18334 specific mouse_position_hook.
18335
18336 * termhooks.h (union display_info): Add mac_display_info.
18337
18338 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18339 Set the default minibuffer frame, window_system and the rest of the
18340 frame parameters following what is done in X11.
18341
18342 * w32term.c (w32_initialize): Make static.
18343
18344 * xselect.c (x_handle_selection_clear): Only access
18345 terminal->kboard when MULTI_KBOARD is defined.
18346
18347 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18348 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18349
183502007-08-29 Jason Rumney <jasonr@gnu.org>
18351
18352 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18353 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18354
18355 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18356 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18357
18358 * keyboard.c (restore_kboard_configuration): Only define when
18359 MULTI_KBOARD defined.
18360
18361 * makefile.w32-in: Update dependancies from Makefile.in.
18362 (OBJ1): Add terminal.$(O)
18363
18364 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18365 Don't define function body.
18366 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18367
18368 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18369
18370 * w32.c (request_sigio, unrequest_sigio): Remove.
18371
18372 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18373 (w32con_clear_frame, w32con_clear_end_of_line)
18374 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18375 (w32con_delete_glyphs, w32con_set_terminal_window)
18376 (scroll_line, w32_sys_ring_bell): Add frame arg.
18377 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18378 Add terminal arg.
18379 (PICK_FRAME): Remove.
18380 (w32con_write_glyphs): Use frame specific terminal coding.
18381 (one_and_only_w32cons): New global variable.
18382 (initialize_w32_display): Use it for storing hooks.
18383 (create_w32cons_output): New function.
18384
18385 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18386 arg a frame.
18387
18388 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18389 Set window_system.
18390 (x_set_tool_bar_lines): Don't use updating_frame.
18391 (Fx_create_frame): Set terminal and ref count.
18392 (Fx_open_connection): Remove window-system check.
18393
18394 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18395
18396 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18397 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18398 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18399 Add frame arg.
18400 (x_delete_terminal, w32_create_terminal): New functions.
18401 (w32_term_init): Create a terminal.
18402 (w32_initialize): Move terminal specific initialization to
18403 w32_create_terminal.
18404
18405 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18406 (w32_clear_rect, w32_clear_area): Use background from frame.
18407 (w32_display_info): Add terminal.
18408 (w32_sys_ring_bell, x_delete_display): Declare here.
18409
18410 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18411
18412 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18413
184142007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18415
18416 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18417 Fix get_named_tty calls for the controlling tty.
18418
184192007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18420
18421 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18422
184232007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18424
18425 * term.c (tty_insert_glyphs): Add missing first parameter.
18426
184272007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18428
18429 * buffer.c (Fbuffer_list, Fbury_buffer):
18430 Take frame->buried_buffer_list into account.
18431
18432 * cm.c (current_tty): New variable, for cmputc().
18433 (cmputc): Use it.
18434 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18435 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18436 (cmgoto): Add tty parameter. Pass it on to calccost().
18437 Use emacs_tputs() instead of tputs().
18438
18439 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18440 tputs().
18441 (current_tty): New variable, for cmputc().
18442 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18443
18444 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18445 (internal_condition_case, internal_condition_case_1)
18446 (internal_condition_case_2): Don't abort when x_catching_errors.
18447
18448 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18449 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18450 prevent crashes caused by bogus longjmps in read_char.
18451
18452 * keymap.h (Fset_keymap_parent): Add EXFUN.
18453
18454 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18455 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18456 Remove redundant definition.
18457
18458 * macfns.c (x_set_mouse_color, x_make_gc):
18459 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18460
18461 * w32term.c (x_free_frame_resources):
18462 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18463 (w32_initialize): Use the accessor macros for terminal characteristics.
18464
18465 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18466 Use the accessor macros for terminal characteristics.
18467 * msdos.c (internal_terminal_init): Use the accessor macros for
18468 terminal characteristics.
18469 (ScreenVisualBell, internal_terminal_init):
18470 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18471
18472 * termopts.h (no_redraw_on_reenter): Declare.
18473
18474 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18475 (mark_terminals, mark_ttys): Declare.
18476 (Fgarbage_collect): Call them.
18477 (mark_object): Mark buried_buffer_list.
18478
18479 * prefix-args.c: Include stdlib.h for exit.
18480
18481 * syssignal.h: Add comment.
18482
18483 * indent.c: Include stdio.h.
18484
18485 * window.h (Vinitial_window_system): Declare.
18486 (Vwindow_system): Delete declaration.
18487
18488 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18489
18490 * image.c (lookup_image): Don't initialize `c' until the xasserts
18491 have been run.
18492
18493 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18494 FRAME_FOREGROUND_PIXEL.
18495
18496 * print.c (print_preprocess): Don't lose print_depth levels while
18497 iterating.
18498
18499 * widget.c (update_from_various_frame_slots):
18500 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18501
18502 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18503 frames.
18504 (window_internal_height): Remove bogus make_number call.
18505 (init_window_once): Call make_terminal_frame with two zero parameters.
18506
18507 * fileio.c (Fread_file_name): Update comment.
18508
18509 * callint.c (Fcall_interactively):
18510 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18511 Make sure it is correctly unwound.
18512
18513 * xsmfns.c (x_session_close): New function.
18514
18515 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18516 Delete declarations.
18517
18518 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18519 (x_output): Remove background_pixel and foreground_pixel fields.
18520 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18521 (x_delete_device, x_session_close): Declare.
18522
18523 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18524 (read_filtered_event): Call `read_char' with a local
18525 `wrong_kboard_jmpbuf'.
18526
18527 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18528 Don't call single_kboard_state. Use FRAME_RIF.
18529
18530 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18531 systems.
18532
18533 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18534 (Fframe_with_environment, Fset_input_meta_mode)
18535 (Fset_quit_char): EXFUN.
18536 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18537 (init_sys_modes, reset_sys_modes): Update prototypes.
18538 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18539
18540 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18541 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18542 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18543 Delete declarations.
18544 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18545 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18546 New declarations.
18547
18548 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18549 already does that during init_display(). Call syms_of_keymap
18550 before syms_of_keyboard. Call `syms_of_terminal'.
18551 Call set_initial_environment, not set_process_environment.
18552 (shut_down_emacs): Call reset_all_sys_modes() instead of
18553 reset_sys_modes().
18554
18555 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18556 (internal_resolve_face_name, resolve_face_name_error): New functions.
18557 (resolve_face_name): Protect against loops and errors thrown by Fget.
18558 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18559 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18560
18561 * scroll.c: Replace CURTTY() with local variables throughout the
18562 file (where applicable).
18563 (calculate_scrolling, calculate_direct_scrolling)
18564 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18565 characteristics.
18566
18567 * keymap.c (Vfunction_key_map): Remove.
18568 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18569 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18570 (Vkey_translation_map): Remove.
18571 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18572 (Fdescribe_buffer_bindings)
18573 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18574 Update for terminal-local key-translation-map.
18575
18576 * Makefile.in (callproc.o): Update dependencies.
18577 (lisp, shortlisp): Add termdev.elc.
18578 (obj): Add terminal.o.
18579 (terminal.o): Add dependencies.
18580 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18581 (data.o, fns.o): Add termhooks.h dependency.
18582 (SOME_MACHINE_LISP): Add dnd.elc.
18583 (minibuf.o): Fix typo.
18584 Update dependencies.
18585
18586 * data.c (do_symval_forwarding, store_symval_forwarding)
18587 (find_symbol_value): Use the selected frame's keyboard, not
18588 current_kboard.
18589
18590 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18591 Vwindow_system.
18592
18593 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18594 Fmenu_bar_open.
18595 (syms_of_xmenu): Update defsubr.
18596 (mouse_position_for_popup, Fx_popup_menu)
18597 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18598 (set_frame_menubar, free_frame_menubar)
b97439ce 18599 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18600 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18601 an X frame.
18602
18603 * xselect.c (x_own_selection): Abort if not an X frame.
18604 (some_frame_on_display): Check if it is an X frame.
18605 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18606
18607 * coding.c: Include frame.h and termhooks.h.
18608 (terminal_coding, keyboard_coding): Delete.
18609 (Fset_terminal_coding_system_internal)
18610 (Fset_keyboard_coding_system_internal)
18611 (Fkeyboard_coding_system)
18612 (Fterminal_coding_system): Add a terminal parameter.
18613 Get terminal_coding from the terminal.
18614 (init_coding_once): Don't call setup_coding_system here.
18615
18616 * dispextern.h (set_scroll_region, turn_off_insert)
18617 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18618 (tty_clear_end_of_line, tty_setup_colors)
18619 (delete_tty, updating_frame)
18620 (produce_special_glyphs, produce_glyphs, write_glyphs)
18621 (insert_glyphs): Remove.
18622 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18623 (tty_turn_off_highlight, get_tty_size): Add declaration.
18624 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18625
18626 * frame.h (enum output_method): Add output_initial.
18627 (struct x_output): Delete.
18628 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18629 Access foreground_pixel and background_pixel directly from the frame.
18630 (tty_display): Delete.
18631 (struct frame): Add buried_buffer_list, foreground_pixel,
18632 background_pixel and terminal. Delete kboard.
18633 (union output_data): Add tty.
18634 (FRAME_KBOARD): Get the kboard from the terminal.
18635 (FRAME_INITIAL_P): New macro.
18636 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18637 (Qterm_environment_variable, Qdisplay_environment_variable)
18638 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18639 New declarations.
18640
18641 * termchar.h (tty_output, tty_display_info): New structures.
18642 (tty_list): Declare.
18643 (FRAME_TTY, CURTTY): New macros.
18644 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18645 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18646 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18647 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18648
18649 * callproc.c: Include frame.h and termhooks.h, for terminal
18650 parameters.
18651 (add_env): New function.
18652 (child_setup): Use it.
18653 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18654 (getenv_internal): Fix get_terminal_param call.
18655 (Fgetenv_internal, egetenv): Update doc.
18656 (syms_of_callproc): Initialize Vprocess_environment to nil.
18657 Register and initialize them. Remove obsolete defvars. Update doc
18658 strings.
18659 (child_setup): Handle Vlocal_environment_variables.
18660 (getenv_internal): Add terminal parameter.
18661 Handle Vlocal_environment_variables.
18662 (Fgetenv_internal): Add terminal parameter.
18663 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18664 environment in a frame (not terminal) parameter. Update doc strings.
18665 (set_initial_environment): Rename from set_global_environment.
18666 Store Emacs environment in initial frame parameter.
18667
18668 * xdisp.c (redisplay_internal): Update references to
18669 `previous_terminal_frame'.
18670 (display_mode_line, Fformat_mode_line): Replace calls to
18671 `push_frame_kboard' with `push_kboard'.
18672 (get_glyph_string_clip_rects): Add extra parentheses and
18673 braces to prevent compiler warnings.
18674 (calc_pixel_width_or_height): Add xassert to check that the
18675 frame is alive. Don't call `lookup_image' on a termcap frame.
18676 (message2_nolog, message3_nolog, redisplay_internal)
18677 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18678 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18679 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18680 (Fx_display_pixel_width, Fx_display_pixel_height)
18681 (Fx_display_planes, Fx_display_color_cells)
18682 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18683 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18684 (Fx_display_backing_store, Fx_display_visual_class)
18685 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18686 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18687
18688 * xfns.c (x_set_foreground_color x_set_background_color)
18689 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18690 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18691 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18692 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18693 terminal that is being deleted.
18694 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18695 frame parameter, and make sure it overrides any user-supplied setting.
18696 (Fx_close_connection, Fx_synchronize): Unify argument names with
18697 the rest of the DEFUNs.
18698
18699 * dispnew.c (Fsend_string_to_terminal): Update call to
18700 `get_tty_terminal'.
18701 (Fredraw_frame, Fsend_string_to_terminal)
18702 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18703 FRAME_TERMCAP_P and FRAME_TTY.
18704 (window_change_signal): Don't believe width/height values that are
18705 impossibly small.
18706 (Vinitial_window_system): Rename from Vwindow_system.
18707 (termscript, Wcm, rif): Delete.
18708
18709 * termhooks.h (struct terminal): New struct containing the
18710 previously global text display hooks and new members NAME,
18711 DELETED and PARAM_ALIST.
18712 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18713 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18714 (FRAME_RIF): New macros.
18715 (get_terminal_param, get_device): New declarations.
18716 (termscript): Delete declaration.
18717
18718 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18719 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18720 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18721 FRAME_FOREGROUND_PIXEL.
18722 (x_fully_uncatch_errors): Disable definition.
18723 (x_scroll_bar_expose): Fix reference to foreground pixel.
18724 (XTread_socket): Disable loop on all X displays.
18725 (x_delete_terminal): Don't set terminal->deleted and let
18726 delete_terminal delete the frames on the terminal.
18727 (x_delete_display): Doc update to reflect changes in
18728 delete_terminal.
18729 (x_display_info) <terminal>: Move member earlier in the struct.
18730 (deleting_tty): Remove old variable.
18731 (Fsuspend_tty): Call clear_tty_hooks.
18732 (Fresume_tty, init_tty): Call set_tty_hooks.
18733 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18734 errors on X frames.
18735 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18736 (handle_one_xevent): Initialize `f' to NULL.
18737 (x_delete_terminal, x_create_terminal): New functions.
18738 (XTset_terminal_modes, XTreset_terminal_modes)
18739 (XTread_socket, x_connection_closed, x_term_init)
18740 (x_term_init, x_delete_display): Add terminal parameter.
18741 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18742 X connections.
18743
18744 * frame.c: Include termchar.h.
18745 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18746 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18747 (Qdisplay_environment_variable): New vars.
18748 (Fframep): Deal with output_initial.
18749 (Fframe-live-p): Doc fix.
18750 (Fwindow-system): New function.
18751 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18752 (make_terminal_frame): Don't create frames on a terminal that is
18753 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18754 (store_frame_param): Check for found_for_frame before calling XFRAME.
18755 (Fmake_terminal_frame): Handle NULL tty names correctly.
18756 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18757 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18758 frames to refer to a deleted frame in their 'environment parameter.
18759 (Fframe_with_environment): New function.
18760 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18761 (get_future_frame_param): New function.
18762 (Fmake_terminal_frame): Use it.
18763 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18764
18765 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18766 * sysdep.c (reset_sys_modes): Update for renames.
18767
18768 * keyboard.c (tty_read_avail_input): New function.
18769 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18770 (syms_of_keyboard): Defsubr them.
18771 (Fset_input_meta_mode, Fset_quit_char): New functions.
18772 (Fset_input_mode): Split to above functions.
18773 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18774 parameter. Use it in call to `read_char'.
18775 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18776 Set wrong_kboard_jmpbuf correctly in recursive calls.
18777 Use current_kboard to access Vkeyboard_translate_table.
18778 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18779 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18780 Update longjmp invocations. Remember the original current_kboard,
18781 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18782 changes it. Comment out unnecessary calls to
18783 `record_single_kboard_state' and `any_kboard_state'.
18784 Update recursive calls.
18785 (wrong_kboard_jmpbuf): Remove global variable.
18786 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18787 Handle deleted interrupted_kboards correctly; that is a legal
18788 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18789 and read_char calls. Abort if interrupted_kboard died in read_char.
18790 (any_kboard_state, single_kboard_state)
18791 (push_frame_kboard): Remove function.
18792 (pop_kboard): Switch out of single_kboard mode if the kboard has
18793 been deleted. Remove unused variable. Help debugging by not
18794 changing current_kboard unnecessarily. Set current_kboard to the
18795 kboard of the selected frame when the stored kboard object has
18796 been deleted before pop_kboard.
18797 (temporarily_switch_to_single_kboard): Change first parameter to a
18798 frame pointer. Throw an error when caller wants to change kboards
18799 while in single_kboard mode. Don't push_kboard if we weren't in
18800 single kboard state. Don't pop_kboard if we popped into any
18801 kboard state.
18802 (restore_kboard_configuration): Abort if pop_kboard changed the
18803 kboard in single_kboard mode. Call pop_kboard only after setting
18804 up single_kboard mode.
18805 (Frecursive_edit): Switch to single_kboard mode only in nested
18806 command loops.
18807 (cmd_error, command_loop, command_loop_1, timer_check):
18808 Comment out unnecessary call to `any_kboard_state' and
18809 `record_single_kboard_state'.
18810 (delete_kboard): Exit single_kboard mode if we have just deleted
18811 that kboard. Use FRAME_KBOARD.
18812 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18813 `fatal_error_signal'.
18814 (record_single_kboard_state): Don't push_kboard if we weren't in
18815 single kboard state. Don't pop_kboard if we popped into any
18816 kboard state.
18817 (push_frame_kboard): Rename to push_kboard.
18818 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18819 (read_avail_input): Read input from all terminals.
18820 (mark_kboards): Also mark Vkeyboard_translate_table.
18821 (kbd_buffer_store_event_hold): Simplify condition.
18822 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18823 (Vkeyboard_translate_table): Move to struct kboard.
18824 (init_kboard): Initialize Vkeyboard_translate_table.
18825 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18826 Vkeyboard_translate_table. Update doc strings. Update docs of
18827 local-function-key-map and function-key-map.
18828
18829 * terminal.c: New file.
18830
18831 * term.c: Include errno.h.
18832 (Vring_bell_function, device_list, initial_device)
18833 (next_device_id, ring_bell, update_begin, update_end)
18834 (set_terminal_window, cursor_to, raw_cursor_to)
18835 (clear_to_end, clear_frame, clear_end_of_line)
18836 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18837 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18838 (syms_of_term): Move their initialization to terminal.c.
18839 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18840 (Ftty_display_color_cells)
18841 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18842 (clear_tty_hooks, set_tty_hooks)
18843 (init_tty, maybe_fatal): New functions.
18844 (Ftty_type): Return nil if terminal is not on a tty instead of
18845 throwing an error. Doc update.
18846 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18847 Doc update. Initialize new subrs and variables.
18848 (delete_tty): Use terminal->deleted.
18849 (tty_set_terminal_modes): Rename from set_terminal_modes.
18850 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18851 (set_scroll_region): Rename to `tty_set_scroll_region'.
18852 (turn_on_insert): Rename to `tty_turn_on_insert'.
18853 (turn_off_insert): Rename to `tty_turn_off_insert'.
18854 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18855 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18856 (toggle_highligh): Rename to `tty_toggle_highlight'.
18857 (background_highlight): Rename to `tty_background_highlight'.
18858 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18859 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18860 (tty_set_scroll_region, tty_background_highlight)
18861 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18862 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18863 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18864 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18865 Add static modifier.
18866 (tty_reset_terminal_modes, tty_set_terminal_window)
18867 (tty_set_scroll_region, tty_background_highlight)
18868 (tty_highlight_if_desired, tty_cursor_to)
18869 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18870 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18871 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18872 renames.
18873
188742007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18875
18876 * keyboard.c: Qrtl is new.
18877 (parse_tool_bar_item): Handle :rtl keyword.
18878 (syms_of_keyboard): Intern :rtl keyword.
18879
18880 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18881
18882 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18883 so no Lisp code is executed.
18884 (file_for_image, find_rtl_image): New functions.
18885 (xg_get_image_for_pixmap): Use file_for_image.
18886 (update_frame_tool_bar): If direction is RTL, use RTL image if
18887 defined. Use Gtk stock images if defined.
18888
188892007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18890
18891 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18892 for nonexistent or zero-width glyph in composition glyph.
18893
188942007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18895
18896 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18897
18898 * xdisp.c (Finvisible_p): New function.
18899 (syms_of_xdisp): defsubr it.
18900
189012007-08-24 Juanma Barranquero <lekktu@gmail.com>
18902
18903 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18904 Doc fixes.
18905
189062007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18907
18908 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18909
189102007-08-24 Martin Rudalics <rudalics@gmx.at>
18911
18912 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18913 whether decoding has modified buffer contents.
18914
189152007-08-24 Jason Rumney <jasonr@gnu.org>
18916
18917 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18918 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18919 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18920 (init_svg_functions) [HAVE_NTGUI]: New function.
18921 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18922 (svg_load_image): Use them.
18923 (svg_load_image) [HAVE_NTGUI]: Implement background.
18924
189252007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18926
18927 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18928 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18929 (LIBX): Remove @RSVG_LIBS@.
18930 (LIBES): Add $(RSVG_LIBS).
18931
18932 * image.c (svg_load_image): Blend with specified background if exists.
18933 Use IMAGE_BACKGROUND. Add Mac OS Support.
18934
18935 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18936 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18937 Remove macros.
18938 [MAC_OSX] (socket_callback): Do nothing.
18939 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18940 ReceiveNextEvent.
18941 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18942 socket_callback.
18943 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18944
189452007-08-22 Glenn Morris <rgm@gnu.org>
18946
18947 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18948
189492007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18950
18951 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18952
18953 * image.c: Add support for SVG images. Some additional comments
18954 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18955 (svg_image_p): New function to test for SVG image.
18956 (svg_load): New function to load SVG image.
18957 (svg_load_image): New function, helper for svg_load.
18958 (Qsvg): New Lisp_object.
18959 (svg_keyword_index): New enum.
18960 (svg_format): New static `image_keyword' struct.
18961 (svg_type): New static `image_type' struct.
18962 (librsvg/rsvg.h): Include it.
18963
189642007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18965
18966 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18967
189682007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18969
18970 * lread.c (Qold_style_backquotes): New var.
18971 (syms_of_lread): Init and staticpro it.
18972 (load_warn_old_style_backquotes): New fun.
18973 (Fload): Use them to warn about old style backquotes.
18974 (end_of_file_error, Fload): Remove unused vars.
18975
18976 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18977
18978 * lread.c (Vold_style_backquotes): New var.
18979 (syms_of_lread): Init and export it to Elisp.
18980 (read1): Set it when we find an old-style (back)quote.
18981
189822007-08-22 Jason Rumney <jasonr@gnu.org>
18983
18984 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18985
189862007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18987
18988 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18989
189902007-08-19 Richard Stallman <rms@gnu.org>
18991
18992 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18993
189942007-08-19 Andreas Schwab <schwab@suse.de>
18995
18996 * alloc.c (pure): Round PURESIZE up.
18997
189982007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18999
19000 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19001 active frame.
19002
190032007-08-16 Richard Stallman <rms@gnu.org>
19004
19005 * eval.c (Fcommandp): Add parens to clarify.
19006
19007 * minibuf.c (Fall_completions): Use enum for type of table.
19008
19009 * emacs.c (USAGE2): Improve text.
19010
190112007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19012
19013 * term.c (tty_default_color_capabilities): Declare static
19014 variables in file scope, to avoid HPUX compiler problem.
19015
190162007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19017
19018 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19019 to gtk_toolbar_insert.
19020
190212007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19022
19023 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19024
19025 * insdel.c (reset_var_on_error): New fun.
19026 (signal_before_change, signal_after_change):
19027 Use it to reset (after|before)-change-functions to nil in case of error.
19028 Bind inhibit-modification-hooks to t.
19029 Don't bind (after|before)-change-functions to nil while they run.
19030
190312007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19032
19033 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19034 filling pixmap with stippled background.
19035
190362007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19037
19038 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19039 Don't use invisible frame as parent window for repositioning.
19040
190412007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19042
19043 * print.c (new_backquote_output): Rename from old_backquote_output.
19044 (print): Inverse its logic (according to its name) so as to match the
19045 behavior of new_backquote_flag in lread.c.
19046
190472007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19048
19049 * gmalloc.c (posix_memalign): New function.
19050
19051 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19052 ActivateControl/DeactivateControl here.
19053 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19054 frame-notice-user-settings is non-nil.
19055 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19056 for kEventParamFMFontStyle.
19057 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19058 mac_pass_command_to_system and mac_pass_control_to_system here.
19059 (XTread_socket): Call ActivateControl/DeactivateControl here.
19060 (XTread_socket) [TARGET_API_MAC_CARBON]:
19061 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19062 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19063 for window repositioning.
19064
190652007-08-08 Glenn Morris <rgm@gnu.org>
19066
19067 * Replace `iff' in doc-strings and comments.
19068
190692007-08-07 Chong Yidong <cyd@stupidchicken.com>
19070
19071 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19072
190732007-08-07 Martin Rudalics <rudalics@gmx.at>
19074
19075 * fileio.c (Finsert_file_contents): Run format-decode and
19076 after_insert_file_functions on entire buffer when REPLACE is
19077 non-nil and inhibit modification_hooks and point_motion_hooks.
19078 For consistency, run after_insert_file_functions iff something
19079 got inserted. Move signal_after_change and update_compositions
19080 after code running after_insert_file_functions. Make sure that
19081 undo_list doesn't record intermediate steps of the decoding process.
19082
190832007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19084
19085 * emacs.c (main)
19086 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19087 Call malloc_enable_thread on interactive startup.
19088
19089 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19090 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19091 [USE_PTHREAD]: Conditionalize with it.
19092 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19093 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19094 New functions.
19095
190962007-08-06 Chong Yidong <cyd@stupidchicken.com>
19097
19098 * xdisp.c (redisplay_window): When restoring original buffer
19099 position, make sure it is still valid.
19100
19101 * image.c (png_load): Ignore png-supplied background color.
19102
191032007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19104
19105 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19106 Use kCFAbsoluteTimeIntervalSince1970.
19107
19108 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19109 New variable.
19110 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19111 event loop should be quit.
19112 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19113 Quit dialog event loop if quit_dialog_event_loop is set.
19114
19115 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19116 (Selection): New typedef. Use instead of ScrapRef.
19117 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19118 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19119 (mac_clear_selection): Rename from clear_scrap.
19120 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19121 scrap_has_target_type. All uses changed.
19122 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19123 (mac_selection_has_target_p): New functions.
19124 (mac_put_selection_value): Rename from put_scrap_string.
19125 (mac_get_selection_value): Rename from get_scrap_string.
19126 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19127 (put_scrap_private_timestamp, scrap_has_target_type)
19128 (get_scrap_private_timestamp): Remove functions.
19129 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19130 (x_own_selection, x_get_local_selection):
19131 Use mac_valid_selection_value_p.
19132 (x_own_selection): Don't use put_scrap_private_timestamp.
19133 Record OWNERSHIP-INFO into Vselection_alist instead.
19134 (x_get_local_selection): Don't check type if request is local.
19135 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19136 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19137
191382007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19139
19140 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19141 add comment explaining why.
19142
191432007-08-03 Richard Stallman <rms@gnu.org>
19144
19145 * fileio.c (Fvisited_file_modtime): Use make_time.
19146
191472007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19148
19149 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19150 build.
19151
191522007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19153
19154 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19155
191562007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19157
19158 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19159
191602007-07-30 Richard Stallman <rms@gnu.org>
19161
19162 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19163
191642007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19165
19166 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19167
191682007-07-28 Nick Roberts <nickrob@snap.net.nz>
19169
19170 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19171 remote default-directory.
19172
19173 * buffer.c (mode-line-format): Update doc string.
19174
191752007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19176
19177 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19178 scroll bar gap.
19179 (x_scroll_bar_create): Set bar->fringe_extended_p.
19180 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19181 on frame edge. Check fringe background extension. Don't clear
19182 extended fringe background area.
19183
19184 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19185 (w32_fill_area): Enclose multiple statements with do ... while (0).
19186
19187 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19188 Extend fringe background to scroll bar gap.
19189 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19190 Set bar->fringe_extended_p.
19191 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19192 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19193 background extension. Don't clear extended fringe background area.
19194
19195 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19196 New member fringe_extended_p.
19197
191982007-07-25 Glenn Morris <rgm@gnu.org>
19199
19200 * Relicense all FSF files to GPLv3 or later.
19201
19202 * COPYING: Switch to GPLv3.
19203
192042007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19205
19206 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19207
19208 * data.c (Finteractive_form): Check for the presence of an
19209 `interactive-form' symbol property more thoroughly.
19210
19211 * data.c (Finteractive_form): Use an `interactive-form' property if
19212 present, analogous to the function-documentation property.
19213
192142007-07-24 Jason Rumney <jasonr@gnu.org>
19215
19216 * w32fns.c (x_real_positions): Get real position from OS instead of
19217 calculating it.
19218
192192007-07-23 Jason Rumney <jasonr@gnu.org>
19220
19221 * filelock.c (current_lock_owner): Allow for @ sign in username.
19222
192232007-07-22 Nick Roberts <nickrob@snap.net.nz>
19224
19225 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19226 remote default-directory.
19227
19228 * buffer.c (mode-line-format): Describe above case in doc string.
19229
192302007-07-20 Eli Zaretskii <eliz@gnu.org>
19231
19232 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19233 Define if not defined.
19234
192352007-07-18 Jason Rumney <jasonr@gnu.org>
19236
19237 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19238
192392007-07-18 Richard Stallman <rms@gnu.org>
19240
19241 * data.c (Fsetq_default): Doc fix.
19242
19243 * eval.c (Fsetq): Doc fix.
19244
192452007-07-18 Juanma Barranquero <lekktu@gmail.com>
19246
19247 * coding.c (Ffind_operation_coding_system):
19248 * eval.c (For, Fand): Doc fixes.
19249 Reported by Johan Bockgård.
19250
192512007-07-18 Jan Djärv <jan.h.d@swipnet.se>
19252
19253 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
19254
19255 * xterm.h: Declare x_ewmh_activate_frame.
19256
19257 * xterm.c (x_ewmh_activate_frame): New function.
19258 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
19259
192602007-07-17 Martin Rudalics <rudalics@gmx.at>
19261
19262 * window.c (Fdisplay_buffer): If largest or LRU window is the
19263 only window, split it even if it is not eligible for splitting.
19264 This restores the original behavior broken by the 2007-07-15
19265 change.
19266
192672007-07-17 Glenn Morris <rgm@gnu.org>
19268
19269 * abbrev.c (abbrev_check_chars): New function.
19270 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19271 Call abbrev_check_chars to check abbrev characters are word
19272 constituents. Doc fix.
19273
192742007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
19275
19276 * process.c (Fstart_process, Fmake_network_process)
19277 (read_process_output): Fix up last changes.
19278
192792007-07-16 Eli Zaretskii <eliz@gnu.org>
19280
19281 * makefile.w32-in (clean): Don't delete *~.
19282
192832007-07-16 Andreas Schwab <schwab@suse.de>
19284
19285 * window.c (Fdisplay_buffer): Use NILP.
19286 (Fset_window_scroll_bars): Likewise.
19287
192882007-07-15 Martin Rudalics <rudalics@gmx.at>
19289
19290 * window.c (window_min_size_2): New function.
19291 (window_min_size_1, size_window, Fdisplay_buffer)
19292 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
19293 windows without mode- or header-lines when window-min-height is
19294 too small.
19295 (size_window): Reset nodelete_p after testing it, following an
19296 earlier note by Kim F. Storm.
19297 (display_buffer): Do not set split_height_threshold to twice the
19298 value of window_min_height to avoid changing the value of a
19299 customizable variable. Rather explicitly check whether the
19300 height of the window that shall be splitted is at least as large
19301 as split_height_threshold.
19302 (Fwindow_full_width_p): New defun.
19303 (syms_of_window): Defsubr it.
19304
19305 * window.h: Add EXFUN for Fwindow_full_width_p.
19306
193072007-07-14 Jason Rumney <jasonr@gnu.org>
19308
19309 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
19310
193112007-07-14 Richard Stallman <rms@gnu.org>
19312
19313 * eval.c (maybe_call_debugger): New function.
19314 (find_handler_clause): Use maybe_call_debugger.
19315 Call it when the handler says `debug'.
19316 Eliminate DEBUGGER_VALUE_PTR.
19317 (Fsignal): Eliminate debugger_value.
19318 (Qdebug): New variable.
19319 (syms_of_eval): Initialize it.
19320
193212007-07-14 Juanma Barranquero <lekktu@gmail.com>
19322
19323 * eval.c (Fprogn):
19324 * keyboard.c (Ftrack_mouse):
19325 * print.c (Fwith_output_to_temp_buffer):
19326 * window.c (Fsave_window_excursion): Doc fix.
19327
193282007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
19329
19330 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
19331
193322007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
19333
19334 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19335 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19336 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19337 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19338 Remove unused encoding_carryover.
19339 * process.c: Adjust all functions accordingly.
19340
193412007-07-12 Richard Stallman <rms@gnu.org>
19342
19343 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19344
193452007-07-11 Jason Rumney <jasonr@gnu.org>
19346
19347 * makefile.w32-in (LIBS): Include OLE32.
19348
19349 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19350 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19351
193522007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19353
19354 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19355 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19356 from a Lisp_Object into a bare pointer.
19357 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19358 Adjust the code correspondingly.
19359
19360 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19361
19362 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19363 (term_show_mouse_face): Remove unused var `j'.
19364 (handle_one_term_event): Remove unused vars `i' and `j'.
19365 Don't cast return value of ttyname since it's not necessary.
19366
193672007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19368
19369 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19370 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19371
19372 * fns.c (map_char_table): Use an array of int for `indices' rather than
19373 an array of Lisp_Objects (which are only ever integers anyway).
19374 (Fmap_char_table): Update caller.
19375 * lisp.h: Update prototype.
19376 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19377 * fontset.c (Ffontset_info):
19378 * casetab.c (set_case_table): Update callers.
19379
19380 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19381
19382 * keymap.c (struct accessible_keymaps_data)
19383 (struct where_is_internal_data): New structures.
19384 (accessible_keymaps_1, where_is_internal_1): Use them to change
19385 interface to adhere to the one used by map_keymap.
19386 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19387 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19388
19389 * keymap.h (map_keymap_function_t): More informative prototype.
19390
193912007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19392
19393 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19394 (looking_at_1): Don't change search_regs and last_thing_searched
19395 if `inhibit-changing-match-data' is non-nil.
19396 (string_match_1, search_buffer, set_search_regs): Likewise.
19397 (syms_of_search): Add Lisp level definition for
19398 `inhibit-changing-match-data' and set it to nil.
19399 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19400 start and end of the match, instead of using values in search_regs.
19401
194022007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19403
19404 * minibuf.c (Fcompleting_read): New value `confirm-only'
19405 for `require-match'.
19406
194072007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19408
19409 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19410 part of the 2007-06-27 change to syms_of_fileio.
19411
194122007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19413
19414 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19415 Check WINDOWP before using XWINDOW. Consolidate return statements.
19416
194172007-06-27 Richard Stallman <rms@gnu.org>
19418
19419 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19420
194212007-06-27 Juanma Barranquero <lekktu@gmail.com>
19422
19423 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19424
194252007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19426
19427 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19428 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19429 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19430 (_free_internal, memalign): Use them.
19431 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19432 Initialize to PTHREAD_MUTEX_INITIALIZER.
19433 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19434 (morecore_nolock): Rename from morecore. All uses changed.
19435 Use only nolock versions of internal allocation functions.
19436 (_malloc_internal_nolock, _realloc_internal_nolock)
19437 (_free_internal_nolock): New functions created from
19438 _malloc_internal, _realloc_internal, and _free_internal.
19439 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19440 Copy hook value to automatic variable before its use.
19441 (memalign): Copy hook value to automatic variable before its use.
19442
194432007-06-26 Kenichi Handa <handa@m17n.org>
19444
19445 * coding.c (Ffind_operation_coding_system): Docstring improved.
19446 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19447
194482007-06-25 David Kastrup <dak@gnu.org>
19449
19450 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19451 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19452 cater for additional parameter.
19453
19454 * keymap.h: Adjust number of parameters to `current-active-maps'.
19455
19456 * doc.c (Fsubstitute_command_keys): Adjust call of
19457 `current-active-maps'.
19458
194592007-06-25 David Kastrup <dak@gnu.org>
19460
19461 * callint.c (Fcall_interactively): Make the parsing of interactive
19462 specs somewhat more readable.
19463
194642007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19465
19466 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19467 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19468 if extended background has already been filled.
19469
194702007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19471
19472 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19473 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19474
19475 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19476 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19477 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19478 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19479 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19480 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19481 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19482 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19483 Run timers during dialog popup.
19484 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19485
194862007-06-21 Jason Rumney <jasonr@gnu.org>
19487
19488 * image.c (convert_mono_to_color_image): Swap fore and background.
19489
194902007-06-20 Jason Rumney <jasonr@gnu.org>
19491
19492 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19493 (w32_free_bdf_font): Unmap memory not handle.
19494
194952007-06-20 Sam Steingold <sds@gnu.org>
19496
19497 * gmalloc.c (__morecore): Fix the declaration to comply with the
19498 definition.
19499
195002007-06-20 Juanma Barranquero <lekktu@gmail.com>
19501
19502 * w32term.c (w32_delete_display): Remove leftover declaration.
19503 (w32_define_cursor, w32_initialize): Make static.
19504
19505 * w32.c (_wsa_errlist): Fix typo in error message.
19506 (init_environment): Ignore any environment variable from the
19507 registry having a null value.
19508
195092007-06-20 Glenn Morris <rgm@gnu.org>
19510
19511 * Makefile.in (LIBGIF): Default to -lgif.
19512
195132007-06-17 Jason Rumney <jasonr@gnu.org>
19514
19515 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19516 unicode strings.
19517
195182007-06-16 Juanma Barranquero <lekktu@gmail.com>
19519
19520 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19521 Fix typo in docstring.
19522
195232007-06-16 Eli Zaretskii <eliz@gnu.org>
19524
19525 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19526 and their keybindings.
19527
195282007-06-15 Chong Yidong <cyd@stupidchicken.com>
19529
19530 * composite.c (update_compositions): Fix last fix.
19531
195322007-06-14 Jason Rumney <jasonr@gnu.org>
19533
19534 * w32.c (get_process_times_fn): New function pointer.
19535 (globals_of_w32): Intialize it if present in kernel32.dll.
19536 (w32_get_internal_run_time): New function.
19537
19538 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19539
195402007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19541
19542 * composite.c (update_compositions): Check the validness of
19543 compositions.
19544
195452007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19546
19547 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19548 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19549
19550 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19551 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19552
19553 * macgui.h (USE_MAC_TOOLBAR): New define.
19554
19555 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19556 Return immediately unless popup is activated.
19557
19558 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19559 background to scroll bar gap.
19560 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19561 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19562 scroll bars on frame edge. Check fringe background extension.
19563 Don't clear extended fringe background area.
19564 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19565 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19566 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19567 [USE_MAC_TOOLBAR]: New macros.
19568 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19569 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19570 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19571 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19572 [USE_MAC_TOOLBAR]: New functions.
19573 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19574 manually if previous repositioning has failed.
19575 (mac_handle_keyboard_event): Use precomputed event kind.
19576 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19577 as tool bar item click. Handle mouse movement over tool bar items.
19578
19579 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19580 toolbar_win_gravity.
19581 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19582 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19583 Add externs.
19584
19585 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19586 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19587
195882007-06-14 Chong Yidong <cyd@stupidchicken.com>
19589
19590 * image.c (search_image_cache): Remove unused variable.
19591
195922007-06-13 Chong Yidong <cyd@stupidchicken.com>
19593
19594 * xfns.c, xmenu.c: Link to xaw3d if available.
19595
195962007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19597
19598 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19599 frame_foreground and frame_background.
19600
19601 * image.c (lookup_image): Save frame foreground and background colors.
19602 (search_image_cache): Check if saved and current frame colors match.
19603
196042007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19605
19606 * regex.c (regex_compile): Remove the `regnum' counter.
19607 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19608
196092007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19610
19611 * term.c: Include intervals.h to declare Fget_text_property.
19612
196132007-06-10 Jason Rumney <jasonr@gnu.org>
19614
19615 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19616
196172007-06-08 Juanma Barranquero <lekktu@gmail.com>
19618
19619 * callint.c (Fcall_interactively):
19620 * editfns.c (Fdelete_and_extract_region):
19621 * fileio.c (Fread_file_name):
19622 * fns.c (Fmapconcat):
19623 * keyboard.c (cmd_error_internal):
19624 * keymap.c (Fkey_description):
19625 * lread.c (openp):
19626 * minibuf.c (read_minibuf):
19627 * search.c (wordify):
19628 * sunfns.c (sel_read):
19629 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19630 * xfns.c (x_default_scroll_bar_color_parameter):
19631 * xmenu.c (menu_help_callback):
19632 * xselect.c (Fx_get_atom_name):
19633 * xterm.c (x_term_init): Use empty_unibyte_string.
19634
196352007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19636
19637 * alloc.c (init_strings): Initialize canonical empty strings.
19638 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19639 canonical empty string when the requested size is 0.
19640
19641 * emacs.c (empty_unibyte_string): Rename from empty_string.
19642 (empty_multibyte_string): New canonical empty string.
19643 (syms_of_emacs): Don't initialize empty_string.
19644
19645 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19646 string, if appropriate.
19647 (empty_unibyte_string, empty_multibyte_string): New externs.
19648 (empty_string): Remove extern.
19649
19650 * lread.c (syms_of_lread): Use empty_unibyte_string.
19651
196522007-06-07 Jason Rumney <jasonr@gnu.org>
19653
19654 * s/ms-w32.h: Don't define HAVE_TZNAME.
19655
19656 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19657
196582007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19659
19660 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19661
19662 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19663 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19664
19665 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19666 Don't call next handler.
19667 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19668 Remove argument. Install handler to application.
19669 (set_frame_menubar): Don't change deep_p.
19670 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19671 FRAME_OUTER_TO_INNER_DIFF_Y.
19672 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19673 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19674 [HAVE_DIALOGS]: New macros.
19675 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19676 Use them.
19677 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19678
19679 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19680 init_service_handler. All callers changed. Return OSStatus value.
19681
19682 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19683 All callers changed so as not to call SetPortWindowPort.
19684 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19685 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19686 mac_draw_string_common.
19687 (mac_draw_image_string_qd): Likewise.
19688 (mac_draw_string_common): Use them. Add INLINE.
19689 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19690 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19691 GetGlobalMouse.
19692 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19693 and FRAME_OUTER_TO_INNER_DIFF_Y.
19694 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19695 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19696 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19697 repositioning window to mac_handle_window_event.
19698 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19699 saving window location to mac_handle_window_event
19700 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19701 (install_menu_target_item_handler): Remove argument in extern.
19702 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19703 Also accept command events.
19704 (do_keystroke): New function created from XTread_socket.
19705 (init_command_handler): Remove functions.
19706 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19707 and save window location by kEventWindowShowing and kEventWindowHiding
19708 handlers here. Don't call next handler for window state change and
19709 focus events.
19710 (mac_handle_application_event, mac_handle_keyboard_event)
19711 [TARGET_API_MAC_CARBON]: New functions.
19712 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19713 kEventWindowShowing and kEventWindowHiding events. Move installation
19714 of mouse, font, text input and menu target item handlers to
19715 install_application_handler.
19716 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19717 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19718 New function.
19719 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19720 Register it.
19721 (XTread_socket) [TARGET_API_MAC_CARBON]:
19722 Consolidate SendEventToEventTarget calls.
19723 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19724 Move application activation handler to mac_handle_application_event.
19725 Move keyboard handler to mac_handle_keyboard_event.
19726 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19727 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19728 init_command_handler. Call install_application_handler.
19729
19730 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19731 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19732
197332007-06-07 Glenn Morris <rgm@gnu.org>
19734
19735 * emacs.c (main): Use `emacs-copyright' in --version output.
19736
197372007-06-06 Chong Yidong <cyd@stupidchicken.com>
19738
19739 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19740
197412007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19742
19743 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19744
19745 * macgui.h: Replace WindowPtr with WindowRef.
19746
19747 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19748 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19749 Replace ControlHandle with ControlRef.
19750 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19751
19752 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19753 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19754 Replace ControlHandle with ControlRef.
19755 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19756 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19757
19758 * macterm.h (struct scroll_bar): Rename member control_handle_low
19759 and control_handle_high to control_ref_low and control_ref_high.
19760 All uses changed.
19761 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19762 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19763 respectively. All uses changed.
19764 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19765 (install_window_handler, remove_window_handler): Replace WindowPtr
19766 with WindowRef in externs.
19767
197682007-06-05 Juanma Barranquero <lekktu@gmail.com>
19769
19770 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19771
197722007-06-03 Nick Roberts <nickrob@snap.net.nz>
19773
19774 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19775
19776 * frame.c (Fmouse_position, Fmouse_pixel_position):
19777 Condition on HAVE_GPM too.
19778
19779 * term.c (term_mouse_highlight): Remove unused variables.
19780 (Fterm_open_connection): Set gpm_zerobased to 1.
19781 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19782 Use zero based co-ordinates.
19783 (handle_one_term_event): Report a drag as mouse movement too.
19784
19785 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19786
197872007-06-03 Chong Yidong <cyd@stupidchicken.com>
19788
19789 * image.c (search_image_cache): New function. Require background
19790 color match if background color is unspecified in the image spec.
19791 (uncache_image, lookup_image): Use it.
19792
197932007-06-01 Juanma Barranquero <lekktu@gmail.com>
19794
19795 * window.c (Fshrink_window): Reflow docstring.
19796
197972007-06-02 Chong Yidong <cyd@stupidchicken.com>
19798
19799 * Version 22.1 released.
19800
198012007-06-01 Richard Stallman <rms@gnu.org>
19802
19803 * xfns.c (x_encode_text): Add GCPRO.
19804
198052007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19806
19807 * xfns.c (x_set_name_internal): Save encoded name before
19808 x_encode_text in case string data is relocated.
19809
198102007-05-31 Richard Stallman <rms@gnu.org>
19811
19812 * buffer.c (syms_of_buffer): Doc fix.
19813
198142007-05-30 Nick Roberts <nickrob@snap.net.nz>
19815
19816 * sysdep.c (init_sys_modes): Add rather than replace with
19817 O_NONBLOCK.
19818
19819 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19820 term_mouse_moveto.
19821
19822 * termhooks.h (term_mouse_moveto): New extern.
19823
19824 * term.c (mouse_face_window): Rename...
19825 (Qmouse_face_window): ...to this.
19826 (term_show_mouse_face, term_clear_mouse_face)
19827 (term_mouse_highlight): Use Qmouse_face_window.
19828 (term_mouse_moveto): New function.
19829 (term_mouse_position): Make it work.
19830 (syms_of_term): Uncomment assignment to mouse_position_hook.
19831 Staticpro Qmouse_face_window.
19832
198332007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19834
19835 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19836 around current_column call.
19837
198382007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19839
19840 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19841 * xdisp.c (next_element_from_buffer):
19842 * window.c (delete_window):
19843 * term.c (term_mouse_highlight):
19844 * msdos.c (getdefdir):
19845 * macterm.c (mac_create_bitmap_from_bitmap_data)
19846 (init_font_name_table):
19847 * fns.c (Fsxhash):
19848 * data.c (Fmake_local_variable):
19849 * ccl.c (ccl_driver): Likewise.
19850
198512007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19852
19853 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19854 Call mac_wakeup_from_rne on window size change.
19855
198562007-05-25 Chong Yidong <cyd@stupidchicken.com>
19857
19858 * image.c (uncache_image): Fix typo.
19859
198602007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19861
19862 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19863
198642007-05-22 Richard Stallman <rms@gnu.org>
19865
19866 * xterm.c (x_connection_closed): Remove NO_RETURN.
19867
198682007-05-22 Martin Rudalics <rudalics@gmx.at>
19869
19870 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19871
198722007-05-21 Chong Yidong <cyd@stupidchicken.com>
19873
19874 * image.c (uncache_image): New function.
19875 (Fimage_refresh): New function.
19876
198772007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19878
19879 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19880
198812007-05-20 Nick Roberts <nickrob@snap.net.nz>
19882
19883 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19884 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19885
198862007-05-20 Nick Roberts <nickrob@snap.net.nz>
19887
19888 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19889 conditional on [HAVE_GPM_H].
19890
198912007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19892
19893 * syntax.c (skip_chars): Update syntax-table only after we checked that
19894 the new location is valid.
19895
198962007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19897
19898 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19899 mac_get_window_bounds.
19900
199012007-05-20 Nick Roberts <nickrob@snap.net.nz>
19902
19903 * Makefile.in (LIBGPM): Allow it to be set from configure.
19904 If set then link Emacs with it.
19905
19906 * config.in: Regenerate.
19907
19908 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19909 New externs.
19910
19911 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19912 Include gpm.h.
19913 (handle_one_term_event, term_gpm): New externs.
19914
19915 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19916 and allow it to be interrupted by SIGIO.
19917
19918 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19919 (wait_reading_process_output): Wait on gpm_fd too.
19920 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19921 (add_gpm_wait_descriptor_called_flag): New variable.
19922 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19923
19924 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19925 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19926 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19927 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19928 (make_lispy_event): Add case GPM_CLICK_EVENT.
19929 (read_avail_input): Handle mouse input.
19930
19931 * term.c (write_glyphs_with_face): New function.
19932 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19933 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19934 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19935 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19936 (last_mouse_x, last_mouse_y): New variables.
19937 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19938 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19939 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19940 (Fterm_close_connection): New functions.
19941 (term_init): Initialise mouse_face_window.
19942
199432007-05-19 Chong Yidong <cyd@stupidchicken.com>
19944
19945 * xdisp.c (redisplay_window): If first window line is a
19946 continuation line, recompute the new window start instead of
19947 recentering.
19948
199492007-05-18 Glenn Morris <rgm@gnu.org>
19950
19951 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19952 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19953
199542007-05-17 Glenn Morris <rgm@gnu.org>
19955
19956 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19957
199582007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19959
19960 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19961 dead key repeat and up events.
19962
199632007-05-14 Chong Yidong <cyd@stupidchicken.com>
19964
19965 * image.c (pbm_load): Check image size for monochrome pbm.
19966
199672007-05-13 Chong Yidong <cyd@stupidchicken.com>
19968
19969 * xterm.c (XTread_socket): Revert last change.
19970
199712007-05-12 Chong Yidong <cyd@stupidchicken.com>
19972
19973 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19974
19975 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19976
199772007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19978
19979 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19980 mixup (YAILOM).
19981
199822007-05-07 Andreas Schwab <schwab@suse.de>
19983
19984 * keymap.c (Flookup_key): Fix typo in last change.
19985
199862007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19987
19988 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19989 mapping for unibyte strings.
19990
199912007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19992
19993 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19994 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19995
199962007-04-29 Richard Stallman <rms@gnu.org>
19997
19998 * insdel.c (replace_range): For undo, record insertion first.
19999
200002007-04-29 Andreas Schwab <schwab@suse.de>
20001
20002 * lisp.h (VECSIZE): Use OFFSETOF.
20003
200042007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20005
20006 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20007 disabled lines.
20008
200092007-04-28 Richard Stallman <rms@gnu.org>
20010
20011 * lread.c (read_escape): In a string, \s is always space.
20012
200132007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20014
20015 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20016
20017 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20018 submenu for menu bar items.
20019
20020See ChangeLog.10 for earlier changes.
20021
20022;; Local Variables:
20023;; coding: utf-8
20024;; add-log-time-zone-rule: t
aac0c6e3
MR
20025;; End:
20026
76b6f707 20027 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20028
20029 This file is part of GNU Emacs.
20030
20031 GNU Emacs is free software: you can redistribute it and/or modify
20032 it under the terms of the GNU General Public License as published by
20033 the Free Software Foundation, either version 3 of the License, or
20034 (at your option) any later version.
20035
20036 GNU Emacs is distributed in the hope that it will be useful,
20037 but WITHOUT ANY WARRANTY; without even the implied warranty of
20038 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20039 GNU General Public License for more details.
20040
20041 You should have received a copy of the GNU General Public License
20042 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20043
20044;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40