* cedet/ede/source.el (ede-want-any-source-files-p)
[bpt/emacs.git] / src / ChangeLog
CommitLineData
0c2b6f8e
GM
12009-10-06 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
4 SOME_MACHINE_LISP (this enters indirectly via DOC).
5
e02131a2
EZ
62009-10-05 Eli Zaretskii <eliz@gnu.org>
7
8 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
9
b4744254
EZ
102009-10-04 Eli Zaretskii <eliz@gnu.org>
11
12 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
13 Doc fix.
14
dbf64827
JB
152009-10-03 Martin Rudalics <rudalics@gmx.at>
16
17 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
18
e9a0aef8
MA
192009-10-02 Michael Albinus <michael.albinus@gmx.de>
20
21 * lisp.h (Qdelete_directory_internal): Removed, because it is not
22 used anymore outside fileio.c.
23
24 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
25
64eb2b56
JB
262009-10-01 Juanma Barranquero <lekktu@gmail.com>
27
28 * lisp.h (Qdelete_directory_internal):
29 Declare, instead of Qdelete_directory.
30
31 * w32fns.c (Fsystem_move_file_to_trash): Use it.
32
9d28c33e
SM
332009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
34
35 * eval.c (Fcalled_interactively_p): Add `kind' argument.
36
9d8f3bd9
MA
372009-10-01 Michael Albinus <michael.albinus@gmx.de>
38
9d28c33e 39 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
40 Fdelete_directory. It is not a command anymore. It has no file
41 name handler.
42
9694740b
SM
432009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
44
45 * xdisp.c (get_next_display_element): Use an enum in last change.
46
748e162f
KH
472009-09-28 Kenichi Handa <handa@m17n.org>
48
9694740b 49 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
50 unibyte_display_via_language_environment in handling
51 Vnobreak_char_display.
52
17efd58d
AR
532009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
54
55 * nsterm.h (ns_app_name): New extern variable.
56
57 * nsterm.m (ns_app_name): New variable.
58 (ns_term_init): Set and use it.
59 (ns_term_shutdown): Use it.
60
61 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
62 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
63
64 * nsfns.m (ns_set_name_iconic, ns_set_name)
65 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
66 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
67
9694740b
SM
68 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
69 Remove double-casting in client_data comparison.
31c2d412 70
3208cb35
YM
712009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
72
73 * keyboard.c (make_lispy_event): Remember last wheel direction.
74 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
75
b7d552d6
GM
762009-09-26 Glenn Morris <rgm@gnu.org>
77
78 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
79 internal.elc. Add term/pc-win.elc.
80 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
81 term/x-win.elc.
82 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
83 term/w32-win.elc.
84 (NS_SUPPORT): New.
85 (lisp): Add NS_SUPPORT.
86 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
87
4ff670a8
DR
882009-09-25 David Reitter <david.reitter@gmail.com>
89
90 * nsmenu.m (EmacsMenu-clear): Recognize application menu
91 on Mac OS X 10.6+ (bug#4513).
92
feabfb6c
JB
932009-09-24 Juanma Barranquero <lekktu@gmail.com>
94
95 * frame.c (xrdb_get_resource): Return nil for empty string resources;
96 some parts of Emacs code (like font selection) don't grok them. See
97 http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
98
de59072a
AS
992009-09-24 Andreas Schwab <schwab@redhat.com>
100
101 * coding.c (decode_coding_iso_2022): Fix operator precedence.
102
a489517b
JB
1032009-09-24 Juanma Barranquero <lekktu@gmail.com>
104
105 * dired.c (Fdirectory_files): Fix typo in docstring.
106
0592970c
AR
1072009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
108
109 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
110 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
111 (EmacsScroller-setPosition:portion:whole:): Remove -display call
112 under GNUstep.
113 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
114
115 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
116 glyph advancement.
117
48e8a88b
AR
1182009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
119
120 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 121 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
122
123 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
124 deleted (bug #4492).
125
e14f0a78
AR
126 * nsfont.m (Vns_reg_to_script): New lisp variable.
127 (syms_of_nsfont): Declare it.
128 (ns_registry_to_script): New function.
129 (ns_get_req_script): Call it.
130 (ns_findfonts): Don't give up on non-unicode registry.
131
132 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
133
5b650faa
SM
1342009-09-20 Tom Tromey <tromey@redhat.com>
135
136 * eval.c (find_handler_clause): Make stack-trace-on-error work in
137 batch mode (bug#4228).
138
a489517b 1392009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
140
141 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 142 carefully. (Bug #4339)
0bae4e09 143
fcfe06f3
CY
1442009-09-18 Chong Yidong <cyd@stupidchicken.com>
145
d798ba87 146 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 147
31642728
AR
1482009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
149
150 * emacs.c (inhibit_x_resources): Update doc string for NS.
151 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 152 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
153
154 * nsterm.h (ns_no_defaults): Remove.
155
156 * nsterm.m (ns_no_defaults): Remove.
157 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
158 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
159 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
160 don't update the NSWindow itself.
161 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 162 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
163
164 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
165 ns_use_qd_smoothing.
166
167 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
168 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 169 (x-close-connection): Drop PSFlush() under OS X.
a489517b 170 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 171
8686ac71
JB
1722009-09-17 Juanma Barranquero <lekktu@gmail.com>
173
174 * emacs.c (inhibit_x_resources): New variable.
175 (main) [HAVE_NS]: Don't process --quick command line option.
176 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
177
178 * lisp.h (inhibit_x_resources): Declare it extern.
179
180 * w32reg.c (x_get_string_resource):
181 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
182
e227ba05
EZ
1832009-09-17 Eli Zaretskii <eliz@gnu.org>
184
185 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP): Add
186 lisp/term/internal.elc.
187
742d40e8
SM
1882009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
189
190 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
191 (bug#4461).
192
005bd5a2
DN
1932009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
194
195 * puresize.h (BASE_PURESIZE): Increase to 1290000.
196
197 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
198 (OBJECTS_MACHINE): Remove, unused.
199
f9af9719
SM
2002009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
201
202 * frame.c (x_get_resource_string): Remove unused.
203
0307c7d2
JD
2042009-09-15 Jan Djärv <jan.h.d@swipnet.se>
205
206 * xterm.c (x_new_font): Call change_frame_size before calling
207 x_set_window_size, in case frame size won't change.
208
209 * frame.c (x_set_font): Remove dead code.
210
428b13d6
SM
2112009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
212
213 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
214
5766c380
SM
2152009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
216
217 * lread.c (Fload): Don't output a message after loading an obsolete
218 package any more (done in Lisp now).
219
2fd0161b
CY
2202009-09-12 Chong Yidong <cyd@stupidchicken.com>
221
222 * fns.c (syms_of_fns): Doc fix (Bug#4227).
223
bc5e75b6
SM
2242009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
225
226 * keymap.c (Fwhere_is_internal): Use nconc2.
227
c31c985e
AM
2282009-09-11 Alan Mackenzie <acm@muc.de>
229
230 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
231 batch mode.
232
78012bd2
AS
2332009-09-11 Andreas Schwab <schwab@linux-m68k.org>
234
235 * xdisp.c (display_mode_element): Detect cycles.
236
9d889332
SM
2372009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
238
239 * keymap.c (where_is_internal): Don't erroneously return nil right after
240 filling the cache.
241 (where_is_internal_1): Fix up typo.
242
7ab5d780
GM
2432009-09-11 Glenn Morris <rgm@gnu.org>
244
245 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
246 share a common doc-string.
247
5238a749
SM
2482009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
249
66d77eda
SM
250 * keymap.c (get_keymap): Return the actual keymap symbol rather than
251 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
252
5238a749
SM
253 * keymap.c (QCadvertised_binding): New constant.
254 (syms_of_keymap): Initialize it.
255 (Fwhere_is_internal): Try and use bindings from :advertised-binding
256 if applicable.
257
19f48442
SM
2582009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
259
50d4ba39
SM
260 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
261 (parse_menu_item): Streamline since bindings are recomputed all the
262 time anyway. Don't bother checking Vdefine_key_rebound_commands any
263 more and don't support lmenu's menu-alias any more either.
264
a88a5372
SM
265 * keymap.c (where_is_internal_data): Make noindirect a boolean.
266 (where_is_internal): Strip it down to only traverse the keymaps.
267 Move the cache handling from Fwhere_is_internal to here.
268 (Fwhere_is_internal): Move the handling of remapping and the choice of
269 the best binding from where_is_internal to here.
270 Unify the cached/noncached paths, so remapping is also handled
271 correctly when the cache is used, and so the cache can be used to
272 speed up remap-handling when applicable.
273 Give preference to non-remapped bindings.
274 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
275 non-remapped bindings.
276 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
277 command remapping.
278
19f48442
SM
279 * xdisp.c (display_mode_element): Move list length limit from 50 to
280 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
281
599498c3 2822009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
283
284 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
285
f9b7b5ac
SM
2862009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
287
288 * keymap.c (where_is_internal): Filter out shadowed remappings.
289 Assume that where_is_internal returns unshadowed bindings to simplify
290 the code and get rid of the gotos. Use ASIZE.
291
04f4b72d
JD
2922009-09-04 Jan Djärv <jan.h.d@swipnet.se>
293
4da146f2
JD
294 * xterm.c (x_focus_changed): If we get a focusout and pointer
295 is invisible, make it visible.
296
04f4b72d
JD
297 * xterm.h: Remove condition for declaration of
298 x_*_window_to_frame.
299
7cef7ce3
SM
3002009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
301
302 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
303 initial terminal as well.
304
a54fa5b7
JD
3052009-09-02 Jan Djärv <jan.h.d@swipnet.se>
306
307 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 308 x_menubar_window_to_frame.
a54fa5b7
JD
309
310 * xterm.c: Remove declarations also in xterm.h
311 (XTmouse_position): Do not return valid positions
312 for clicks in the menubar and the toolbar for Gtk+.
313
314 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
315 if the widget for the event has the same top level as a frame,
316 return the frame.
317 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
318 internal windows, bug #4122.
319 (x_non_menubar_window_to_frame): Remove.
320
5a021dd0
GM
3212009-09-02 Glenn Morris <rgm@gnu.org>
322
323 * buffer.c (default-major-mode): Move most of the doc from here...
324 (major-mode): ... to here.
325
548fe2f3
NR
3262009-08-30 Nick Roberts <nickrob@snap.net.nz>
327
328 * process.c (wait_reading_process_output): Keep the descriptor
329 when pty is used by a non-child process, e.g., in I/O buffer of
330 GDB this allows inferior to be restarted.
331
e0840eef
EZ
3322009-08-29 Eli Zaretskii <eliz@gnu.org>
333
334 * xdisp.c (redisplay_internal): Remove redundant test and collapse
335 both branches into one.
336
82e98df4
SM
3372009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
338
339 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
340 (main): Use enable-multibyte-characters rather than
341 default-enable-multibyte-characters. Output a warning message when
342 running a unibyte session.
343
890617cb
YM
3442009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
345
346 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
347 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
348 (copy_data_segment): Also copy __program_vars section.
349 (copy_dyld_info) [LC_DYLD_INFO]: New function.
350 (dump_it) [LC_DYLD_INFO]: Use it.
351
352 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
353
e7adeadc
EZ
3542009-08-28 Eli Zaretskii <eliz@gnu.org>
355
356 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
357 $(SRC)/buildobj.h.
358 (buildobj.h): Renamed from $(SRC)/buildobj.h.
359 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
360 $(SRC)/buildobj.h.
361 (clean): Add buildobj.h.
362
3ed8bbdc
TZ
3632009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
364
365 * print.c (print_object): Set escapeflag to 1 when printing
366 hashtable keys and values.
367
155a6764
SM
3682009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
369
370 * lread.c (read_integer): Use doubles (and potentially return a float
371 number) as we do in string-to-number.
372 (read1): Use strtol to read integers, signal errors on strtol's
373 overflow and use floats if strtol's output is too large for
374 Elisp integers.
375
877610de
EZ
3762009-08-27 Eli Zaretskii <eliz@gnu.org>
377
378 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
379 (make-buildobj-SH): Fix last change.
380 (SRC): Move to before where it's first used.
381
ef73e7be
KH
3822009-08-27 Kenichi Handa <handa@m17n.org>
383
550c8289
KH
384 * process.c (send_process): Use encode_coding_object instead of
385 encode_coding_string to perform eol-conversion even if the string
386 is unibyte.
387
60afa08d
KH
388 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
389 character.
390
ef73e7be 391 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 392 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 393
7b3a82d7
DN
3942009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
395
5654bf63
DN
396 * callproc.c (Fcall_process): Remove always true #if.
397
7b3a82d7
DN
398 * lisp.h: Replace #if 0 code for checking with text pointing to
399 the --enable-checking configure flag.
400
401 * emacs.c (main): Mention the --enable-profiling configure flag
402 instead of using CFLAGS.
403
878bde49
KR
4042009-08-26 Ken Raeburn <raeburn@raeburn.org>
405
406 * Makefile.in (buildobj.h): New target.
407 (doc.o): Depend on it.
408 (temacs${EXEEXT}): Don't generate buildobj.lst.
409 (mostlyclean): Delete buildobj.h, not buildobj.lst.
410 * makefile.w32-in ($(SRC)/buildobj.h): New target.
411 ($(BLD)/doc.$(O)): Depend on it.
412 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
413 provided by Eli Zaretskii.)
414 ($(TEMACS)): Don't generate buildobj.lst.
415 * doc.c: Include buildobj.h.
416 (buildobj): New static variable.
417 (Fsnarf_documentation): Use it, instead of opening and reading
418 buildobj.lst.
419
1574224c
MA
4202009-08-25 Michael Albinus <michael.albinus@gmx.de>
421
422 * dbusbind.c (Fdbus_call_method)
423 (Fdbus_call_method_asynchronously): Use English numeric format for
424 timeout values in doc string.
425
d9da2f45
KH
4262009-08-25 Kenichi Handa <handa@m17n.org>
427
ef73e7be
KH
428 * alloc.c (mark_char_table): New function.
429 (mark_object): Use mark_char_table for a char-table.
430
d9da2f45
KH
431 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
432 (CHAR_TABLE_REF): Use it.
433
c8edcc01
KR
4342009-08-23 Ken Raeburn <raeburn@raeburn.org>
435
436 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
437 before invoking the newly build emacs to check for load-path
438 shadowing.
439
7763401b
GM
4402009-08-22 Glenn Morris <rgm@gnu.org>
441
442 * Makefile.in (bootstrap_exe): New variable.
443 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
444 Use ${bootstrap_exe}.
445
729eadda
EZ
4462009-08-22 Eli Zaretskii <eliz@gnu.org>
447
448 * coding.h (encode_coding_string): Don't encode unibyte strings.
449 (Bug#4047)
450
eb4c6ace
MA
4512009-08-22 Michael Albinus <michael.albinus@gmx.de>
452
453 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
454
455 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
456 intended as hotfix only.
457 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
458
36e34d1b
AR
4592009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
460
461 * nsterm.m (ns_get_color): Update documentation properly for last
462 change, and clean up loose ends in the code left by it. Fix
463 longstanding bug with 16-bit hex parsing, and add support for
464 yet another X11 format (rgb:r/g/b) for compatibility.
465 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
466 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
467
f983eb8a
SM
4682009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
469
470 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
471
3f56d3c6
MA
4722009-08-20 Michael Albinus <michael.albinus@gmx.de>
473
474 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
475 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
476 (xd_initialize, xd_pending_messages): Check, whether
477 $DBUS_SESSION_BUS_ADDRESS is set.
478
fb641d68
YM
4792009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
480
481 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
482
483 * nsterm.m (ns_get_color): Remove incompatible color formats again.
484
cf59a374
GM
4852009-08-20 Glenn Morris <rgm@gnu.org>
486
487 * emacs.c (system-type): Doc fix.
488
1373f3be
SM
4892009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
490
491 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
492 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
493
058ed861
MA
4942009-08-18 Michael Albinus <michael.albinus@gmx.de>
495
1373f3be
SM
496 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
497 New functions.
058ed861
MA
498 (xd_initialize): Revert change from 2009-08-16.
499
563a866e 5002009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
501
502 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 503 font-group vector, return nil.
5fc05db0 504
e42bdf01
CY
5052009-08-17 Chong Yidong <cyd@stupidchicken.com>
506
507 * process.c (status_notify): Don't perform redisplay.
508 (Fdelete_process, list_processes_1, process_send_signal):
509 Expliticly perform redisplay.
510 (wait_reading_process_output): Always check process status, but
511 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
512
4230ab74
KR
5132009-08-17 Ken Raeburn <raeburn@raeburn.org>
514
1373f3be 515 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
516 (XFLOAT_INIT): New macro for storing a float value.
517 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
518 * fns.c (sxhash): Copy out the value of a float in order to
519 examine its bytes.
520 * dbusbind.c (xd_append_arg): Likewise.
521
4230ab74
KR
522 * emacs.c (main): Don't call syms_of_data twice.
523
a0645cdd
MA
5242009-08-16 Michael Albinus <michael.albinus@gmx.de>
525
526 * dbusbind.c (xd_initialize): Add connection file descriptor to
527 input_wait_mask, in order to let select() detect, whether a new
528 message has been arrived.
ca4f31ea 529 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 530
485db0ba
MA
5312009-08-15 Michael Albinus <michael.albinus@gmx.de>
532
1373f3be
SM
533 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
534 New functions.
485db0ba
MA
535
536 * lisp.h (xd_pending_messages): Declare.
537
538 * keyboard.c (readable_events): Call xd_pending_messages.
539
b5b98ff4
CY
5402009-08-15 Chong Yidong <cyd@stupidchicken.com>
541
1373f3be 542 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 543
f8354c6e
CY
544 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
545
b5b98ff4
CY
546 * buffer.c (set_buffer_internal_1)
547 (swap_out_buffer_local_variables): Check for unbound local
548 variables (Bug#4138).
549
8b9fc636
EZ
5502009-08-14 Eli Zaretskii <eliz@gnu.org>
551
552 * process.c (create_pty): Fix last change.
553
ce959360
CY
5542009-08-13 Chong Yidong <cyd@stupidchicken.com>
555
556 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
557 (xbm_load_image): Caller changed.
64b807c9 558 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 559
c7baf7e9
NR
5602009-08-13 Nick Roberts <nickrob@snap.net.nz>
561
562 * process.c (create_pty): New function.
563 (Fstart_process): Use it to allow Emacs to just associate a pty
564 with the buffer. See associated change in gdb-mi.el.
565 (list_processes_1): Deal with no program name.
566 (start_process_unwind): Use pid == -2 to mean no process.
567
1ac9108a
SM
5682009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
569
570 * cmds.c (nonundocount): New global variable.
571 (keys_of_cmds): Initialize it.
572 (Fself_insert_command): Use it to combine upto 20 sequential chars
573 into a single undo entry, just like the Qself_insert_command code in
574 keyboard.c does.
575 Call frame_make_pointer_invisible, also like the Qself_insert_command
576 code in keyboard.c does.
577 * keyboard.c (command_loop_1): Use the new global nonundocount rather
578 than its own local replacement for it.
579
e267324c
KR
5802009-08-10 Ken Raeburn <raeburn@raeburn.org>
581
1ac9108a 582 * fns.c (concat): Don't re-set string length to its current value.
77437343 583
1ac9108a
SM
584 * coding.h (decode_coding_string, encode_coding_string):
585 Use SBYTES macro.
f0bed503 586
1ac9108a 587 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
588 (doprnt): Merge with doprnt1, discarding lispstrings code.
589 * lisp.h (doprnt_lisp): Don't declare.
590
416e006d
JL
5912009-08-07 Juri Linkov <juri@jurta.org>
592
593 * puresize.h (BASE_PURESIZE): Increase to 1270000.
594
6f7d5780
DN
5952009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
596
597 * print.c (syms_of_print): Undo previous change.
598
f19a0f5b
TZ
5992009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
600
601 * lread.c (read1, syms_of_lread): Read hashtables back from the
602 readable format.
603
604 * print.c (print_preprocess, print_object): Print hashtables fully
605 and readably.
606 (syms_of_print): Provide 'hashtable-print-readable.
607
b9173dc2
AR
6082009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
609
610 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
611 no family set.
612 (nsfont_open): Handle case when entity has no family.
613
1586503c
AR
6142009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
615
616 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
617 element, not a list, for match case.
618
087048cd
KH
6192009-07-28 Kenichi Handa <handa@m17n.org>
620
621 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
622 rigidly.
623
624 * xfont.c (xfont_list_pattern): Don't ignore the return value of
625 font_parse_xlfd. Check font properties more rigidly.
626
780c2506
DN
6272009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
628
31fd7c5c
JB
629 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
630 bsd-common.h.
780c2506 631
a8c0cc18
KH
6322009-07-27 Kenichi Handa <handa@m17n.org>
633
634 * xfaces.c (face_with_height): Call font_clear_prop.
635
4fbe2306
CY
6362009-07-26 Chong Yidong <cyd@stupidchicken.com>
637
111d9af3
CY
638 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
639
640 * xterm.c (x_term_init): Use Qx.
641
4fbe2306
CY
642 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
643
1ac9108a 644 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
645 (ns_get_color): Revert 2009-07-16 change.
646
beb0b7f9
EZ
6472009-07-25 Eli Zaretskii <eliz@gnu.org>
648
649 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 650 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 651
2baf5e76
KR
6522009-07-25 Ken Raeburn <raeburn@raeburn.org>
653
1ac9108a
SM
654 * coding.h (decode_coding_string, encode_coding_string):
655 Use SCHARS macro.
8890e5f5 656
2baf5e76 657 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 658 (load_depth): Delete.
2baf5e76
KR
659 (Qload_in_progress): New variable.
660 (load_unwind): Don't reference load_depth or load_in_progress.
661 (Fload): Likewise; specbind Qload_in_progress instead.
662 (init_lread): Don't initialize load_depth.
663 (syms_of_lread): Initialize and protect Qload_in_progress.
664
1395c6f5
AR
6652009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
666
667 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
668
4e2f36cf
AR
6692009-07-23 Yavor Doganov <yavor@gnu.org>
670
671 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
672
5dd9a6f7
AR
6732009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
674
675 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
676 Bugs 3792, 3720, 2402.
677 (ns_lookup_indexed_color): Check for bad index.
678 (ns_index_color): Init unused slot to 0.
679 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
680 Bug 3714, possibly 3082.
5dd9a6f7 681
c902b920
JR
6822009-07-22 Jason Rumney <jasonr@gnu.org>
683
1ac9108a
SM
684 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
685 Position IME window at cursor (Bug#2570).
c902b920
JR
686 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
687 (globals_of_w32fns): Dynamically load functions required above.
688
689 * w32term.c (w32_draw_window_cursor): Send message to reposition
690 any IME window.
691
090101cf
CY
6922009-07-21 Chong Yidong <cyd@stupidchicken.com>
693
694 * fileio.c: Revert 2009-07-16 changes.
695 (Vauto_save_include_big_deletions): New variable.
696 (Fdo_auto_save): Disable auto-save only if
697 auto-save-include-big-deletions is nil.
698
e6583e3d
CY
6992009-07-21 Chong Yidong <cyd@stupidchicken.com>
700
701 * xdisp.c (move_it_to): For continued lines ending in a tab, take
702 the overflowed pixels into account (Bug#3879).
703
ece435a5
KR
7042009-07-21 Ken Raeburn <raeburn@raeburn.org>
705
706 * lread.c (load_depth): New variable.
707 (Fload, load_unwind, init_lread): Set it to the load recursion
708 depth; set load_in_progress as a simple boolean based on the
709 current load_depth. (Bug#3892)
710
40b2d973
AR
7112009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
712
713 * nsfont.m (ns_has_attribute): Remove.
714 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
715
10be7e0d
JL
7162009-07-18 Juri Linkov <juri@jurta.org>
717
718 * process.c (Fset_process_query_on_exit_flag): Mention killing
719 a buffer in docstring.
720
fa055055
KH
7212009-07-17 Kenichi Handa <handa@m17n.org>
722
723 * casetab.c (shuffle): Fix the logic of setting up the cycle.
724
042f7b69
YM
7252009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
726
727 * nsfns.m (Fns_set_alpha): Remove function.
728 (syms_of_nsfns): Don't defsubr it.
729
730 * nsterm.m (ns_get_color): Remove incompatible color formats.
731 (ns_color_to_lisp): Generate #rrggbb color format string.
732
4be941e3
RS
7332009-07-16 Richard Stallman <rms@gnu.org>
734
735 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
736 (Fset_buffer_auto_saved): Handle save_length = -2.
737
4e6b227d
CY
7382009-07-16 Chong Yidong <cyd@stupidchicken.com>
739
740 * xterm.c (Qx_gtk_map_stock): New var.
741
742 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
743 of calling intern each time.
744
a1856973
YM
7452009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
746
747 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
748 does tiling.
749
750 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
751
497e54d8
KH
7522009-07-14 Kenichi Handa <handa@m17n.org>
753
72d36834
KH
754 * font.c (font_vconcat_entity_vectors): New function.
755 (struct font_sort_data): New member font_driver_preference.
756 (font_compare): Check font_driver_preference.
757 (font_sort_entities): The format of the first argument changed.
758 (font_delete_unmatched): Likewise.
759 (font_list_entities): The return type changed.
760 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
761 (font_find_for_lface): Adjuste for the above changes.
762 Don't suppress the checking of C even if the repertory supports it.
763 (Flist_fonts): Adjust for the above changes.
72d36834 764
1ac9108a
SM
765 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
766 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
767 Reject a font who has adstyle property that is different from a
768 langname derived from registry property.
1ac9108a 769 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 770
b6046155
EZ
7712009-07-13 Eli Zaretskii <eliz@gnu.org>
772
773 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
774 local copy of dirfilename.
775
fb6b6049
KH
7762009-07-13 Kenichi Handa <handa@m17n.org>
777
e2402a5e
KH
778 * chartab.c (sub_char_table_ref_and_range): Fix the range check
779 against max_char.
780
fb6b6049
KH
781 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
782 calling XSYMBOL (sym).
783
65156807
EZ
7842009-07-11 Eli Zaretskii <eliz@gnu.org>
785
1ac9108a
SM
786 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
787 New function.
788 (directory_files_internal) [WINDOWSNT]:
789 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
790 the filesystem of the directory is fast or slow.
791
792 * w32.c (logon_network_drive): Don't assume PATH is an absolute
793 file name.
794 (is_slow_fs): New function.
795 (stat): Use it to determine whether to issue more system calls to
796 get accurate file attributes, when w32-get-true-file-attributes is
797 `local'.
798
e0ab5fcf
JD
7992009-07-10 Jan Djärv <jan.h.d@swipnet.se>
800
801 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 802 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
803 parameter font-parameter as default to the font dialog.
804
784ceded
KH
8052009-07-10 Kenichi Handa <handa@m17n.org>
806
807 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
808
fb8edc0b
EZ
8092009-07-09 Eli Zaretskii <eliz@gnu.org>
810
1ac9108a 811 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 812
fb8edc0b
EZ
813 * w32.c (stat): Treat UNC file names as residing on remote
814 drives. (Bug#3542)
815
635c75b1
KH
8162009-07-09 Kenichi Handa <handa@m17n.org>
817
818 * fontset.c (fontset_find_font): Fix previous change.
819
c1d5ce94
MA
8202009-07-08 Michael Albinus <michael.albinus@gmx.de>
821
822 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
823 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
824 error flag.
825
edb61b39
KH
8262009-07-08 Kenichi Handa <handa@m17n.org>
827
374bf7e4
KH
828 * fontset.c (fontset_find_font): Fix the logic of handling
829 charset_matched.
830 (font_for_char): Delete unused var.
831 (generate_ascii_font_name): Delete it.
832
edb61b39
KH
833 * coding.h (JIS_TO_SJIS2): Fix the code range check.
834
835 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
836 (encode_coding_sjis): Fix the code range check.
837
0f3f018c
CY
8382009-07-07 Chong Yidong <cyd@stupidchicken.com>
839
840 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
841 (Fexpand_file_name): Copy string data properly (Bug#3772).
842
fcaf6f3a
JD
8432009-07-07 Jan Djärv <jan.h.d@swipnet.se>
844
845 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
846 first MapNotify.
847
6809ca75
KH
8482009-07-07 Kenichi Handa <handa@m17n.org>
849
850 * character.h (unibyte_has_multibyte_table): Delete extern.
851 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
852
853 * charset.c (Fset_charset_priority): Update charset_unibyte.
854 (syms_of_charset): Initialize charset_unibyte.
855
856 * character.c (unibyte_has_multibyte_table): Delete it.
857 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
858 charset_unibyte.
859 (multibyte_char_to_unibyte_safe): Likewise.
860 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
861
1ac9108a 862 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
863 (x_produce_glyphs): Likewise.
864
865 * .gdbinit (xcharset): Fix the treating $arg0.
866
ad9e2d54
EZ
8672009-07-04 Eli Zaretskii <eliz@gnu.org>
868
869 Emulation of `getloadavg' on MS-Windows.
870 * w32.c: Include float.h
871 (g_b_init_get_native_system_info, g_b_init_get_system_times)
872 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
873 (get_native_system_info, get_system_times): New functions.
874 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
875 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
876 (globals_of_w32): Initialize g_b_init_get_native_system_info,
877 g_b_init_get_system_times, and num_of_processors.
878
0a3472c7
JR
8792009-07-03 Jason Rumney <jasonr@gnu.org>
880
881 * w32term.c (w32_initialize): Use standard types.
882
80904120
EZ
8832009-07-03 Eli Zaretskii <eliz@gnu.org>
884
885 * dired.c (Ffile_attributes): Decode user and group names by the
886 locale's encoding. (Bug#3443)
887
6978862d
DN
8882009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
889
f8d23104
DN
890 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
891 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
892
893 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
894
895 * term.c (init_tty): Remove spurious #ifdef.
896
6978862d
DN
897 * m/mips.h: Mention this file is also used for netbsd.
898 * m/pmax.h: Remove file.
899
e044e4fc
JD
9002009-07-03 Jan Djärv <jan.h.d@swipnet.se>
901
902 * xterm.h (struct x_display_info): Add invisible_cursor.
903 (struct x_output): Add current_cursor.
904
905 * xterm.c (XTtoggle_invisible_pointer): New function.
906 (x_define_frame_cursor): Don't define cursor if invisible or the
907 same as before. Set current_cursor.
908 (x_create_terminal): Set toggle_invisible_pointer_hook.
909
910 * xfns.c (make_invisible_cursor): New function.
911 (x_set_mouse_color): Call make_invisible_cursor.
912 Set current_cursor.
913 (x_window): Set current_cursor.
914
915 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
916
917 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
918 inserting a character.
919 (read_avail_input): Call frame_make_pointer_visible.
920
921 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
922 (frame_make_pointer_invisible, frame_make_pointer_visible):
923 New functions.
e044e4fc
JD
924 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
925
926 * frame.h: Declare frame_make_pointer_invisible and
927 frame_make_pointer_visible.
928 (struct frame): Add pointer_invisible.
929
574c8efa
JD
9302009-07-02 Jan Djärv <jan.h.d@swipnet.se>
931
7b507248
JD
932 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
933 frame isn't visible.
934 (xg_frame_resized): If width/height is -1, get size of window
935 from X server.
936
937 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
938 for MapNotify.
939
835bdaa7 940 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 941 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 942 (flush_and_sync): Reintroduce.
574c8efa 943
3f1c6666 9442009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 945
31fd7c5c 946 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
947
948 * xterm.c (x_handle_net_wm_state): Also look for sticky.
949 (x_term_init): Initialize Xatom_net_wm_state_sticky.
950
951 * frame.h: Declare Qsticky.
952
cad9ef74
JD
953 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
954
955 * nsfns.m (ns_frame_parm_handlers): Ditto.
956
957 * frame.c: Declare Qsticky.
958 (frame_parms): Add sticky.
959
960 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
961
962 * xterm.h: Declare x_set_sticky.
963
964 * xterm.c (x_set_sticky): New function.
965
69b16610
JD
966 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
967 (xg_tool_bar_menu_proxy): Attach enter/leave events to
968 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
969
970 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
971
972 * frame.c: Qmaximized is new.
973 (x_set_frame_parameters): Do not handle fullscreen specially.
974 Only set width and height if explicitly set.
975 (x_set_fullscreen): Handle Qmaximized.
976 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
977 (syms_of_frame): Initialize Qmaximized.
978
1ac9108a
SM
979 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
980 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
981
982 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
983 for Expose event. Add call to x_check_fullscreen for MapNotify event.
984 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
985 set gravity to NorthWestGravity when USE_GTK.
986 (set_wm_state): New function.
31fd7c5c 987 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
988 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
989 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 990 or the case when no window manager is running. That means remove calls
3f1c6666
JD
991 to x_real_positions and x_fullscreen_adjust.
992
993 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
994 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
995 flush_and_sync.
996 (xg_height_changed): New function.
997 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
998 and gtk_window_set_policy. Set frame gravity after parsing the
999 geometry string.
3f1c6666
JD
1000 (xg_update_frame_menubar, free_frame_menubar)
1001 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1002 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1003 Remove calls to xg_frame_set_char_size.
1004
fd503d99
KH
10052009-07-01 Kenichi Handa <handa@m17n.org>
1006
1007 * keyboard.c (decode_keyboard_code): New function.
1008 (tty_read_avail_input): Decode the input bytes if necessary.
1009
1ac9108a
SM
1010 * coding.c (setup_coding_system):
1011 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1012 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1013 use Qno_conversion.
1014
24ed93fb
YM
10152009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1016
1017 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1018
99061dfc
CY
10192009-06-30 Chong Yidong <cyd@stupidchicken.com>
1020
1ac9108a 1021 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1022
ff90fbde
JR
10232009-06-30 Jason Rumney <jasonr@gnu.org>
1024
1025 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1026 is already loaded.
1027 Set user model ID if supported (bug#1849).
1028
5f445726
JM
10292009-06-29 Jim Meyering <meyering@redhat.com>
1030
1031 Remove useless if-before-xfree test.
1032 * nsfont.m (nsfont_close): Remove useless test.
1033 * term.c (delete_tty): Likewise.
1034 * w32.c (system_process_attributes): Likewise.
1035 * w32font.c (w32font_close): Likewise.
1036 * xfaces.c (x_free_gc): Likewise.
1037 * xselect.c (buffer): Likewise.
1038
b9607587
AS
10392009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1040
1041 * process.c (send_process): Keep decoded string in a local
1042 variable and protect it from GC. (Bug#3521)
1043
89ba96f4
EZ
10442009-06-28 Eli Zaretskii <eliz@gnu.org>
1045
1046 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1047 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1048
098a1589
CY
10492009-06-28 Chong Yidong <cyd@stupidchicken.com>
1050
485422be
CY
1051 * xdisp.c (start_display, handle_face_prop)
1052 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1053 (redisplay_window, try_window_id, produce_image_glyph):
1054 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1055
098a1589
CY
1056 * xterm.c (x_update_window_begin, x_new_focus_frame)
1057 (x_scroll_bar_handle_click, handle_one_xevent)
1058 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1059 (x_make_frame_visible, x_make_frame_invisible)
1060 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1061 code chunks that are now obsolete.
1062
78c38319
MA
10632009-06-28 Michael Albinus <michael.albinus@gmx.de>
1064
1065 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1066 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1067 for hours, when optimzation is enabled.
1068 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1069 (xd_read_message): Make them static.
1070
4189ed40
CY
10712009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1072
1073 * term.c (turn_on_face): Allow simultaneously bold and dim
1074 terminal faces (Bug#3530).
1075
cd9b5e16
CY
10762009-06-27 Chong Yidong <cyd@stupidchicken.com>
1077
4e23bedb
CY
1078 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1079
cd9b5e16
CY
1080 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1081 truncation glyphs (Bug#3686).
1082
07cc3c35
GM
10832009-06-27 Glenn Morris <rgm@gnu.org>
1084
1085 * m/pmax.h: Restore file, with only netbsd portions.
1086
31fd7c5c 10872009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1088
cd9b5e16 1089 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1090
42d4a64f
KH
10912009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1092
1093 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1094 the arg FORCE_SYMBOL.
1095
930fe55b 10962009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1097
1098 * fontset.c (fontset_find_font): When a usable rfont_def is found
1099 in a fallback font-group, make it the first element of the group.
1100
57ebc3fd
CY
11012009-06-24 Chong Yidong <cyd@stupidchicken.com>
1102
1103 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1104
f084f942
KH
11052009-06-24 Kenichi Handa <handa@m17n.org>
1106
1107 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1108 set for C.
1109 (fontset_font): Record the availability of a font for C both in
1110 the realized fontsets of the current one and the default one.
1111
2f686c87
DN
11122009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1113
1114 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1115 conditional, it is always defined on AIX.
1116
666e158e
MB
11172009-06-23 Miles Bader <miles@gnu.org>
1118
1119 * window.c (Vrecenter_redisplay): New variable.
1120 (syms_of_window): Initialize it.
1121 (Qtty): New extern declaration.
1122 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1123
c6da7cd2
JM
11242009-06-23 Jim Meyering <meyering@redhat.com>
1125
1ac9108a
SM
1126 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1127 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1128 pointer dereferences are guaranteed to be valid.
c6da7cd2 1129
678dca3d
KH
11302009-06-23 Kenichi Handa <handa@m17n.org>
1131
74d75424
KH
1132 * emacs.c (main): Call init_font ().
1133
1134 * font.h (Vfont_log): Extern it.
1135 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1136
1137 * font.c (font_sort_entities, font_list_entities)
1138 (font_matching_entity, font_open_entity)
1139 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1140 (Vfont_log): Delete static.
1141 (font_log_env_checked): Delete this variable.
1142 (font_add_log): Don't check font_log_env_checked.
1143 (font_deferred_log): Check Vfont_log.
1144 (init_font): New function.
1145
678dca3d
KH
1146 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1147
1148 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1149
1150 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1151
1152 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1153
1154 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1155 (face_for_char): Don't call font_deferred_log here.
1156 (font_for_char): Likewise.
1157
8a668709
CY
11582009-06-22 Chong Yidong <cyd@stupidchicken.com>
1159
9a01ee33
CY
1160 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1161 rather than its background_width for drawing the overline and
1162 underline (Bug#489).
1163
1164 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1165 rather than its background_width for drawing the overline and
1166 underline (Bug#489).
ec7c9926
CY
1167 (xg_default_icon_file): New variable.
1168 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1169 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1170
8a668709
CY
1171 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1172 (load_overlay_strings): Remove externs.
1173 (fast_find_position): Function deleted.
1174 (mouse_face_from_buffer_pos): New function, based on
1175 fast_find_position. Correctly handle before-strings,
1176 display-strings, and after-strings (Bug#1220).
1177 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1178
4d4c02d8
CY
11792009-06-21 Chong Yidong <cyd@stupidchicken.com>
1180
1ac9108a 1181 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1182 (move_it_in_display_line_to, move_it_in_display_line_to)
1183 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1184
70243478
CY
11852009-06-21 Chong Yidong <cyd@stupidchicken.com>
1186
1187 * Branch for 23.1.
1188
13087e59
JR
11892009-06-21 Jason Rumney <jasonr@gnu.org>
1190
1191 * w32term.c (keyboard_codepage): New static variable.
1192 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1193 (w32_read_socket) [WM_CHAR]: Use it to decode character
1194 input (bug#3237).
1195 (w32_initialize): Initialize it.
1196 (codepage_for_locale): New function.
1197
4735b74e
KR
11982009-06-20 Ken Raeburn <raeburn@raeburn.org>
1199
1200 * process.c (status_message): Pass Faset index argument as a lisp
1201 object, so as to work with USE_LISP_UNION_TYPE.
1202
0e727afa
YM
12032009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1204
1205 * coding.c (Ffind_coding_systems_region_internal):
1206 Cache checked characters.
1207
cf299835
KH
12082009-06-18 Kenichi Handa <handa@m17n.org>
1209
1ac9108a 1210 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 1211
90f20d94
AS
12122009-06-18 Andreas Schwab <aschwab@redhat.com>
1213
1214 * xdisp.c (redisplay_internal): Check that the frame is still
1215 live after redisplay of its windows.
1216 (redisplay_windows): Check that the window is still live.
1217
7f1faf1c
KH
12182009-06-17 Andreas Schwab <schwab@linux-m68k.org>
1219
1220 * coding.c (detect_coding_utf_16): Fix previous change.
1221
cc13543e
KH
12222009-06-16 Kenichi Handa <handa@m17n.org>
1223
1224 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
1225 UTF-16 by checking the dispersion of Eth and Oth bytes.
1226
977b85f4
AS
12272009-06-15 Andreas Schwab <schwab@linux-m68k.org>
1228
1229 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
1230
66bd43d1
KH
12312009-06-15 Kenichi Handa <handa@m17n.org>
1232
1233 * process.c (status_message): Fix previous change. Be sure to
1234 decode a localized string.
1235
cb5ca9c5
YM
12362009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1237
1238 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
1239 add comment explaining why.
1240
ec7709ba 12412009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 1242
ec7709ba 1243 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 1244
4b7f335c
AR
12452009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
1246
1247 * nsfont.m (ns_attribute_value): Remove.
1248 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
1249 (ns_has_attribute): Shrink the normal range.
1250 (ns_findfonts): Don't worry about requested spec in determining
1251 need for synthItal.
e41820ee 1252 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 1253
73b26103
SZ
12542009-06-14 Seiji Zenitani <zenitani@mac.com>
1255
1256 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
1257
5753e4da
KH
12582009-06-11 Kenichi Handa <handa@m17n.org>
1259
1260 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1261 overhang for the static composition case.
1262
3561b671
KH
12632009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1264
5753e4da
KH
1265 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1266 overhang for the automatic composition case.
1267
3561b671
KH
1268 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
1269 composition case.
1270
852bbd41
CY
12712009-06-10 Chong Yidong <cyd@stupidchicken.com>
1272
1273 * xdisp.c (get_next_display_element): When handling wrap-prefix
1274 and line-prefix, treat \n as a control character (bug#3502).
1275
9903d1e6
KH
12762009-06-10 Kenichi Handa <handa@m17n.org>
1277
1278 * font.c (font_parse_family_registry): Fix for one-char foundry.
1279 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
1280
0bcbaaaa
CY
12812009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
1282
1283 * process.c (status_message): Fix handling of multibyte signal
1284 string (Bug#3499).
1285
40aa3f13
JM
12862009-06-09 Jim Meyering <meyering@redhat.com>
1287
1f80c7e2
CY
1288 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1289 color name is missing.
40aa3f13 1290
72d51285
KH
12912009-06-09 Kenichi Handa <handa@m17n.org>
1292
1293 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1294 FROM-CODE and TO-CODE are codepoints of CHARSET.
1295
c1d04d84
AR
12962009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1297
1298 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1299
13002009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1301
1302 Changes to support :script/:lang/:otf in NS font driver.
1303 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1304 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1305 indicate not part of font driver interface, and change callers.
1306 (ns_get_family): Remove pointless null check.
1307 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1308 ns_spec_to_descriptor, ns_descriptor_to_entity.
1309 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1310 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1311 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1312 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1313 (ns_get_req_script, ns_accumulate_script_ranges)
1314 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1315 New functions.
1316 (nsfont_list, nsfont_match): Use ns_findfonts.
1317 (nsfont_open): Use font descriptor instead of traits.
1318 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1319 (dump_glyphstring): Rename to ns_dump_glyphstring.
1320
c7eb9816
AR
1321 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1322
c1d04d84
AR
1323 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1324
1325 * fontset.c (fontset_from_font): Remove NS-specific code.
1326
ec7709ba 13272009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1328
1329 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1330 nonactive windows.
1331
31fd7c5c 13322009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1333
1ac9108a 1334 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1335
68852c13 13362009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1337
1338 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1339
6756cd1d
CY
13402009-06-07 Chong Yidong <cyd@stupidchicken.com>
1341
1342 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1343 account for the overflowing of newlines into the last glyph on the
1344 display line (Bug#3482).
1345
28bf482a
DR
13462009-06-05 David Reitter <david.reitter@gmail.com>
1347
ec7709ba
JB
1348 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1349 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1350 Fns_selection_exists_p, Fns_selection_owner_p.
1351
fdb55376
JR
13522009-06-03 Jason Rumney <jasonr@gnu.org>
1353
1354 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1355 available. (Bug#3379)
1356
05129fbe
KH
13572009-05-29 Kenichi Handa <handa@m17n.org>
1358
1ac9108a
SM
1359 * coding.c (get_translation_table):
1360 Check Venable_character_translation.
05129fbe 1361
ec7709ba 13622009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1363
ec7709ba
JB
1364 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1365 (x_make_frame_visible): Move frame to front rather than calling
15891144 1366 ns_raise_frame().
ec7709ba 1367 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1368 isn't key window.
ec7709ba 1369 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1370 drawRect may be called by NSView even if the frame is hidden.
1371
ec7709ba
JB
1372 * nsfns.m (Fx_create_frame): Follow other ports in
1373 determining visibility; default to t. Ensure async_visible is set.
15891144 1374
21f73755
EZ
13752009-05-23 Eli Zaretskii <eliz@gnu.org>
1376
1377 * dired.c (Ffile_attributes): Doc fix.
1378
34001e41
CY
13792009-05-22 Chong Yidong <cyd@stupidchicken.com>
1380
1381 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1382
46306a17
SM
13832009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1384
1385 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1386 and xfont_scratch_props.
1387 (syms_of_xfont): Do it here instead.
1388 (xfont_find_ccl_program): Delete, unused.
1389 (xfont_open): Delete unused var `i'.
1390
ef6e0694
KH
13912009-05-21 Kenichi Handa <handa@m17n.org>
1392
1393 * fontset.c (Qlatin): Don't make it static.
1394
46306a17
SM
1395 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1396 New functions.
ef6e0694
KH
1397 (xfont_scripts_cache, xfont_scratch_props): New variables.
1398 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1399 (xfont_list_pattern): Argument changed. Callers changed.
1400 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1401 (xfont_list): Don't reject a font spec with :script property.
1402 (xfont_has_char): Fix setting of encoding.
1403 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1404 xfont_scratch_props.
1405
14062009-05-19 Kenichi Handa <handa@m17n.org>
1407
46306a17 1408 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1409 Callers changed.
1410
14112009-05-18 Kenichi Handa <handa@m17n.org>
1412
1413 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1414
ac71ced7
SM
14152009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1416
1417 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1418 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1419
1c6d1051
YM
14202009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1421
1422 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1423 (x_delete_terminal): Dissociate resource database from display and
1424 then call XrmDestroyDatabase before closing display.
1425
9b9b779c
AR
14262009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1427
1428 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1429 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1430 whether selected frame is viable before raising it (based on patch
1431 by David Reitter), and improve commentary.
1432 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1433
cccd42d5
KH
14342009-05-15 Kenichi Handa <handa@m17n.org>
1435
1436 * font.c (Ffont_spec): Check arguments.
1437
337fbd17
CY
14382009-05-14 Chong Yidong <cyd@stupidchicken.com>
1439
1440 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1441 weight when testing attributes (Bug#3282).
1442
47a6002f
JD
14432009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1444
1445 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1446 what we expect to get in the next ConfigureNotify event.
1447
9cb363db
YM
1448 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1449 before Xft one (Bug#1696).
1450
b9126609
CY
14512009-05-07 David Reitter <david.reitter@gmail.com>
1452
1453 * nsfns.m (Fx_display_planes): Compute bitplanes using
1454 NSBitsPerPixelFromDepth (Bug#3207).
1455
27a69fd9
CY
14562009-05-10 Chong Yidong <cyd@stupidchicken.com>
1457
1458 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1459
00f37552
TTN
14602009-05-10 Ulrich Mueller <ulm@gentoo.org>
1461
1462 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1463
2d82a920
DR
14642009-05-07 David Reitter <david.reitter@gmail.com>
1465
ec7709ba
JB
1466 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1467 Respect mouse face background.
2d82a920 1468
46b0d52d
DR
14692009-05-07 David Reitter <david.reitter@gmail.com>
1470
ec7709ba
JB
1471 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1472 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1473 in ns_update_begin and ns_update_end.
1474
ce1b23bb
SM
14752009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1476
5996e1b7
SM
1477 * nsfns.m (ns_get_screen): Rewrite.
1478 Don't presume selected-frame is of type `ns'.
1479
ba98e3a0
SM
1480 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1481 all drivers.
1482
ce1b23bb
SM
1483 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1484
bcda200f
YM
14852009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1486
1487 * keyboard.h (add_user_signal): Fix typo in extern.
1488
1489 * lisp.h (add_user_signal): Remove extern.
1490
1491 * unexelf.c (unexec): Consider a section to precede the .bss section
1492 if its addresses overlap that of .bss.
1493 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1494 instead of dumping process.
1495
864660a2
SM
14962009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1497
1498 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1499
50da4e56
SM
15002009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1501
1502 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1503
51520a1a
DN
15042009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1505
1506 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1507 any statements.
1508
409ea3a1
AS
15092009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1510
59c4c60f
AS
1511 * process.c (read_process_output): Make sure the current buffer is
1512 always restored.
1513
409ea3a1
AS
1514 * coding.c (record_conversion_result): Don't modify
1515 Vlast_code_conversion_error for successful result.
1516 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1517
56f00ed2
KH
15182009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1519
1520 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1521 (load_charset_map): Remove unnecessary code.
56f00ed2 1522
4491c9d2
DR
15232009-04-30 David Reitter <david.reitter@gmail.com>
1524
35f5b128 1525 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1526 through f24.
1527
6970f632
CY
15282009-04-30 Chong Yidong <cyd@stupidchicken.com>
1529
1530 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1531
1532 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1533 face_at_buffer_position.
1534 (face_before_or_after_it_pos, get_next_display_element)
1535 (note_mouse_highlight): Update face_at_buffer_position call.
1536
1537 * term.c (term_mouse_highlight):
1538 * msdos.c (IT_note_mouse_highlight):
1539 * fontset.c (Finternal_char_font):
35f5b128 1540 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1541
1542 * dispextern.h (face_at_buffer_position): Update prototype.
1543
0c616f63
KH
15442009-04-30 Kenichi Handa <handa@m17n.org>
1545
35f5b128 1546 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1547
ad3aaf33
AS
15482009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1549
1550 * callproc.c (Fcall_process): Fix GC protection. Make sure
1551 current buffer is always restored.
1552
c3c963a0
YM
15532009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1554
1555 * atimer.c (init_atimer): Also clear stopped_atimers.
1556
1557 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1558
7e3386cb
YM
1559 * process.c (create_process): Clean up merger residues of
1560 2008-07-17 change.
1561
91f68422
CY
15622009-04-29 Ulrich Mueller <ulm@gentoo.org>
1563
1564 * lread.c (Vread_circle): New variable.
1565 (read1): Disable recursive read if Vread_circle is nil.
1566
24b34550
KH
15672009-04-29 Kenichi Handa <handa@m17n.org>
1568
1569 * fontset.h (set_default_ascii_font): Delete extern.
1570
1571 * fontset.c (set_default_ascii_font): Delete this unused function.
1572
1573 * frame.c (x_set_font): When ARG is a font-object, check if the
1574 font-object matches with the ASCII font-spec of the frame's
9c358bda 1575 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1576
77bf07e1
AS
15772009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1578
1579 * fns.c (Flocale_info): Protect vector from GC during decoding.
1580
1581 * process.c (Fstart_process): Protect argv strings from GC during
1582 encoding.
1583
2c55aacf
AS
15842009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1585
1586 * sysdep.c: Include <ctype.h>.
1587
b892d3c9
DR
15882009-04-27 David Reitter <david.reitter@gmail.com>
1589
35f5b128 1590 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1591 Remove commented-out code.
1592
9d0644c4
JB
15932009-04-26 Johan Bockgård <bojohan@gnu.org>
1594
1595 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1596
b7053016
JR
15972009-04-25 Jason Rumney <jasonr@gnu.org>
1598
1599 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1600
4e8231f3
YM
16012009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1602
1603 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1604 Swap bytes in short integer if fringe bitmap width > 8.
1605
493dcf2c
KH
16062009-04-23 Kenichi Handa <handa@m17n.org>
1607
1608 * xfaces.c (Fx_list_fonts): If a font size is specified in
1609 PATTERN, set it in returned scalable fonts.
1610
401e9e57
CY
16112009-04-22 Chong Yidong <cyd@stupidchicken.com>
1612
708e05dc
CY
1613 * keyboard.c (Fset_input_meta_mode): Doc fix.
1614
1615 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1616
1ac9108a 1617 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1618
1619 * coding.c (Fterminal_coding_system): Doc fix.
1620
1621 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1622 (Fx_display_pixel_height, Fx_display_planes)
1623 (Fx_display_color_cells, Fx_server_max_request_size)
1624 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1625 (Fx_display_mm_height, Fx_display_mm_width)
1626 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1627 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1628 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1629 (check_x_display_info): Handle terminal objects instead of
1630 terminal ids.
1631
401e9e57
CY
1632 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1633 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1634 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1635 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1636
df80c7f0
KH
16372009-04-21 Kenichi Handa <handa@m17n.org>
1638
5a8f12af 1639 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1640 (font_score): Check AVGWIDTH too.
908567ef 1641
df80c7f0
KH
1642 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1643 worst case.
1ac9108a
SM
1644 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1645 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1646
705af33f
JR
16472009-04-19 Jason Rumney <jasonr@gnu.org>
1648
1649 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1650 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1651
1652 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1653 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1654 get_phys_cursor_geometry.
1655
b71ac3dd 1656 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1657 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1658 using get_phys_cursor_geometry.
1659
1660 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1661 correctly calculated.
1662
dc2933eb
JD
16632009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1664
1ac9108a
SM
1665 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1666 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1667 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1668 is deprecated.
1669
973e7849
AS
16702009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1671
1672 * font.c (font_put_frame_data): Use xfree instead of free.
1673
314d66f4
JB
16742009-04-17 Juanma Barranquero <lekktu@gmail.com>
1675
1676 * w32font.c (Qja, Qko): Remove declarations.
1677 (syms_of_w32font): Don't DEFSYM them.
1678
cf702558
CY
16792009-04-17 Chong Yidong <cyd@stupidchicken.com>
1680
1681 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1682
1683 * font.h (Qja, Qko): Extern them.
1684
1685 * ftfont.c (Qja, Qko): Remove declarations.
1686
1687 * xfont.c (Qja, Qko): Remove declarations.
1688
b50504f5
KH
16892009-04-17 Kenichi Handa <handa@m17n.org>
1690
bde25748
KH
1691 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1692 string from a vector to handle Latin-1 characters correctly.
1693
b50504f5
KH
1694 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1695 entity even if the cache hits.
1696
f4646fff
AS
16972009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1698
1699 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1700 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1701
e7deaab0
AS
1702 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1703 * lisp.h: Adjust prototypes.
1704
0a0e7d49
CY
17052009-04-16 Chong Yidong <cyd@stupidchicken.com>
1706
1707 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1708 change (Bug#3003).
1709
3c908a57
KH
17102009-04-16 Kenichi Handa <handa@m17n.org>
1711
1ac9108a 1712 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
1713
1714 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1715 adstyle.
1716
1717 * ftfont.c (Qja, Qko): Don't make them static.
1718 (enum ftfont_cache_for): New enum.
1719 (fc_charset_table): Undo the previous change.
1720 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
1721 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
1722 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
1723 non-scarable font, try to get AVERAGE_WIDTH.
1724 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1725 Change ft_face_cache from a list of a hash-table. Don't check
1726 `ja' and `ko' adstyle here.
1727 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1728 FTFONT_CACHE_FOR_CHARET.
1729 (ftfont_get_charset): Undo the previous change.
1ac9108a 1730 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
1731 (ftfont_close): Likewise.
1732 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1733
1734 * font.c (font_sort_entites): Change the meaning of the arg
1735 BEST-ONLY. Don't optimize for VEC of lenght 1.
1736 (font_select_entity): Just return the value of font_sort_entites.
1737
1738 * xfaces.c (merge_face_vectors): Reflect font properties in
1739 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1740 font_clear_prop if a face attribute doesn't change.
1741
3c908a57
KH
1742 * charset.h (charset_ksc5601): Extern it.
1743
1744 * charset.c (charset_ksc5601): New variable.
1745 (Fdefine_charset_internal): Set charset_ksc5601.
1746 (init_charset_once): Initialize charset_ksc5601 to -1.
1747
d65859c3
DN
17482009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1749
1750 * fileio.c (history_delete_duplicates): Remove unused declaration.
1751
1752 * callint.c (history_delete_duplicates): New declaration.
1753 (Fcall_interactively): Remove command history duplicates when
1754 history_delete_duplicates is true.
1755
3ba010e5
EZ
17562009-04-14 Eli Zaretskii <eliz@gnu.org>
1757
1758 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1759
06f19b91
KH
17602009-04-14 Kenichi Handa <handa@m17n.org>
1761
1762 * font.c (Ffont_info): Fix docstring. Fix the second element of
1763 the returned value (bug#2949).
1764
2cce8bfc
CY
17652009-04-14 Chong Yidong <cyd@stupidchicken.com>
1766
1767 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1768
d156542d
KH
17692009-04-14 Kenichi Handa <handa@m17n.org>
1770
1771 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1772 encoding charset is ascii_compatible.
1773
1774 * charset.c (Fdefine_charset_internal): Make charset
1775 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1776 code_offset is 0, and covers all ASCII characters.
1777
86fa089e
SM
17782009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1779
1780 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1781 (ns_string_to_pasteboard_internal):
1782 * nsmenu.m (process_dialog):
1783 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1784 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1785 * lisp.h (Fx_load_color_file): Declare.
1786
a8a3728b
KH
17872009-04-13 Kenichi Handa <handa@m17n.org>
1788
1ac9108a 1789 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
1790 (font_select_entity): Suppress the code to optimize for the same
1791 kind of fonts.
1792 (font_load_for_lface): Get a font that supports at least ASCII
1793 characters.
1794
1795 * ftfont.c (Qja, Qko): New variables.
1796 (fc_charset_table): Delete uniquifier data for iso8859-1.
1797 (ftfont_get_latin1_charset): New function.
1798 (get_adstyle_property): New function.
1799 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1800 bitmap fonts.
1801 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1802 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1803 `ko' or `ja'.
1804 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 1805 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
1806 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1807 property.
1808 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1809 (syms_of_ftfont): DEFSYM Qja and Qko.
1810
483670b5
KH
18112009-04-09 Kenichi Handa <handa@m17n.org>
1812
12b55765
KH
1813 * charset.c (map_charset_chars): For a charset of `superset'
1814 method, fix calculation of code range.
1815
483670b5
KH
1816 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1817 from the list of extra properties.
1818 (font_clear_prop): Be sure to delete `:name' font property.
1819
57d3b93b
KH
18202009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1821
b4b2c2ca
YM
1822 * dispnew.c (redraw_overlapping_rows): Fix detection of
1823 overlapping for topmost and bottommost rows.
1824
1ac9108a 1825 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 1826
472c3609
JR
18272009-04-06 Jason Rumney <jasonr@gnu.org>
1828
1829 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1830
ab193662
KH
18312009-04-06 Kenichi Handa <handa@m17n.org>
1832
1833 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1834
1835 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1836
0c26f026
KH
18372009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1838
1839 * ftfont.c (ftfont_open): Fix checking of the return value of
1840 FT_Load_Char. Fix setting font->underline_thickness.
1841
e173bbce
CY
18422009-04-04 Chong Yidong <cyd@stupidchicken.com>
1843
1844 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1845 (Fterminal_parameters, Fterminal_parameter)
1846 (Fset_terminal_parameter): In doc string, refer to terminal
1847 objects rather than terminal ids.
1848
693a2698
EZ
18492009-04-04 Eli Zaretskii <eliz@gnu.org>
1850
1851 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1852 ret_lim_data. (Bug#2867)
1853
d5221487
CY
18542009-04-03 Chong Yidong <cyd@stupidchicken.com>
1855
1856 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1857 so they don't get wider than the window, matching 2006-01-23
1858 change to the partner function in xdisp.c (Bug#2800).
1859
223509a3
KH
18602009-04-03 Kenichi Handa <handa@m17n.org>
1861
1862 * print.c (print_object): Make each lowest sub_char_table start a
1863 new line (Bug#2866).
1864
74fcd0b1
KH
18652009-04-02 Kenichi Handa <handa@m17n.org>
1866
1867 * fontset.c (fontset_font): Record no-font when a fontset
1868 explicitly tells not to try another font-specs.
1869
c542407d
SM
18702009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1871
1872 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1873
e3869731
KH
18742009-03-30 Kenichi Handa <handa@m17n.org>
1875
d8d2f142
KH
1876 * fontset.c (fontset_from_font): Specify only registry in a
1877 font-spec for all characters supported by that registry.
1878
e3869731
KH
1879 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1880 even if HAVE_M17N_FLT is not defined.
1881
5da5f805
CY
18822009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1883
1884 * ftfont.c: Conditionalize prototyping and use of
1885 ftfont_variation_glyphs.
1886
ab226c50
SM
18872009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1888
9628fed7
SM
1889 * frame.c (delete_frame): Work around compiler bug.
1890
1891 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1892 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1893 Some more EMACS_INT.
1894 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1895
1896 * xdisp.c (dump_glyph): Fix typo.
1897
ae19ba7c
SM
1898 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1899 (adjust_markers_gap_motion, adjust_markers_for_delete)
1900 (adjust_markers_for_insert, adjust_point)
1901 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1902 (make_gap, copy_text, count_size_as_multibyte, insert)
1903 (insert_and_inherit, insert_before_markers)
1904 (insert_before_markers_and_inherit, insert_1)
1905 (count_combining_before, count_combining_after, insert_1_both)
1906 (insert_from_string, insert_from_string_before_markers)
1907 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1908 (insert_from_buffer_1, adjust_after_replace)
1909 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1910 (replace_range_2, del_range, del_range_1, del_range_byte)
1911 (del_range_both, del_range_2, modify_region)
1912 (prepare_to_modify_buffer, signal_before_change)
1913 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1914 for buffer positions and sizes.
1915 * lisp.h: Adjust prototypes accordingly.
1916
1917 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1918 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1919 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1920
ab226c50
SM
1921 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1922
46dfb8fb
JD
19232009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1924
1925 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1926 lines and columns so we keep the same pixel height and width.
1927
1928 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1929 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1930 (x_handle_net_wm_state): New function to update frame parameter
1931 fullscreen.
1932 (x_term_init): Initialize atoms for _NET_WM_STATE.
1933
1934 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1935
d347e494
SM
19362009-03-27 Kevin Ryde <user42@zip.com.au>
1937
1938 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1939 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1940 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1941 (Fgpm_mouse_stop): Pass that new parameter.
1942 * termhooks.h (close_gpm): Adjust prototype.
1943
84db11d6
SM
19442009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1945
c95a5008
SM
1946 * lisp.h (Fx_focus_frame): Declare.
1947
84db11d6
SM
1948 * callint.c (Fcall_interactively): For '^' just delegate the work to
1949 handle-shift-selection.
1950 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1951
0a1958d6
CY
19522009-03-24 Chong Yidong <cyd@stupidchicken.com>
1953
0bfdff23
CY
1954 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1955
0a1958d6
CY
1956 * data.c (Qinteractive_form): New variable.
1957 (Finteractive_form): Use it.
1958
1959 * eval.c (Fcommandp): Use Qinteractive_form.
1960
58aec0d6
JR
19612009-03-24 Jason Rumney <jasonr@gnu.org>
1962
1963 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1964 Calculate total size precisely. Decode environment variables
1965 before substituting. (Bug#38)
1966
553dd618
KH
19672009-03-24 Kenichi Handa <handa@m17n.org>
1968
1969 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1970 encoding (Bug#2722).
553dd618 1971
c39ea606
JD
19722009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1973
1974 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1975 that gdpy is set.
1976
bc9b2b5e
AM
19772009-03-22 Alan Mackenzie <acm@muc.de>
1978
1979 * callint.c (Finteractive): Clarify the doc string - even
1980 promptless elements need \n separators.
1981
9f995a76
JR
19822009-03-22 Jason Rumney <jasonr@gnu.org>
1983
1984 * w32term.c (syms_of_w32term): Doc fix for
1985 x-use-underline-position-properties.
1986
22749e9a
EZ
19872009-03-21 Eli Zaretskii <eliz@gnu.org>
1988
1989 * w32.c (getpwuid): Change argument type to unsigned.
1990 (struct w32_id): Change type of `rid' member to unsigned.
1991 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1992 argument ID to unsigned. All callers changed.
1993 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1994
e00553bf
EZ
19952009-03-20 Eli Zaretskii <eliz@gnu.org>
1996
1997 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1998 negative, produce a float value.
1999
2000 * dired.c (make_uid, make_gid): New functions.
2001 (Ffile_attributes): Use them to avoid negative UID and GID.
2002
f761d6b6
JB
20032009-03-20 Juanma Barranquero <lekktu@gmail.com>
2004
2005 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2006 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2007 Fix typos in docstrings.
2008
d507f8d7
KH
20092009-03-19 Kenichi Handa <handa@m17n.org>
2010
2011 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2012 changed, use font_load_for_lface to get a new font object.
2013 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2014
2015 * frame.c (x_set_font): Handle the case that ARG is a cons.
2016
c68845e0
GM
20172009-03-19 Glenn Morris <rgm@gnu.org>
2018
2019 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2020
bfa49dd1
CY
20212009-03-19 Chong Yidong <cyd@stupidchicken.com>
2022
2023 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2024
8458d4c1
KH
20252009-03-19 Kenichi Handa <handa@m17n.org>
2026
2027 * charset.c (load_charset_map_from_file): When a mapfile can't be
2028 loaded, signal an error.
2029
78e7d1fe
EZ
20302009-03-18 Eli Zaretskii <eliz@gnu.org>
2031
2032 * dired.c (Ffile_attributes): Make sure UID and GID are always
2033 positive, even if the value is too large for a positive EMACS_INT.
2034 Doc fix.
2035
2036 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2037
5da9fdfa
YM
20382009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2039
2040 * xmenu.c (xdialog_show): Move Fredisplay call ...
2041 (Fx_popup_dialog): ... here.
2042
7519c40d
SM
20432009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2044
2045 * dired.c (file_name_completion): Disable the first optimization just
2046 installed, since it is not implemented correctly.
2047
2cd298e2
SM
20482009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2049
2050 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2051 only if the entry can affect bestmatch.
2cd298e2
SM
2052 Stop the search early, as Ftry_completion already does.
2053
48d37adf
CY
20542009-03-17 Chong Yidong <cyd@stupidchicken.com>
2055
e10c9c93 2056 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2057
9286b16a
CY
20582009-03-15 Chong Yidong <cyd@stupidchicken.com>
2059
2060 * keyboard.c (parse_menu_item): Don't display remappings as menu
2061 equivalent bindings (Bug#788).
2062
f7b146dc
JR
20632009-03-15 Jason Rumney <jasonr@gnu.org>
2064
2065 * w32term.h (WM_EMACS_PAINT): New message.
2066 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2067 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2068 before passing to lisp thread. (Bug#950)
2069
f761d6b6 20702009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2071
d93f9575
CY
2072 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2073 variable as it was never reset.
2074 (ns_term_init): Remove initialization of Lisp-settable defaults
2075 and ns_expand_space.
2076 (-setPanelFromDefaultValues): Remove ns_expand_space.
2077 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2078 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2079 i.e. no additional spacing, similar to Carbon port.
2080
d93f9575
CY
2081 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2082 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2083
305018ec
JD
20842009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2085
2086 * sound.c (alsa_configure): Remove call to deprecated
2087 snd_pcm_sw_params_set_xfer_align.
2088
f761d6b6 20892009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2090
2091 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2092 after clicking in a detached tool bar.
2093 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2094
46e722a9
SM
20952009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2096
348db3dd
SM
2097 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2098 int/Lisp_Object mixup).
46e722a9 2099
a3d16f39
KH
21002009-03-13 Kenichi Handa <handa@m17n.org>
2101
2102 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2103 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2104 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2105 (set_fontset_font): Change ARG to a vector. Handle range_list in
2106 ARG correctly.
2107 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2108 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2109 the above change.
2110 (fontset_from_font): Fix previous change.
fe24f56a 2111 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2112 entry. If FONTSET is the default fontset, don't set the extra
2113 slot of the returning char-table.
2114
b066e6b6
JB
21152009-03-12 Juanma Barranquero <lekktu@gmail.com>
2116
2117 * nsfns.m (Fx_close_connection): Doc fix.
2118 (Fns_do_applescript): Reflow docstring.
2119 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2120 (Fx_display_pixel_width, Fx_display_pixel_height)
2121 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2122 Fix typos in docstrings.
2123 (Fns_set_alpha): Fix typos in error messages.
2124
d472514e 21252009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2126
d472514e 2127 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2128 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2129 were used for such events.
2130
d472514e
JB
2131 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2132 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2133
d472514e 2134 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2135 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2136
fb930676
KH
21372009-03-11 Kenichi Handa <handa@m17n.org>
2138
ff85581a
KH
2139 * font.h (font_open_by_spec): Extern it.
2140
c50b7e98
KH
2141 * font.c (font_open_by_spec): New function.
2142 (font_open_by_name): Use font_open_by_spec.
2143
fb930676
KH
2144 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2145 fontset of the frame.
2146
2147 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2148 modify the default font of frames that use this fontset.
2149 (num_auto_fontsets): New variable.
2150 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2151 name. Be sure to set FONTSET_ASCII to the correct font name.
2152 (update_auto_fontset_alist): New function.
2153
df4e8455
JB
21542009-03-11 Juanma Barranquero <lekktu@gmail.com>
2155
2156 * makefile.w32-in: Update dependencies.
2157
0a375797
AR
21582009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2159
2160 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2161
61313fa3
SM
21622009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2163
2164 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2165
b55103fb
CY
21662009-03-10 Chong Yidong <cyd@stupidchicken.com>
2167
2168 * lread.c (Feval_buffer): Doc fix.
2169
dde2559c
KH
21702009-03-09 Kenichi Handa <handa@m17n.org>
2171
2172 * charset.c (Qfile_name_handler_alist): Extern it.
2173 (load_charset_map_from_file): Temporarily bind
2174 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2175
df4e8455 21762009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2177
47f588bb
GM
2178 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2179 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2180
4ddf94bd
AR
21812009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2182
4c9bdfc2
AR
2183 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2184 (x_set_window_size): Change back to calculated method of setting
2185 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2186 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2187 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2188
fe41ae9e
AR
2189 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2190
4c9bdfc2
AR
2191 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2192 accelerator in parens under GNUstep.
2193
825d0875
KH
21942009-03-06 Kenichi Handa <handa@m17n.org>
2195
2196 These changes are to detect incorrect composition sequence without
f3b3be74 2197 looking ahead the source. (Bug#2370)
825d0875
KH
2198
2199 * coding.h: Include "composite.h".
2200 (enum compisition_state): New enum.
2201 (struct compisition_status): New struct.
2202 (struct iso_2022_spec): New member cmp_status.
2203 (struct emacs_mule_spec): New struct.
2204 (struct coding_system): New members ctext_extended_segment_len and
2205 embedded_utf_8. Change the union member
2206 spec.emacs_mule_full_support to spec.emacs_mule.
2207
2208 * coding.c (CODING_ISO_CMP_STATUS): New macro.
2209 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 2210 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
2211 (ADD_COMPOSITION_DATA): New arg nbytes.
2212 (emacs_mule_char): New arg cmp_status.
2213 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
2214 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
2215 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
2216 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
2217 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
2218 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
2219 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
2220 (EMACS_MULE_COMPOSITION_END): New macro.
2221 (emacs_mule_finish_composition): New function.
2222 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
2223 (decode_coding_emacs_mule): Avoid long looking ahead while
2224 handling composition.
2225 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
2226 (ENCODE_COMPOSITION_RULE): New macro.
2227 (finish_composition): New function.
2228 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
2229 (DECODE_COMPOSITION_START): New implementation.
2230 (DECODE_COMPOSITION_END): Likewise.
2231 (STORE_COMPOSITION_RULE): New macro.
2232 (decode_coding_iso_2022): Avoid long looking ahead while handling
2233 composition, CTEXT extended segment, and embedded UTF-8.
2234 (setup_coding_system): For a coding of type iso-2022, reset
2235 CODING_ISO_EXTSEGMENT_LEN (coding) and
2236 CODING_ISO_EMBEDDED_UTF_8 (coding).
2237 (get_translation): Delete arguments last_block, from_nchars,
2238 to_nchars. Callers changed.
2239 (produce_chars): Don't modify charbuf. Adjusted for the change of
2240 get_translation.
98a326f7 2241 (produce_composition): Adjust for the new annotation sequence.
825d0875 2242 (handle_composition_annotation): Likewise.
98a326f7 2243 (consume_chars): Adjust for the change of get_translation.
825d0875 2244
ccbc4452
AR
22452009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
2246
4ddf94bd 2247 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 2248
988a7ddb
KH
22492009-03-05 Kenichi Handa <handa@m17n.org>
2250
2251 * font.c (font_select_entity): New function.
2252 (font_find_for_lface): Use font_select_entity to select a font.
2253
2254 * fontset.c (fontset_find_font): If a font found without
a8a3728b 2255 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
2256 font with C restriction.
2257
98a326f7 22582009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 2259
be1bce46 2260 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 2261
10ea2b82
JR
22622009-03-04 Jason Rumney <jasonr@gnu.org>
2263
2c93b248 2264 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 2265 characters that have already been read. (Bug#2569)
2c93b248 2266
10ea2b82
JR
2267 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
2268 Log an error message if check_image_size failed.
2269 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 2270 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 2271
71a0c011
EZ
22722009-03-02 Eli Zaretskii <eliz@gnu.org>
2273
2274 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
2275 when decoding process output.
2276
2f63bba8
RS
22772009-03-01 Richard M Stallman <rms@gnu.org>
2278
2279 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
2280
2281 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
2282
0a9564cb
EZ
22832009-02-28 Eli Zaretskii <eliz@gnu.org>
2284
2285 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2286 (decode_coding_emacs_mule, decode_coding_iso_2022)
2287 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2288 (decode_coding_raw_text, decode_coding_charset)
2289 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2290 Honor inhibit-eol-conversion. (Bug #2186)
2291
449148b3
JR
22922009-02-28 Jason Rumney <jasonr@gnu.org>
2293
2294 * coding.c (detect_coding_charset): If not checking latin extra,
2295 fail on characters between 0x80 and 0xA0. (Bug#2354)
2296
a4aee864
EZ
22972009-02-28 Eli Zaretskii <eliz@gnu.org>
2298
2299 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2300 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2301
d88bee5a
GM
23022009-02-27 Glenn Morris <rgm@gnu.org>
2303
2304 * callint.c (Finteractive): Doc fix.
2305
a808f22d
KH
23062009-02-27 Kenichi Handa <handa@m17n.org>
2307
2308 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2309
caf8d60c
CY
23102009-02-27 Chong Yidong <cyd@stupidchicken.com>
2311
2312 * font.c (font_style_to_value): Set value for unknown symbols to
2313 100 instead of 255.
b61137ea
CY
2314 (weight_table, slant_table, width_table): Treat "unspecified" as
2315 the default value.
caf8d60c 2316
1a0de25c
JB
23172009-02-26 Juanma Barranquero <lekktu@gmail.com>
2318
2319 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2320
8fc45744
JB
23212009-02-25 Juanma Barranquero <lekktu@gmail.com>
2322
107bd7d1
JB
2323 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2324 error as soon as a recursive load is detected.
8fc45744 2325
f097e223
AR
23262009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2327
2328 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2329 before caching.
2330
8810a12f
KH
23312009-02-24 Kenichi Handa <handa@m17n.org>
2332
2333 * fontset.c (fontset_find_font): Fix the condition for checking
2334 unavailable font.
2335
2c7d1565
GM
23362009-02-24 Glenn Morris <rgm@gnu.org>
2337
2338 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2339 whitespace that confuses documentation.
2340
a20878b6
MB
23412009-02-23 Miles Bader <miles@gnu.org>
2342
2343 * process.c (Flist_system_processes, Fprocess_attributes)
2344 (syms_of_process): Rename `system-process-attributes' to
2345 `process-attributes'.
2346
b3b58c01
AS
23472009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2348
1b3b981b
AS
2349 * coding.h (struct coding_system): Make safe_charsets a pointer to
2350 unsigned char.
2351 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2352 being 255.
2353 (SAFE_CHARSET_P): Likewise.
2354 (setup_iso_safe_charsets): Properly setup safe_charsets.
2355 (Fdefine_coding_system_internal): Likewise.
2356 (setup_coding_system): Likewise. Remove unneeded casts.
2357 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2358 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2359 unneeded casts.
2360
b3b58c01
AS
2361 * insdel.c (del_range_2): Don't modify gap contents when called
2362 from decode_coding_object. (Bug#1809)
2363
0b6f228c
CY
23642009-02-21 Chong Yidong <cyd@stupidchicken.com>
2365
2366 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2367 Qfont_object.
2368 (Ftype_of): Recognize font objects.
2369
2370 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2371
2372 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2373 moved to data.c.
2374
52f8870b
AR
23752009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2376
2377 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2378 async_iconified. Based on a patch by Christian Lynbech
2379 <christian.lynbech@tieto.com>.
2380 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2381
7087d5e9
GM
23822009-02-20 Glenn Morris <rgm@gnu.org>
2383
2384 * syntax.c (Fskip_chars_forward): Fix doc typo.
2385
41d2ceef
CY
23862009-02-20 Chong Yidong <cyd@stupidchicken.com>
2387
2388 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2389
1a3b7ca6
CY
23902009-02-19 Chong Yidong <cyd@stupidchicken.com>
2391
2392 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2393
73cce38d
KH
23942009-02-19 Kenichi Handa <handa@m17n.org>
2395
2396 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2397 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2398
a51092ee
DN
23992009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2400
2401 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2402
c423ecca
KH
24032009-02-18 Kenichi Handa <handa@m17n.org>
2404
2405 * font.c (font_check_otf_features): Fix handling of `nil' element.
2406 (Ffont_spec): Describe :lang and :otf in the docstring.
2407
4c1958f4
AS
24082009-02-16 Andreas Schwab <schwab@suse.de>
2409
2410 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2411 string.
2412
5704f39a
KH
24132009-02-16 Kenichi Handa <handa@m17n.org>
2414
2415 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2416 (Bug#1723)
5704f39a 2417
8f0085aa
CY
24182009-02-14 Chong Yidong <cyd@stupidchicken.com>
2419
a057d86a 2420 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2421
2422 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2423 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2424
aff01dd9
EZ
24252009-02-14 Eli Zaretskii <eliz@gnu.org>
2426
2427 * msdos.c (MAX_SCREEN_BUF): New macro.
2428 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2429 Encode the entire run of glyphs sharing the same face, instead of
2430 doing that one glyph at a time (fixes a bug with displaying
2431 double-size characters).
2432
ba301db3
AR
24332009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2434
2435 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2436
2437 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2438 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2439 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2440
2441 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2442 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2443
51d861de
SM
24442009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2445
2446 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2447 invisible areas.
2448
7fed8996
JR
24492009-02-12 Jason Rumney <jasonr@gnu.org>
2450
631ea4fb
JR
2451 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2452 (add_font_entity_to_list): Call check_face_name even when family
2453 is unspecified.
2454
cb4a3e42
JR
2455 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2456 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2457 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2458
7fed8996 2459 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2460 raster fonts. (Bug#2219)
7fed8996 2461
895416e3
KH
24622009-02-12 Kenichi Handa <handa@m17n.org>
2463
2464 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2465 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2466 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2467 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2468 (find_automatic_composition): While looking forward and backward,
2469 check static composition. Fix where to stop looking forward.
2470 (composition_adjust_point): Fix checking of static composition.
2471 (Fcomposition_get_gstring): Pay attention to
1dacf998 2472 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2473
2474 * lisp.h (fast_looking_at): Extern it.
2475
2476 * search.c (fast_looking_at): New function.
2477
51d861de 2478 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2479 <struct glyph>.u.cmp.to.
2480 (append_composite_glyph): Likewise.
2481
51d861de 2482 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2483 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2484 composition.
51d861de 2485 (append_composite_glyph): Adjust for the change of
895416e3
KH
2486 <strcut glyph>.u.cmp.to.
2487
8510724d
JB
24882009-02-11 Juanma Barranquero <lekktu@gmail.com>
2489
2490 * casetab.c (init_casetab_once):
2491 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2492 * font.c (font_update_lface):
2493 * fontset.c (Fnew_fontset):
2494 * ftfont.c (ftfont_drive_otf):
2495 * xfont.c (xfont_open):
2496 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2497
294fa707
SM
24982009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2499
2500 * fileio.c (Fwrite_region): !NILP -> CONSP.
2501
b5bfebec
AS
25022009-02-10 Andreas Schwab <schwab@suse.de>
2503
2504 * process.c (send_process): Properly relocate pointer into data
adab88bd 2505 when using encoded data. (Bug#2272)
b5bfebec 2506
cb84a2be
KH
25072009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2508
2509 * coding.c (detect_coding_charset): Fix previous change.
2510
89e09428
JR
25112009-02-08 Jason Rumney <jasonr@gnu.org>
2512
2513 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2514 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2515
4470a277
AS
25162009-02-07 Andreas Schwab <schwab@suse.de>
2517
2518 * unexelf.c (unexec): Fix error message.
2519
3175b12a
AR
25202009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2521
2522 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2523 when modal window is active. (Bug #2152)
3175b12a
AR
2524 (applicationShouldTerminate:): Remove now-unneeded while loop
2525 around NSRunAlertPanel.
2526
2527 * nsmenu.m (popupSession): New file-global variable.
2528 (pop_down_menu): End the popupSession before closing dialog.
2529 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2530 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2531 don't query NSApp for events (just sleep instead).
2532
8434d0b8
EZ
25332009-02-07 Eli Zaretskii <eliz@gnu.org>
2534
51d861de
SM
2535 * coding.c (syms_of_coding) <translation-table-for-input>:
2536 Modify doc string to discourage use for character code unification.
8434d0b8 2537
aa82edfd
CY
25382009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2539
2540 * atimer.c (run_timers): Update pending_atimers.
2541
2d283c7c
CY
25422009-02-06 Chong Yidong <cyd@stupidchicken.com>
2543
eb306cab
CY
2544 * image.c (svg_load_image): Fix last change.
2545
2d283c7c
CY
2546 * xfns.c (Fx_create_frame): Signal an error if no font is
2547 found (Bug#2147).
2548
4d8e170e
JB
25492009-02-05 Juanma Barranquero <lekktu@gmail.com>
2550
2551 * character.c (syms_of_character) <script-representative-chars>:
2552 Fix typo in docstring.
2553
c96169a0
AR
25542009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2555
2556 * nsmenu.m (pop_down_menu): New function.
2557 (ns_popup_dialog): Call it on unwind.
2558 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2559 call timer_check() (Bug#2154).
2560 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2561 handling_signal is set.
2562 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2563
31fd7c5c 2564 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2565
2566 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2567
2568 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2569
51d861de
SM
2570 * keyboard.c (poll_for_input_1, handle_async_input):
2571 Set handling_signal under HAVE_NS.
c96169a0 2572
aacd8ba1
GM
25732009-02-04 Glenn Morris <rgm@gnu.org>
2574
2575 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2576
4cb75c4b
KH
25772009-02-04 Kenichi Handa <handa@m17n.org>
2578
2579 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2580
2581 * charset.c (Fchar_charset): New optional arg restriction.
2582
2583 * coding.h (coding_system_charset_list): Extern it.
2584
2585 * coding.c (coding_system_charset_list): New function.
2586
2587 * composite.c: Include coding.h and termhooks.h.
2588 (composition_gstring_p): Fix for the terminal case.
2589 (composition_gstring_width): Likewise.
2590 (fill_gstring_body): Likewise.
2591 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2592 the frame.
2593 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2594 is within a composition.
867d4bb3 2595 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2596
2597 * term.c (encode_terminal_code): Fix handling of composition.
2598 (produce_composite_glyph): For static composition, get pixel_width
2599 from struct composition.
2600
826ba17e
AS
26012009-02-02 Andreas Schwab <schwab@suse.de>
2602
2603 * unexelf.c (unexec): Handle unaligned bss offset.
2604
8ad093db
AR
26052009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2606
2607 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2608 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2609
8ad093db
AR
2610 * keyboard.c (handle_interrupt): Don't call
2611 quit_throw_to_read_char() under NS.
d0a76a6e 2612
8ad093db
AR
2613 * blockinput.h: Remove NS-specific code.
2614
4d18a7a2
DN
26152009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2616
db878925
DN
2617 * dispnew.c (window_change_signal): Don't try to get the size of a
2618 suspended tty frame.
2619 * term.c (Fresume_tty): Resize if the size has changed while the
2620 tty was suspended.
2621
4d18a7a2
DN
2622 * alloc.c (mark_stack): Properly conditionalize previous change.
2623
8984df7c
JB
26242009-01-30 Juanma Barranquero <lekktu@gmail.com>
2625
2626 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2627 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2628 Remove; this code is not used on Windows.
2629
75f4f1ac
EZ
26302009-01-30 Eli Zaretskii <eliz@gnu.org>
2631
2632 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2633 EOLs that also has stray ^M characters.
2634
07a1e794
JB
26352009-01-30 Juanma Barranquero <lekktu@gmail.com>
2636
2637 * atimer.c (run_timers, alarm_signal_handler):
2638 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2639 * w32inevt.c (w32_console_read_socket):
2640 * w32term.c (w32_read_socket):
2641 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2642
a8b11cc9
CY
26432009-01-30 Chong Yidong <cyd@stupidchicken.com>
2644
2645 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2646 Initialize it as a relative filename pattern.
2647 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2648 (Fcall_process_region): Simplify temp file creation using
2649 temporary-file-directory.
2650
c279587b
EZ
26512009-01-29 Eli Zaretskii <eliz@gnu.org>
2652
2653 * msdos.c: Rename pending_signals to msdos_pending_signals.
2654 (sig_suspender, sigprocmask): Adjust.
2655
a8fe3242
CY
26562009-01-29 Chong Yidong <cyd@stupidchicken.com>
2657
2658 * keyboard.c (pending_signals): New var.
2659 (poll_for_input, input_available_signal, init_keyboard): Set it.
2660 (process_pending_signals): New function.
2661
2662 * lisp.h (QUIT): Check pending_signals instead of
2663 interrupt_input_pending. Use process_pending_signals.
2664
51d861de 2665 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2666
51d861de 2667 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2668
2669 * sysdep.c (emacs_write): Use process_pending_signals.
2670
2671 * xterm.c (XTread_socket): Update pending_signals.
2672
2673 * w32term.c (w32_read_socket): Update pending_signals.
2674
2675 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2676
6570a1c4
KH
26772009-01-29 Kenichi Handa <handa@m17n.org>
2678
2679 * xftfont.c (xftfont_has_char): New function.
2680 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2681
d72a4afa
AR
26822009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2683
2684 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2685 under GNUstep.
2686 (ns_query_color): New declaration.
2687
2688 * nsterm.m (ns_confirm_quit): New variable.
2689 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2690 (EmacsApp-applicationShouldTerminate:): Use it.
2691 (EmacsPrefsController): Let user set it.
2692 (ns_query_color): New function.
2693 (ns_defined_color): Use it.
2694 (ns_initialize): Drop.
2695 (ns_term_init): Add two lines from ns_initialize(), and set
2696 input_interrupt_mode to nil.
2697
2698 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2699 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2700
9fe78804
KH
27012009-01-28 Kenichi Handa <handa@m17n.org>
2702
2703 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2704 (fontset_get_font_group): Remember that no font-group is specified
2705 for C.
9fe78804 2706
fa57de36
CY
27072009-01-27 Chong Yidong <cyd@stupidchicken.com>
2708
930600e9
CY
2709 * fns.c (concat): Check for string overflow (bug#1787).
2710
fa57de36
CY
2711 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2712 Quadruple undo limits (bug#1501).
2713
7179ce7b
KH
27142009-01-27 Kenichi Handa <handa@m17n.org>
2715
2716 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2717 directly use GT_Get_Char_index.
2718
2719 * xftfont.c (struct xftfont_info): New member `index'.
2720
2721 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2722 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2723
5be8fcc0
CY
27242009-01-26 Kenichi Handa <handa@m17n.org>
2725
2726 * fontset.c (fontset_find_font): Fix handling of non-cons return
2727 value of fontset_get_font_group.
2728 (fontset_font): Revert last change.
2729
19ae3e61
JR
27302009-01-26 Jason Rumney <jasonr@gnu.org>
2731
2732 * w32font.c (w32font_list_internal): Return quickly if registry is
2733 unknown. Simplify final return.
2734 (add_font_entity_to_list): Break complex logic down into more
2735 manageable chunks. Move unknown registry check to
2736 w32font_list_internal.
2737
8612b71a
AR
27382009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2739
2740 Changes to remove Feval calls from GUI under NS.
2741
d8038940
JB
2742 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2743 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2744 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2745
2746 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2747 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2748 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2749 instead of NON_ASCII_KEYSTROKE_EVENT.
2750 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2751 (EmacsApp-applicationShouldTerminate:): Query user.
2752 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2753 instead of Feval.
2754
2755 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2756
2757 * keyboard.c (kbd_buffer_get_event): Check for it.
2758 (keys_of_keyboard): Define lispy keys for
2759 ns-put/unput-working-text.
2760
2761 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2762 versions.
2763 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2764
6288ae55
CY
27652009-01-25 Chong Yidong <cyd@stupidchicken.com>
2766
2767 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2768 setting current_buffer directly. (Bug#2044)
6288ae55 2769
289e7f8f
CY
27702009-01-24 Chong Yidong <cyd@stupidchicken.com>
2771
5ce87308 2772 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2773 any work. (Bug#1952, bug#1990).
5ce87308 2774
64cc3cf6 2775 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2776
b3243e6f
AR
27772009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2778
2779 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2780 (ns_no_defaults): New declaration.
2781 (main): Use it.
e0d2e69a 2782
d900b2af 2783 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2784
d900b2af 2785 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2786
d900b2af
AR
2787 * nsterm.m (ns_no_defaults): New variable.
2788 (ns_initialize): Don't read defaults when ns_no_defaults.
2789 (EmacsView-readSelectionFromPasteboard:)
2790 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2791 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2792 (ns_dumpglyphs_stretch): New function.
2793 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2794 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2795
e0d2e69a
AR
2796 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2797
3ac71f5d
CY
27982009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2799
2800 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2801 call for Sparc64.
2802
3fe53a83
AR
28032009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2804
2805 * nsfns.m:
2806 * nsgui.h:
2807 * nsmenu.m:
2808 * nsselect.m:
2809 * nsterm.h:
2810 * nsterm.m: Remove '23' comments that indicated code added during
2811 update from emacs-20 -> emacs-23.
2812
10f87c6f 28132009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2814
2815 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2816 ns_alternate_modifier. (Bug#1217)
a3b53a85 2817
c7cef62d
AR
2818 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2819 Display all shortcuts, including those w/o super modifier.
2820
575fb8bd
AR
2821 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2822
918b848b
CY
28232009-01-22 Chong Yidong <cyd@stupidchicken.com>
2824
2825 * fileio.c (Vwrite_region_post_annotation_function)
2826 (Vwrite_region_annotation_buffers): New vars.
2827 (build_annotations_unwind): Just reset
2828 Vwrite_region_annotation_buffers.
2829 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2830 Call write-region-post-annotation-function.
2831 (build_annotations): Add to Vwrite_region_annotation_buffers if
2832 buffer changes.
2833
a39e2539
AR
28342009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2835
2836 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2837 Tiger.
51d861de
SM
2838 * nsfns.m (ns_do_applescript):
2839 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2840
35ed44db
AR
28412009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2842
2843 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2844
cbe0b5bf
AR
28452009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2846
2847 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2848
6049d3a0
AR
2849 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2850
2851 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2852 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2853 handle Ctrl-tab. (Bug#1841)
2854 (ns_get_color): Use unsigned long long for scanned hex string value.
2855 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2856 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2857 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2858 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2859 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2860 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2861 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2862
d3810c21 2863 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2864 DPI. (Bug#1316)
d3810c21
AR
2865 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2866 values in onTiger section.
4c7077c3 2867
e301e634
CY
28682009-01-19 Chong Yidong <cyd@stupidchicken.com>
2869
7f82490b
CY
2870 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2871 Check return value of font_spec_from_name.
64cc3cf6 2872 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2873
2874 * font.c (font_spec_from_name): Return Qnil if font name could not
2875 be parsed.
2876 (font_parse_name): Treat a `?' character as part of an XLFD.
2877
e301e634
CY
2878 * fns.c (Fsubstring): Doc fix.
2879
1c0db158
KH
28802009-01-19 Kenichi Handa <handa@m17n.org>
2881
51d861de 2882 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2883 (ftfont_list): Likewise.
2884
acf20901
JB
28852009-01-18 Juanma Barranquero <lekktu@gmail.com>
2886
fff4e459
JB
2887 * dbusbind.c (Fdbus_register_signal):
2888 * process.c (conv_sockaddr_to_lisp):
2889 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2890
acf20901
JB
2891 * callproc.c (Fgetenv_internal): Doc fix.
2892
e7abcdfb
CY
28932009-01-16 Chong Yidong <cyd@stupidchicken.com>
2894
2895 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2896 it is not even used.
2897
b60861e6
GM
28982009-01-16 Glenn Morris <rgm@gnu.org>
2899
2900 * font.c (Ffont_variation_glyphs): Silence compiler.
2901
8db52afe
JB
29022009-01-15 Juanma Barranquero <lekktu@gmail.com>
2903
2904 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2905 Reported by David Robinow <drobinow@gmail.com>.
2906
4cddb209
KH
29072009-01-15 Kenichi Handa <handa@m17n.org>
2908
51d861de 2909 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2910
f247f67b
JR
29112009-01-14 Jason Rumney <jasonr@gnu.org>
2912
2913 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2914 never a fontset. (Bug#1562)
f247f67b 2915
f56a4450
KH
29162009-01-14 Kenichi Handa <handa@m17n.org>
2917
2918 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2919 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2920
4e99855e
CY
29212009-01-13 Chong Yidong <cyd@stupidchicken.com>
2922
2923 * font.c (font_clear_prop): If clearing the family, clear the font
2924 width index too.
2925
fff4e459 2926 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2927
24f01470
JB
29282009-01-12 Juanma Barranquero <lekktu@gmail.com>
2929
2930 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2931 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2932 functions, use sizeof.
2933
a41240a3
MR
29342009-01-12 Martin Rudalics <rudalics@gmx.at>
2935
2936 * keyboard.c (read_char): Fix case where last_nonmenu_event
2937 returned a bad value with submenus. (Bug#447)
2938
944636b8
CY
29392009-01-12 Chong Yidong <cyd@stupidchicken.com>
2940
2941 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2942 family, clear the font width index too.
2943
0dad7c6f
JR
29442009-01-11 Jason Rumney <jasonr@gnu.org>
2945
2946 * keyboard.c (cmd_error_internal): Exit when errors occur before
2947 frame creation and not in daemon mode. (Bug#1836)
2948
7c2363af
CY
29492009-01-10 Chong Yidong <cyd@stupidchicken.com>
2950
2951 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2952 of a display vector, backtrack.
2953 (try_window_reusing_current_matrix): Check glyph type before
2954 referencing charpos member.
2955
97b1b294
EZ
29562009-01-10 Eli Zaretskii <eliz@gnu.org>
2957
2958 Fix Bug #876:
2959
2960 * coding.c (inhibit_null_byte_detection): New variable.
2961 (detect_coding, detect_coding_system): Don't pay attention to null
2962 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2963 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2964 <inhibit-iso-escape-detection>: Doc fix.
2965
4624b6e3
JR
29662009-01-09 Jason Rumney <jasonr@gnu.org>
2967
2968 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2969 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2970 Only report Unicode Plane 2 fonts as unicode-sip.
2971
323b840c
CY
29722009-01-09 Chong Yidong <cyd@stupidchicken.com>
2973
51d861de
SM
2974 * xfaces.c (Fx_font_family_list): Delete function.
2975 Move compatibility version to faces.el.
323b840c 2976
51d861de 2977 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2978
eba7400d
MR
29792009-01-09 Martin Rudalics <rudalics@gmx.at>
2980
2981 * frame.c (x_set_frame_parameters): Remember requested value for
2982 fullscreen before it's reset by the parameter handler.
2983
4b09796d
GM
29842009-01-09 Glenn Morris <rgm@gnu.org>
2985
2986 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2987 (last_command_event): ... and update all users.
4b09796d
GM
2988 (last_input_char): For clarity, rename to...
2989 (last_input_event): ... and update all users.
2990 (last-command-char, last-input-char): Move to subr.el as aliases.
2991 * cmds.c, commands.h: Update for last_command_char rename.
2992
14ccea62
CY
29932009-01-08 Chong Yidong <cyd@stupidchicken.com>
2994
51d861de 2995 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2996
5f004711
JR
29972009-01-08 Jason Rumney <jasonr@gnu.org>
2998
2999 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3000 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3001 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3002 Don't declare.
fff4e459 3003 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3004 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3005
b71f6f73
KH
30062009-01-07 Kenichi Handa <handa@m17n.org>
3007
50b06221 3008 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3009 remember the coding system used for decoding in
50b06221
KH
3010 coding_system (Bug#1039).
3011
b71f6f73 3012 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3013 breaking the loop. (Bug#870)
b71f6f73
KH
3014 (decode_coding_utf_16, decode_coding_emacs_mule)
3015 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3016 (decode_coding_charset): Likewise.
3017
56f668f7
MR
30182009-01-05 Martin Rudalics <rudalics@gmx.at>
3019
3020 * frame.c (x_set_frame_parameters): Make sure height (width) get
3021 applied when fullwidth (fullheight) is set. (Bug#1522)
3022
5da9424d
JB
30232009-01-04 Juanma Barranquero <lekktu@gmail.com>
3024
3025 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3026 (utc_base): Declare as ULONGLONG, not long double.
3027 (convert_time_raw): Delete.
3028 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3029 (initialize_utc_base): New function.
3030 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3031 (convert_from_time_t): Use initialize_utc_base; compute result with
3032 64-bit arithmetic.
3033 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3034
c4605e09
EZ
30352009-01-03 Eli Zaretskii <eliz@gnu.org>
3036
9acef61c 3037 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3038 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3039 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3040 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3041 [!subprocesses]: Define.
3042 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3043 (Flist_system_processes, Fsystem_process_attributes)
3044 [!subprocesses]: Call list_system_processes and
3045 system_process_attributes instead of returning Qnil.
3046
9acef61c
JB
3047 * dosfns.c (system_process_attributes, list_system_processes):
3048 New functions.
c4605e09
EZ
3049
3050 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3051
3052 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3053 Don't use the default (no-op) implementation.
3054
8b7d0a16
JR
30552009-01-03 Jason Rumney <jasonr@gnu.org>
3056
a6d46bc1
JR
3057 * keyboard.c (parse_modifiers_uncached): Wheel events are
3058 clicks (bug#687).
3059
8b7d0a16
JR
3060 * w32term.c (x_query_colors, x_query_color): New functions.
3061
3062 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3063 (svg_load_image): Cast returned pointers from dynamically loaded
3064 functions. Eliminate W32 specific code.
3065
bfe11752
DN
30662009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3067
89e2438a
DN
3068 * nsfns.m (x_set_foreground_color, x_set_background_color)
3069 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3070 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3071 x_ prefix instead of ns_. Update references.
3072 (syms_of_nsfns): Add a FIXME comment.
3073
3074 * nsterm.m (x_set_cursor_type): New prototype.
3075 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3076
bfe11752
DN
3077 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3078 for Solaris instead of incorrectly providing Qutime and Qcutime.
3079
031da700
EZ
30802009-01-02 Eli Zaretskii <eliz@gnu.org>
3081
3082 * w32.c (process_times): Compute sum of utime and stime.
3083 (system_process_attributes): Add Qtime to the alist.
3084
3085 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3086 and add them to the alist.
3087
3088 * process.c (top level) <Qtime, Qctime>: New variables.
3089 (syms_of_process): staticpro them.
3090 (Fsystem_process_attributes): Add their documentation to the doc
3091 string.
3092
3093 * process.h: Declare Qtime and Qctime.
3094
df23bf08
JR
30952009-01-02 Jason Rumney <jasonr@gnu.org>
3096
9acef61c 3097 * image.c (Qgobject): New symbol.
df23bf08
JR
3098 (syms_of_image): Initialize it.
3099 (init_svg_functions): Load some functions from gobject library.
3100
5bbdf7aa
DN
31012009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3102
3103 * frame.c (make_terminal_frame): Remove redundant code and useless
3104 block.
3105
63136da6
AS
31062009-01-01 Andreas Schwab <schwab@suse.de>
3107
3108 * process.c (conv_sockaddr_to_lisp): Add workaround for
3109 getsockname bug on BSD.
3110
9ef69046
CY
31112009-01-01 Chong Yidong <cyd@stupidchicken.com>
3112
d6fafbe0
CY
3113 * xfns.c (x_create_tip_frame): Set border width of the X window.
3114
51d861de 3115 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3116
f9c34147
JR
31172009-01-01 Jason Rumney <jasonr@gnu.org>
3118
9acef61c 3119 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3120 Don't block input, as per earlier xterm.c changes.
3121
f5497e45
AR
31222008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3123
3124 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3125 (ns_appkit_version_int): New function.
3126 (x-server-version): Use ns_appkit_version_int and follow 21+
3127 convention of returning 3 integers.
3128
c19cab20
KH
31292008-12-30 Kenichi Handa <handa@m17n.org>
3130
3131 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3132 (CHAR_SURROGATE_PAIR_P): New macro.
3133
3134 * font.h (struct font_driver): New member get_variation_glyphs.
3135
9acef61c 3136 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3137 (Ffont_variation_glyphs): New function.
3138 (syms_of_font): Defsubr it.
3139
3140 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3141 ftfont_variation_glyphs.
3142 (setup_otf_gstring): New function.
3143 (ftfont_drive_otf): Use it.
3144 (ftfont_shape_by_flt): Handle variation selector.
3145 (ftfont_variation_glyphs): New function.
3146
28cd591f
MR
31472008-12-30 Martin Rudalics <rudalics@gmx.at>
3148
3149 * frame.c (Vemacs_iconified): Remove.
3150
7f714baf
JR
31512008-12-30 Jason Rumney <jasonr@gnu.org>
3152
3153 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3154 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3155
9d2d22ab
CY
31562008-12-30 Chong Yidong <cyd@stupidchicken.com>
3157
3158 * indent.c (Fvertical_motion): Don't advance iterator if we have
3159 reseated to the desired position.
3160
3161 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3162 checking for pos match.
3163
545312c2
KH
31642008-12-30 Kenichi Handa <handa@m17n.org>
3165
1ede3eb6
KH
3166 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3167 just get the low 8-bit of the code.
3168
545312c2
KH
3169 * font.c (font_intern_prop): Validate str as multibyte.
3170
bd7bbf29
DN
31712008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3172
31e0750e
DN
3173 * dispextern.h (struct face): Move lface and hash from the middle
3174 of bitfields.
3175
bd7bbf29
DN
3176 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3177
b5672e7c
DN
31782008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3179
3180 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3181 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3182 instead of intervals.h.
3183
d704470f
AS
31842008-12-26 Andreas Schwab <schwab@suse.de>
3185
3186 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3187 cons.
3188
54b33868
MR
31892008-12-26 Martin Rudalics <rudalics@gmx.at>
3190
3191 * textprop.c (Qminibuffer_prompt): New variable.
3192 (syms_of_textprop): Initialize it.
3193 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3194 in minibuffer-prompt face. (Bug#1662)
3195
40b615d6
JR
31962008-12-25 Jason Rumney <jasonr@gnu.org>
3197
3198 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3199
baae5c2d
JR
32002008-12-24 Jason Rumney <jasonr@gnu.org>
3201
3202 * ralloc.c (r_alloc_reset_variable): New function.
3203
3204 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 3205 record of what points where. (Bug#716)
baae5c2d 3206
a9051c88
DN
32072008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
3208
3209 * minibuf.c (read_minibuf): Follow the non-interactive case when
3210 running as a daemon, before detaching.
3211
8b146312
AS
32122008-12-22 Andreas Schwab <schwab@suse.de>
3213
3214 * buffer.c (init_buffer): Use realloc instead of xrealloc.
3215 * gtkutil.c (free_widget_value): Use xfree instead of free.
3216
56f2de10
MR
32172008-12-22 Martin Rudalics <rudalics@gmx.at>
3218
3219 * frame.c (delete_frame): New function derived from
3220 Fdelete_frame to handle Qnoelisp value for FORCE argument.
3221 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
3222 (Fdelete_frame): Call delete_frame. Remove line from doc-string
3223 saying that FORCE non-nil doesn't run `delete-frame-functions'.
3224 * frame.h: Extern delete_frame.
3225 * window.c (window_loop):
3226 * terminal.c (delete_terminal):
3227 * xterm.c (x_connection_closed):
3228 * xfns.c (Fx_hide_tip):
9acef61c 3229 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 3230
1fc200d6
JR
32312008-12-21 Jason Rumney <jasonr@gnu.org>
3232
3233 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
3234 when character maps to .notdef character.
3235
5e252df2
SM
32362008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3237
3238 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
3239
99b72cc4
JR
32402008-12-20 Jason Rumney <jasonr@gnu.org>
3241
3242 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 3243 a graphical frame on Windows. (Bug#1325)
99b72cc4 3244
acc49a52
JD
32452008-12-20 Jan Djärv <jan.h.d@swipnet.se>
3246
3247 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
3248
6ea15123
CY
32492008-12-20 Chong Yidong <cyd@stupidchicken.com>
3250
3251 * minibuf.c (Fread_buffer): Doc fix.
3252
b2dab6c8
JR
32532008-12-20 Jason Rumney <jasonr@gnu.org>
3254
54ea0c87 3255 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 3256 server name in UNC paths. (Bug#719)
54ea0c87 3257
b2dab6c8 3258 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 3259 charbuf. (Bug#1035)
b2dab6c8 3260
6d1921be
DN
32612008-12-19 Daniel Engeler <engeler@gmail.com>
3262
3263 * sysdep.c (serial_configure): Fix typo.
3264
53934c98
DN
32652008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3266
3267 * sysdep.c: Include alloca.h.
f4f634e8
DN
3268 (system_process_attributes): Add implementation for Solaris.
3269
3270 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 3271
06e111a6
DN
32722008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3273
3274 Reorganize implementation of Flist_system_processes and
3275 Fsystem_process_attributes. No functional changes.
3276 * process.c: Don't #include pwd.h, grp.h and limits.h.
3277 (Flist_system_processes): Just call list_system_processes.
3278 (Fsystem_process_attributes): Just call system_process_attributes.
3279 (procfs_list_system_processes, time_from_jiffies)
3280 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
3281 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
3282
3283 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
3284 (list_system_processes): Rename from
3285 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3286 Provide a do nothing implementation.
3287 (system_process_attributes): Rename from
3288 procfs_list_system_processes.
3289 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3290 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3291
3292 * w32.c (list_system_processes): Rename from
3293 w32_list_system_processes.
3294 (system_process_attributes): Rename from
3295 w32_system_process_attributes.
3296
3297 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3298
3299 * process.h (w32_list_system_processes)
3300 (w32_system_process_attributes): Remove.
3301 (list_system_processes, system_process_attributes): New
3302 prototypes.
3303
6a705b23
KH
33042008-12-19 Kenichi Handa <handa@m17n.org>
3305
3306 * xfont.c (xfont_decode_coding_xlfd): New function.
3307 (xfont_encode_coding_xlfd): New function.
3308 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3309 (xfont_list): Decode and encode XLFD by iso-8859-1.
3310 (xfont_match): Likewise.
3311 (xfont_list_family): Likewise.
3312 (xfont_open): Likewise.
3313
d66c0241 3314 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3315 names are utf-8.
3316
d66c0241 3317 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3318 names are utf-8.
3319
5a130941
JD
33202008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3321
3322 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3323 changed.
bfd20325
JD
3324 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3325 clicked on a detached tool bar button.
5a130941 3326
fd95644b
DN
33272008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3328
3329 * emacs.c (main): Print and error and exit when no data is read
3330 from the pipe.
3331
e6eee6ae
JR
33322008-12-17 Jason Rumney <jasonr@gnu.org>
3333
3334 * w32font.c (w32font_has_char): Always return -1.
3335
a35dd56b
KH
33362008-12-16 Kenichi Handa <handa@m17n.org>
3337
3338 * font.c (font_open_entity): Fix previous change.
3339
0e3635c2
DN
33402008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3341
3342 * process.c: Include <limits.h>.
3343
d4835507 33442008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3345
3346 * font.c (font_update_drivers): Fix mistake in reconstructing the
3347 driver list.
3348
33492008-12-16 Chong Yidong <cyd@stupidchicken.com>
3350
3351 * font.c (font_clear_cache): Fix format of font cache data.
3352
e2cbc401
CY
33532008-12-15 Chong Yidong <cyd@stupidchicken.com>
3354
3355 * xftfont.c (xftfont_open): Free Xft font pattern if
3356 XftFontOpenPattern fails.
3357
3358 * xterm.c (x_free_frame_resources): Remove extraneous call to
3359 free_frame_faces.
3360
b131d535
CY
33612008-12-13 Chong Yidong <cyd@stupidchicken.com>
3362
3363 * xterm.c (x_delete_display): Move xim_close_dpy call to
3364 x_delete_terminal.
3365 (x_delete_terminal): Call xim_close_dpy.
3366
e6df5336
JR
33672008-12-13 Jason Rumney <jasonr@gnu.org>
3368
3369 * w32font.c (intern_font_name): New function.
3370 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3371 (w32font_open_internal, Fx_select_font): Decode font name.
3372 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3373
3374 * w32font.h (intern_font_name): Declare new function.
3375
3376 * w32uniscribe.c (add_opentype_font_name_to_list):
3377 Use intern_font_name.
3378
20d68145
CY
33792008-12-13 Chong Yidong <cyd@stupidchicken.com>
3380
9f2554de
CY
3381 * frame.c (Fdelete_frame): Call free_font_driver_list.
3382
3d9bec9a
CY
3383 * font.c (free_font_driver_list): Implement missing function.
3384
20d68145
CY
3385 * w32term.c (w32_term_init): Don't initialize the image cache
3386 here; it will be done in init_frame_faces.
3387
3388 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3389 (struct x_display_info): Remove unused member null_pixel. New
3390 member xim_callback_data.
3391
3392 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3393 (xim_initialize): Save pointer to callback function data.
3394 (xim_close_dpy): Free callback function data. Call XCloseIM,
3395 reverting 2008-11-04 change by David Smith.
3396 (x_term_init): Don't initialize the image cache here; it will be
3397 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3398 (x_delete_display): Free x_dnd_atoms member.
3399
96f9306b
KH
34002008-12-13 Kenichi Handa <handa@m17n.org>
3401
6dec9044
JB
3402 * font.c (font_rescale_ratio): Moved from xfaces.c.
3403 Argument type changed. Handle a font-spec too.
96f9306b 3404 (font_score): Check Vface_font_rescale_alist.
6dec9044 3405 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3406
3407 * xfaces.c (font_rescale_ratio): Moved to font.c.
3408
8d5b4964
CY
34092008-12-13 Chong Yidong <cyd@stupidchicken.com>
3410
3411 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3412
e6df5336
JR
34132008-12-12 Jason Rumney <jasonr@gnu.org>
3414
3415 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3416 Vwindow_system_version to the real w32 major version.
3417
97c6058a
DN
34182008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3419
3420 * term.c (init_tty): Move setting the terminal name before the
3421 potential user: maybe_fatal.
3422
ec4e88d7
CY
34232008-12-11 Chong Yidong <cyd@stupidchicken.com>
3424
d4835507
JB
3425 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3426 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3427
b4233ec9
JR
34282008-12-11 Jason Rumney <jasonr@gnu.org>
3429
8ec71e23 3430 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3431 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3432
b4233ec9 3433 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3434 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3435
011a0143
JB
34362008-12-11 Juanma Barranquero <lekktu@gmail.com>
3437
3438 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3439
3c309f34
JB
34402008-12-11 Juanma Barranquero <lekktu@gmail.com>
3441
3442 * process.c (Fsystem_process_attributes, syms_of_process):
3443 Fix typo in name of Ssystem_process_attributes.
3444 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3445
fedc6ab5
JB
34462008-12-11 Juanma Barranquero <lekktu@gmail.com>
3447
3448 * syntax.c (Fmodify_syntax_entry): Doc fix.
3449
ba3de0e8
JB
34502008-12-10 Juanma Barranquero <lekktu@gmail.com>
3451
3452 * font.c (Ffont_spec): Move usage to end of docstring.
3453
174f1c74
JR
34542008-12-10 Jason Rumney <jasonr@gnu.org>
3455
3456 * w32font.c (Qcham): New symbol.
3457 (font_supported_scripts): Add cham, and comments for other new
3458 scripts in bitfield from OpenType spec.
9d32f818
JR
3459 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3460 contain characters beyond the bmp.
174f1c74 3461
7b649478
KH
34622008-12-10 Kenichi Handa <handa@m17n.org>
3463
3464 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3465 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3466 Qunicode_sip.
3467
2133e2d1
JB
34682008-12-10 Juanma Barranquero <lekktu@gmail.com>
3469
3470 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3471 (Fcoding_system_put): Use QCdefault_char.
3472 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3473
9af886ee
CY
34742008-12-09 Chong Yidong <cyd@stupidchicken.com>
3475
74d819eb
CY
3476 * xftfont.c (syms_of_xftfont): Fix typo.
3477
4ccfa1c0 3478 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3479
7c19d3ae
DN
34802008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3481
3482 * emacs.c (main): Close daemon_pipe on exec.
3483
567826bb
CY
34842008-12-08 Chong Yidong <cyd@stupidchicken.com>
3485
3486 * termchar.h (struct tty): New members termcap_term_buffer and
3487 termcap_strings_buffer.
3488
3489 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3490 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3491 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3492 All callers changed.
3493 (init_tty): Store termcap data and string buffers in new struct
3494 tty members termcap_term_buffer and termcap_strings_buffer.
3495 (delete_tty): Free them.
4ccfa1c0 3496 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3497
aa96c42b
SZ
34982008-12-07 Seiji Zenitani <zenitani@mac.com>
3499
3500 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3501 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3502
b7e1d896
CY
35032008-12-06 Chong Yidong <cyd@stupidchicken.com>
3504
3505 * coding.c (make_conversion_work_buffer): Disable buffer
3506 modification hooks in the work buffer.
3507
b5ec91a5
EZ
35082008-12-05 Eli Zaretskii <eliz@gnu.org>
3509
3510 * process.c (procfs_system_process_attributes): If `nread' has a
3511 negative value, assign zero to it.
3512
a5d2a52b
CY
35132008-12-05 Chong Yidong <cyd@stupidchicken.com>
3514
68c5540b 3515 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3516
7bf1bb21
KH
35172008-12-05 Kenichi Handa <handa@m17n.org>
3518
3519 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3520 second character is a combining character.
3521
2fdc7d00
EZ
35222008-12-05 Eli Zaretskii <eliz@gnu.org>
3523
3524 * process.c (procfs_system_process_attributes): Don't use cmd,
3525 cmdsize, and q without initializing them first.
3526
bf6bfba8
JR
35272008-12-04 Jason Rumney <jasonr@gnu.org>
3528
3529 * w32font.c (w32font_draw): Initialize orig_clip before getting
3530 it, and delete it when finished.
3531
a3b1a468
DN
35322008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3533
3534 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3535 case when running as a daemon before detaching.
3536
8b8be8eb
JB
35372008-12-03 Juanma Barranquero <lekktu@gmail.com>
3538
805f2638 3539 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3540
b1bde622
KH
35412008-12-03 Kenichi Handa <handa@m17n.org>
3542
e500c47d
KH
3543 * font.c (font_at): Set `multibyte' at first.
3544
ca516334
KH
3545 * coding.c (decode_coding_charset): Check type of an element of
3546 vector VALIDS.
7bf1bb21 3547 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3548
4ccfa1c0 3549 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3550 (font_for_char): Likewise.
3551
1e5ecd37
CY
35522008-12-03 Chong Yidong <cyd@stupidchicken.com>
3553
d5b01609 3554 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3555 (font_update_lface): Handle fonts with corrupted size specs,
3556 i.e. non-int and non-float.
d5b01609 3557
11e3a6e4 3558 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3559 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3560 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3561
ab06788b
CY
3562 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3563
1e5ecd37 3564 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3565 underline_minimum_offset for underline position.
1e5ecd37 3566
63c125ab
DN
35672008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3568
3569 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3570
3571 * character.c (c_string_width): Specify the type for LEN.
3572
3a8406e1
KH
35732008-12-03 Kenichi Handa <handa@m17n.org>
3574
4ccfa1c0 3575 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3576 (decode_coding_utf_8): Likewise.
4ccfa1c0 3577 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3578 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3579
651df7d9
CY
35802008-12-02 Chong Yidong <cyd@stupidchicken.com>
3581
3582 * keyboard.c (make_lispy_position): Only use PT if the selected
3583 window is current.
3584
1f625c6c
AS
35852008-12-02 Andreas Schwab <schwab@suse.de>
3586
f7741ce9
AS
3587 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3588
1f625c6c
AS
3589 * doprnt.c (doprnt1): Fix size of charbuf.
3590
92bc2678
CY
35912008-12-02 Chong Yidong <cyd@stupidchicken.com>
3592
3593 * keyboard.c (timer_check): Revert last change.
3594
93b9e8cc
JB
35952008-12-02 Juanma Barranquero <lekktu@gmail.com>
3596
3597 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3598
fd7a37d5
JB
35992008-12-01 Juanma Barranquero <lekktu@gmail.com>
3600
3601 * makefile.w32-in: Update dependencies.
3602 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3603
c115043b
AS
36042008-12-01 Andreas Schwab <schwab@suse.de>
3605
3606 * font.c (register_font_driver): Use xmalloc.
3607 (font_put_frame_data): Likewise.
3608
f5668d2a
CY
36092008-12-01 Chong Yidong <cyd@stupidchicken.com>
3610
860d96be
CY
3611 * xfaces.c (realize_x_face): Make abort condition clearer.
3612
f5668d2a
CY
3613 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3614
379c17e7
CY
36152008-11-30 Chong Yidong <cyd@stupidchicken.com>
3616
3617 * keyboard.c (timer_check): After a timer runs, ensure that the
3618 selected window's buffer is current.
3619
35f36d65
JB
36202008-11-30 Juanma Barranquero <lekktu@gmail.com>
3621
f952c61c
JB
3622 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3623 It was accidentally restored by the Unicode merge.
3624
35f36d65
JB
3625 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3626
b23077df
JB
36272008-11-29 Juanma Barranquero <lekktu@gmail.com>
3628
3629 * w32proc.c: Include "coding.h".
3630 (Fw32_short_file_name): Encode filename passed to Windows API.
3631 (Fw32_long_file_name): Encode filename passed to Windows API and
3632 decode back the result. (Bug#1433)
3633
b8ebe9dd
KH
36342008-11-29 Kenichi Handa <handa@m17n.org>
3635
8cc53f96
KH
3636 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3637 not before accessing it.
3638
b8ebe9dd
KH
3639 * charset.c (Fdefine_charset_internal): After calculating
3640 min_char, max_char, and fastmap, copy the charset structure again.
3641 (encode_char): Fix the previous change.
3642
59bc82c0
SZ
36432008-11-28 Seiji Zenitani <zenitani@mac.com>
3644
3645 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3646
3647 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3648
3649 * nsterm.m (x_set_frame_alpha): New function.
3650
32247e3d
EZ
36512008-11-27 Eli Zaretskii <eliz@gnu.org>
3652
3653 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3654
b003e5ff
JB
36552008-11-27 Juanma Barranquero <lekktu@gmail.com>
3656
3657 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3658 pointer to check_face_name.
3659
708550f5
KH
36602008-11-27 Kenichi Handa <handa@m17n.org>
3661
3662 * category.h (SET_CATEGORY_SET): Call set_category_set.
3663 (set_category_set): Extern it.
3664
3665 * category.c (hash_get_category_set): New function.
3666 (Fmodify_category_entry): Adjusted for the change of
3667 char_table_ref_and_range. Call hash_get_category_set to get a
3668 category set to store in the table.
3669
3670 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3671 Funify_charset.
3672
2ae37cf0 3673 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3674 (DECODE_CHAR): Check if the decoder vector is ready.
3675 (ENCODE_CHAR): Check if the encoder char-table is ready.
3676 (maybe_unify_char): Extern it.
3677
3678 * charset.c (Vchar_unified_charset_table): Delete it.
3679 (inhibit_load_charset_map): New variable.
3680 (temp_charset_work): New variable.
3681 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3682 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3683 New macros.
3684 (load_charset_map): Meaning of control_flag changed. If
3685 inhibit_load_charset_map is nonzero, setup a table in
3686 temp_charset_work.
3687 (load_charset): New argument control_flag.
3688 (map_charset_for_dump): New function.
3689 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3690 map_charset_for_dump.
3691 (Fdefine_charset_internal): If the charset method is MAP, load
3692 mapping tables by calling load_charset.
3693 (Funify_charset): Don't load a mapping table but directly set
3694 Vchar_unify_table.
3695 (maybe_unify_char): New function.
3696 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3697 Handle the case of inhibit_load_charset_map being nonzero.
3698 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3699 Handle the case of inhibit_load_charset_map being nonzero.
3700 (Fclear_charset_maps): Just free temp_charset_work.
3701 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3702 variable.
3703
3704 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3705 change of char_table_ref_and_range.
3706 (char_table_ref_and_range): Change the meaning of argument FROM
3707 and TO. Now the caller must provide initial values for *FROM
3708 and *TO.
3709
3710 * fontset.c (fontset_add): Adjusted for the change of
3711 char_table_ref_and_range.
3712 (fontset_get_font_group): Likewise.
3713 (Ffontset_info): Likewise.
3714
3715 * keymap.c (describe_vector): Adjusted for the change of
3716 char_table_ref_and_range. For char-table, put boundary between
3717 non-ASCII and 8-bit characters.
3718
3719 * print.c (print_object): For bool-vector, delete unnecessary
3720 check of ASCII_BYTE_P.
3721
9196133b
JR
37222008-11-26 Jason Rumney <jasonr@gnu.org>
3723
3724 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3725 leading in font height. (Bug#879)
9196133b 3726
9f688acf
GM
37272008-11-26 Glenn Morris <rgm@gnu.org>
3728
3729 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3730 redefinition with ifdef. (Bug#1383)
3731
90d19aff
AR
37322008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3733
3734 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3735
4ccfa1c0 37362008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3737
3738 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3739 New EmacsView methods.
3740 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3741 Fixes bug #1048,1357,1414.
3742
37432008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3744
3745 Fix bug #1362.
3746 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3747 is not an indexed color.
3748 * nsterm.m (free_indexed_color): Add argument checking.
3749 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3750
e7d5ecb3
CY
37512008-11-24 Chong Yidong <cyd@stupidchicken.com>
3752
3753 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3754 Document confirm-after-completion value for
3755 minibuffer-completion-confirm.
3756
c285743c
JR
37572008-11-24 Jason Rumney <jasonr@gnu.org>
3758
3759 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3760 warning.
3761
b0857706
JR
37622008-11-23 Jason Rumney <jasonr@gnu.org>
3763
3764 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3765 restored before returning.
3766
3767 * w32font.c (check_face_name): New function.
3768 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3769 fonts. (Bug#642)
b0857706 3770
ee50ff07
MR
37712008-11-22 Martin Rudalics <rudalics@gmx.at>
3772
3773 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3774 confirm-nonexistent-file-or-buffer in doc-string.
3775
b8ff72fa
SM
37762008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3777
3778 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3779 Fix copy/paste typo. Add checks.
3780
cee53ed4
KH
37812008-11-21 Kenichi Handa <handa@m17n.org>
3782
3783 * coding.c (detect_coding_iso_2022): Reject invalid composition
3784 sequence.
3785 (DECODE_COMPOSITION_START): If the current source is the last
3786 block, and the current composition doesn't end, regard this
3787 sequence as invalid.
3788 (decode_coding_iso_2022): Handle invalid composition sequence.
3789
f6ef1e65
MR
37902008-11-20 Martin Rudalics <rudalics@gmx.at>
3791
3792 * window.c (coordinates_in_window): Don't return
3793 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3794 line when the window is not the rightmost one. (Bug#1372)
3795
e08b1705
MR
37962008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3797
3798 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3799
ad98e89f
EZ
38002008-11-15 Eli Zaretskii <eliz@gnu.org>
3801
3802 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3803 and bright_bg if noninteractive is non-zero.
3804
fb098a4b
CY
38052008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3806
3807 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3808 x_draw_glyph_string_background.
3809
3810 * w32term.c (x_draw_glyph_string): Likewise.
3811
ce952b6e
CY
38122008-11-15 Chong Yidong <cyd@stupidchicken.com>
3813
3814 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3815 the next glyph string once past the overhang width.
3816
3817 * nsterm.m (ns_draw_glyph_string): Likewise.
3818
3819 * w32term.c (x_draw_glyph_string): Likewise.
3820
26ea7079
CY
38212008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3822
3823 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3824 double file close.
3825
1c33c906
MR
38262008-11-14 Martin Rudalics <rudalics@gmx.at>
3827
3828 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3829 dedicated status of window before attempting to display another
3830 buffer in it.
3831
8fc29035
JB
38322008-11-14 Juanma Barranquero <lekktu@gmail.com>
3833
3834 * msdos.c (Fmsdos_long_file_names):
3835 (syms_of_msdos) <dos-unsupported-char-glyph>:
3836 * dosfns.c (Fint86): Fix typos in docstrings.
3837
55fb4286
EZ
38382008-11-14 Eli Zaretskii <eliz@gnu.org>
3839
3840 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3841
3fda0315
KY
38422008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3843
3844 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3845
7e849c17
CY
38462008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3847
3848 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3849
3850 * frame.h: Negative alpha means "don't touch".
3851
3852 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3853
3854 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3855
b9fd67bd
DN
38562008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3857
3858 * hftctl.c:
3859 * chpdef.h:
3860 * acldef.h: Remove files used only for systems no longer supported.
3861
3862 * Makefile.in: Fix .o alphabetical ordering.
3863 (hftctl.o): Remove dependency, file removed.
3864 (keymap.o, print.o): Depend on charset.h.
3865
d5998e03
KH
38662008-11-10 Kenichi Handa <handa@m17n.org>
3867
2ae37cf0 3868 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3869
be70e183
CY
38702008-11-08 Chong Yidong <cyd@stupidchicken.com>
3871
3872 * dired.c (file_name_completion): If completion_ignore_case is
3873 enabled, ignore case when checking completion-regexp-list.
3874
7cf94eac
EZ
38752008-11-08 Eli Zaretskii <eliz@gnu.org>
3876
3877 * vm-limit.c (get_lim_data): Fix last change.
3878
ee107a89
KH
38792008-11-08 Kenichi Handa <handa@m17n.org>
3880
3881 * character.c (Fget_byte): New function.
3882 (syms_of_character): Defsubr Fget_byte.
3883
5fd15622
CY
38842008-11-07 Chong Yidong <cyd@stupidchicken.com>
3885
3886 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3887 cursor position is valid after scrolling.
3888
13d62fad
JB
38892008-11-06 Juanma Barranquero <lekktu@gmail.com>
3890
3891 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3892
a1dd2936
GM
38932008-11-06 Glenn Morris <rgm@gnu.org>
3894
3895 * xterm.c (handle_one_xevent): Don't let popup menus cause
3896 mouse-autoselect-window related window switching. (Bug#1261)
3897
860cd236
CY
38982008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3899
3900 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3901
653a3150
AS
39022008-11-04 Andreas Schwab <schwab@suse.de>
3903
3904 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3905
870f5cac
CY
39062008-11-03 Chong Yidong <cyd@stupidchicken.com>
3907
3908 * xfns.c (Fx_wm_set_size_hint): New function.
3909
1e02f3cb
MR
39102008-11-03 Martin Rudalics <rudalics@gmx.at>
3911
3912 * textprop.c (Fprevious_single_char_property_change): Return 0
3913 when there's no change in a string. (Bug#1301)
3914
e630dfc6
MR
39152008-11-02 Martin Rudalics <rudalics@gmx.at>
3916
3917 * frame.c (do_switch_frame): New argument NORECORD passed to
3918 Fselect_window.
3919 (Fselect_frame): New argument NORECORD passed to
3920 do_switch_frame.
3921 (Fset_frame_selected_window): New argument NORECORD passed to
3922 Fselect_frame.
3923 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3924 in call of do_switch_frame.
3925 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3926 Handle NORECORD argument in call of Fselect_frame.
3927 * lisp.h (do_switch_frame, Fselect_frame)
3928 (Fset_frame_selected_window): Adjust declarations.
3929 * window.c (select_frame_norecord): New function.
3930 (run_window_configuration_change_hook): Use it and call
3931 Fselect_frame with NORECORD set.
3932 (Fselect_window): Pass NORECORD to Fselect_frame.
3933 (Fset_window_configuration): Handle NORECORD argument in call of
3934 do_switch_frame.
3935 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3936 Fset_frame_selected_window.
3937 * keyboard.c (command_loop_1): Handle NORECORD in call of
3938 Fselect_frame (currently ifdefd).
3939
9020b223
GM
39402008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3941
3942 * emacs.c (USAGE2): Untabify.
3943
793ffee8
SM
39442008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3945
3946 * composite.c (fill_gstring_header): Fix copy/paste typo.
3947
ab6d1131
MR
39482008-10-31 Martin Rudalics <rudalics@gmx.at>
3949
3950 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3951 (Fother_window): Rename argument and rewrite doc-string.
3952 (select_window_norecord): Fix return value. (Bug#1276)
3953
601a9cf1
JB
39542008-10-30 Juanma Barranquero <lekktu@gmail.com>
3955
3956 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3957 new frames overriding foreground for tooltips. Based on similar patch
3958 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3959
813b0652
CY
39602008-10-29 Chong Yidong <cyd@stupidchicken.com>
3961
3962 * emacs.c (Fdaemon_initialized): Initialize nfd.
3963
4414f58f
MR
39642008-10-29 Martin Rudalics <rudalics@gmx.at>
3965
3966 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3967 (Fwindow_text_height): Clarify doc-strings.
3968 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3969 doc-string of window-scroll-functions.
3970
ecdcaa09
RS
39712008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3972
3973 * category.c (syms_of_category): Fix typo in docstring.
3974
23fe745a
JB
39752008-10-28 Juanma Barranquero <lekktu@gmail.com>
3976
3977 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3978 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3979 Fix typos in docstrings.
3980
ff808935
DN
39812008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3982
3983 * emacs.c (daemon_pipe): Make non-static.
3984 (IS_DAEMON): Move definition ...
3985 * lisp.h (IS_DAEMON): ... here.
3986 (daemon_pipe): Declare.
3987 (is_daemon): Remove.
3988 * dispnew.c (init_display): Use IS_DAEMON.
3989
fc012771
SM
39902008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3991
3992 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3993 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3994
3995 * emacs.c (is_daemon): Remove.
3996 (main): Don't set is_daemon.
3997 (IS_DAEMON): New macro.
3998 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3999 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4000 parent exits.
4001 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4002
d8bdbe6f
CY
40032008-10-27 Chong Yidong <cyd@stupidchicken.com>
4004
d1a072bf
CY
4005 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4006 over-sized glyph, draw it with the default glyph width.
4007
e2e325aa
CY
4008 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4009 glyph, draw it with the default glyph width.
4010
4011 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4012 glyph, draw it with the default glyph width.
4013
d8bdbe6f
CY
4014 * xdisp.c (try_scrolling): When computing the distance from the
4015 scroll margin to PT, try moving some distance past the window
4016 bottom before giving up.
4017
7bfac547
MR
40182008-10-27 Martin Rudalics <rudalics@gmx.at>
4019
4020 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4021 (Fset_window_buffer): Explain in doc-string that a window can be
4022 "strongly" dedicated to its buffer.
4023
4ff029f6
DN
40242008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4025
4026 * emacs.c (daemon_name): New variable.
4027 (main): Deal with --daemon=SERVER_NAME.
4028 (Fdaemonp): Return a name if one was passed to --daemon.
4029
5790ef40
DN
40302008-10-26 Romain Francoise <romain@orebokech.com>
4031
f9bd0df9 4032 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4033 (main): Create a pipe before forking, make the parent exit only after
4034 the child has closed its end of the pipe. Move closing the
4035 descriptors ...
4036 (Fdaemon_initialized): ... here. New function.
4037
f5385255
SM
40382008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4039
4d632321
SM
4040 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4041 the previous unoptimized table.
4042
f5385255
SM
4043 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4044 the distinction between non-nil and non-t value of `dedicated'.
4045
6c56a0f3
CY
40462008-10-25 Chong Yidong <cyd@stupidchicken.com>
4047
4048 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4049 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4050
fec89261
MR
40512008-10-25 Martin Rudalics <rudalics@gmx.at>
4052
4053 * window.c (Fget_buffer_window, Fdelete_windows_on)
4054 (Freplace_buffer_in_windows): Make buffer argument optional and
4055 rename to buffer_or_name.
4056
34fcddd0
CY
40572008-10-24 Chong Yidong <cyd@stupidchicken.com>
4058
f5385255
SM
4059 * xdisp.c (handle_single_display_spec, handle_display_prop):
4060 Undo 2005-05-16 change.
34fcddd0
CY
4061 (handle_stop): Pop iterator if it's loaded with an empty string.
4062 (get_overlay_strings_1): Don't save iterator if it's loaded with
4063 an empty string (bug#1201).
4064
064766f2
KH
40652008-10-24 Kenichi Handa <handa@m17n.org>
4066
4067 * ftfont.c (ftfont_otf_features): Fix previous change.
4068 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4069 calling ftfont_otf_features.
4070
f9bd0df9 40712008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4072
4073 * font.c (font_match_p): Fix for the case that a vector of
4074 characters is in script-representative-chars.
4075
1dae9197
MA
40762008-10-24 Michael Albinus <michael.albinus@gmx.de>
4077
4078 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4079 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4080 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4081 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4082 macro. (Bug#1186).
4083
f9bd0df9 40842008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4085
4086 * s/sol2-10.h: New file.
4087
878a4584
JB
40882008-10-23 Juanma Barranquero <lekktu@gmail.com>
4089
4090 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4091 poor beast has survived 9+ years and the jump from xterm.c!).
4092
cd265ca6
MR
40932008-10-23 Martin Rudalics <rudalics@gmx.at>
4094
4095 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4096 Reword doc-string.
f5385255 4097 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4098
472a4dc9
JB
40992008-10-23 Juanma Barranquero <lekktu@gmail.com>
4100
4101 * character.c (syms_of_character) <script-representative-chars>:
4102 <unicode-category-table>: Doc fixes.
4103
159bd5a2
NF
41042008-10-23 Noah Friedman <friedman@splode.com>
4105
4106 * coding.c (make_conversion_work_buffer): Check that
4107 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4108 Fget_buffer_create.
4109
49f9c344
KH
41102008-10-23 Kenichi Handa <handa@m17n.org>
4111
4112 * font.c (font_add_log): Check the values of extra properties.
4113
12bb3111
MR
41142008-10-22 Martin Rudalics <rudalics@gmx.at>
4115
4116 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4117 Reword doc-string.
4118 (Fset_window_parameter): Use NILP.
4119 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4120 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4121
bbeb4e99
JB
41222008-10-22 Juanma Barranquero <lekktu@gmail.com>
4123
4124 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4125
41262008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4127
4128 * nsfns.m (ns_appkit_version): New function.
4129 (x-server-version): Use it.
4130 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4131 (x-server-vendor): Don't check_ns().
4132
4133 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4134
a9b555d3
JB
41352008-10-22 Juanma Barranquero <lekktu@gmail.com>
4136
4137 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4138 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4139
4626499f
KH
41402008-10-22 Kenichi Handa <handa@m17n.org>
4141
e3681952
KH
4142 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4143 scripts.
4144
4626499f
KH
4145 * category.c (word_boundary_p): Check scripts instead of charset.
4146 Handle nil value in word-separating-categories and
4147 word-combining-categories.
4148 (syms_of_category): Fix docstrings of word-separating-categories
4149 and word-combining-categories.
4150
1560f91a
EZ
41512008-10-21 Eli Zaretskii <eliz@gnu.org>
4152
4153 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4154 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4155
f4668441
MR
41562008-10-21 Martin Rudalics <rudalics@gmx.at>
4157
4158 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4159 Rename arg "buffer" to "buffer_or_name".
4160 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4161 it optional.
4162 (no_switch_window): Remove since the return value is not used.
a9b555d3 4163 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4164 Consider window as dedicated when Fwindow_dedicated_p returns a
4165 non-nil value.
4166 * lisp.h: Remove prototype for no_switch_window.
4167
fd75ddb2
JD
41682008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4169
4170 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4171 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4172
07295713
KH
41732008-10-21 Kenichi Handa <handa@m17n.org>
4174
4175 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4176 check Vlatin_extra_code_table.
4177
712adc82
EZ
41782008-10-20 Eli Zaretskii <eliz@gnu.org>
4179
4180 * fileio.c (Fset_file_modes): Doc fix.
4181
f549eb0b
MA
41822008-10-19 Michael Albinus <michael.albinus@gmx.de>
4183
4184 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4185 in arrays.
4186
aac0c6e3
MR
41872008-10-19 Martin Rudalics <rudalics@gmx.at>
4188
4189 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4190 Mention kill-buffer in doc-string.
4191 (Fset_window_buffer): Reinsert tem check removed in last commit.
4192 (Fenlarge_window, Fshrink_window): Have argument names and
4193 doc-string follow Elisp manual more closely.
4194
41952008-10-18 Eli Zaretskii <eliz@gnu.org>
4196
4197 * fileio.c (Fset_file_modes): Doc fix.
4198
41992008-10-18 Martin Rudalics <rudalics@gmx.at>
4200
4201 * window.c (Fwindow_width, Fset_window_start)
4202 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
4203 (Fdelete_windows_on, Freplace_buffer_in_windows):
4204 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
4205 (Fwindow_dedicated_p): Make window argument optional.
4206 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
4207 (Fset_window_buffer): Respect any non-nil dedicated value for
4208 window. Rename "buffer" argument to "buffer_or_name".
4209
42102008-10-18 Ulrich Mueller <ulm@gentoo.org>
4211
4212 * m/sh3.h: New file, machine description for SuperH.
4213
42142008-10-17 Martin Rudalics <rudalics@gmx.at>
4215
4216 * window.c (Fsplit_window): Rename arg horflag to horizontal.
4217
42182008-10-17 Kenichi Handa <handa@m17n.org>
4219
4220 * ftfont.c (ftfont_otf_features): Fix indexing
4221 gsub_gpos->FeatureList.Feature. Check the validity of indices.
4222
42232008-10-16 Magnus Henoch <mange@freemail.hu>
4224
4225 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
4226 (Fdbus_call_method_asynchronously): Ditto.
4227 This change makes C-h f display the argument list.
4228
42292008-10-16 Chong Yidong <cyd@stupidchicken.com>
4230
4231 * fileio.c (Fexpand_file_name): Doc fix.
4232
4233 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
4234 of :foreground and :background equivalent to unspecified (20.x
4235 compatibility).
4236
42372008-10-15 Eli Zaretskii <eliz@gnu.org>
4238
4239 * buffer.c (syms_of_buffer): Doc fix.
4240
42412008-10-14 Kenichi Handa <handa@m17n.org>
4242
4243 * font.c (font_clear_prop): When clearing font width, clear the
4244 average width field too.
4245
42462008-10-12 Andreas Schwab <schwab@suse.de>
4247
4248 * ftfont.c (ftfont_shape_by_flt): Make static.
4249 * ftfont.h (ftfont_shape_by_flt): Don't declare.
4250
4251 * font.c: Don't include <m17n-flt.h>.
4252
42532008-10-10 Eli Zaretskii <eliz@gnu.org>
4254
4255 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
4256
42572008-10-09 Eli Zaretskii <eliz@gnu.org>
4258
4259 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
4260 away code.
4261
42622008-10-09 Chong Yidong <cyd@stupidchicken.com>
4263
4264 * dispnew.c (update_text_area): Avoid looping due to large glyph
4265 overhangs (bug#1070).
4266
42672008-10-09 Kenichi Handa <handa@m17n.org>
4268
4269 * fontset.c (face_for_char): If face->fontset is negative, just
4270 return ascii_face.
4271
f5385255
SM
4272 * font.c (font_delete_unmatched): Fix previous change.
4273 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
4274
42752008-10-09 Martin Rudalics <rudalics@gmx.at>
4276
4277 * frame.c (Fraise_frame): On text-only terminals select frame in
4278 order to make it visible. (Bug#1061)
4279
42802008-10-08 Chong Yidong <cyd@stupidchicken.com>
4281
4282 * fontset.c (fontset_find_font): Check frame validity.
4283
42842008-10-07 Chong Yidong <cyd@stupidchicken.com>
4285
a9b555d3 4286 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4287 (xg_display_close): Allow Emacs to close all displays (bug#985).
4288
42892008-10-06 Andreas Schwab <schwab@suse.de>
4290
f5385255 4291 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4292
42932008-10-06 Chong Yidong <cyd@stupidchicken.com>
4294
f5385255 4295 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4296
a9b555d3 4297 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4298
4299 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4300 during initialization.
4301
43022008-10-04 Eli Zaretskii <eliz@gnu.org>
4303
4304 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4305 whole thing on MSDOS frames as well as on a TTY.
4306
4307 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4308 well as for TTY.
4309 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4310 well as on a TTY.
4311
4312 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4313 as well as for TTY.
4314
4315 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4316
4317 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4318 MSDOS frames as well.
4319
43202008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4321
4322 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4323 correct arguments.
b71ac3dd 4324 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4325
43262008-10-03 Glenn Morris <rgm@gnu.org>
4327
4328 * emacs.c (USAGE1): Add --daemon.
4329
43302008-10-02 Eli Zaretskii <eliz@gnu.org>
4331
4332 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4333 100, so it's in percents as advertised.
4334
43352008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4336
4337 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4338 (ns_output.current_cursor, ns_output.desired_cursor)
4339 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4340 (FRAME_NEW_CURSOR_COLOR): Remove.
4341
4342 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4343 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4344 enumeration (HOLLOW_BOX_CURSOR, etc.).
4345
4346 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4347 (draw_window_cursor): Simplify code.
f5385255
SM
4348 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4349 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4350 updates manually.
a9b555d3
JB
4351 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4352 Use core Emacs cursor types.
aac0c6e3 4353
b8ff72fa 4354 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4355
43562008-10-02 Martin Rudalics <rudalics@gmx.at>
4357
4358 * process.c (Faccept_process_output): Fix doc-string.
4359
43602008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4361
4362 * gmalloc.c (__sbrk): Also define for uClibc.
4363
4364 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4365 for uClibc.
4366
43672008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4368
4369 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4370 styles.
4371 (nsfont_open): Reenable the cache.
4372
43732008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4374
4375 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4376 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4377
43782008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4379
4380 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4381 a suspended terminal.
4382
43832008-09-30 Michael Albinus <michael.albinus@gmx.de>
4384
4385 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4386
43872008-09-30 Eli Zaretskii <eliz@gnu.org>
4388
4389 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4390
43912008-09-30 Chong Yidong <cyd@stupidchicken.com>
4392
4393 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4394 in a continued line coincides with a line beginning.
4395
43962008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4397
4398 * nsfont.m (nsfont_trait_distance): Fix bug.
4399 (nsfont_list): Return a list rather than a vector (syncs with Handa
4400 changes of 2008-05-14).
4401 (nsfont_open): Improve logging.
4402
44032008-09-29 Andreas Schwab <schwab@suse.de>
4404
4405 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4406
44072008-09-28 Martin Rudalics <rudalics@gmx.at>
4408
4409 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4410 name as char-resolve-modifiers.
4411 Reported by: Markus Triska <markus.triska@gmx.at>
4412
44132008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4414
4415 * dispnew.c (init_display): Return earlier when running as a daemon.
4416
44172008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4418
4419 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4420
44212008-09-27 Eli Zaretskii <eliz@gnu.org>
4422
4423 * composite.c (Fcomposition_get_gstring)
4424 (Fcompose_region_internal, Fcompose_string_internal)
4425 (Ffind_composition_internal): Doc fix.
4426 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4427 (syms_of_composite) <auto-composition-function>: Doc fix.
4428 (syms_of_composite) <composition-function-table>: Doc fix.
4429
44302008-09-25 Chong Yidong <cyd@stupidchicken.com>
4431
4432 * search.c (wordify): New argument for lax word-ends.
4433 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4434
44352008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4436
4437 * lisp.h (is_daemon): Declare.
4438 * dispnew.c (init_display): Do not try to initialize the terminal
4439 when running as a daemon.
4440
44412008-09-22 Chong Yidong <cyd@stupidchicken.com>
4442
4443 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4444 x_display_pixel_height.
4445
44462008-09-22 Martin Rudalics <rudalics@gmx.at>
4447
4448 * undo.c (record_point): Don't call Fundo_boundary for first
4449 change. (Bug#731)
4450
44512008-09-22 Juanma Barranquero <lekktu@gmail.com>
4452
4453 * emacs.c (Fdaemonp): Doc fix.
4454
44552008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4456
4457 * emacs.c (main): Place #ifdef in the proper place.
4458
44592008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4460
4461 * emacs.c (standard_args): Add --daemon.
4462 (main): Disconnect from the terminal when --daemon is passed.
4463 (is_daemon): New variable.
4464 (Fdaemonp): New function.
4465 (syms_of_emacs): Defsubr it.
4466
44672008-09-20 Chong Yidong <cyd@stupidchicken.com>
4468
4469 * xdisp.c (get_next_display_element): Handle string display
4470 correctly when checking for the end of a box run.
4471
44722008-09-20 Glenn Morris <rgm@gnu.org>
4473
4474 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4475 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4476 (Frename_file): Avoid copying to trash if a rename involves
4477 a delete. (Bug#964).
4478
44792008-09-20 Eli Zaretskii <eliz@gnu.org>
4480
4481 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4482 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4483 frames as well as termcap frames.
4484 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4485 get_named_tty.
4486
44872008-09-19 Eli Zaretskii <eliz@gnu.org>
4488
4489 * process.c (procfs_system_process_attributes): Fix cmdline in
4490 case /proc/PID/cmdline is empty.
4491
4492 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4493 x_display_pixel_height.
4494
44952008-09-19 Juanma Barranquero <lekktu@gmail.com>
4496
4497 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4498
4499 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4500 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4501
45022008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4503
4504 * dispextern.h (struct it): Move line_wrap away from the middle of
4505 bitfields. Move voffset in struct iterator_stack_entry after the
4506 bitfields. Move tab_width near after another short.
4507
45082008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4509
4510 * frame.h (struct frame): Move alpha from the middle of bitfields.
4511
4512 * window.h (struct window): Move frozen_window_start_p after the
4513 rest of the bitfields to reduce padding.
4514
45152008-09-18 Chong Yidong <cyd@stupidchicken.com>
4516
4517 * xterm.h (x_display_info): Remove `height' and `width' members.
4518
4519 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4520
4521 * w32term.h (w32_display_info): Remove `height', `width',
4522 `height_in', and `width_in' members.
4523
b8ff72fa
SM
4524 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4525 New functions.
aac0c6e3
MR
4526 (x_calc_absolute_position): Use them.
4527 (x_term_init): Omit removed `height' and `width' members.
4528
b8ff72fa
SM
4529 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4530 New functions.
aac0c6e3
MR
4531 (w32_read_socket, x_calc_absolute_position): Use them.
4532 (w32_initialize_display_info, w32_term_init): Omit removed members
4533 of w32_display_info.
4534
b8ff72fa
SM
4535 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4536 New functions.
4537 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4538
b8ff72fa
SM
4539 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4540 New functions.
aac0c6e3
MR
4541 (x_calc_absolute_position): Use them.
4542 (x_term_init): Omit removed `height' and `width' members.
4543
4544 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4545 (compute_tip_xy):
4546 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4547 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4548 x_display_pixel_width.
4549
45502008-09-18 Kenichi Handa <handa@m17n.org>
4551
4552 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4553 (composition_compute_stop_pos): Fix handling of static composition.
4554 (Fcomposition_get_gstring): Check FROM and TO at first.
4555
45562008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4557
46e722a9 4558 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4559 mixup (YAILOM).
4560
45612008-09-17 Chong Yidong <cyd@stupidchicken.com>
4562
4563 * indent.c (Fvertical_motion): Use position reported by iterator
4564 instead of PT for determining screen motion (bug#943).
4565
45662008-09-17 Romain Francoise <romain@orebokech.com>
4567
4568 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4569
45702008-09-17 Kenichi Handa <handa@m17n.org>
4571
4572 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4573
4574 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4575 if necessary.
4576
45772008-09-16 Kenichi Handa <handa@m17n.org>
4578
4579 * coding.c (make_conversion_work_buffer): Avoid calling
4580 Fget_buffer_create if it is not necessary.
4581
45822008-09-15 Martin Rudalics <rudalics@gmx.at>
4583
4584 * window.c (Fselect_window): Don't update window_select_count and
4585 use_time when norecord is not nil.
4586
45872008-09-14 Kenichi Handa <handa@m17n.org>
4588
4589 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4590 specpdl_ptr.
4591
45922008-09-12 Kenichi Handa <handa@m17n.org>
4593
4594 * indent.c (scan_for_column): Don't handle automatic composition
4595 if the current buffer is not associated with a window.
4596
4597 * composite.c (composition_reseat_it): If the current buffer is
4598 not associated with a window, ignore the automatic composition.
4599 (find_automatic_composition): Likewise.
4600
46012008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4602
4603 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4604 (Fgpm_mouse_stop): Use it.
4605 * termhooks.h (close_gpm): Declare.
4606 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4607 connection if Gpm_GetEvent fails.
4608
4609 * window.c (set_window_buffer): Always preserve current-buffer.
4610
46112008-09-12 Glenn Morris <rgm@gnu.org>
4612
4613 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4614
46152008-09-11 Glenn Morris <rgm@gnu.org>
4616
4617 * charset.c (charset-map-path): Doc fix.
4618
46192008-09-10 Kenichi Handa <handa@m17n.org>
4620
4621 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4622
4623 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4624 compose a grapheme cluster with the preceding base glyph.
4625
4626 * composite.c (composition_compute_stop_pos): Fix previous change.
4627 Reset cmp_it->id to -1 at first.
4628
46292008-09-10 Glenn Morris <rgm@gnu.org>
4630
4631 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4632
46332008-09-09 Chong Yidong <cyd@stupidchicken.com>
4634
4635 * keyboard.c (read_key_sequence): Reapply translation maps when
4636 switching keyboards.
4637
46382008-09-09 Kenichi Handa <handa@m17n.org>
4639
4640 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4641 characters.
4642
4643 * composite.c (FORWARD_CHAR): Fix calculation
4644 of (POSITION).pos_byte.
4645 (composition_compute_stop_pos): Limit the search of composition to
4646 at most 500 characters ahead. If we reach the limit or find a
4647 newline, set cmp_it->ch to -2 and return 0.
4648 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4649
46502008-09-08 Kenichi Handa <handa@m17n.org>
4651
4652 * indent.c (Fvertical_motion): Be sure to set
4653 it_overshoot_expected if it.cmp_it.id is non-negative.
4654
46552008-09-07 Andreas Schwab <schwab@suse.de>
4656
4657 * callproc.c (Fcall_process): Don't hold references to string data
4658 across garbage collection. Move initialisation of new_argv down
4659 to avoid compiler bug.
4660
46612008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4662
4663 * process.c (Fsystem_process_attributes): Doc fix.
4664
46652008-09-07 Chong Yidong <cyd@stupidchicken.com>
4666
4667 * callproc.c (Fcall_process): Canonicalize current directory name.
4668
4669 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4670 iterator advances to the next line if the current line ends in a
4671 continued tab.
4672
46732008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4674
4675 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4676 member to point to cmp_from.
4677
4678 * xdisp.c: Doc fix for references to gidx data member.
4679
46802008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4681
4682 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4683
46842008-09-07 Kenichi Handa <handa@m17n.org>
4685
4686 * composite.c (FORWARD_CHAR): Check STOP after
4687 incrementing (POSITION).pos.
4688
46892008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4690
4691 * process.c (Fsystem_process_attributes): Doc fix.
4692
46932008-09-06 Chong Yidong <cyd@stupidchicken.com>
4694
4695 * keyboard.c (Ftop_level): Doc fix.
4696
46972008-09-06 Eli Zaretskii <eliz@gnu.org>
4698
4699 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4700 minibuffer, don't let lower part of menu invade the echo area.
4701
4702 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4703 "char *q" to access menu text and advance through it. Revert the
4704 change that displayed ">" instead of ASCII character 0x10.
4705
47062008-09-05 Eli Zaretskii <eliz@gnu.org>
4707
4708 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4709 toggle boxes and radio buttons on MS-DOS as well.
4710
47112008-09-05 Kenichi Handa <handa@m17n.org>
4712
4713 * composite.c (autocmp_chars): Check lookback count.
4714 (composition_compute_stop_pos): Set cmp_it->lookback.
4715 (composition_reseat_it): Check lookback count.
4716 (struct position_record): New struct.
4717 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4718 (find_automatic_composition): New function.
4719 (composition_adjust_point): Use find_automatic_composition.
4720
4721 * dispextern.h (struct composition_it): New member lookback.
4722
47232008-09-02 Chong Yidong <cyd@stupidchicken.com>
4724
4725 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4726 if moving by a single line.
4727
47282008-09-02 Andreas Schwab <schwab@suse.de>
4729
4730 * xterm.c (x_delete_display): Fix merge error.
4731
4732 * fileio.c (Fexpand_file_name): Remove unused variables.
4733
47342008-09-02 Eli Zaretskii <eliz@gnu.org>
4735
4736 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4737 storage on all platforms, not just on DOS_NT.
4738
47392008-09-02 Jason Rumney <jasonr@gnu.org>
4740
b8ff72fa
SM
4741 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4742 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4743
47442008-09-01 Chong Yidong <cyd@stupidchicken.com>
4745
4746 * xfaces.c (Finternal_set_alternative_font_family_alist)
4747 (Finternal_set_alternative_font_registry_alist): Properly copy
4748 entire alist structure.
4749
47502008-09-01 Kenichi Handa <handa@m17n.org>
4751
d66c0241 4752 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4753 representative chars of the script is a vector.
d66c0241
JB
4754 (ftfont_list): Handle the case where the representative chars of
4755 the script is a vector.
aac0c6e3
MR
4756
4757 * character.c (syms_of_character): Docstring of
4758 script-representative-chars fixed.
4759
47602008-08-31 Eli Zaretskii <eliz@gnu.org>
4761
4762 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4763 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4764 the menu. Allocate larger buffer for `text', to account for
4765 possible ^C characters.
4766
47672008-08-31 Martin Rudalics <rudalics@gmx.at>
4768
4769 * xdisp.c (prepare_menu_bars): Don't call
4770 Vwindow_size_change_functions with arg Qt.
4771
47722008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4773
4774 * font.h (font_range):
4775 * fileio.c (report_file_error):
46e722a9
SM
4776 * composite.c (composition_update_it): Yet another int/Lisp_Object
4777 mixup (YAILOM).
aac0c6e3
MR
4778
47792008-08-30 Glenn Morris <rgm@gnu.org>
4780
4781 * data.c (Fmake_variable_frame_local): Doc fix.
4782
4783 * frame.c (Fmodify_frame_parameters): Doc fix.
4784
47852008-08-30 Eli Zaretskii <eliz@gnu.org>
4786
4787 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4788 needed by GetTokenInformation.
4789 (w32_system_process_attributes): Check return values of all system
4790 APIs.
4791
4792 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4793 only when the state changes.
4794 (IT_update_begin, IT_update_end): Add termscript trace.
4795
4796 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4797 clipboard is unavailable. Set dst to NULL if it doesn't point to
4798 malloc'ed data.
4799 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4800 passing random values to xfree.
4801
4802 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4803 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4804
48052008-08-29 Jason Rumney <jasonr@gnu.org>
4806
4807 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4808
48092008-08-29 Eli Zaretskii <eliz@gnu.org>
4810
4811 * composite.c (fill_gstring_body): Avoid compiler warnings.
4812
4813 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4814 LGLYPH_SET_CODE to avoid compiler warnings.
4815
2ae37cf0 4816 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4817
4818 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4819
4820 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4821 LGLYPH_SET_CODE.
4822
48232008-08-29 Kenichi Handa <handa@m17n.org>
4824
4825 * fileio.c (report_file_error): Don't downcase the first character
4826 of errstring if it is still unibyte.
4827
48282008-08-29 Kenichi Handa <handa@m17n.org>
4829
4830 These changes are to re-implement the automatic composition so
4831 that it doesn't use text properties.
4832
4833 * Makefile.in (ftfont.o): Depend on composite.h.
4834 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4835
4836 * character.h (Vunicode_category_table): Extern it.
4837
4838 * character.c (Vunicode_category_table): New variable.
4839 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4840
4841 * chartab.c (optimize_sub_char_table): Perform more greedy
4842 optimization.
4843
b8ff72fa
SM
4844 * composite.h (enum composition_method):
4845 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4846 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4847 (Vcomposition_function_table): Extern it.
4848 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4849 (composition_gstring_put_cache, composition_gstring_from_id)
4850 (composition_gstring_p, composition_gstring_width)
4851 (composition_compute_stop_pos, composition_reseat_it)
4852 (composition_update_it, composition_adjust_point): Extern them.
4853 (Fcomposition_get_gstring): EXFUN it.
4854
d66c0241 4855 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4856 (Vcomposition_function_table)
4857 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4858 (gstring_hash_table, gstring_work, gstring_work_headers):
4859 New variables.
aac0c6e3
MR
4860 (gstring_lookup_cache, composition_gstring_put_cache)
4861 (composition_gstring_from_id, composition_gstring_p)
4862 (composition_gstring_width, fill_gstring_header)
4863 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4864 (composition_reseat_it, composition_update_it)
b8ff72fa 4865 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4866 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4867 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4868 Defsubr compostion_get_gstring.
4869
4870 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4871 cmp_id.
4872 (struct glyph_string): Delete the member gidx. New members
4873 cmp_id, cmp_from, and cmp_to.
4874 (enum it_method): Delete GET_FROM_COMPOSITION.
4875 (struct composition_it): New struct.
4876 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4877 Delete c, len, cmp_id, cmp_len in u.comp.
4878
4879 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4880 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4881 (enum lglyph_indices): Likewise.
b8ff72fa 4882 (font_range): Adjust extern.
aac0c6e3
MR
4883 (font_fill_lglyph_metrics): Extern it.
4884
4885 * font.c (QCf): New variable.
4886 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4887 (font_prepare_composition): Delete this function.
4888 (font_range): Type and arguments changed.
4889 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4890 (font_fill_lglyph_metrics): New function.
b8ff72fa 4891 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4892 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4893 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4894 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4895
4896 * fontset.h (font_for_char): Extern it.
4897
4898 * fontset.c (font_for_char): New function.
4899
4900 * ftfont.c: Include composite.h.
4901 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4902 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4903
4904 * indent.c: Include composite.h and dispextern.h.
4905 (check_composition): Delete this function.
4906 (scan_for_column): Handle composition by
4907 composition_compute_stop_pos, composition_reseat_it, and
4908 composition_update_it.
4909 (compute_motion): Likewise.
4910 (Fvertical_motion): Fix checking of composition.
4911
4912 * keyboard.c (adjust_point_for_property): Check composition by
4913 composition_adjust_point.
4914
b8ff72fa 4915 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4916 struct glyph_string.
4917
b8ff72fa
SM
4918 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4919 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4920 struct glyph.
4921 (produce_composite_glyph): Likewise.
4922
b8ff72fa
SM
4923 * w32term.c (x_draw_composite_glyph_string_foreground):
4924 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4925 (x_draw_glyph_string): Likewise.
4926
4927 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4928 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4929
4930 * xdisp.c: Include font.h.
4931 (it_props): Delete the entry for Qauto_composed.
4932 (init_iterator): Initialize it->cmp_it.id to -1.
4933 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4934 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4935 (handle_auto_composed_prop): Delete it.
4936 (handle_composition_prop): Handle only static composition.
4937 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4938 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4939 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4940 (pop_it): Likewise.
4941 (get_next_element): Delete next_element_from_composition.
4942 (CHAR_COMPOSED_P): New macro.
4943 (get_next_display_element): For automatic composition, get a face
4944 from the font in the glyph-string.
4945 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4946 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4947 (next_element_from_string): Check if the character at the current
4948 position is composed by CHAR_COMPOSED_P.
4949 (next_element_from_buffer): Likewise.
d66c0241
JB
4950 (next_element_from_composition): Adjust for the change of struct it.
4951 Update it->cmp_it.
b8ff72fa
SM
4952 (dump_glyph): Adjust for the change of struct glyph.
4953 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4954 it and struct glyph. Don't handle automatic composition here.
4955 (fill_gstring_glyph_string): New function.
4956 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4957 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4958 (BUILD_GSTRING_GLYPH_STRING): New macro.
4959 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4960 automatic composition.
b8ff72fa 4961 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4962 struct glyph.
b8ff72fa 4963 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4964
b8ff72fa 4965 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4966 the change of struct glyph_string.
4967 (x_draw_glyph_string): Likewise.
4968
49692008-08-29 Glenn Morris <rgm@gnu.org>
4970
4971 * buffer.c (word-wrap): Doc fix.
4972 * xdisp.c (truncate-partial-width-windows): Doc fix.
4973 Increase default to 50.
4974
49752008-08-29 Chong Yidong <cyd@stupidchicken.com>
4976
4977 * xdisp.c (update_tool_bar_unwind): New function.
4978 (update_tool_bar): Temporarily set selected frame before building
4979 tool-bar items.
4980
49812008-08-28 Michael Albinus <michael.albinus@gmx.de>
4982
4983 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4984 snprintf, respectively.
4985 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4986
49872008-08-28 Chong Yidong <cyd@stupidchicken.com>
4988
4989 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4990 LDFLAGS to GNUstep CC invocation.
4991
49922008-08-27 Chong Yidong <cyd@stupidchicken.com>
4993
4994 * indent.c (Fvertical_motion): Revert last change. Handle the
4995 general case where we are moving forward, and PT spans multiple
4996 screen lines.
4997
4998 * eval.c (find_handler_clause): Temporarily increase
4999 max-lisp-eval-depth while printing the backtrace buffer, to
5000 guarantee that help-mode code can run.
5001
50022008-08-27 Eli Zaretskii <eliz@gnu.org>
5003
5004 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5005 colors under -rv.
5006 (IT_set_frame_parameters): Don't swap foreground and background
5007 colors if `(reverse . t)' is present in the frame properties.
5008 (internal_terminal_init): Call init_frame_faces only for the
5009 initial frame.
5010
50112008-08-27 Andreas Schwab <schwab@suse.de>
5012
5013 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5014
50152008-08-27 Andreas Schwab <schwab@suse.de>
5016
5017 * search.c (search_buffer): Set char_base to zero only at the end.
5018
50192008-08-27 Kenichi Handa <handa@m17n.org>
5020
b8ff72fa 5021 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5022
50232008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5024
5025 * xterm.c (x_term_init): Temporarily hide the partially
5026 initialized terminal while calling vendor-specific-keysyms.
5027
50282008-08-26 Eli Zaretskii <eliz@gnu.org>
5029
5030 * msdos.c (internal_terminal_init): Most initializations done only
5031 once, especially initial_screen_colors[] and termscript open.
5032
50332008-08-26 Chong Yidong <cyd@stupidchicken.com>
5034
5035 * eval.c (Fcondition_case): Doc fix.
5036
5037 * widgetprv.h (EmacsFramePart): Change font member to the new font
5038 struct.
5039
5040 * widget.c: Include character.h and font.h for XSETFONT.
5041 (setup_frame_gcs): Compute X font id from font struct, just once.
5042
50432008-08-26 Eli Zaretskii <eliz@gnu.org>
5044
5045 * term.c (get_named_tty): Fix last change.
5046
50472008-08-26 Chong Yidong <cyd@stupidchicken.com>
5048
5049 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5050 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5051
50522008-08-25 Eli Zaretskii <eliz@gnu.org>
5053
5054 * frame.c (do_switch_frame): Mark previously displayed frame as
5055 obscured for FRAME_MSDOS_P frames as well.
5056
50572008-08-24 Eli Zaretskii <eliz@gnu.org>
5058
5059 * frame.c (make_terminal_frame): Initialize f->terminal,
5060 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5061 Set the top frame to newly created frame.
5062 (Fmake_terminal_frame): Reuse the_only_display_info.
5063
5064 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5065 estimating available memory.
5066
b97439ce 50672008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5068
5069 * nsterm.m (ns_draw_window_cursor): Don't call
5070 NSDisableScreenUpdates and NSEnableScreenUpdates on
5071 non-NS_IMPL_COCOA systems.
5072
50732008-08-23 Andreas Schwab <schwab@suse.de>
5074
5075 * process.c (procfs_system_process_attributes): Fix use of
5076 uninitialized variables.
5077
50782008-08-23 Eli Zaretskii <eliz@gnu.org>
5079
5080 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5081
5082 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5083 calling tty-set-up-initial-frame-faces.
5084
b8ff72fa
SM
5085 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5086 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5087
5088 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5089 addition to output_termcap.
5090
5091 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5092
5093 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5094 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5095 highlight.
5096
5097 * process.c [!subprocesses]: Define QCname.
5098 (syms_of_process): Intern and staticpro it.
5099
5100 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5101 Adjust for changes in encoding/decoding routines.
5102 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5103 encode_coding and decode_coding.
5104
b8ff72fa 5105 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5106
5107 * dosfns.c: Include frame.h before termhooks.h.
5108 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5109 variable termscript.
5110
5111 * s/msdos.h (USER_FULL_NAME): Define.
5112 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5113
5114 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5115 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5116 pw->pw_gecos.
5117
5118 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5119 SELECTED_FRAME as additional (1st) argument.
5120 (tty_read_avail_input): Handle output_msdos_raw in
5121 addition to output_termcap.
5122
5123 * msdos.c: Include frame.h before termhooks.h.
5124 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5125 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5126 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5127 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5128 (IT_set_terminal_modes, IT_reset_terminal_modes)
5129 (IT_set_frame_parameters): Use tty->termscript instead of a global
5130 variable termscript.
5131 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5132 global variable terminal_coding. Don't refer to
5133 Vnonascii_translation_table.
5134 (internal_terminal_init): Set Vwindow_system in current_kboard.
5135 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5136 Announce date and time of session start, if termscript is open.
5137 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5138 term.c:init_tty). Open termscript only of not already open.
5139 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5140 here instead of dos_ttraw. Don't initialize display if this is an
5141 initial tty. Don't set FRAME_FONT.
5142 (Vwindow_system_version): Bump to 23.
5143 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5144 is available, set up mouse_position_hook.
5145 (dos_ttraw, IT_set_terminal_modes): If called with initial
5146 terminal, do nothing.
5147 (IT_set_frame_parameters): Handle the Qtty_type frame
5148 parameter by calling internal_terminal_init.
5149 (dos_set_window_size, show_mouse_face)
5150 (clear_mouse_face, IT_note_mode_line_highlight)
5151 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5152 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5153 (initialize_msdos_display): New function.
5154 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5155 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5156 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5157 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5158 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5159 (request_sigio, unrequest_sigio): Don't define, now defined on
5160 sysdep.c.
5161 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5162
5163 * term.c [MSDOS]: Include msdos.h.
5164 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5165 conditional to DOS_NT. Allow only one call to this function in a
5166 session. Don't allocate a new struct tty_display_info; instead,
5167 reuse the_only_display_info. Call get_tty_size to get screen
5168 dimensions. Call init_baud_rate to set bad_rate.
5169 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5170 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5171 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5172 (get_tty_terminal, get_named_tty, Ftty_type)
5173 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5174 output_termcap.
b8ff72fa
SM
5175 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5176 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5177 only when subprocesses are supported.
aac0c6e3
MR
5178
5179 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5180 f->output_data.x.
5181 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5182 terminal devices.
5183
5582fbc7 5184 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5185 x_output.
5186 (FRAME_FONT): Use output_data.tty.
5187 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5188 (struct x_display_info): Rename from display_info. Update all users in
5189 msdos.c.
aac0c6e3 5190 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5191 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5192 (dos_ttraw): Update prototype.
5193
5194 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5195 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5196
51972008-08-23 Jason Rumney <jasonr@gnu.org>
5198
5199 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
5200 (fn_TIFFSetDirectory): New library function used.
5201 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
5202 (tiff_load): Use :index to select among multiple images. Set count
5203 property when multiple images exist.
5204 (gif_format): Use :index, not :image.
5205
52062008-08-23 Chong Yidong <cyd@stupidchicken.com>
5207
5208 * xdisp.c (try_scrolling): Check INT_MAX instead of
5209 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
5210 to obtain INT_MAX.
5211
52122008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
5213
5214 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
5215
52162008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
5217
5218 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
5219 GNUstep library location.
5220
52212008-08-21 Chong Yidong <cyd@stupidchicken.com>
5222
5223 * xfaces.c (x_update_menu_appearance): Check validity of menu font
5224 before using it.
5225
5226 * puresize.h (BASE_PURESIZE): Increase to 1250000.
5227
52282008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5229
5230 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
5231 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
5232 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
5233 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
5234 (EmacsApp-cursor_blink_handler): Remove declaration.
5235 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
5236 match 01 Feb 2008 changes in xterm.c.
5237 (ns_read_socket): Add cast to avoid warning.
5238 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
5239 GNUstep.
5240
52412008-08-20 Chong Yidong <cyd@stupidchicken.com>
5242
5243 * xselect.c (x_get_foreign_selection): Return nil if desired
5244 selection could not be obtained, instead of signalling an error.
5245
52462008-08-20 David Reitter <david.reitter@gmail.com>
5247
5248 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
5249 * nsterm.m: Remove ns-specific code for cursor blinking.
5250 (ns_draw_window_cursor): Clear cursor properly rather than
5251 redrawing the area. Respect width of bar cursors.
5252 These changes enable the use of generic blink-cursor-mode and
5253 generic cursor types in NS and support smooth cursor movements (do
5254 not blink off after command).
5255 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
5256 Nextstep, too.
5257
52582008-08-19 Kenichi Handa <handa@m17n.org>
5259
5260 * font.c (Vfont_log_deferred): New variable.
5261 (font_add_log): Check Vfont_log_deferred.
5262 (font_deferred_log): New function.
5263
5264 * font.h (font_deferred_log): Extern it.
5265
5266 * fontset.c (reorder_font_vector): Use encoding charset of fonts
5267 for sorting.
5268 (face_for_char): Use deferred log.
5269
52702008-08-18 Kenichi Handa <handa@m17n.org>
5271
5272 * fontset.c (face_for_char): Add font log.
5273
5274 * font.c (font_add_log): Add the font properties :script, :lang,
5275 and :otf in the log.
5276
52772008-08-17 Chong Yidong <cyd@stupidchicken.com>
5278
5279 * xdisp.c: Remove dead code.
5280 (handle_invisible_prop, next_overlay_string): Defer call to
5281 setup_for_ellipsis.
5282 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
5283
52842008-08-15 Chong Yidong <cyd@stupidchicken.com>
5285
5286 * xfaces.c (lookup_derived_face): Properly handle possible zero
5287 return value of get_lface_attributes.
5288 (merge_faces): Don't tell lookup_derived_face to signal an error
5289 if face is not found.
5290
5291 * dired.c (Fdirectory_files): Doc fix.
5292
5293 * process.c (make_process): Initialize kill_without_query struct
5294 member.
5295
52962008-08-15 Eli Zaretskii <eliz@gnu.org>
5297
5298 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5299 Alternative calculation of totphys for Visual Studio 6.
5300
5301 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5302
5303 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5304 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5305 All users changed.
5306 (stat): Only root directory passed to GetDriveType. Allow RAM
5307 disk as well as local fixed disk when w32-get-true-file-attributes
5308 is set to `local'.
5309 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5310 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5311 (w32_cached_id, w32_add_to_cache): New functions.
5312 (get_name_and_id): Look account names in the cache before calling
5313 lookup_account_sid.
5314 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5315 New initialization flags.
5316 (globals_of_w32): Initialize them to zero.
5317 (w32_system_process_attributes): Use w32_cached_id and
5318 w32_add_to_cache.
5319
53202008-08-14 Lawrence Mitchell <wence@gmx.li>
5321
5322 * lread.c (Fread_char, Fread_char_exclusive): If no character
5323 event is read before timeout is reached, return nil, rather than
5324 converting to a number.
5325
53262008-08-14 Chong Yidong <cyd@stupidchicken.com>
5327
5328 * fns.c (use_dialog_box): Doc fix.
5329
5330 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5331 on OS X.
5332
53332008-08-13 Chong Yidong <cyd@stupidchicken.com>
5334
5335 * frame.c (Qns_parse_geometry): New var.
5336 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5337
53382008-08-11 Chong Yidong <cyd@stupidchicken.com>
5339
5340 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5341 space character in calculating tabs.
5342
53432008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5344
5345 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5346
53472008-08-10 Glenn Morris <rgm@gnu.org>
5348
5349 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5350 silence gcc "limited range of data type" warnings in some
5351 make_fixnum_or_float calls.
5352
53532008-08-09 Eli Zaretskii <eliz@gnu.org>
5354
5355 * w32.c (w32_system_process_attributes): If the process does not
5356 exist, return nil.
5357
5358 * w32.c: Include thelp32.h, psapi.h and coding.h.
5359 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5360 declarations.
5361 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5362 (Process32Next_Proc): New typedefs.
5363 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5364 (g_b_init_process32_next, g_b_init_open_thread_token)
5365 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5366 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5367 (g_b_init_get_process_working_set_size)
5368 (g_b_init_global_memory_status_ex): New static variables.
5369 (globals_of_w32): Initialize them.
5370 (create_toolhelp32_snapshot, process32_first, process32_next)
5371 (open_thread_token, impersonate_self, revert_to_self)
5372 (get_process_memory_info, get_process_working_set_size)
5373 (global_memory_status, global_memory_status_ex): New wrapper
5374 functions.
5375 (w32_list_system_processes, w32_system_process_attributes)
5376 (enable_privilege, restore_privilege, ltime, process_times):
5377 New functions.
5378 (convert_time_raw): New function.
5379 (convert_time): Remove conversion of FILETIME into time in 100
5380 nsec units, call convert_time_raw instead.
5381
5382 * process.h (w32_list_system_processes, w32_system_process_attributes):
5383 Add prototypes.
5384 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5385 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5386 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5387 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5388
5389 * process.c (Fsystem_process_attributes): Doc fix.
5390
53912008-08-08 Chong Yidong <cyd@stupidchicken.com>
5392
5393 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5394 a continued multi-char glyph; if so, advance to the actual glyph.
5395
53962008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5397
5398 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5399
5400 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5401 (.m.o): Use it.
5402 * config.in: Regenerate.
5403
54042008-08-07 Chong Yidong <cyd@stupidchicken.com>
5405
5406 * xdisp.c (redisplay_window): Revert last change.
5407 (try_window): Check bottom scroll margin too.
5408
54092008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5410
5411 * config.in: Regenerate.
5412
5413 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5414 -list-load-path-shadows'.
5415 (nsgui.h): Reduce number of things depending on it.
5416
54172008-08-06 Chong Yidong <cyd@stupidchicken.com>
5418
5419 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5420 instead of window-end which does the wrong thing at eob.
5421 (try_cursor_movement): Minor optimization.
5422 (redisplay_window): If scroll margin is defined, don't assume
5423 window doesn't need scrolling.
5424
54252008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5426
5427 * config.in: Regenerate.
5428
5429 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5430 (mostlyclean): Don't delete *.d under NS.
5431
5432 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5433
54342008-08-06 Kenichi Handa <handa@m17n.org>
5435
5436 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5437
54382008-08-06 Andreas Schwab <schwab@suse.de>
5439
5440 * config.in: Regenerate.
5441
54422008-08-05 Chong Yidong <cyd@stupidchicken.com>
5443
5444 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5445 forcing a window start.
5446
5447 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5448 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5449
54502008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5451
5452 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5453 argument.
5454
54552008-08-05 Juanma Barranquero <lekktu@gmail.com>
5456
5457 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5458 <scroll-down-aggressively, before-change-functions>:
5459 <after-change-functions>: Reflow docstrings.
5460
54612008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5462 Ken Raeburn <raeburn@gnu.org>
5463
5464 Dock menu customization, based on a patch by Ken Raeburn, plus some
5465 other fixes.
5466 * nsmenu.m (dockMenu): New variable.
5467 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5468
5469 * nsterm.h (dockMenu): Declare.
5470
5471 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5472 (ns_term_init): Initialize dockMenu.
5473 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5474 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5475 left.
5476
5477 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5478
54792008-08-04 Chong Yidong <cyd@stupidchicken.com>
5480
5481 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5482
5483 * config.in: Regenerate.
5484
54852008-08-04 Seiji Zenitani <zenitani@mac.com>
5486
5487 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5488
54892008-08-04 Chong Yidong <cyd@stupidchicken.com>
5490
5491 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5492
54932008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5494
5495 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5496
5497 * keyboard.h: Comment an #endif.
5498
5499 * lisp.h (have_menus_p): Adjust comment.
5500
5501 * menu.c (find_and_return_menu_selection): Fix comparison with
5502 client_data.
5503
5504 * nsmenu.m (popup_activated_flag): New variable.
5505 (popup_activated): New function.
5506 (menu-or-popup-active-p): New exported lisp definition.
5507 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5508 when popup done.
5509 (ns_popup_dialog): Set popup_activated_flag.
5510
5511 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5512 version for GNUstep (handled by conditional typedef in nsterm.m).
5513 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5514 in rgb.txt).
5515
5516 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5517
5518 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5519
5520 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5521
5522 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5523 shortcircuit if popup_activated like GTK and X toolkit.
5524
5525 * m/inter386.h: Change DARWIN to DARWIN_OS.
5526
5527 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5528 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5529 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5530 comment on NO_SOCK_SIGIO.
5531
55322008-08-03 Chong Yidong <cyd@stupidchicken.com>
5533
5534 * nsterm.m (windowDidResize): Remove stopModal call.
5535
55362008-08-03 Andreas Schwab <schwab@suse.de>
5537
5538 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5539 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5540
55412008-08-02 Chong Yidong <cyd@stupidchicken.com>
5542
5543 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5544 Don't use uninitialized pointer variable when using getrlimit.
5545
55462008-08-02 Jason Rumney <jasonr@gnu.org>
5547
5548 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5549
55502008-08-02 Eli Zaretskii <eliz@gnu.org>
5551
5552 * alloc.c (NSTATICS): Bump to 0x640.
5553
5554 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5555
5556 * lisp.h: Add prototype for directory_files_internal.
5557
5558 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5559 New functions.
5560 (syms_of_process): Defsubr them. Add initializations for various
5561 Q* symbols used in procfs_system_process_attributes.
5562 (procfs_list_system_processes, procfs_system_process_attributes)
5563 [HAVE_PROCFS]: New functions.
5564 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5565 (procfs_get_total_memory): New functions.
5566
55672008-08-01 Juanma Barranquero <lekktu@gmail.com>
5568
5569 * xfaces.c (Fx_load_color_file): Fix previous change;
5570 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5571
55722008-08-01 Michael Albinus <michael.albinus@gmx.de>
5573
5574 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5575
55762008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5577
5578 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5579
55802008-08-01 Chong Yidong <cyd@stupidchicken.com>
5581
5582 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5583
5584 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5585 define NSApplicationDelegateReplySuccess.
5586 (EmacsView -converstationIdentifier): Use long instead of
5587 NSInteger for GNUstep, since it doesn't have NSInteger.
5588
5589 * xmenu.c: Revert last change.
5590
5591 * keyboard.h: Fix last change.
5592
55932008-08-01 Juanma Barranquero <lekktu@gmail.com>
5594
5595 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5596 on Windows.
5597
55982008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5599
5600 Warning clearing and clean-up in NS port.
5601 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5602 Add prototypes.
5603 * nsgui.h (FACE_DEFAULT): Remove, unused.
5604 (XGCValues): Change colors to unsigned long.
5605 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5606 nsterm.m.
5607 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5608 (ns_list_fonts): Remove, unused.
5609 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5610 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5611 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5612 (nsfont_draw): Compare face colors to 0, not nil.
5613 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5614 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5615 (-addSubmenuWithTitle:): Use NSMenuItem class.
5616 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5617 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5618 (ns_clip_to_row): Make gc arg a BOOL.
5619 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5620 ns_clip_to_row() call.
5621 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5622 used). Cast FRAME_FONT assignments.
5623 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5624 (ns_string_to_lispmod): Change arg to const char.
5625 (ns_term_init): Use NSMenuItem class.
5626 (EmacsApp -openFile:): Move to different section of file.
5627 (EmacsApp -application:openFiles:): Don't return a value, call
5628 -replyToOpenOrPrint:.
5629 (EmacsView -keyDown:): Fix up cast.
5630 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5631 (EmacsView -menuDown:): Cast tag in call to
5632 find_and_call_menu_selection().
5633 (ns_list_fonts): Remove, unused.
5634 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5635 (ns_fontname_to_xlfd): Make static.
5636 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5637 Remove prototypes (now in keyboard.h).
5638 (next_menubar_widget_id): Remove, unused.
5639 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5640 Remove prototypes (now in keyboard.h).
5641 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5642
56432008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5644
5645 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5646 (floatfns.o): Depend on syssignal.h.
5647 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5648
5649 * systty.h: Fix previous change that removed BSD_TERMIOS.
5650 Add comments to #ifdefs.
5651
56522008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5653
5654 * w32fns.c (w32-load-color-file): Remove.
5655 (x-open-connection): Use renamed Fx_load_color_file.
5656 * xfaces.c (x-load-color-file): Add.
5657 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5658 Emacs.clr.
5659 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5660
56612008-07-31 Michael Albinus <michael.albinus@gmx.de>
5662
5663 * dbusbind.c (Fdbus_call_method_asynchronously)
5664 (Fdbus_method_error_internal): New defuns.
5665 (xd_read_message): Handle also reply messages.
5666 (Vdbus_registered_functions_table): Extend docstring.
5667
56682008-07-31 Juanma Barranquero <lekktu@gmail.com>
5669
5670 * keyboard.c (gobble_input): Fix previous change.
5671
56722008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5673
5674 * bitmaps/README:
5675 * xfns.c:
5676 * termcap.c:
5677 * term.c:
5678 * syswait.h:
5679 * systty.h:
5680 * systime.h:
5681 * syssignal.h:
5682 * sysdep.c:
5683 * process.h:
5684 * process.c:
5685 * print.c:
5686 * ndir.h:
5687 * lread.c:
5688 * keyboard.c:
5689 * getpagesize.h:
5690 * floatfns.c:
5691 * fileio.c:
5692 * emacs.c:
5693 * doc.c:
5694 * dispnew.c:
5695 * dired.c:
5696 * data.c:
5697 * callproc.c:
5698 * buffer.c:
5699 * README:
5700 * Makefile.in:
5701 * s/template.h:
5702 * s/msdos.h:
5703 * m/vax.h: Remove VMS support.
5704 * s/vms.h:
5705 * vlimit.h:
5706 * uaf.h:
5707 * temacs.opt:
5708 * param.h:
5709 * ioctl.h: Remove file.
5710
57112008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5712
5713 * s/ms-w32.h (MULTI_KBOARD): Remove.
5714 * xterm.c:
5715 * xselect.c:
5716 * xfns.c:
5717 * window.c:
5718 * w32term.c:
5719 * w32fns.c:
5720 * terminal.c:
5721 * termhooks.h:
5722 * term.c:
5723 * sysdep.c:
5724 * keyboard.h:
5725 * keyboard.c:
5726 * frame.h:
5727 * frame.c:
5728 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5729 * config.in: Regenerate.
5730
57312008-07-30 Jason Rumney <jasonr@gnu.org>
5732
5733 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5734
5735 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5736 (w32font_open_internal): Get unicode version of textmetrics.
5737 Don't enable or disable glyph indices here.
5738 (w32font_open): Disable use of glyph indices.
5739
5740 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5741
57422008-07-30 Chong Yidong <cyd@stupidchicken.com>
5743
5744 * minibuf.c (Vread_buffer_function): Doc fix.
5745
57462008-07-30 John Paul Wallington <jpw@pobox.com>
5747
5748 * minibuf.c (read_buffer_completion_ignore_case): New var.
5749 (Fread_buffer): Use it.
5750
57512008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5752
5753 * systty.h (sensemode): Remove empty #if. Remove reference to
5754 BSD_TERMIOS, unused.
5755
5756 * sysdep.c: Remove reference to DGUX.
5757 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5758
5759 * config.in: Regenerate.
5760
57612008-07-30 Jason Rumney <jasonr@gnu.org>
5762
5763 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5764
57652008-07-29 Jason Rumney <jasonr@gnu.org>
5766
5767 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5768 is populated.
5769 (uniscribe_encode_char): Always use uniscribe.
5770 Avoid using context if cache is populated.
5771
57722008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5773
5774 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5775 open menu.
5776
5777 * gtkutil.c (menu_nav_ended): Remove.
5778 (create_menus): Remove signal connect for menu_nav_ended.
5779
57802008-07-28 Chong Yidong <cyd@stupidchicken.com>
5781
5782 * xdisp.c (redisplay_window): Check return value of
5783 compute_window_start_on_continuation_line before forcing a window
5784 start.
5785
57862008-07-28 Jason Rumney <jasonr@gnu.org>
5787
5788 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5789
5790 * w32term.c (w32_enable_unicode_output, cleartype_active):
5791 Remove obsolete display options.
5792 (x_draw_glyph_string_background): Don't use old cleartype_active
5793 workaround.
5794 (w32_initialize): Remove cleartype_active initialization.
5795 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5796
57972008-07-28 Andreas Schwab <schwab@suse.de>
5798
5799 * lisp.h (init_weak_hash_tables, syms_of_font)
5800 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5801 (remove_hash_entry): Don't declare.
5802 * eval.c (maybe_call_debugger): Make static and move before use.
5803 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5804 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5805 * xterm.h (x_set_frame_alpha): Declare.
5806
58072008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5808
5809 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5810 (create_menus): Connect selection-done to menu_nav_ended.
5811
58122008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5813
5814 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5815 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5816 parameter with read of 'alpha' one.
5817 (Qns_frame_parameter): Remove.
5582fbc7 5818 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5819 (next-selection-coding-system, Vselection_coding_system)
5820 (Vnext_selection_coding_system): Drop.
5821
58222008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5823
5824 * nsfns.m (do-applescript, do_applescript): Rename to
5825 ns-do-applescript, ns_do_applescript, and move within file.
5826
58272008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5828
5829 Remove support for Mac Carbon.
5830 * mactoolbox.c:
5831 * macterm.h:
5832 * macterm.c:
5833 * macselect.c:
5834 * macmenu.c:
5835 * macgui.h:
5836 * macfns.c:
5837 * mac.c: Remove file.
5838 * s/darwin.h:
5839 * m/intel386.h:
5840 * xfaces.c:
5841 * xdisp.c:
5842 * window.c:
5843 * tparam.c:
5844 * termhooks.h:
5845 * termcap.c:
5846 * term.c:
5847 * syssignal.h:
5848 * sysselect.h:
5849 * sysdep.c:
5850 * process.c:
5851 * lread.c:
5852 * lisp.h:
5853 * keyboard.c:
5854 * image.c:
5855 * fringe.c:
5856 * frame.h:
5857 * frame.c:
5858 * fontset.c:
5859 * font.h:
5860 * font.c:
5861 * fns.c:
5862 * fileio.c:
5863 * emacs.c:
5864 * dispnew.c:
5865 * dispextern.h:
5866 * config.in:
5867 * atimer.c:
2ae37cf0 5868 * Makefile.in: Remove code for Carbon.
aac0c6e3 5869
f0131492 58702008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5871
5872 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5873
58742008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5875
5876 * macterm.h (kCGBitmapByteOrder32Host): New define for
5877 non-universal SDKs.
5878
5879 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5880 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5881
5882 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5883 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5884
58852008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5886
5887 * w32inevt.c: Include dispextern.h.
5888
58892008-07-26 Andreas Schwab <schwab@suse.de>
5890
5891 * print.c (print_object): Fix off-by-one in last change.
5892
58932008-07-25 Juanma Barranquero <lekktu@gmail.com>
5894
5895 * term.c (syms_of_term): Don't initialize default_orig_pair,
5896 default_set_foreground and default_set_background on Windows.
5897
58982008-07-25 Jason Rumney <jasonr@gnu.org>
5899
5900 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5901 ScriptItemize. Clean up return value checking. Remove unused
5902 variables.
5903 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5904 shaping engine.
5905
5906 * w32font.c (w32font_has_char): Handle the case where we can't
5907 determine the script for a character.
5908
59092008-07-25 Chong Yidong <cyd@stupidchicken.com>
5910
5911 * term.c (syms_of_term): Initialize default_orig_pair,
5912 default_set_foreground, and default_set_background.
5913
5914 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5915 clash (bug#86).
5916 (getloadavg): Callers changed.
5917
5918 * image.c (svg_load_image): Fix last change.
5919 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5920 image size is valid. Use g_object_unref instead of deprecated
5921 rsvg_handle_free to free rsvg handle.
5922 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5923
59242008-07-25 Jason Rumney <jasonr@gnu.org>
5925
5926 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5927 surrogates before looking up glyph index.
5928 (w32font_text_extents): Encode as surrogates if falling back to
5929 functions that need UTF-16 wide chars.
5930
5931 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5932 BMP as surrogates before looking up glyph index.
5933
59342008-07-25 Chong Yidong <cyd@stupidchicken.com>
5935
5936 * image.c (svg_load_image): Check for failure in return value of
5937 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5938
59392008-07-25 Jason Rumney <jasonr@gnu.org>
5940
5941 * w32font.c (Fx_select_font): Reverse sense of second arg.
5942
59432008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5944
5945 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5946 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5947
5948 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5949 (PURESIZE): Use it.
5950
59512008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5952
5953 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5954 * m/alpha.h (TEXT_END):
5955 * m/ibmrs6000.h (TEXT_END):
5956 * m/macppc.h (TEXT_END):
5957 * s/darwin.h (TEXT_END):
5958 * s/msdos.h (TEXT_END): Remove, unused.
5959 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5960 * s/cygwin.h: Remove comment.
5961
5962 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5963 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5964 * m/intel386.h (DOT_GLOBAL_START):
5965 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5966 (USG): Remove, file not used on USG platforms.
5967
5968 * Makefile.in (HAVE_X11): Remove empty #else.
5969
59702008-07-24 Andreas Schwab <schwab@suse.de>
5971
5972 * fileio.c (Finsert_file_contents): Properly adjust undo list
5973 after format conversion.
5974
59752008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5976
5977 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5978 (menu_nav_ended): Remove.
5979 (create_menus): Remove signal connect for menu_nav_ended.
5980 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5981 create_menus.
5982 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5983
59842008-07-23 Jason Rumney <jasonr@gnu.org>
5985
5986 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5987 with opened font.
5988 (w32font_open): Set font type to gdi.
5989
5990 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5991
59922008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5993
5994 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5995 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5996 defines it.
5997 * unexec.c (ADDR_CORRECT): Define unconditionally.
5998
5999 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6000
6001 * unexec.c: Remove code depending on !COFF and USG, the file is
6002 not used for such systems.
6003
6004 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6005 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6006 (LD_SWITCH_SYSTEM_1): Remove, update users.
6007
6008 * s/darwin.h (DATA_END):
6009 * m/intel386.h (DATA_END):
6010 * m/ibmrs6000.h (DATA_END):
6011 * m/alpha.h (DATA_END): Remove, unused.
6012
6013 * config.in: Regenerate.
6014 * s/ms-w32.h (subprocesses): Define unconditionally.
6015 * s/template.h (subprocesses): Update comment.
6016 * s/vms.h (subprocesses):
6017 * s/usg5-4.h (subprocesses):
6018 * s/hpux10-20.h (subprocesses):
6019 * s/gnu-linux.h (subprocesses):
6020 * s/cygwin.h (subprocesses):
6021 * s/bsd-common.h (subprocesses):
6022 * s/aix4-2.h (subprocesses):
6023 * s/darwin.h (subprocesses): Do not define, defined by default now.
6024
6025 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6026 Remove all references.
6027 (temacs): Add GNUstep specific ld flags.
6028
6029 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6030 similarly to what X does.
6031
60322008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6033
6034 * nsfns.m (x-list-fonts): Remove.
6035 (syms_of_nsfns): Drop the x-list-fonts declaration.
6036 * nsterm.m: Get rid of remaining "//" comments.
6037
60382008-07-22 Chong Yidong <cyd@stupidchicken.com>
6039
6040 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6041
6042 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6043 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6044 (Fns_own_selection_internal, Fx_disown_selection_internal)
6045 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6046
6047 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6048 ... */' style of docstrings. Doc fixes.
6049
60502008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6051
6052 * terminfo.c (UP, BC, PC): Undo previous change.
6053
6054 * nsfns.m: Rename ns prefixed functions/variables to the
6055 corresponding x versions. Update references.
6056
60572008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6058
6059 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6060
60612008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6062
6063 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6064 Remove forwarding functions.
6065 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6066 non-static.
6067 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6068 non-static.
6069 (ns_frame_parm_handlers): Use the new names.
6070 (syms_of_nsfns): Move to the end of file.
6071
6072 * nsterm.m (syms_of_nsterm): Move to the end of file.
6073
6074 * dispnew.c (init_display): Remove code for X10.
6075
60762008-07-22 Jason Rumney <jasonr@gnu.org>
6077
6078 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6079 bare drive.
6080
60812008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6082
6083 * nsterm.m (syms_of_nsterm): Remove debugging println.
6084
60852008-07-22 David Reitter <david.reitter@gmail.com>
6086
6087 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6088 Carbon implementation of the same functionality: execute arbitrary
6089 AppleScript code.
6090
60912008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6092
6093 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6094 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6095 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6096 (Fx_display_mm_height, Fx_display_mm_width)
6097 (Fx_display_backing_store, Fx_display_visual_class)
6098 (Fx_display_save_under, Fx_open_connection)
6099 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6100 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6101 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6102 (Fx_display_pixel_width, Fx_display_pixel_height)
6103 (Fx_display_usable_bounds, Fx_display_planes)
6104 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6105 ... */' style of docstrings.
6106
61072008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6108
6109 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6110 on this platform.
6111 (mips):
6112 * m/iris4d.h (mips): Do not define.
6113 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6114
6115 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6116
6117 * image.c:
6118 * nsfns.m:
6119 * nsselect.m:
6120 * nsterm.h:
6121 * nsterm.m: Rename ns prefixed functions/variables to the
6122 corresponding x versions. Update references.
6123
6124 * m/ibms390x.h (NO_REMAP): Do not undefine.
6125
6126 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6127
61282008-07-21 Chong Yidong <cyd@stupidchicken.com>
6129
6130 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6131 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6132 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6133 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6134 (Fns_display_mm_height, Fns_display_mm_width)
6135 (Fns_display_backing_store, Fns_display_visual_class)
6136 (Fns_display_save_under, Fns_open_connection)
6137 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6138 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6139 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6140 (Fns_display_pixel_width, Fns_display_pixel_height)
6141 (Fns_display_usable_bounds, Fx_display_planes)
6142 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6143
61442008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6145
6146 * print.c (print_object): Check print_depth before searching for
6147 circularities.
6148
61492008-07-21 Michael Albinus <michael.albinus@gmx.de>
6150
6151 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6152 only sprintf.
6153
61542008-07-21 Kenichi Handa <handa@m17n.org>
6155
6156 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6157
61582008-07-20 Andreas Schwab <schwab@suse.de>
6159
6160 * syntax.c (find_start_pos, find_start_value)
6161 (find_start_value_byte, find_start_begv, find_defun_start)
6162 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6163
61642008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6165
6166 * s/sol2-3.h: Insert contents of s/sol2.h.
6167 (LD_SWITCH_SYSTEM): Remove redundant definition.
6168 * s/sol2.h: Remove, unused.
6169
61702008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6171
6172 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6173
61742008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6175
6176 * Makefile.in (ns_appdir): Fix typo in find command.
6177
61782008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6179
6180 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6181
6182 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6183 added not supported anymore.
6184
6185 * s/usg5-4-2.h (LIBS_SYSTEM):
6186 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6187
6188 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6189 * s/lynxos.h (GETPGRP_NO_ARG):
6190 * s/hpux10-20.h (NO_SIOCTL_H):
6191 * s/gnu.h (GETPGRP_NO_ARG):
6192 * s/gnu-linux.h (NO_SIOCTL_H):
6193 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6194 * s/cygwin.h (GETPGRP_NO_ARG):
6195 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6196 (C_DEBUG_SWITCH): Remove duplicate definition.
6197
6198 * m/ibms390.h: Remove boilerplate comments.
6199
6200 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
6201
6202 * process.c (HAVE_SERIAL): Consolidate ifdefs.
6203 (wait_reading_process_output): Remove code for SunOS, platform not
6204 supported anymore. Use SOLARIS2 instead of sun.
6205
62062008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6207
6208 * font.c (font_open_by_name): Under NS, default lface height to zero.
6209 (font_open_for_lface): Under NS, set size based on frame fontsize.
6210 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
6211 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
6212
62132008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6214
6215 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
6216 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
6217 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
6218 YES/NO.
6219 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
6220 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
6221 * Makefile.in (clean): Clear out build destination dir.
6222
62232008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6224
6225 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
6226 xterm, xselect.
6227 * lisp.h: Remove declaration of hash_remove.
6228 * nsgui.h: Remove redefinitions of hash_remove.
6229 * fns.c (hash_remove): Rename to hash_remove_from_table.
6230
62312008-07-19 Seiji Zenitani <zenitani@mac.com>
6232
6233 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
6234 strdup() the family UTF8String before modifying it.
6235
62362008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6237
6238 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
6239 NS_FACE_BACKGROUND with 0 instead of nil.
6240 * nsfont.m (nsfont_draw): Same.
6241
62422008-07-19 Chong Yidong <cyd@stupidchicken.com>
6243
6244 * nsfns.m (ns_set_background_color): Fix crash.
6245
62462008-07-18 Chong Yidong <cyd@stupidchicken.com>
6247
6248 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
6249
62502008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
6251
6252 * puresize.h (BASE_PURESIZE): Increase to 1240000.
6253
62542008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6255
6256 * gtkutil.c: Include <config.h> instead of "config.h".
6257
6258 * lisp.h (Foverlay_buffer): Add EXFUN.
6259
6260 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
6261 child process to complete child_setup. Undo 2005-09-21 change.
6262
6263 * s/darwin.h: Mention setsid after vfork.
6264
62652008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6266
6267 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
6268 Depend on macgui.h.
6269
6270 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
6271 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
6272
6273 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
6274 and f19.
6275 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
6276
6277 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
6278 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
6279 Remove enumerators.
6280
6281 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
6282 Check if FACE_FROM_ID returns NULL.
6283
62842008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6285
6286 * w32inevt.c (change_frame_size): Remove extern declaration.
6287 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6288 change_frame_size.
6289
62902008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6291
6292 * getloadavg.c: Revert last change (2008-07-15).
6293
62942008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6295
6296 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
6297 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
6298 from configure.
6299
63002008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6301
6302 * s/sol2.h:
6303 * s/sol2-4.h: Reorganize conditionals.
6304
6305 * ecrt0.c: Remove code depending on m68000, not used anymore.
6306
6307 * fns.c (hash_remove): Make static.
6308 * lisp.h (hash_remove): Don't prototype.
6309
6310 * m/ibmrs6000.h:
6311 * m/ibms390x.h:
6312 * m/macppc.h: Remove boilerplate comments.
6313
6314 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6315 Solaris, which does not need them.
6316
6317 * m/vax.h: Remove comments about unsupported systems.
6318
6319 * s/darwin.h: Reorganize ifdefs.
6320
63212008-07-17 Andreas Schwab <schwab@suse.de>
6322
6323 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6324
63252008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6326
6327 Use SDATA. Follow coding convention of placing operators at
6328 beginning of next line rather than end of previous line, and placing
6329 spaces around infix operators.
6330
6331 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6332 in case it was defined already.
6333 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6334 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6335 ns_default.
6336 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6337 Lisp_Objects.
6338 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6339 (ns_defined_color, ns_color_to_lisp): Declare.
6340 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6341 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6342 it's accepted even with USE_LISP_UNION_TYPE.
6343 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6344 (update_frame_tool_bar): Remove apparently obsolete tests for
6345 non-integerness of f->tool_bar_lines.
6346 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6347 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6348 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6349 (nsfont_open): Don't confuse NULL for Qnil.
6350 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6351 * menu.h (find_and_call_menu_selection):
6352 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6353 (find_and_return_menu_selection): Always return something.
6354 * frame.h: Include dispextern.h for Display_Info.
6355 (display_x_get_resource): Declare.
6356
63572008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6358
6359 * syntax.c: Remove stdio.h include accidentally introduced in
6360 Emacs.app commit.
6361 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6362 NS_IMPL_COCOA.
6363 * keyboard.c (handle_async_input, input_available_signal): Remove
6364 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6365
63662008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6367
6368 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6369 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6370 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6371 Use SDATA.
6372
6373 * keymap.c: Remove all NS-specific code.
6374 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6375 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6376 where_is_preferred_modifier, return a different value depending on how
6377 preferred is the binding.
6378 (where_is_internal): Adjust accordingly.
6379 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6380 Adjust to new preferred_sequence_p.
6381 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6382 * keyboard.c (parse_solitary_modifier): Not static any more.
6383 * keyboard.h (parse_solitary_modifier): Declare.
6384
63852008-07-16 Andreas Schwab <schwab@suse.de>
6386
6387 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6388 of easymenu.
6389
63902008-07-16 Chong Yidong <cyd@stupidchicken.com>
6391
6392 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6393 that we don't move off the line.
6394
63952008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6396
6397 * keyboard.c (Qsuper): Remove.
6398 (parse_menu_item): Don't call where_is_internal specially for NS.
6399
64002008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6401
6402 * s/gnu-linux.h: Remove boilerplate comments.
6403
6404 * m/alpha.h (__ELF__): Consolidate conditions.
6405
6406 * m/m68k.h (linux): Use GNU_LINUX instead.
6407 Remove boilerplate comments.
6408
6409 * m/intel386.h: Undo refactoring from previous change.
6410 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6411 too, remove dead code.
6412 (linux): Use GNU_LINUX instead.
6413
64142008-07-16 Jason Rumney <jasonr@gnu.org>
6415
6416 * w32gui.h: Repeat 26 June changes lost by last change.
6417
64182008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6419
6420 * systty.h: Remove code for Aix on 386, unsupported platform.
6421
6422 * s/ms-w32.h: Remove boilerplate comments.
6423 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6424
6425 * s/gnu-linux.h (TERM): Remove support.
6426 (HAVE_SYSVIPC): Remove, unused.
6427 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6428 for this system.
6429
6430 * process.c: Remove support for IRIS, unused.
6431 Remove support for TERM, not relevant anymore.
6432
6433 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6434 used with the definition.
6435
6436 * s/aix4-2.h (static): Do not undef.
6437
6438 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6439 only used on Aix.
6440 (HAVE_SYSVIPC): Remove, unused.
6441
6442 * m/hp800.h (CANNOT_DUMP): Do not undef.
6443
6444 * m/alpha.h: Fix comment.
6445
6446 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6447 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6448 used by this configuration.
6449 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6450 * unexec.c: Remove code depending on HPUX and
6451 USG_SHARED_LIBRARIES, not used with this file. Remove code
6452 depending on IRIS, unused. Remove if 0-ed code.
6453
6454 * s/template.h: Remove comments about static.
6455
6456 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6457 Remove if 0-ed code.
6458 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6459 were the same as the default.
6460 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6461 Remove boilerplate comments.
6462 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6463 (HAVE_SYSVIPC): Remove, unused.
6464 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6465
6466 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6467 Remove boilerplate comments.
6468 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6469 Remove boilerplate comments.
6470 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6471 Remove boilerplate comments.
6472 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6473
6474 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6475 USG systems which do not use DATA_SEG_BITS.
6476 Refactor code. Remove boilerplate comments.
6477
6478 * m/ibms390.h:
6479 * m/m68k.h:
6480 * s/bsd-common.h:
6481 * s/cygwin.h:
6482 * s/darwin.h:
6483 * s/freebsd.h:
6484 * s/gnu.h:
6485 * s/msdos.h: Remove boilerplate comments.
6486
6487 * m/iris4d.h: Remove boilerplate comments and code for systems that
6488 do not use this file.
6489 (IRIS_4D): Remove, unused.
6490
6491 * m/mips.h: Remove boilerplate comments and code for systems that
6492 do not use this file.
6493 (SIGN_EXTEND_CHAR):
6494 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6495 * unexmips.c: Remove file, unused.
6496
6497 * editfns.c (Fuser_full_name): Replace the only use of
6498 USER_FULL_NAME with its value.
6499 * config.in: Regenerate.
6500
65012008-07-16 David Reitter <david.reitter@gmail.com>
6502
6503 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6504 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6505
65062008-07-16 Glenn Morris <rgm@gnu.org>
6507
6508 * emacs.c (system-type): Doc fix.
6509
65102008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6511
6512 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6513 If the cache doesn't work, let's fix it, rather than work around it.
6514
65152008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6516
6517 * Makefile.in: Correct additions for nsfont.o in last commit.
6518 * nsfont.m: New file (forgot last commit).
6519
65202008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6521
6522 * callproc.c (set_initial_environment): Initialize
6523 Vprocess_environment under CANNOT_DUMP (fixes crash when
6524 batch-compiling for bootstrap).
6525
65262008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6527 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6528
6529 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6530 fix crash due to different init order.
6531
65322008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6533
6534 Changes and additions for NeXTstep windowing system (Cocoa and
6535 GNUstep) support.
6536
6537 * Makefile.in:
6538 * config.in: Support defines and build commands for NS port.
6539 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6540 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6541 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6542 windowing.
6543 (struct face): Add synth_ital field.
6544 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6545 (init_display): Initialize Vinitial_window_system to "ns" when so
6546 compiled.
6547 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6548 (display_arg): Use under NS.
6549 (main): Under NS, allocate autorelease pool and handle command line
6550 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6551 (standard_args): Add NS-specific args.
6552 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6553 * font.c (DEFAULT_ENCODING): New variable.
6554 (font_find_for_lface): Use it.
6555 (syms_of_font): Load syms_of_nsfont under NS.
6556 * font.h: Declare nsfont_driver when compiled under NS.
6557 * fontset.c: When compiling under NS, include nsterm.h.
6558 (fontset_from_font): Autoconstruct fontset under NS.
6559 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6560 symbol, document and use it.
6561 (do_switch_frame): When for_deletion under Cocoa, add
6562 Fraise_frame(Qnil).
6563 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6564 (x_get_arg): Allow "yes" and "no" as boolean values.
6565 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6566 Qright under Cocoa.
6567 (focus-follows-mouse): Default to 0 under NS.
6568 * frame.h (enum output_method): Add output_ns.
6569 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6570 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6571 (FRAME_WINDOW_P): NS-specific definition.
6572 * fringe.c (max_used_fringe_bitmap): Make public.
6573 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6574 (getloadavg): Use NeXT code under descendant OS's.
6575 * image.c (includes and header section, x_create_bitmap_from_data)
6576 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6577 (image_background_transparent, x_clear_image_1)
6578 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6579 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6580 (x_to_xcolors, x_from_xcolors, x_disable_image)
6581 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6582 other GUIs, including XPM support using code originally written for
6583 Carbon GUI.
6584 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6585 using NS API.
6586 (image_ascent): Use font metrics macros instead of direct struct field
6587 access.
6588 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6589 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6590 Also, handle NS as GTK for menu bar purposes.
6591 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6592 toolkit where they differ.
6593 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6594 use cachelist, still needed under NS.
6595 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6596 (struct widget_value): Define it here for menu.c.
6597 * keymap.c (includes): Include modifier internals.
6598 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6599 NS.
6600 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6601 support for preferring sequences using certain modifiers, specified by
6602 the FIRSTONLY argument.
6603 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6604 under NS GNUstep implementation.
6605 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6606 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6607 * menu.c: Include nsterm.h under NS.
6608 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6609 (free_menubar_widget_tree_value, update_submenu_strings)
6610 (find_and_call_menu_selection): Treat NS as X and NT.
6611 (find_and_return_menu_selection): New function, used for popup menus.
6612 * nsgui.h:
6613 * nsterm.h:
6614 * nsfns.m:
6615 * nsimage.m:
6616 * nsmenu.m:
6617 * nsselect.m:
6618 * nsterm.m: New files.
6619 * process.c (wait_reading_process_output): Under NS, call ns_select()
6620 instead of plain select().
6621 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6622 beginning of buffer.
6623 * sysselect.h (init_process): Rename when compiling under Cocoa to
6624 avoid name conflict.
6625 * termhooks.h (display_info): Add ns_display_info to union.
6626 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6627 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6628 COCOA environment.
6629 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6630 unexec() signature. (Note, this will dump, but the resulting file
6631 crashes; unexosx is used instead; keeping around for reference and
6632 possible aid in getting dump working under GNUstep.)
6633 * w32gui.h (button_type, widget_value): Remove definitions (now in
6634 keyboard.h).
6635 * window.c: Include nsterm.h when compiling under NS.
6636 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6637 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6638 other GUI windowing systems.
6639 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6640 GTK.
6641 (x_consider_frame_title): Under NS, set icon type and frame
6642 modified-state indicator; use ns_set_name_as_filename() when using
6643 formatted title.
6644 (update_window_cursor): Make public when compiling under NS.
6645 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6646 (hourglass_atimer, Vhourglass_delay
6647 * xfaces.c (header section, init_frame_faces, clear_font_table)
6648 (defined_color, unload_color, x_face_list_fonts)
6649 (prepare_face_for_display): Add NS support parallel to other GUIs.
6650 Emulate GCs like other non-X GUIs.
6651 (split_font_name): Don't lowercase font name under NS.
6652 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6653 under NS.
6654 * s/darwin.h: Add support for compilation under NS.
6655
66562008-07-15 Jason Rumney <jasonr@gnu.org>
6657
6658 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6659 (w32_show_hourglass): Rename from show_hourglass.
6660 (w32_hide_hourglass): Rename from hide_hourglass.
6661 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6662 (Vhourglass_delay): Declare extern.
6663 (hourglass_started): Remove.
6664
6665 * xdisp.c (Vhourglass_delay): Remove static.
6666 (hourglass_started, start_hourglass, cancel_hourglass):
6667 Don't include these versions on WINDOWSNT.
6668
66692008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6670
6671 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6672 variables (formerly in xfns.c).
6673 (show_hourglass, hide_hourglass): New prototypes (same).
6674 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6675 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6676 in xfns.c).
6677 (syms_of_xdisp): Declare/initialize display-hourglass,
6678 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6679 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6680 formerly in xfns.c.
6681 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6682 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6683 (start_hourglass, cancel_hourglass): Remove.
6684 (show_hourglass, hide_hourglass): Remove prototypes and static
6685 modifiers.
6686 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6687 hourglass_atimer, hourglass_shown_p declaration/initialization.
6688 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6689 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6690 (start_hourglass, cancel_hourglass): Remove.
6691 (show_hourglass, hide_hourglass): Remove prototypes and static
6692 modifiers.
6693 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6694 hourglass_atimer, hourglass_shown_p declaration/initialization.
6695 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6696 (DEFAULT_HOURGLASS_DELAY): Remove.
6697 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6698 hourglass_shown_p declaration/initialization.
6699
67002008-07-14 Jason Rumney <jasonr@gnu.org>
6701
6702 * w32fns.c (w32_get_arg): Remove wrapper function.
6703 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6704 directly.
6705 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6706
67072008-07-14 Kenichi Handa <handa@m17n.org>
6708
6709 * xfont.c (xfont_open): Add workaround for X's bug.
6710
67112008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6712
6713 * fontset.c: Include <stdio.h> unconditionally.
6714
67152008-07-13 Michael Albinus <michael.albinus@gmx.de>
6716
6717 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6718 for filtering.
6719
67202008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6721
6722 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6723
6724 * m/macppc.h:
6725 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6726
6727 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6728 (SPECIAL_EMACS_INT):
6729 * m/ia64.h (SPECIAL_EMACS_INT):
6730 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6731 * s/gnu.h (NLIST_STRUCT):
6732 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6733 * s/gnu-linux.h (LINUX):
6734 * s/msdos.h (HAVE_FACES):
6735 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6736
6737 * systty.h:
6738 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6739 anymore.
6740
67412008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6742
6743 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6744 always defined as int.
6745
6746 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6747 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6748 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6749 * s/freebsd.h (HAVE_WAIT_HEADER):
6750 * s/bsd-common.h (HAVE_UNION_WAIT):
6751 * s/aix4-2.h (HAVE_WAIT_HEADER):
6752 * m/mips.h (HAVE_UNION_WAIT):
6753 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6754 (COFF, static): Do not define, they are undefined later in the file.
6755
6756 * process.c (update_status): Don't use a union.
6757 (status_convert):
6758 (sigchld_handler): Use int instead of WAITTYPE.
6759
67602008-07-12 Chong Yidong <cyd@stupidchicken.com>
6761
6762 * indent.c (Fvertical_motion): Restore hscroll before moving to
6763 goal column.
6764
67652008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6766
6767 * lisp.h: Remove left over code.
6768
67692008-07-11 Andreas Schwab <schwab@suse.de>
6770
6771 * lisp.h: Fix logic in last change.
6772
6773 * menu.h: New file.
6774 * menu.c: Include it.
6775 * xmenu.c: Likewise.
6776 * Makefile.in: Update dependencies.
6777
67782008-07-11 Kenichi Handa <handa@m17n.org>
6779
6780 * fontset.c (fontset_from_font): Cancel the previous change.
6781
67822008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6783
6784 * lisp.h:
6785 * w32heap.c:
6786 * emacs.c:
6787 * alloc.c: Replace all references of NO_UNION_TYPE with
6788 USE_LISP_UNION_TYPE.
6789
6790 * m/xtensa.h (NO_UNION_TYPE):
6791 * m/vax.h (NO_UNION_TYPE):
6792 * m/template.h (NO_UNION_TYPE):
6793 * m/sparc.h (NO_UNION_TYPE):
6794 * m/mips.h (NO_UNION_TYPE):
6795 * m/macppc.h (NO_UNION_TYPE):
6796 * m/m68k.h (NO_UNION_TYPE):
6797 * m/iris4d.h (NO_UNION_TYPE):
6798 * m/intel386.h (NO_UNION_TYPE):
6799 * m/ibms390x.h (NO_UNION_TYPE):
6800 * m/ibms390.h (NO_UNION_TYPE):
6801 * m/ibmrs6000.h (NO_UNION_TYPE):
6802 * m/ia64.h (NO_UNION_TYPE):
6803 * m/hp800.h (NO_UNION_TYPE):
6804 * m/arm.h (NO_UNION_TYPE):
6805 * m/amdx86-64.h (NO_UNION_TYPE):
6806 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6807 defining it the same.
6808
68092008-07-10 Chong Yidong <cyd@stupidchicken.com>
6810
6811 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6812
68132008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6814
6815 * fileio.c:
6816 * sysdep.c
6817 * systty.h:
6818 * m/ibmrs6000.h:
6819 * m/iris4d.h:
6820 * s/aix4-2.h:
6821 * s/freebsd.h:
6822 * s/gnu-linux.h:
6823 * s/hpux10-20.h:
6824 * s/hpux11.h:
6825 * s/netbsd.h:
6826 * s/sol2-3.h:
6827 * s/sol2-4.h:
6828 * s/sol2.h:
6829 * s/usg5-4.h:
6830 * s/vms.h: Remove references to unused variables.
6831
68322008-07-10 Andreas Schwab <schwab@suse.de>
6833
6834 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6835 pattern before matching the generic family.
6836
68372008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6838
6839 * unexec.c:
6840 * s/vms.h:
6841 * s/usg5-4-2.h:
6842 * s/sol2-5.h:
6843 * s/freebsd.h:
6844 * s/darwin.h: Remove dead code.
6845
6846 * m/template.h:
6847 * m/sparc.h:
6848 * m/mips.h:
6849 * m/m68k.h:
6850 * m/iris4d.h:
6851 * m/intel386.h:
6852 * m/ibms390x.h:
6853 * m/ibms390.h:
6854 * m/ia64.h:
6855 * m/hp800.h:
6856 * m/arm.h:
6857 * m/amdx86-64.h: Remove dead code and references to unused
6858 and compiler defined symbols.
6859
6860 * unexmips.c:
6861 * unexelf.c: Remove references to desupported systems.
6862
6863 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6864
6865 * m/powermac.h: Remove boilerplate comments.
6866 (NO_REMAP): Remove unused definition.
6867
6868 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6869 define them.
6870
68712008-07-10 Kenichi Handa <handa@m17n.org>
6872
6873 * xfont.c (xfont_open): Log the reason of failure.
6874
68752008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6876
6877 * fontset.c (fontset_get_font_group):
6878 * font.c (font_check_otf): Specify argument types.
6879
68802008-07-09 Kenichi Handa <handa@m17n.org>
6881
6882 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6883 non-ASCII char is found.
6884
6885 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6886 (reorder_font_vector): Change the arg preferred_family to font.
6887 Prefer the spec matching with font.
6888 (fontset_get_font_group): New function.
6889 (fontset_find_font): Change the format of an element of a realized
6890 fontset. Use fontset_get_font_group.
6891 (fontset_font): Try the current fontset, the default fontset, the
6892 fallbacks of the current fontset, and the fallbacks of the default
6893 fontset in this order.
6894 (face_for_char): Delete the shortcut to use the current font.
6895 (fontset_from_font): Don't set fonts for Latin in the fontset.
6896
6897 * font.h (font_make_object, font_match_p): Adjust prototypes.
6898
6899 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6900
6901 * font.c (font_make_object): New arg entity and pixelsize.
6902 (font_check_otf_features, font_check_otf): New functions.
6903 (font_match_p): Check :lang, :script, and :otf properties.
6904
6905 * xfont.c (xfont_open): Adjust it for the change of
6906 font_make_object.
6907 (xfont_text_extents): Fix initial setting of metrics.
6908
6909 * ftfont.c (struct ftfont_info): New member index, delete member
6910 fc_charset_idx. Make the member order compatible with struct
6911 xftfont_info.
6912 (fc_charset_table): Change charset names to registry names.
6913 (ftfont_pattern_entity): Delete the args registry and
6914 fc_charset_idx. Change the value of :font-entity property
6915 to (FONTNAME . INDEX). Always set :registry property to
6916 `iso10646-1'.
6917 (struct ftfont_cache_data): New struct.
6918 (ftfont_lookup_cache): New arg for_face.
6919 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6920 (ftfont_driver): Set the member otf_capability.
6921 (ftfont_get_charset): Adjust it for the change of
6922 fc_charset_table.
6923 (OTF_TAG_SYM): New macro.
6924 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6925 for the change of fc_charset_table.
6926 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6927 ftfont_pattern_entity. Add FC_INDEX to objset.
6928 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6929 and ftfont_pattern_entity.
6930 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6931 font_make_object, struct ftfont_info.
6932 (ftfont_has_char): Use ftfont_get_fc_charset.
6933 (ftfont_otf_features, ftfont_otf_capability): New functions.
6934 (ftfont_shape): Use ftfont_get_otf.
6935 (ftfont_text_extents): Fix initial setting of metrics.
6936
6937 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6938 member order compatible with struct ftfont_info.
6939 (xftfont_open): Add FC_CHARSET to the pattern. Set
6940 xftfont_info->ft_size. Don't unlock the face. Check BDF
6941 properties if appropriate.
6942 (xftfont_close): Unlock the face.
6943 (xftfont_anchor_point, xftfont_shape): Deleted.
6944 (syms_of_xftfont): Don't set members anchor_point and shape of
6945 xftfont_driver.
6946
6947 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6948 font_make_object.
6949
6950 * w32font.c (w32font_open): Adjust it for the change of
6951 font_make_object.
6952 (w32font_open_internal): Don't set properties of font_object here.
6953
69542008-07-08 Chong Yidong <cyd@stupidchicken.com>
6955
6956 * macfns.c (x_create_tip_frame):
6957 * w32fns.c (x_create_tip_frame):
6958 * xfns.c (x_create_tip_frame): Pass parameter argument to
6959 face-set-after-frame-default.
6960
6961 * xfaces.c (Finternal_merge_in_global_face): Save merged
6962 attributes for the default face back into the face vector.
6963
69642008-07-08 Andreas Schwab <schwab@suse.de>
6965
6966 * fontset.h: Declare fontset_from_font. Don't declare
6967 new_fontset_from_font and fontset_from_font_name.
6968 * xterm.c: Include "fontset.h".
6969 * Makefile.in (xterm.o): Update dependencies.
6970
69712008-07-08 Glenn Morris <rgm@gnu.org>
6972
6973 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6974 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6975
69762008-07-07 Chong Yidong <cyd@stupidchicken.com>
6977
6978 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6979 (x_set_frame_parameters): Don't bind it.
6980
69812008-07-07 Juanma Barranquero <lekktu@gmail.com>
6982
6983 * w32fns.c (map_w32_filename): Declare extern.
6984
69852008-07-07 Jason Rumney <jasonr@gnu.org>
6986
6987 * w32term.c (WS_EX_LAYERED): Define if not already.
6988
69892008-07-06 Chong Yidong <cyd@stupidchicken.com>
6990
6991 * xfaces.c (set_font_frame_param): Don't try to set the font
6992 parameter if it is still unspecified in the lface.
6993
69942008-07-05 Chong Yidong <cyd@stupidchicken.com>
6995
6996 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6997 face if it didn't already exist.
6998
6999 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7000
70012008-07-05 Andreas Schwab <schwab@suse.de>
7002
7003 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7004
70052008-07-05 Chong Yidong <cyd@stupidchicken.com>
7006
7007 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7008 word-wrapping.
7009 (IT_DISPLAYING_WHITESPACE): New macro.
7010 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7011 when word-wrapping. Simplify word-wrapping logic. Use correct
7012 pixel positions when saving copies of the iterator.
7013 (display_line): Use proper wrap point if the last character on a
7014 line was preceded by whitespace.
7015
70162008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7017
7018 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7019
70202008-07-04 Kenichi Handa <handa@m17n.org>
7021
7022 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7023
7024 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7025
70262008-07-02 Jason Rumney <jasonr@gnu.org>
7027
7028 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7029 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7030
7031 * xdisp.c (next_element_from_display_vector): Move assignment out
7032 of if statement.
7033
70342008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7035
7036 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7037
7038 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7039 (syms_of_fileio): Initialize and export them.
7040 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7041
7042 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7043 (Fsystem_move_file_to_trash): New function.
7044 (syms_of_w32fns): Export it to lisp.
7045
70462008-07-01 Jason Rumney <jasonr@gnu.org>
7047
7048 * w32font.c (w32font_text_extents): Don't count overhang as part
7049 of width.
7050
70512008-06-30 Miles Bader <miles@gnu.org>
7052
7053 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7054 Add `avoid_cursor_p' field.
7055
7056 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7057 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7058 (append_glyph, append_composite_glyph, produce_image_glyph)
7059 (append_stretch_glyph): Initialize avoid_cursor_p.
7060 (get_it_property): Rename from `get_line_height_property'.
7061 (x_produce_glyphs): Use get_it_property.
7062 (handle_line_prefix, push_display_prop): New functions.
7063 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7064 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7065 New variables.
7066 (syms_of_xdisp): Initialize them.
7067
70682008-06-30 Kenichi Handa <handa@m17n.org>
7069
7070 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7071 XftDefaultSubstitute (they are called in XftFontMatch).
7072 (xftfont_open): Fix args to ftfont_font_format.
7073
7074 * ftfont.c (fc_charset_table): New member lang.
7075 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7076 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7077 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7078 (ftfont_open): Fix args to ftfont_font_format.
7079 (ftfont_font_format): New arg filename.
7080
70812008-06-30 Chong Yidong <cyd@stupidchicken.com>
7082
7083 * xfaces.c (Finternal_merge_in_global_face): If default face was
7084 modified, realize it again. Update the font face attribute.
7085
70862008-06-29 Jason Rumney <jasonr@gnu.org>
7087
7088 * w32term.c (x_set_frame_alpha): Fix logic.
7089
70902008-06-29 Kenichi Handa <handa@m17n.org>
7091
7092 * fontset.c (Finternal_char_font): Return font-object instead of
7093 font-name.
7094
7095 * composite.c (get_composition_id): Fix the width calculation for TAB.
7096
70972008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7098
7099 * indent.c (Fvertical_motion): Properly handle float column arg.
7100
71012008-06-28 Jason Rumney <jasonr@gnu.org>
7102
7103 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7104 (pfnSetLayeredWindowAttributes): New function pointer.
7105 (w32_initialize): Initialize it when supported.
7106 (x_set_frame_alpha): New function.
7107
7108 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7109 (w32_frame_parm_handlers): Set alpha handler.
7110
7111 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7112
71132008-06-27 Jason Rumney <jasonr@gnu.org>
7114
7115 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7116 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7117 (w32_to_x_charset, x_to_w32_charset)
7118 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7119 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7120 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7121 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7122 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7123 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7124 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7125 (Qw32_charset_unicode): Remove.
7126 (syms_of_w32fns): Update for above changes.
7127
7128 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7129 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7130 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7131 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7132 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7133 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7134 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7135 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7136 (syms_of_w32font): Update for above changes.
7137
71382008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7139
7140 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7141 removed #if.
7142 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7143
71442008-06-26 Juanma Barranquero <lekktu@gmail.com>
7145 Eli Zaretskii <eliz@gnu.org>
7146
7147 * makefile.w32-in (LOCAL_FLAGS):
7148 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7149
7150 * sysdep.c (_spawnlp, _getpid):
7151 Declare with explicit _cdecl instead of _CRTAPI1.
7152
7153 * editfns.c (Fget_internal_run_time):
7154 Check for WINDOWSNT with #ifdef, not #if.
7155
71562008-06-26 Jason Rumney <jasonr@gnu.org>
7157
7158 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7159
7160 * w32term.c (x_draw_glyph_string_foreground)
7161 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7162 Use FONT_HANDLE macro.
7163 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7164
7165 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7166 (uniscribe_encode_char): Use FONT_HANDLE macro.
7167
7168 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7169 (w32font_text_extents): Use precast w32_font.
7170 (w32font_close): Free cached metrics.
7171 (w32font_open_internal): Allocate space for name on stack.
7172
71732008-06-26 Chong Yidong <cyd@stupidchicken.com>
7174
7175 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7176
71772008-06-26 Jason Rumney <jasonr@gnu.org>
7178
7179 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7180 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7181
71822008-06-26 Juanma Barranquero <lekktu@gmail.com>
7183
7184 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7185
71862008-06-26 Jason Rumney <jasonr@gnu.org>
7187
7188 * w32bdf.c, w32bdf.h: Remove obsolete files.
7189
7190 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7191
7192 * w32gui.h: Don't include w32bdf.h.
7193 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7194 Remove obsolete font support.
7195
7196 * w32font.h (struct w32font_info): Remove compat_w32_font.
7197 Add hfont member.
7198 (FONT_COMPAT): Remove obsolete macro.
7199
7200 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
7201 (w32font_encode_char, w32font_text_extents): Use new hfont member.
7202 (w32font_open_internal): Remove compat code. Set new hfont member.
7203 (Fx_select_font): Use new hfont member.
7204
7205 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7206 (uniscribe_encode_char): Use new hfont member.
7207
7208 * w32term.c (x_draw_glyph_string_foreground)
7209 (x_draw_composite_glyph_string_foreground): Use new hfont member.
7210 (x_draw_glyph_string): Use metrics in w32font_info.
7211
72122008-06-26 Kenichi Handa <handa@m17n.org>
7213
7214 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
7215
72162008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
7217
7218 * unexnext.c:
7219 * m/ews4800.h:
7220 * m/hp9000s300.h:
7221 * m/ibm370aix.h:
7222 * m/mips-siemens.h:
7223 * m/ncr386.h:
7224 * m/next.h:
7225 * m/pmax.h:
7226 * m/powerpcle.h:
7227 * m/tandem-s2.h:
7228 * s/386bsd.h:
7229 * s/bsd386.h:
7230 * s/bsd4-1.h:
7231 * s/bsd4-2.h:
7232 * s/bsdos2-1.h:
7233 * s/bsdos2.h:
7234 * s/bsdos3.h:
7235 * s/bsdos4.h:
7236 * s/nextstep.h:
7237 * s/ultrix4-3.h:
7238 * s/usg5-0.h:
7239 * s/usg5-2-2.h:
7240 * s/usg5-2.h:
7241 * s/usg5-4-3.h:
7242 * s/ux4800.h:
7243 * s/uxpds.h:
7244 * s/uxpv.h: Remove support for obsolete systems.
7245 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 7246 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
7247 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
7248 Remove, insert contents in s/aix4-2.h.
7249 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
7250 * s/bsd4-3.h: Rename to ...
7251 * s/bsd-common.h: ... this.
7252 * data.c:
7253 * doc.c:
7254 * ecrt0.c:
7255 * emacs.c:
7256 * fileio.c:
7257 * floatfns.c:
7258 * keyboard.c:
7259 * mem-limits.h:
7260 * print.c:
7261 * process.c:
7262 * sysdep.c:
7263 * syssignal.h:
7264 * systty.h:
7265 * syswait.h:
7266 * term.c:
7267 * unexec.c:
7268 * unexelf.c:
7269 * unexhp9k800.c:
7270 * m/hp800.h:
7271 * m/ibmrs6000.h:
7272 * m/mips.h:
7273 * m/vax.h:
7274 * s/darwin.h:
7275 * s/freebsd.h:
7276 * s/gnu.h:
7277 * s/ms-w32.h:
7278 * s/msdos.h:
7279 * s/netbsd.h:
7280 * s/template.h: Remove references to obsolete variables.
7281
7282 * Makefile.in: Add dependencies for all unexec files.
7283 (admindir): Remove unused variable.
7284 (UNEXEC_SRC): Remove references.
7285
72862008-06-25 Chong Yidong <cyd@stupidchicken.com>
7287
7288 * xfns.c (x_default_font_parameter): If Xft is available, first
7289 try Monospace-12 for the default font.
7290
72912008-06-25 Jason Rumney <jasonr@gnu.org>
7292
7293 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7294
72952008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7296
7297 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7298
7299 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7300
73012008-06-25 Juanma Barranquero <lekktu@gmail.com>
7302
7303 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7304 <scroll-conservatively>: Fix typo in docstring.
7305
7306 * xselect.c (Fx_send_client_event): Doc fix.
7307
73082008-06-25 Kenichi Handa <handa@m17n.org>
7309
7310 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7311
7312 * font.c (font_parse_fcname): Remove unused variables.
7313 (font_sort_entites): Delete the arg SPEC. Caller changed.
7314 Fix for the case of ! best_only.
7315 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7316
7317 * lisp.h (Fstring_to_unibyte): EXFUN it.
7318
7319 * character.h (str_to_unibyte): Extern it.
7320
7321 * character.c (str_to_unibyte): New function.
7322
7323 * fns.c (Fstring_to_unibyte): New function.
7324 (syms_of_fns): Defsubr it.
7325
73262008-06-24 Kenichi Handa <handa@m17n.org>
7327
7328 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7329 DPI too.
7330 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7331
73322008-06-24 Andreas Schwab <schwab@suse.de>
7333
7334 * Makefile.in (${lispsource}loaddefs.el): Rename from
7335 ../lisp/loaddefs.el.
7336 (bootstrap-clean): Do what distclean does but don't remove
7337 Makefile.
7338 (distclean): Depend on bootstrap-clean and remove Makefile.
7339
73402008-06-24 Chong Yidong <cyd@stupidchicken.com>
7341
7342 * buffer.h (struct buffer): New member word_wrap.
7343
7344 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7345 word-wrap.
7346 (init_buffer_once): Initialize them.
7347
7348 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7349 line_wrap enum possessing three possible values.
7350
7351 * termopts.h: Replace truncate_partial_width_windows with
7352 Vtruncate_partial_width_windows.
7353
7354 * dispnew.c (direct_output_for_insert): Avoid direct output when
7355 inserting a space with word wrap on.
7356
7357 * indent.c (compute_motion): Obey integer values of
7358 truncate-partial-width-windows.
7359
7360 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7361 replacing truncate_partial_width_windows.
7362 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7363 truncate only if the window width is below that integer.
7364 (start_display, resize_mini_window, produce_stretch_glyph)
7365 (display_string, move_it_in_display_line_to): Use line_wrap.
7366 (back_to_previous_visible_line_start, reseat_1): Reset
7367 string_from_display_prop_p.
7368 (display_line): Extend default face to end of line when wrapping.
7369
73702008-06-24 Kim F. Storm <storm@cua.dk>
7371
7372 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7373 to wrap continued lines at word boundaries.
7374
73752008-06-24 Jason Rumney <jasonr@gnu.org>
7376
7377 * font.c (Ffont_face_attributes): Multiply pixel size before point
7378 conversion to avoid multiplying rounding error.
7379
73802008-06-23 Jason Rumney <jasonr@gnu.org>
7381
7382 * w32term.c (x_draw_glyph_string_background)
7383 (x_draw_glyph_string): Remove old bdf font code.
7384
7385 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7386
73872008-06-22 Kenichi Handa <handa@m17n.org>
7388
7389 * font.c (font_find_for_lface): Try the adstyle specified in
7390 the property of LFACE_FONT of LFACE (if any).
7391
73922008-06-21 Seiji Zenitani <zenitani@mac.com>
7393 Ryo Yoshitake <ryo@shiftmode.net>
7394
7395 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7396
73972008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7398
7399 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7400 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7401 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7402 (witness-emacs): Remove.
7403 (lisp, shortlisp): Move loaddefs.el earlier.
7404 (mostlyclean): Forget about witness-emacs.
7405
74062008-06-22 Glenn Morris <rgm@gnu.org>
7407
7408 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7409 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7410
74112008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7412
7413 * Makefile.in (PRECOMP): Remove.
7414 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7415 (witness-emacs): Run `compile-first'.
7416 (.el.elc): Use the new compile-onefile target.
7417
74182008-06-21 Kenichi Handa <handa@m17n.org>
7419
7420 * xftfont.c (xftfont_open): Handle QCembolden only when
7421 FC_EMBOLDEN is defined.
7422
74232008-06-21 Andreas Schwab <schwab@suse.de>
7424
7425 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7426 (.el.elc): Likewise.
7427
74282008-06-21 Miles Bader <miles@gnu.org>
7429
7430 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7431 build dir, not the lisp source dir.
7432
74332008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7434
7435 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7436 (bootstrapclean): Remove.
7437 (.el.elc): New rule.
7438 (PRECOMP): New var.
7439 (../lisp/subdirs.el): Remove.
7440 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7441 (witness-emacs): New target.
7442 (mostlyclean): Remove witness-emacs as well.
7443 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7444 Add witness-emacs dependency.
7445
74462008-06-20 Chong Yidong <cyd@stupidchicken.com>
7447
7448 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7449 defined by the font.
7450
74512008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7452
7453 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7454 (bootstrap-clean): New target that keeps TAGS around.
7455 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7456 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7457
74582008-06-20 Jason Rumney <jasonr@gnu.org>
7459
7460 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7461 Remove obsolete font code.
7462
7463 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7464 to determine language support.
7465
74662008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7467
7468 * sysdep.c (cfsetspeed): New fun extracted from the code.
7469 (cfmakeraw): Move before first use.
7470
74712008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7472
7473 * sysdep.c (cfmakeraw): Provide fallback implementation.
7474 (serial_configure): Provide fallback implementation of cfsetspeed.
7475
74762008-06-20 Kenichi Handa <handa@m17n.org>
7477
7478 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7479 the pattern.
7480
7481 * fontset.c (fontset_from_font): Copy font_spec before changing
7482 the elements.
7483
7484 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7485
74862008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7487
7488 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7489 for explicit `font' parameters.
7490
7491 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7492
74932008-06-19 Kenichi Handa <handa@m17n.org>
7494
7495 * frame.c: Include <ctype.h>.
7496 (x_set_font_backend): Allow spacing characters in the X resource
7497 for FontBackend.
7498
74992008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7500
7501 * w32fns.c, xfns.c (Qfont_param): New var.
7502 (syms_of_w32fns): Initialize it.
7503 (x_default_font_parameter): Record explicit `font' into
7504 `font-parameter'.
7505
75062008-06-18 Kenichi Handa <handa@m17n.org>
7507
7508 * font.c (font_parse_xlfd): Fix previous change.
7509 (font_parse_fcname): Don't use :fc-unknown-spec.
7510 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7511 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7512 (font_add_log): Prepend the driver name to the resulting fonts.
7513
7514 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7515 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7516 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7517
7518 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7519 (QCembolden): New variables.
7520 (syms_of_xftfont): DEFSYM them.
7521 (xftfont_open): Call XftFontMatch. Don't trust the result of
7522 XftTextExtents8 if the pixel_size is less than 5.
7523
75242008-06-18 Andreas Schwab <schwab@suse.de>
7525
7526 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7527 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7528
75292008-06-18 Jason Rumney <jasonr@gnu.org>
7530
7531 * w32font.c (w32font_list, w32font_match): Add logging.
7532
7533 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7534
75352008-06-17 Chong Yidong <cyd@stupidchicken.com>
7536
7537 * font.c (font_parse_fcname): Store divider characters for
7538 unknown-spec list. For known key symbols, intern using correct
7539 symbol name.
7540
75412008-06-17 Kenichi Handa <handa@m17n.org>
7542
7543 * xfaces.c (realize_default_face): If the frame is not on window
7544 system, set the fontset of face to nil.
7545
75462008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7547
7548 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7549
75502008-06-16 Juanma Barranquero <lekktu@gmail.com>
7551
7552 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7553 (build_font_name_from_vector): Delete externs.
7554
7555 * xfaces.c (struct font_name): Don't declare.
7556
75572008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7558
7559 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7560
75612008-06-16 Chong Yidong <cyd@stupidchicken.com>
7562
7563 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7564
75652008-06-16 Juanma Barranquero <lekktu@gmail.com>
7566
7567 * font.c (Ffont_spec): Fix usage in docstring.
7568 (Ffont_face_attributes): Doc fix.
7569
75702008-06-16 Andreas Schwab <schwab@suse.de>
7571
7572 * font.c (Ffont_face_attributes): Fix definition.
7573
75742008-06-16 Jason Rumney <jasonr@gnu.org>
7575
7576 * font.h (font_style_symbolic_from_value): Remove.
7577
7578 * font.c (font_style_symbolic_from_value): Remove.
7579 (font_style_symbolic): Revert to pre 2008-06-13 version.
7580
7581 * w32font.c (w32_to_fc_weight): New function.
7582 (w32font_full_name, logfont_to_fcname): Use it.
7583
75842008-06-16 Kenichi Handa <handa@m17n.org>
7585
7586 * font.c (font_check_object): Delete it.
7587 (font_clear_cache): Check if a font-object is alive.
7588 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7589 font-object to nil.
7590 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7591 (font_at): Don't call font_check_object.
7592 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7593
75942008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7595
7596 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7597
75982008-06-16 Chong Yidong <cyd@stupidchicken.com>
7599
7600 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7601
76022008-06-15 Chong Yidong <cyd@stupidchicken.com>
7603
7604 * font.c (font_parse_fcname): Only one decimal point.
7605 (font_unparse_fcname): Handle data in family and foundry indices
7606 as symbols, not strings.
7607 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7608
7609 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7610
7611 * font.h (font_unparse_gtkname): Add prototype.
7612
76132008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7614
7615 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7616
76172008-06-15 Andreas Schwab <schwab@suse.de>
7618
7619 * font.c (font_update_drivers): Fix crash when no drivers match.
7620
76212008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7622
7623 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7624 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7625
76262008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7627
7628 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7629
76302008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7631
7632 * process.c (Fserial_process_configure, Fprocess_send_eof):
7633 Use EQ to compare Lisp_Objects.
7634
76352008-06-13 Jason Rumney <jasonr@gnu.org>
7636
7637 * w32fns.c (Fw32_select_font): Remove old font API function.
7638
7639 * w32font.c (logfont_to_fcname): New function.
7640 (Fx_select_font): New font dialog function compatible with
7641 GTK/fontconfig version.
7642
7643 * font.c (font_style_symbolic_from_value): New function.
7644 (font_style_symbolic): Use it.
7645
7646 * font.h (font_style_symbolic_from_value): Declare new function.
7647
76482008-06-13 Juanma Barranquero <lekktu@gmail.com>
7649
7650 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7651 <font-width-table>: Fix typos in docstrings.
7652
76532008-06-13 Daniel Engeler <engeler@gmail.com>
7654
7655 These changes add serial port access.
7656 * process.c: Add HAVE_SERIAL.
7657 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7658 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7659 (list_processes_1, select_wrapper, Fstop_process)
7660 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7661 (status_notify): Modify to handle serial processes.
7662 [HAVE_SERIAL] (Fserial_process_configure)
7663 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7664 New functions.
7665 * process.h (struct Lisp_Process): Add `type'.
7666 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7667 New functions.
7668 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7669 serial ports.
b71ac3dd 7670 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7671 * w32.h: Add FILE_SERIAL.
7672 (struct _child_process): Add ovl_read, ovl_write.
7673
76742008-06-13 Kenichi Handa <handa@m17n.org>
7675
7676 * dispextern.h (enum lface_attribute_index): New member
7677 LFACE_FOUNDRY_INDEX.
7678
7679 * font.c (font_score): Delete arg alternate_families. Check only
7680 weight, slant, width, and size. Ignore the difference of alias
7681 style symbols.
7682 (font_sort_entites): Adjust for the above change. Reflect the
7683 order of font-driver to scores.
7684 (font_list_entities): Don't check alternate_familes here.
7685 (font_clear_prop): Handle foundry.
7686 (font_update_lface): Don't parse "foundry-family" form here.
7687 Handle FONT_FOUNDRY_INDEX.
7688 (font_find_for_lface): Likewise. Handle alternate families here.
7689 If registry is nil, try iso8859-1 and ascii-0.
7690 (font_open_for_lface): Pay attention to size in ENTITY.
7691 (font_open_by_name): Simplify by calling font_load_for_lface.
7692 (free_font_driver_list): Delete it.
7693 (font_update_drivers): Preserve the order of backends.
7694 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7695 of font_score and font_sort_entites.
7696 (font_update_sort_order): Likewise.
7697
7698 * xfaces.c (LFACE_FOUNDRY): New macro.
7699 (check_lface_attrs): Check foundry.
7700 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7701 (merge_face_vectors): Check foundry.
7702 (merge_face_ref): Likewise.
7703 (Finternal_set_lisp_face_attribute): Likewise.
7704 (x_update_menu_appearance): Likewise.
7705 (Finternal_get_lisp_face_attribute): Likewise.
7706 (lface_hash): Likewise.
7707 (lface_same_font_attributes_p): Likewise.
7708 (x_supports_face_attributes_p): Likewise.
7709 (tty_supports_face_attributes_p): Likewise.
7710 (Finternal_set_alternative_font_family_alist): Intern strings.
7711 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7712 (realize_default_face): Set LFACE_FOUNDRY (lface).
7713
7714 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7715 font-driver at first.
7716
7717 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7718
77192008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7720
7721 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7722
77232008-06-12 Jim Meyering <meyering@redhat.com>
7724
7725 Make unexec_free handle NULL the same way free does.
7726 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7727
77282008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7729
7730 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7731 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7732 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7733 (WEAK_ALIAS): Simplify.
7734 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7735 when searching a unibyte buffer.
7736
77372008-06-12 Chong Yidong <cyd@stupidchicken.com>
7738
7739 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7740
77412008-06-12 Juanma Barranquero <lekktu@gmail.com>
7742
7743 * w32font.c: Include ctype.h.
7744
77452008-06-11 Jason Rumney <jasonr@gnu.org>
7746
7747 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7748 misreported as space.
7749 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7750 as aliases for registry iso10646-1.
7751
77522008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7753
7754 * buffer.c (clone_per_buffer_values): Skip `name'.
7755
77562008-06-11 Chong Yidong <cyd@stupidchicken.com>
7757
7758 * font.c (font_parse_fcname): Fix last change; accept decimal
7759 points in font size.
7760
77612008-06-10 Jason Rumney <jasonr@gnu.org>
7762
7763 * w32uniscribe.c (add_opentype_font_name_to_list):
7764 Skip non unicode fonts.
7765
77662008-06-10 Chong Yidong <cyd@stupidchicken.com>
7767
7768 * xfns.c (Fx_font_dialog): New function.
7769
7770 * gtkutil.c (xg_dialog_response_cb): Rename from
7771 xg_file_response_callback.
7772 (pop_down_dialog): Rename from pop_down_file_dialog.
7773 (xg_get_file_name): Callers changed.
7774 (xg_get_font_name): New function.
7775
7776 * gtkutil.h (xg_get_font_name): Insert prototype.
7777
77782008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7779
7780 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7781 x_underline_minimum_display_offset.
7782 (syms_of_xdisp): Declare it here rather than in xterm.c.
7783 * dispextern.h (underline_minimum_offset): Declare it.
7784 * w32term.c (x_draw_glyph_string): Use it.
7785 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7786 (syms_of_xterm): Don't declare it any more.
7787 (x_draw_glyph_string): Adjust to the new name.
7788
77892008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7790
7791 * xterm.c (x_underline_minimum_display_offset): New var.
7792 (x_draw_glyph_string): Use it.
7793 (syms_of_xterm): Declare it.
7794
77952008-06-10 Chong Yidong <cyd@stupidchicken.com>
7796
7797 * font.c (font_parse_fcname): Accept GTK-style font names too.
7798
77992008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7800
7801 * dired.c (file_name_completion): Don't return t if the match is exact
7802 but with different capitalization.
7803 * minibuf.c (Ftry_completion): Simplify.
7804
7805 * window.c (Vwindow_point_insertion_type): New var.
7806 (set_window_buffer): Use it.
7807 (syms_of_window): Init and export it to Lisp.
7808
78092008-06-10 Kenichi Handa <handa@m17n.org>
7810
7811 * font.h (font_intern_prop): Prototype adjusted.
7812
7813 * font.c (font_intern_prop): New arg force_symbol.
7814 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7815 Adjust for the change of font_intern_prop.
7816
7817 * ftfont.c (ftfont_pattern_entity):
7818 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7819 (w32_registry):
7820 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7821 the change of font_intern_prop.
7822
78232008-06-09 Juanma Barranquero <lekktu@gmail.com>
7824
7825 * w32menu.c (digest_single_submenu): Declare extern.
7826
78272008-06-09 Jason Rumney <jasonr@gnu.org>
7828
7829 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7830
7831 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7832 (parse_single_submenu): Remove.
7833 (digest_single_submenu): Remove.
7834 (syms_of_w32menu): Don't initialise variables that have moved
7835 to menu.c.
7836 (set_frame_menubar): Sync with version in xmenu.c.
7837 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7838
7839 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7840 Make static again.
7841
78422008-06-09 Jason Rumney <jasonr@gnu.org>
7843
7844 Changes to w32 files related to the move of common menu code
7845 to menu.c on 2008-06-08 by Chong Yidong.
7846
7847 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7848 defs to w32gui.h.
7849 (single_keymap_panes, push_menu_item, push_menu_pane):
7850 Make globally visible.
7851
7852 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7853 (local_free, malloc_widget_value, free_widget_value)
7854 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7855 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7856 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7857 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7858 (menu_items, menu_items_allocated, menu_items_used)
7859 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7860 (init_menu_items, finish_menu_items, discard_menu_items)
7861 (grow_menu_items, push_submenu_start, push_submenu_end)
7862 (push_left_right_boundary, push_menu_pane, push_menu_item)
7863 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7864 (free_menubar_widget_tree_value, parse_single_submenu)
7865 (update_submenu_strings): Remove functions.
7866 (xmalloc_widget_value): Remove and declare extern.
7867
7868 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7869 (OBJ1): Build it.
7870
7871 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7872 (local_heap, local_alloc, local_free, malloc_widget_value)
7873 (free_widget_value): Define here.
7874
78752008-06-09 Kenichi Handa <handa@m17n.org>
7876
7877 * font.h (Qascii_0): Extern it.
7878
7879 * font.c (Qascii_0): New variable.
7880 (syms_of_font): DEFSYM it.
7881 (font_open_by_name): If the registry "iso8859-1" fails, try also
7882 "ascii-0".
7883
7884 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7885
78862008-06-08 Kenichi Handa <handa@m17n.org>
7887
7888 * .gdbinit (xfont): New command.
7889
78902008-06-08 Andreas Schwab <schwab@suse.de>
7891
7892 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7893 * Makefile.in (menu.o): Update dependencies.
7894
7895 * Makefile.in (obj): Always add menu.o.
7896 * emacs.c (main): Always call syms_of_menu.
7897 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7898
78992008-06-08 Chong Yidong <cyd@stupidchicken.com>
7900
7901 * Makefile.in: Compile menu.c.
7902
7903 * lisp.h: Declare syms_of_menu.
7904
7905 * emacs.c (main): Call syms_of_menu.
7906
7907 * keyboard.h: Relocate platform-independent menu definitions from
7908 xmenu.c.
7909
7910 * menu.c: New file. Relocate platform-independent menu
7911 definitions from xmenu.c. Suggested by Adrian Robert.
7912
7913 * xmenu.c: Remove platform-independent menu definitions.
7914 (menu_items menu_items_inuse, menu_items_allocated)
7915 (menu_items_used, menu_items_n_panes)
7916 (menu_items_submenu_depth): Move to keyboard.h.
7917 (init_menu_items, finish_menu_items, unuse_menu_items)
7918 (discard_menu_items, restore_menu_items, save_menu_items)
7919 (grow_menu_items, push_submenu_start, push_submenu_end)
7920 (push_left_right_boundary, push_menu_pane, push_menu_item)
7921 (keymap_panes, single_keymap_panes, single_menu_item)
7922 (list_of_panes, list_of_items, find_and_call_menu_selection)
7923 (xmalloc_widget_value, free_menubar_widget_value_tree)
7924 (parse_single_submenu, digest_single_submenu)
7925 (update_submenu_strings): Move to menu.c.
7926
79272008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7928
7929 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7930
79312008-06-06 Miles Bader <miles@gnu.org>
7932
7933 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7934 face, not frame default.
7935
79362008-06-05 Martin Rudalics <rudalics@gmx.at>
7937
7938 * window.c (pop_up_windows, pop_up_frames)
7939 (display_buffer_reuse_frames, Vpop_up_frame_function)
7940 (Vdisplay_buffer_function, Veven_window_heights)
7941 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7942 (Vspecial_display_function, Vsame_window_buffer_names)
7943 (Vsame_window_regexps, split_height_threshold)
7944 (Vsplit_window_preferred_function): Move those vars to window.el.
7945 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7946 (Fdisplay_buffer): Move those functions to window.el.
7947 (syms_of_window): Remove corresponding declarations.
7948 (display_buffer): New function.
7949 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7950 * dispnew.c (Flast_nonminibuf_frame): New function.
7951 * buffer.c (Fpop_to_buffer): Move to window.el.
7952
79532008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7954
7955 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7956
79572008-06-05 Kenichi Handa <handa@m17n.org>
7958
7959 * coding.c (detect_coding): Fix previous change.
7960 (detect_coding_system): Likewise.
7961
79622008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7963
7964 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7965
7966 * keymap.c (Vminibuffer_local_filename_must_match_map):
7967 Rename from Vminibuffer_local_must_match_filename_map.
7968 (syms_of_keymap):
7969 * minibuf.c (Fcompleting_read): Adjust accordingly.
7970 * commands.h: Rename declaration as well.
7971
79722008-06-05 Kenichi Handa <handa@m17n.org>
7973
7974 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7975 family name.
7976 (Ffont_put): Likewise.
7977
7978 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7979 current font-spec.
7980
7981 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7982 is unspecified.
7983
7984 * xfaces.c (realize_x_face): If the font-related face attributes
7985 are the same as those of default face, realize a new fontset from
7986 default->fontset.
7987 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7988
79892008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7990
7991 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7992 (move_it_in_display_line): New wrapper.
7993
7994 * window.c (window_scroll_pixel_based_preserve_x)
7995 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7996 (window_scroll_pixel_based, window_scroll_line_based):
7997 Use them to preserve column positions.
7998 (syms_of_window): Initialize them.
7999
8000 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8001 (HPOS . VPOS) pair.
8002
8003 * dispextern.h (move_it_in_display_line): Declare.
8004
80052008-06-05 Juanma Barranquero <lekktu@gmail.com>
8006
8007 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8008 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8009 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8010
80112008-06-04 Juanma Barranquero <lekktu@gmail.com>
8012
8013 * window.c (Fset_window_parameter): Doc fix.
8014 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8015
80162008-06-04 Joakim Verona <joakim@verona.se>
8017
8018 * window.h (struct window): Add new member window_parameters.
8019
8020 * window.c (Fwindow_parameters, Fwindow_parameter)
8021 (Fset_window_parameter): New defuns.
8022 (syms_of_window): Defsubr the new defuns.
8023 (make_window): Initialize window_parameters to nil.
8024
80252008-06-04 John Paul Wallington <jpw@pobox.com>
8026
8027 * eval.c (Fdefmacro): Doc fix.
8028
80292008-06-04 Kenichi Handa <handa@m17n.org>
8030
8031 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8032 Be sure to call setup_coding_system when we find a proper coding system.
8033 (detect_coding_system): Fix handling of coding->head_ascii.
8034
80352008-06-03 Andreas Schwab <schwab@suse.de>
8036
8037 * font.c (font_prop_validate_spacing): Fix last change.
8038
80392008-06-03 Kenichi Handa <handa@m17n.org>
8040
8041 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8042 (font_parse_fcname): Fix handling of unknown key.
8043
8044 * xfont.c (xfont_list): Try an alias.
8045
8046 * charset.c (char_charset): Return NULL if the arg charset_list is
8047 specified and C doesn't belong to any of them.
8048
80492008-06-02 Chip Coldwell <coldwell@redhat.com>
8050
8051 * font.c (font_pixel_size): Don't take cdr of an integer.
8052
80532008-06-02 Jim Meyering <meyering@redhat.com>
8054
8055 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8056 * alloc.c (xfree): Return right away for a NULL arg.
8057 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8058 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8059 * mac.c (create_apple_event_from_event_ref): Likewise.
8060 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8061 Likewise.
8062 * doprnt.c (doprnt1): Likewise.
8063 * frame.c (frame): Likewise.
8064 * keyboard.c (wipe_kboard): Likewise.
8065 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8066 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8067 * term.c (tty_default_color_capabilities, maybe_fatal)
8068 (delete_tty): Likewise.
8069 * w16select.c (string): Likewise.
8070 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8071 * w32bdf.c (w32_free_bdf_font): Likewise.
8072 * w32fns.c (w32_unload_font): Likewise.
8073 * w32font.c (w32font_close): Likewise.
8074 * window.c (size_window): Likewise.
8075 * xselect.c (receive_incremental_selection): Likewise.
8076 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8077 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8078 * w32.c (stat): Likewise.
8079
8080 Remove useless if-before-free tests.
8081 * editfns.c (Fset_time_zone_rule): Likewise.
8082 * lread.c (nosuffix): Likewise.
8083 * ralloc.c (get_bloc): Likewise.
8084 * regex.c (reg_free): Likewise.
8085 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8086 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8087 * xsmfns.c (smc_save_yourself_CB): Likewise.
8088
80892008-06-02 Kenichi Handa <handa@m17n.org>
8090
8091 * font.c (font_find_for_lface): Handle float font size.
8092 (font_open_for_lface): Likewise.
8093
8094 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8095 comparing the properties.
8096
80972008-06-01 Jason Rumney <jasonr@gnu.org>
8098
8099 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8100 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8101 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8102 Don't add empty script list.
8103 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8104
81052008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8106
8107 * Makefile.in (dot, dotdot): Remove, update users.
8108 ".." has been used elsewhere in the file for a long time.
8109 (LIBXT_STATIC): Remove conditional based on unused variable.
8110
81112008-06-01 Miles Bader <miles@gnu.org>
8112
8113 * xfaces.c (Vface_remapping_alist): New variable.
8114 (syms_of_xfaces): Initialize it.
8115 (enum named_merge_point_kind): New type.
8116 (struct named_merge_point): Add `named_merge_point_kind' field.
8117 (push_named_merge_point): Make cycle detection respect different
8118 named-merge-point kinds.
8119 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8120 Remove face-name alias resolution.
8121 (lface_from_face_name): New definition using
8122 `lface_from_face_name_no_resolve'.
8123 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8124 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8125 (get_lface_attributes): New definition that layers face-remapping on
8126 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8127 (lookup_basic_face): New function.
8128 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8129 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8130 `get_lface_attributes'.
8131 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8132 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8133 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8134
8135 * xdisp.c (init_iterator): Pass base_face_id through
8136 `lookup_basic_face' when we actually use it as a face-id.
8137 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8138 DEFAULT_FACE_ID.
8139
8140 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8141 lookup the initial face-id.
8142
8143 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8144
81452008-06-01 Juanma Barranquero <lekktu@gmail.com>
8146
8147 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8148 (Fremove_text_properties): Fix typos in docstrings.
8149
81502008-05-31 Kenichi Handa <handa@m17n.org>
8151
8152 * font.c (font_list_entities): Fix the car part of data to be
8153 stored in the cache.
8154
8155 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8156
81572008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8158
8159 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8160 Add a `test' argument so another predicate than `equal' can be used.
8161 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8162 (map_char_table): Remove unused vars `c' and `i'.
8163 * lisp.h (Foptimize_char_table): Adjust declaration.
8164 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8165
81662008-05-30 Kenichi Handa <handa@m17n.org>
8167
8168 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8169 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8170 defined.
8171
81722008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8173
8174 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8175 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8176 frame-local settings for the same variable.
8177
81782008-05-30 Kenichi Handa <handa@m17n.org>
8179
8180 * fontset.c (Ffont_info): Move to font.c.
8181 (syms_of_fontset): Delete defsubr of Sfont_info.
8182
8183 * font.c (font_style_to_value, font_score): Delete casting of the
8184 args to xstcasecmp.
8185 (register_font_driver): Increment num_font_drivers only when
8186 registering the driver globally.
8187 (Ffont_info): Move from fontset.c. Handle a font object too.
8188 (syms_of_font): Defsubr Sfont_info.
8189
81902008-05-29 Kenichi Handa <handa@m17n.org>
8191
8192 * coding.h (enum define_coding_utf8_arg_index): New enum.
8193 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8194 coding_attr_utf_bom.
8195 (enum utf_bom_type): Rename from utf_16_bom_type.
8196 (struct utf_16_spec): Adjust for the above change.
8197 (struct coding_system): Add utf_8_bom in `spec' union.
8198
8199 * coding.c (CODING_UTF_8_BOM): New macro.
8200 (enum coding_category): Delete coding_category_utf_8, add
8201 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
8202 coding_category_utf_8_sig.
8203 (CATEGORY_MASK_UTF_8): Delete it.
8204 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
8205 (CATEGORY_MASK_UTF_8_SIG): New macros.
8206 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
8207 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
8208 CATEGORY_MASK_UTF_8_SIG.
8209 (CATEGORY_MASK_UTF_8): New macro.
8210 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
8211 (detect_coding_utf_8): Check BOM.
8212 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
8213 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
8214 (encode_coding_utf_16): Likewise.
8215 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
8216 (detect_coding, detect_coding_system): Handle utf-8-auto.
8217 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
8218 (syms_of_coding): Fix setting up of Vcoding_category_table.
8219
82202008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
8221
8222 * process.c (Faccept_process_output): If `millisec' is non-nil,
8223 `seconds' default to 0.
8224 (wait_reading_process_output): Also return non-nil if we read output
8225 from a non-running process.
8226
82272008-05-29 Jason Rumney <jasonr@gnu.org>
8228
8229 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
8230 `raster' specified.
8231 (add_font_entity_to_list): Allow non-opentype truetype fonts back
8232 in the uniscribe backend, but disallow any font that has no
8233 unicode subrange support.
8234
82352008-05-29 Juanma Barranquero <lekktu@gmail.com>
8236
8237 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
8238 Fix typos in docstrings.
8239
82402008-05-29 Kenichi Handa <handa@m17n.org>
8241
8242 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
8243 (Fx_family_fonts): Set frame correctly.
8244
82452008-05-28 Jason Rumney <jasonr@gnu.org>
8246
8247 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
8248
82492008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8250
8251 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
8252 calling build_annotations.
8253
82542008-05-28 Juanma Barranquero <lekktu@gmail.com>
8255
8256 * coding.c (Fdecode_coding_region, Fencode_coding_region)
8257 (Fencode_coding_string):
8258 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
8259 <latin-extra-code-table>: Fix typos in docstrings.
8260 (syms_of_coding) <coding-system-alist>: Doc fix.
8261 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
8262
82632008-05-28 Kenichi Handa <handa@m17n.org>
8264
8265 * fontset.c (Ffont_info): Don't call font_close_object.
8266
8267 * font.c (font_parse_family_registry): Use Ffont_put to validate
8268 foundry and family.
8269 (font_delete_unmatched): Don't check spacing.
8270 (font_list_entities): Add spacing to the spec to list fonts.
8271
8272 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
8273 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
8274
8275 * coding.c (encode_coding_raw_text): Fix previous change.
8276 (encode_coding_object): When the dst_object is a buffer and is
8277 different from src_object, move gap to PT.
8278
82792008-05-27 Chong Yidong <cyd@stupidchicken.com>
8280
8281 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
8282
82832008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8284
8285 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8286 all branches. Compute it differently.
8287
8288 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8289
82902008-05-27 Juanma Barranquero <lekktu@gmail.com>
8291
8292 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8293 into "else if () ... else ...".
8294
82952008-05-27 Jason Rumney <jasonr@gnu.org>
8296
8297 * w32font.c (w32font_open_internal): Determine if glyph indices
8298 are likely to work here.
8299
83002008-05-27 Chong Yidong <cyd@stupidchicken.com>
8301
8302 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8303 draw overlap glyphs with appropriate highlighting.
8304
83052008-05-27 Kenichi Handa <handa@m17n.org>
8306
8307 * xfont.c (xfont_open): Fix calculation of font->average_width.
8308
83092008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8310
8311 * casefiddle.c (casify_object): Try to guess better whether the
8312 argument is a byte or a char.
8313
83142008-05-26 Andreas Schwab <schwab@suse.de>
8315
8316 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8317 Always send multiples of format size.
8318
8319 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8320
83212008-05-26 Jason Rumney <jasonr@gnu.org>
8322
8323 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8324 (compute_metrics): Don't set failure if we just cleared the cache.
8325 (w32_weight_table): Remove unused variable.
8326 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8327 backwards compatibility.
8328
83292008-05-25 Kenichi Handa <handa@m17n.org>
8330
8331 * w32term.c (x_draw_glyph_string):
8332 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8333
8334 * xfaces.c: Delete unused function prototypes.
8335 (xstrlwr, font_frame): Delete them.
8336 (clear_face_cache): Delete unused variable.
8337
8338 * xftfont.c (xftfont_open): Delete unused variable.
8339 If underline_thickness is not 1, adjust underline_position.
8340
8341 * ftxfont.c (ftxfont_open): Delete unused variable.
8342
8343 * fontset.c (face_for_char): Optimize for the case of no charset
8344 property.
8345
8346 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8347 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8348 (otf_open, font_otf_capability, generate_otf_features)
8349 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8350 Comment out by surrounding "#if 0" and "#endif" for the moment.
8351 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8352 (syms_of_font): Codes for accessing above commented out.
8353
83542008-05-24 Eli Zaretskii <eliz@gnu.org>
8355
8356 * w32proc.c: Include dispextern.h.
8357
8358 * w32.c: Include dispextern.h.
8359
83602008-05-23 Juanma Barranquero <lekktu@gmail.com>
8361
8362 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8363 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8364 Fix typos in docstrings.
8365
83662008-05-23 Jason Rumney <jasonr@gnu.org>
8367
8368 * xsmfns.c: Remove includes that are already included by config.h.
8369
83702008-05-23 Kenichi Handa <handa@m17n.org>
8371
8372 * charset.c (Qemacs, charset_emacs): New variables.
8373 (char_charset): Fix for non-Unicode characters.
8374 (syms_of_charset): Define charset_emacs.
8375
8376 * w32term.c (x_draw_glyph_string): Be sure to update
8377 s->underline_thickness and s->underline_position. Be sure to draw
8378 underline within the current line area.
8379
8380 * xterm.c (x_draw_glyph_string): Be sure to update
8381 s->underline_thickness and s->underline_position. Be sure to draw
8382 underline within the current line area.
8383
8384 * fontset.c: Delete unused variables and add casting for char *
8385 throughout the file.
8386 (fontset_font): Try the fallback fonts of the current fontset
8387 before consulting the default fontset.
8388
8389 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8390
8391 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8392
83932008-05-22 Jason Rumney <jasonr@gnu.org>
8394
8395 * font.c: Don't include strings.h.
8396
8397 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8398
8399 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8400 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8401 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8402 to call xstrcasecmp.
8403
8404 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8405
8406 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8407
8408 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8409
8410 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8411
84122008-05-22 Kenichi Handa <handa@m17n.org>
8413
8414 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8415
8416 * font.c (font_prop_validate_style): Adjust for the format
8417 change of font_style_table.
8418
8419 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8420 two args.
8421
8422 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8423 two args.
8424
84252008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8426
8427 * minibuf.c (keys_of_minibuf): Delete.
8428 * lisp.h (keys_of_minibuf): Delete.
8429 * emacs.c (main): Don't call keys_of_minibuf.
8430
84312008-05-22 Kenichi Handa <handa@m17n.org>
8432
8433 * ftfont.c (ftfont_resolve_generic_family): Rename from
8434 ftfont_list_generic_family. Return a single family for each
8435 generic family.
8436 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8437 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8438 Call font_add_log.
8439 (ftfont_match): Call font_add_log.
8440
8441 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8442 (FONT_DEBUG): Define it.
8443 (font_add_log): Extern it.
8444 (font_assert): Rename from xassert.
8445
8446 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8447 (xfont_list_family): Call font_add_log.
8448 (xfont_match): Likewise.
8449 (memq_no_quit): Delete.
8450
8451 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8452 call of Ffont_xlfd_name.
8453
8454 * xfaces.c (struct table_entry, slant_table, weight_table)
8455 (swidth_table): Move to font.c.
8456
8457 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8458 xassert are changed to font_assert. Delete many unused variables.
8459 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8460 New variables.
8461 (struct table_entry): Move from xfaces.c and modified.
8462 (weight_table, slant_table, width_table): Move from xfaces.c and
8463 contents adjusted for the change of struct table_entry.
8464 (font_style_to_value, font_style_symbolic): Adjust for the
8465 format change of font_style_table.
8466 (font_parse_family_registry): Don't overwrite existing foundry and
8467 family of font_spec.
8468 (font_score): Fix calculation of diff for sizes.
8469 (font_sort_entites): Call font_add_log.
8470 (font_delete_unmatched): Return a newly created list.
8471 (font_list_entities): Fix previous change. Call font_add_log.
8472 (font_matching_entity, font_open_entity, font_close_entity):
8473 Call font_add_log.
8474 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8475 (Finternal_set_font_style_table): Delete.
8476 (BUILD_STYLE_TABLE): New macro.
8477 (build_style_table): New function.
8478 (Vfont_log, font_log_env_checked): New variables.
8479 (font_add_log): New function.
8480 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8481 Declare Lisp variables "font-weight-table", "font-slant-table",
8482 "font-width-table", and "font-log". Initialize font_style_table.
8483
84842008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8485
8486 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8487
84882008-05-21 Seiji Zenitani <zenitani@mac.com>
8489 Ryo Yoshitake <ryo@shiftmode.net>
8490
8491 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8492 (Vframe_alpha_lower_limit): New variable.
8493 (x_set_alpha): New function.
8494
8495 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8496
8497 * xfns.c (x-create-frame, Qalpha):
8498 Initialize the frame parameter `alpha'.
8499 * xterm.c (OPAQUE, OPACITY): New.
8500 (x_set_frame_alpha): New function.
8501 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8502
8503 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8504 * w32fns.c (w32_frame_parm_handlers): Likewise.
8505
85062008-05-20 Jason Rumney <jasonr@gnu.org>
8507
8508 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8509 truetype fonts to opentype list.
8510
85112008-05-20 Juanma Barranquero <lekktu@gmail.com>
8512
8513 * fontset.c (Ffontset_info): Doc fix.
8514 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8515 <ignore-relative-composition>: Fix typos in docstrings.
8516
8517 * font.c (syms-of-font) <font-encoding-alist>:
8518 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8519 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8520 (Ffont_otf_alternates): Doc fixes.
8521
85222008-05-20 Kenichi Handa <handa@m17n.org>
8523
8524 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8525 font.h through out the file.
8526 (FONT_DRIVERS): Rename from FONTOBJ.
8527 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8528 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8529
8530 * emacs.c (main): Call syms_of_font unconditionally.
8531
8532 * font.h (find_font_encoding): Extern it.
8533
8534 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8535 fontset.c.
8536 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8537 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8538 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8539 only when HAVE_WINDOW_SYSTEM is defined.
8540 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8541 when HAVE_WINDOW_SYSTEM is defined.
8542
8543 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8544 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8545
8546 * xfaces.c: Include font.h unconditionally.
8547 (merge_face_ref, merge_face_vectors)
8548 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8549
85502008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8551
8552 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8553 indirect_variable.
8554 * eval.c (lisp_indirect_variable): New fun.
8555 (Fuser_variable_p): Use it.
8556
85572008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8558
8559 * lisp.h (indirect_variable):
8560 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8561 Use Lisp_Symbol pointers rather than Lisp_Object.
8562 Adjust callers.
8563 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8564 To this end, change calling-convention.
8565
8566 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8567 if some non-hidden buffers are selected by string&pred.
8568
85692008-05-19 Chong Yidong <cyd@stupidchicken.com>
8570
8571 * process.c (wait_reading_process_output): Always check status
8572 when in batch mode.
8573
85742008-05-19 Kenichi Handa <handa@m17n.org>
8575
8576 * font.c (font_list_entities): Fix handling of cache.
8577 (font_matching_entity): Likewise.
8578
8579 * ftfont.c (cs_iso8859_1): Delete.
8580 (ft_face_cache): New variable.
8581 (struct ftfont_info): New member fc_charset_idx.
8582 (ftfont_build_basic_charsets): Delete.
8583 (fc_charset_table): New variable.
8584 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8585 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8586 Callers changed.
8587 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8588 (ftfont_spec_pattern): New argument fc_charset_idx.
8589 Check registry more rigidly. Change callers.
8590 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8591 change of :font-entity property of the font.
8592
8593 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8594 property of the font.
8595
85962008-05-18 Juanma Barranquero <lekktu@gmail.com>
8597
8598 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8599 (Funencodable_char_position, Fcheck_coding_systems_region)
8600 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8601 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8602 (Ffind_operation_coding_system, Fset_coding_system_priority)
8603 (Fcoding_system_eol_type): Doc fixes.
8604
86052008-05-17 Glenn Morris <rgm@gnu.org>
8606
8607 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8608
86092008-05-16 Eli Zaretskii <eliz@gnu.org>
8610
8611 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8612 and st_gid.
8613
8614 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8615 HAVE_WINDOW_SYSTEM is not defined.
8616
8617 * xfaces.c (merge_face_ref, merge_face_vectors)
8618 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8619 HAVE_WINDOW_SYSTEM is defined.
8620 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8621
86222008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8623
8624 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8625
86262008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8627
8628 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8629
86302008-05-15 Kenichi Handa <handa@m17n.org>
8631
8632 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8633 preference.
8634
86352008-05-15 Glenn Morris <rgm@gnu.org>
8636
8637 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8638
86392008-05-15 Chong Yidong <cyd@stupidchicken.com>
8640
8641 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8642 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8643
8644 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8645
86462008-05-15 Kenichi Handa <handa@m17n.org>
8647
8648 * ftfont.c (ftfont_list): Downcase family name to check generic
8649 families.
8650
8651 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8652 font-spec for QCfont value.
8653
8654 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8655 buffer. Check the return value of it.
8656
86572008-05-14 Jason Rumney <jasonr@gnu.org>
8658
8659 * w32term.c (w32_get_glyph_overhangs): Remove.
8660 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8661
86622008-05-14 Kenichi Handa <handa@m17n.org>
8663
8664 * font.c (font_prop_validate): Make nil a valid value.
8665 (font_clear_cache): Check if the cached vector of entities is nil
8666 or not.
8667
86682008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8669
8670 * emacs.c (main_thread): Conditionalize on
8671 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8672 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8673
8674 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8675 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8676 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8677
86782008-05-14 Kenichi Handa <handa@m17n.org>
8679
8680 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8681 has no corresponding coding system.
8682
86832008-05-14 Jason Rumney <jasonr@gnu.org>
8684
8685 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8686
8687 * w32font.h (w32font_open_internal): Update declaration.
8688
8689 * w32font.c (w32font_open_internal): Change last argument from
8690 w32font_info struct to font object. Fill in font object from
8691 font_entity. Get Outline metrics if possible. Use them to
8692 calculate underline position and thickness. Use xlfd name as name
8693 property. Don't set codepage.
8694 (w32font_open): Pass font_object to w32font_open_internal. Don't
8695 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8696 (w32font_draw): Use s->font.
8697 (clear_cached_metrics): Don't clear non-existent blocks.
8698
8699 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8700 font was not found.
8701 (x_draw_glyph_string): Use underline position and thickness from font.
8702
8703 * w32uniscribe.c (uniscribe_open): Pass font_object to
8704 w32font_open_internal.
8705
87062008-05-14 Kenichi Handa <handa@m17n.org>
8707
8708 These changes are to delete all legacy font-handling codes, and
8709 make Emacs use only font-backends.
8710
8711 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8712 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8713
8714 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8715
8716 * charset.h (Vcharset_non_preferred_head)
8717 (Vcurrent_iso639_language): Extern them.
8718
8719 * charset.c (Vcharset_non_preferred_head): New variable.
8720 (Vcurrent_iso639_language): New variable.
8721 (syms_of_charset): Declare it as a Lisp variable.
8722 (char_charset): Don't check non preferred charsets. As a last
8723 resort, return charset_unicode.
8724 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8725
8726 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8727 conditionals. Don't check enable_font_backend. Delete all codes
8728 used only when USE_FONT_BACKEND is not defined.
8729
8730 * dispextern.h (struct glyph_string): Change type of `font' to
8731 `struct font *'.
8732 (struct glyph_string): New member underline_position and
8733 underline_thickness.
8734 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8735 (struct face): Change type of `font' to `struct font *'. Remove
8736 members `font_name', `font_info_id'.
8737 (per_char_metric, encode_char): Delete externs.
8738 (calc_pixel_width_or_height): Adjust the prototype.
8739
8740 * emacs.c (enable_font_backend): Delete extern.
8741 (main): Don't set enable_font_backend. Don't check the command
8742 line argument "-disable-font-backend".
8743
8744 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8745 (enum font_property_index): New members FONT_DPI_INDEX,
8746 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8747 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8748 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8749 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8750 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8751 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8752 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8753 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8754 (struct font_spec, struct font_entity): New structs.
8755 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8756 (struct font): Many members from old "struct font_info" moved to
8757 here. Members font and entity deleted.
8758 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8759 the new font-related objects.
8760 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8761 (CHECK_FONT_GET_OBJECT): Likewise.
8762 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8763 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8764 (struct font_driver): New members case_sensitive anc check. Type
8765 of the member list and open changed.
8766 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8767 (font_symbolic_width, font_find_object, font_get_spec)
8768 (font_set_lface_from_name): Delete extern.
8769 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8770
8771 * font.c: Include <strings.h>.
8772 (enable_font_backend): Delete it.
8773 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8774 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8775 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8776 (null_string): Delete it.
8777 (null_vector): Make it static.
8778 (font_family_alist): Delete it.
8779 (Qnormal): Extern it.
8780 (QCextra, QClanguage): Delete it.
8781 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8782 (font_make_spec, font_make_entity, font_make_object)
8783 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8784 the string. Callers changed.
8785 (font_pixel_size): Adjusted for the format change of font-related
8786 objects.
8787 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8788 (font_style_to_value, font_style_symbolic): New function.
8789 (build_font_family_alist): Delete it.
8790 (font_registry_charsets): Use Fassoc_string instead of
8791 assq_no_quit.
8792 (font_prop_validate_symbol): Don't return null_string.
8793 (font_prop_validate_style): Adjusted for the change of
8794 style-related values in a font vector.
8795 (font_property_table): Delete entries for QClanguage and
8796 QCantialias, add entries for QCavgwidth.
8797 (get_font_prop_index): Delete the 2nd argument FROM.
8798 (font_prop_validate): Arguments changed.
8799 (font_put_extra): Adjusted for the change of font-related objects.
8800 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8801 (font_parse_fcname, font_unparse_fcname)
8802 (font_prepare_composition): Likewise.
8803 (font_parse_family_registry): Renamed from font_merge_old_spec.
8804 (otf_open): Delete the 1st arg entity.
8805 (font_otf_capability): Adjusted for the above change.
8806 (font_score): New arg alternate_families. Adjusted for the change
8807 of font-related objects.
8808 (font_sort_entites): New arg best_only.
8809 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8810 Delete them.
8811 (font_match_p): Check alternate families.
8812 (font_find_object): Delete it.
8813 (font_check_object): New function.
8814 (font_clear_cache): Adjusted for the change of font-related objects.
8815 (font_delete_unmatched): New arg.
8816 (font_list_entities): Call font_driver->list with a spec that
8817 doesn't specify style-related properties.
8818 (font_matching_entity): Arguments changed. Caller changed.
8819 (font_open_entity): Adjusted for the change of font-related objects.
8820 (font_close_object, font_has_char, font_encode_char)
8821 (font_get_name, font_get_spec): Likewise.
8822 (font_spec_from_name, font_clear_prop, font_update_lface):
8823 New functions.
8824 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8825 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8826 (font_at): Adjusted for the change of font-related objects.
8827 (font_range): New function.
8828 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8829 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8830 (Fcopy_font_spec, Fmerge_font_spec): New function.
8831 (Ffont_family_list): Renamed from list-families.
8832 (Finternal_set_font_style_table): Arguments changed.
8833 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8834 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8835 change of font-related objects.
8836 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8837
8838 * fontset.h (struct font_info): Delete it. Most members go to
8839 struct font.
8840 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8841 (enum FONT_SPEC_INDEX): Delete it.
8842 (font_info, list_fonts_func, load_font_func, query_font_func)
8843 (set_frame_fontset_func, find_ccl_program_func)
8844 (get_font_repertory_func, new_fontset_from_font_name): Delete
8845 externs.
8846 (fontset_from_font_name): Extern it.
8847 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8848 (FONT_INFO_FROM_FACE): Deleted.
8849 (face_for_font): Adjust prototype.
8850
8851 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8852 conditionals. Don't check enable_font_backend. Delete all codes
8853 used only when USE_FONT_BACKEND is not defined.
8854 (get_font_info_func, list_font_func, load_font_func)
8855 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8856 (get_font_repertory_func): Delete them.
8857 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8858 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8859 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8860 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8861 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8862 (fontset_compare_rfontdef): New function.
8863 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8864 rfont-defs by qsort. Adjusted for the change of font-group vector.
8865 (load_font_get_repertory): Deleted.
8866 (fontset_find_font): Use new macros to ref/set elements of
8867 font-def and rfont-def.
8868 (fontset_font): Fix the timing of remembering that no font for C.
8869 (free_face_fontset): Do nothing if the face has no fontset.
8870 (face_suitable_for_char_p): Use new macros to ref/set elements of
8871 rfont-def.
8872 (face_for_char): Likewise. Call face_for_char with font_object.
8873 (fs_load_font): Delete. Delete #pragma surrounding it.
8874 (fs_query_fontset): Use strcasecmp instead of strcmp.
8875 (generate_ascii_font_name): Adjusted for the format change of
8876 font-spec.
8877 (Fset_fontset_font): Likewise. Use new macros to set elements of
8878 font-def.
8879 (Fnew_fontset): Use font_unparse_xlfd to generate
8880 FONTSET_ASCII (fontset).
8881 (new_fontset_from_font_name): Deleted.
8882 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8883 a fontset is already created for the font. FIx updating of
8884 Vfontset_alias_alist.
8885 (fontset_ascii_font): Deleted.
8886 (Ffont_info): Adjusted for the format change of font-spec.
8887 (Finternal_char_font): Likewise.
8888 (Ffontset_info): Likewise.
8889 (syms_of_fontset): Don't check load_font_func.
8890
8891 * fns.c (internal_equal): Handle PREV_FONT.
8892
8893 * frame.h: Delete USE_FONT_BACKEND conditional.
8894
8895 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8896 conditionals. Don't check enable_font_backend. Delete all codes
8897 used only when USE_FONT_BACKEND is not defined.
8898 (x_set_font): Call x_new_font, not x_new_fontset2.
8899 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8900 already set for the frame.
8901
8902 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8903 a font-entity by font_make_entity. Use font_intern_prop instead
8904 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8905 font property. If a font is scalable, set avgwidth property to 0.
8906 Set font-entity property by font_put_extra.
8907 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8908 (ffont_driver): Adjusted for the change of struct font_driver.
8909 (ftfont_spec_pattern): New function.
8910 (ftfont_list): Return a list, not vector.
8911 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8912 (ftfont_list_family): Don't downcase names.
8913 (ftfont_free_entity): Deleted.
8914 (ftfont_open): Return a font-object. Adjusted for the change of
8915 struct font. Get underline_thickness and underline_position from
8916 font property. Don't update dpyinfo->smallest_font_height and
8917 dpyinfo->smallest_char_width.
8918 (ftfont_close): Don't free `struct font'.
8919 (ftfont_has_char): Adjusted for the format change of font-entity.
8920 (ftfont_encode_char, ftfont_text_extents): Likewise.
8921
8922 * ftxfont.c (ftxfont_list): Return a list, not vector.
8923 (ftxfont_open): Return a font-object. Adjusted for the change of
8924 struct font. Get underline_thickness and underline_position from
8925 font property. Don't update dpyinfo->smallest_font_height and
8926 dpyinfo->smallest_char_width.
8927 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8928 (ftxfont_draw): Adjusted for the change of struct font.
8929
8930 * image.c (image_ascent): Don't include "charset.h". Include
8931 "character.h" and "font.h".
8932
8933 * lisp.h (enum pvec_type): New member PREV_FONT.
8934 (Fassoc_string): EXFUN it.
8935
8936 * print.c: Include font.h.
8937 (print_object): Handle font-related objects.
8938
8939 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8940 conditionals. Don't check enable_font_backend. Delete all codes
8941 used only when USE_FONT_BACKEND is not defined.
8942 (handle_auto_composed_prop): Do nothing if it->f is not on a
8943 window system. Check how many following characters can be
8944 displayed by the same font.
8945 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8946 'struct font *'.
8947 (get_char_face_and_encoding): Assign the whole encoding task to
8948 the `encode-char' method of a font driver.
8949 (fill_composite_glyph_string): Adjusted for the change of `struct
8950 face' and `struct glyph_string'.
8951 (fill_glyph_string): Likewise.
8952 (get_per_char_metric): Arguments changed.
8953 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8954 and `struct glyph_string'.
8955 (produce_stretch_glyph, calc_line_height_property)
8956 (x_produce_glyphs): Likewise.
8957
8958 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8959 conditionals. Don't check enable_font_backend. Delete all codes
8960 used only when USE_FONT_BACKEND is not defined. Use
8961 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8962 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8963 (Qp): Extern them.
8964 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8965 Deleted.
8966 (struct font_name): Deleted.
8967 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8968 (compare_fonts_by_sort_order): New function.
8969 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8970 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8971 Deleted.
8972 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8973 compare_fonts_by_sort_order.
8974 (Fx_font_family_list): Call Ffont_family_list.
8975 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8976 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8977 (face_symbolic_slant, face_symbolic_swidth)
8978 (split_font_name_into_vector, build_font_name_from_vector)
8979 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8980 (font_rescale_ratio, split_font_name, build_font_name)
8981 (free_font_names, sort_fonts, x_face_list_fonts)
8982 (face_font_available_p, sorted_font_list, cmp_font_names)
8983 (font_list_1, concat_font_list, font_list, remove_duplicates):
8984 Deleted.
8985 (Fx_list_fonts): Use Ffont_list.
8986 (LFACE_AVGWIDTH): Deleted.
8987 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8988 by FONTP.
8989 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8990 (set_lface_from_font_name): Delete it.
8991 (set_lface_from_font): Renamed from
8992 set_lface_from_font_and_fontset. Caller changed. Don't set
8993 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8994 for face.
8995 (merge_face_vectors): Copy font-spec if necessary.
8996 Clear properties of the font-spec if necessary.
8997 (merge_face_ref): Clear properties of the font-spec if necessary.
8998 (Finternal_set_lisp_face_attribute): Likewise.
8999 (set_font_frame_param): Use font_load_for_lface to load a
9000 font-object, and call Fmodify_frame_parameters with it.
9001 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9002 font name by Ffont_xlfd_name.
9003 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9004 QCslant, and QCwidth.
9005 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9006 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9007 Compare fonts by EQ.
9008 (lookup_non_ascii_face): Deleted.
9009 (face_for_font): The 2nd argument changed.
9010 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9011 Check atomic font properties by case insensitive.
9012 (realize_non_ascii_face): Set face->overstrike correctly.
9013 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9014 (dump_realized_face): Get font name from
9015 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9016
9017 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9018 conditionals. Don't check enable_font_backend. Delete all codes
9019 used only when USE_FONT_BACKEND is not defined.
9020 (xic_create_xfontset): Original code deleted and renamed from
9021 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9022 (x_make_gc): Don't set GCFont in GCs.
9023 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9024 opened by "fixed".
9025 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9026 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9027 get_font_repertory_func.
9028
9029 * xfont.c: Include <stdlib.h> and "ccl.h".
9030 (struct xfont_info): New structure.
9031 (xfont_query_font): Deleted.
9032 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9033 moved from xterm.c.
9034 (xfont_driver): Adjusted for the change of struct font_driver.
9035 (compare_font_names): New function.
9036 (xfont_list_pattern): Sort font names case insensitively. Make
9037 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9038 (xfont_list): Return a list, not vector.
9039 (xfont_match): If the font doesn't have QCname property, generate
9040 a name from the other font properties.
9041 (xfont_open): Return a font-object. Adjusted for the change of
9042 struct font. Get underline_thickness and underline_position from
9043 font property. Don't update dpyinfo->smallest_font_height and
9044 dpyinfo->smallest_char_width.
9045 (xfont_close): Don't free struct font.
9046 (xfont_prepare_face): Adjusted for the change of struct font.
9047 (xfont_done_face): Deleted.
9048 (xfont_has_char): Adjusted for the change of struct font.
9049 (xfont_encode_char, xfont_draw): Likewise.
9050 (xfont_check): New function.
9051
9052 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9053 callback function.
9054 (xftfont_match): Adjusted for the format change of font-entity.
9055 (xftfont_open): Adjusted for the format change of font-entity and
9056 font-object. Adjusted for the change of struct font. Return a
9057 font-object. Don't update dpyinfo->smallest_font_height and
9058 dpyinfo->smallest_char_width.
9059 (xftfont_close): Block input while calling XftFontClose.
9060 (xftfont_prepare_face): Don't block input while calling
9061 xftfont_get_colors. Adjusted for the change of struct font.
9062 (xftfont_shape): Return value of error case fixed.
9063
9064 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9065
9066 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9067 conditionals.
9068 (FONT_WIDTH): Return (f)->max_width.
9069 (struct x_display_info): Delete member `font'.
9070 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9071 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9072 (struct x_output): Change type of `font' to `struct font *'.
9073
9074 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9075 conditionals. Don't check enable_font_backend. Delete all codes
9076 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9077 (x_per_char_metric, x_encode_char): Deleted.
9078 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9079 (x_compute_glyph_string_overhangs): Adjusted for the change of
9080 `struct face'.
9081 (x_draw_glyph_string_foreground)
9082 (x_draw_composite_glyph_string_foreground): Likewise.
9083 (x_draw_glyph_string): Likewise. Use font->underline_position and
9084 font->underline_thickness.
9085 (x_new_font): Renamed from x_new_fontset2.
9086 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9087 (x_check_font): Call `check' method of a font driver.
9088 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9089 (x_query_font, x_get_font_repertory): Deleted.
9090 (x_find_ccl_program): Renamed and moved to xfont.c.
9091 (x_redisplay_interface): Adjusted for the change of `struct
9092 redisplay_interface'.
9093
9094 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9095 conditionals. Don't check enable_font_backend. Delete all codes
9096 used only when USE_FONT_BACKEND is not defined. Surround non-used
9097 code by "#ifdef OLD_FONT" and "endif".
9098 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9099
9100 * w32font.h (struct w32font_info): New member.
9101 (FONT_COMPAT): New macro.
9102 (w32font_open_internal): Prototype adjusted.
9103
9104 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9105 OLD_FONT" and "endif".
9106
9107 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9108 conditionals. Don't check enable_font_backend. Delete all codes
9109 used only when USE_FONT_BACKEND is not defined.
9110 (w32font_open): Return a font-object. Make a font-object by
9111 font_make_object. Adjusted for the change of struct w32font_info.
9112 (w32font_close): Don't free struct font. Adjusted for the change
9113 of struct w32font_info.
9114 (w32font_encode_char, w32font_text_extents, w32font_draw):
9115 Adjusted for the change of struct w32font_info.
9116 (w32font_draw): Likewise.
9117 (w32font_list_internal): Return a list, not vector.
9118 (w32font_open_internal): Change the 4th arg to font-object.
9119 Adjusted for the change of struct w32font_info and font-object format.
9120 (add_font_name_to_list): Don't downcase names.
9121 (w32_enumfont_pattern_entity): Make a font-entity by
9122 font_make_entity. Adjusted for the format change of font-entity.
9123 Use FONT_SET_STYLE to set a style-related font property. If a
9124 font is scalable, set avgwidth property to 0. Set font-entity
9125 property by font_put_extra.
9126 (font_matches_spec): Adjusted for the format change of font-entity.
9127 (w32_weight_table, w32_decode_weight): New variables.
9128 (w32_encode_weight): New function.
9129 (fill_in_logfont): Adjusted for the format change of font-spec.
9130 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9131 weight value.
9132 (w32font_driver): Adjusted for the change of struct font_driver.
9133
9134 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9135 conditionals. Don't check enable_font_backend. Surround non-used
9136 code by "#ifdef OLD_FONT" and "endif".
9137 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9138 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9139
9140 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9141 conditionals. Don't check enable_font_backend. Delete all codes
9142 used only when USE_FONT_BACKEND is not defined. Surround non-used
9143 code by "#ifdef OLD_FONT" and "endif".
9144
9145 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9146 (uniscribe_open): Return value changed to font-object.
9147 Adjusted for the format change of font-object.
9148 (uniscribe_otf_capability): Adjusted for the change of struct font.
9149 (add_opentype_font_name_to_list): Don't downcase names.
9150 (uniscribe_font_driver): Adjusted for the change of struct
9151 font_driver.
9152
91532008-05-13 Chong Yidong <cyd@stupidchicken.com>
9154
9155 * dispnew.c (update_frame_1): Check if tty output is still valid
9156 before flushing it.
9157
91582008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9159
9160 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9161 to Gtk+ menus.
9162
91632008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9164
9165 * dired.c (file_name_completion): Tweak the code so as to always do it
9166 in a single pass. Tighten the scope of some variables.
9167
9168 * dired.c (Qdefault_directory): New var.
9169 (file_name_completion): Use it instead of Fexpand_file_name.
9170 (syms_of_dired): Initialize it.
9171
91722008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9173
9174 * fileio.c (double_dollars): Remove dead code.
9175
91762008-05-10 Eli Zaretskii <eliz@gnu.org>
9177
9178 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9179 Mention w32-get-true-file-attributes in doc string.
9180
9181 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9182
91832008-05-09 Glenn Morris <rgm@gnu.org>
9184
9185 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9186 2008-04-23.
9187
91882008-05-09 Eli Zaretskii <eliz@gnu.org>
9189
9190 Support for reporting owner and group of each file on MS-Windows:
9191 * dired.c (stat_uname, stat_gname): New functions, with special
9192 implementation for w32.
9193 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9194
9195 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9196 (dflt_group_name): New static variable.
9197 (dflt_group): Rename from the_group.
9198 (init_user_info): Init dflt_group fields. Get user's group name
9199 from LookupAccountSid.
9200 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
9201 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
9202 New initialization states.
9203 (globals_of_w32): Initialize them to zero. Initialize the default
9204 group name to "None".
9205 (GetFileSecurity_Name): New global var, the name of the function
9206 to call for GetFileSecurity.
9207 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
9208 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
9209 (get_file_security, get_security_descriptor_owner)
9210 (get_security_descriptor_group, is_valid_sid)
9211 (get_file_security_desc, get_rid, get_name_and_id)
9212 (get_file_owner_and_group): New functions.
9213 (stat): Use get_file_security_desc and get_file_owner_and_group to
9214 report the owner and primary group of each file. Don't ignore the
9215 high 32 bits of file's size, now that st_size is 64-bit wide.
9216 Fix test when to get true file attributes.
9217 (init_user_info): Use get_rid instead of equivalent inline code.
9218 (fstat): Don't ignore the high 32 bits of file's size.
9219
92202008-05-09 Chong Yidong <cyd@stupidchicken.com>
9221
9222 * image.c (png_load): Use correct bit-depth for setting background
9223 color.
9224
92252008-05-08 Eli Zaretskii <eliz@gnu.org>
9226
9227 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
9228 epa-hook.elc.
9229
92302008-05-08 Juanma Barranquero <lekktu@gmail.com>
9231
9232 * font.c (Ffont_match_p): Don't use `iff' in docstring.
9233
92342008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
9235
9236 * macfns.c (Fx_create_frame): Make a copy of frame parameters
9237 because the original parameters are in pure storage now.
9238 (mac_window): Remove unused params. Update callers.
9239
92402008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
9241
9242 * lread.c (substitute_object_recurse): Use lower-level primitives.
9243 Don't signal errors when traversing sub-char-tables.
9244 Don't loop over all the possible characters when traversing char-tables.
9245
9246 * print.c (print_preprocess): Add sub-char-tables to the print-table,
9247 just like we do in print.c.
9248
92492008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
9250
9251 * minibuf.c (Ftry_completion): Remove code left over from when we used
9252 scmp instead of Fcompare_strings.
9253
92542008-05-04 Juanma Barranquero <lekktu@gmail.com>
9255
9256 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
9257
92582008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9259
9260 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
9261 Create bitmap context in native byte order.
9262
9263 * macterm.c (XDrawLine)
9264 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
9265 context in native byte order.
9266
92672008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9268
9269 * config.in: Regenerate.
9270
9271 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
9272 New definitions for Image I/O support.
9273 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9274 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
9275 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9276 (mac_data_provider_release_data, image_load_image_io)
9277 [USE_MAC_IMAGE_IO]: New functions.
9278 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
9279 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
9280 (init_image_func_pointer) [MAC_OSX]: Remove function.
9281 (image_load_quartz2d) [MAC_OSX]: Check availability of
9282 CGImageCreateWithPNGDataProvider at compile time.
9283 Use lowercase `false' for boolean constant.
9284 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9285 Use image_load_image_io.
9286 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9287 Don't check MyCGImageCreateWithPNGDataProvider.
9288 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9289 Don't call init_image_func_pointer.
9290
9291 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9292
9293 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9294 Make variable non-static.
9295 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9296 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9297
9298 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9299 (RED_FROM_ULONG): Mask off higher bits.
9300 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9301
9302 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9303 Include AvailabilityMacros.h.
9304 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9305 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9306
93072008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9308
9309 * chartab.c (Fset_char_table_range): If range is t, really set all
9310 chars to that value.
9311
93122008-05-03 Eli Zaretskii <eliz@gnu.org>
9313
9314 * dired.c (Ffile_attributes): Don't allow the device number become
9315 negative.
9316
93172008-05-02 Daiki Ueno <ueno@unixuser.org>
9318
9319 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9320
93212008-05-02 Juri Linkov <juri@jurta.org>
9322
9323 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9324 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9325 DEFAULT argument as a list of default values in docstrings.
9326
93272008-05-01 Chong Yidong <cyd@stupidchicken.com>
9328
9329 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9330
93312008-05-01 Martin Rudalics <rudalics@gmx.at>
9332
9333 * dispnew.c (change_frame_size_1): Preserve small windows when
9334 shrinking frames by calling set_window_height|width with third
9335 arg 2.
9336
9337 * window.h (struct window): Replace field too_small_ok by field
9338 resize_proportionally.
9339
9340 * window.c (make_window): Initialize resize_proportionally.
9341 (enlarge_window): Temporarily set resize_proportionally to make
9342 sure that shrink_windows does scale the window proportionally.
9343 (shrink_windows): When window has resize_proportionally set try
9344 to shrink it proportionally by stealing from other windows.
9345 (struct saved_window, Fset_window_configuration)
9346 (compare_window_configurations): Handle resize_proportionally.
9347 (WINDOW_TOTAL_SIZE): New macro.
9348 (window_min_size, shrink_windows, size_window): Use it.
9349 (check_min_window_sizes): Remove. Invalid values of
9350 window-min-height|width are handled by window_min_size_2 now.
9351 (size_window, Fsplit_window, enlarge_window)
9352 (adjust_window_trailing_edge, grow_mini_window): Don't call
9353 check_min_window_sizes.
9354 (window_min_size_2, window_min_size_1, window_min_size):
9355 New argument safe_p for retrieving "safe" minimum sizes.
9356 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9357 (adjust_window_trailing_edge, grow_mini_window):
9358 Adjust arguments of window_min_size... functions.
9359 (shrink_windows): Argument min_size removed. New argument
9360 safe_p allows shrinking windows to their safe minimum sizes.
9361 Calculate minimum size and decide whether a window shall be
9362 deleted for each window individually.
9363 (size_window): When nodelete_p equals 2, tell shrink_windows to
9364 delete windows only if their new minimum size is no more safe.
9365 (shrink_window_lowest_first): Call window_min_size_1 to make
9366 sure to preserve modeline of bottom-most window when resizing
9367 the minibuffer.
9368 (Fset_window_configuration, Fcurrent_window_configuration)
9369 (compare_window_configurations): Do not handle
9370 window-min-height|width any more.
9371 (syms_of_window): Clarify window-min-height|width doc-strings.
9372
93732008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9374
9375 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9376 some more. Copy some of the code from Ftry_completions.
9377 Remove special case code that dates back to initial revision when the
9378 slash was only added when necessary and that can't trigger nowadays.
9379
93802008-04-27 Kenichi Handa <handa@m17n.org>
9381
9382 * font.c (font_prop_validate): Signal `error' instead of `font'.
9383
93842008-04-29 Jason Rumney <jasonr@gnu.org>
9385
9386 * w32fns.c (Fw32_battery_status): New defun.
9387 (syms_of_w32fns): Defsubr it.
9388
93892008-04-28 Andreas Schwab <schwab@suse.de>
9390
9391 * dired.c (file_name_completion): Fix another mixing of encoded
9392 and decoded names.
9393
93942008-04-28 Juanma Barranquero <lekktu@gmail.com>
9395
9396 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9397
93982008-04-27 Juanma Barranquero <lekktu@gmail.com>
9399
9400 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9401
94022008-04-27 Andreas Schwab <schwab@suse.de>
9403
9404 * dired.c (file_name_completion): Fix inappropriate mixing of
9405 encoded and decoded names.
9406
9407 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9408
9409 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9410
94112008-04-26 Eli Zaretskii <eliz@gnu.org>
9412
9413 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9414 2008-03-31, it's not needed anymore with `struct stat' definition
9415 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9416 for the same reasons.
9417
94182008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9419
9420 * m/sparc.h: Additional redefinitions for GNU/Linux.
9421
94222008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9423
9424 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9425 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9426 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9427 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9428 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9429 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9430 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9431 Likewise.
9432
9433 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9434 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9435 (mac_ax_number_of_characters): Add externs.
9436 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9437 [USE_MAC_TSM]: Likewise.
9438 (mac_handle_text_input_event) [MAC_OSX]:
9439 Handle kEventTextInputOffsetToPos for no active input area case.
9440 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9441 (mac_handle_document_access_event)
9442 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9443 (install_application_handler) [MAC_OSX]: Register handlers for
9444 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9445 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9446 Register mac_handle_document_access_event.
9447
9448 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9449 Make functions non-static.
9450
94512008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9452
9453 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9454 (read_file_name_completion_ignore_case, insert_default_directory)
9455 (Qdefault_directory): Move to minibuffer.el.
9456 (Fread_file_name): Call the new `read-file-name' instead.
9457
94582008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9459
9460 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9461 Make function non-static.
9462 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9463 Remove function.
9464 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9465 Move to mactoolbox.c.
9466 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9467
9468 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9469 (mac_rect_make): New macro.
9470
9471 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9472 instead of float.
9473 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9474 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9475 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9476 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9477 CGRectMake.
9478 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9479 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9480 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9481 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9482 instead of WindowRef in argument type.
9483 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9484 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9485 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9486 instead of DISPLAY. All uses changed.
9487 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9488 (x_calc_absolute_position): Simplify so as not to use
9489 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9490
9491 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9492 instead of WindowRef in argument type.
9493 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9494 [TARGET_API_MAC_CARBON]: Remove externs.
9495 (create_apple_event, mac_event_parameters_to_lisp)
9496 [TARGET_API_MAC_CARBON]: Add externs.
9497
9498 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9499 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9500 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9501 is clicked.
9502 (x_activate_menubar): Remove extern for saved_menu_event_location.
9503 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9504 Move from mac.c.
9505
95062008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9507
9508 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9509 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9510
95112008-04-23 Jason Rumney <jasonr@gnu.org>
9512
9513 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9514 attributes only for local files.
9515
9516 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9517 default to Qlocal.
9518
95192008-04-22 Juri Linkov <juri@jurta.org>
9520
9521 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9522 read-buffer-to-switch instead of using the letter "B".
9523
95242008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9525
9526 * fileio.c (Qdefault_directory): New variable.
9527 (Fread_file_name): Use it to pass `dir' to the completion functions.
9528
95292008-04-20 Chong Yidong <cyd@stupidchicken.com>
9530
9531 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9532
95332008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9534
9535 * keyboard.c (Vpre_help_message): Remove.
9536 (show_help_echo): Remove default C code.
9537
9538 * dired.c (directory_files_internal, file_name_completion):
9539 Only call ENCODE_FILE if the string is indeed decoded.
9540
95412008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9542
9543 * Makefile.in (TOOLKIT_DEFINES): Remove.
9544 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9545
95462008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9547
9548 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9549 (mactoolbox.o): New target.
9550
9551 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9552 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9553
9554 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9555 Use mac_set_frame_window_background instead of XSetWindowBackground.
9556 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9557 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9558 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9559 instead of SetWindowTitleWithCFString.
9560 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9561 Move function to mactoolbox.c.
9562 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9563 Use mac_set_window_modified instead of SetWindowModified.
9564 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9565 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9566 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9567 FrontNonFloatingWindow. Use mac_activate_window instead of
9568 ActivateWindow. Use mac_active_non_floating_window instead of
9569 ActiveNonFloatingWindow.
9570 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9571 Use mac_show_hourglass and mac_hide_hourglass.
9572 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9573 instead of GetGlobalMouse.
9574 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9575 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9576 Use mac_bring_window_to_front instead of BringToFront.
9577 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9578 mactoolbox.c.
9579 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9580 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9581 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9582 mactoolbox.c.
9583
9584 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9585 (XtPointer): Move typedef from macmenu.c.
9586 (enum button_type): Move enum from macmenu.c.
9587 (widget_value): Move typedef from macmenu.c.
9588 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9589 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9590 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9591 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9592 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9593 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9594 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9595 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9596 (Selection): Move typedef from macselect.c.
9597 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9598 macterm.c.
9599 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9600 (mac_is_window_collapsed, mac_bring_window_to_front)
9601 (mac_send_window_behind, mac_hide_window, mac_show_window)
9602 (mac_collapse_window, mac_front_non_floating_window)
9603 (mac_active_non_floating_window, mac_activate_window)
9604 (mac_move_window_structure, mac_move_window, mac_size_window)
9605 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9606
9607 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9608 (enum mac_menu_kind): Move enum to mactoolbox.c.
9609 (min_menu_id): Move variable to mactoolbox.c.
9610 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9611 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9612 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9613 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9614 [TARGET_API_MAC_CARBON]: Likewise.
9615 (XtPointer): Move typedef to macgui.h.
9616 (enum button_type): Move enum to macgui.h.
9617 (widget_value): Move typedef to macgui.h.
9618 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9619 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9620 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9621 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9622 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9623 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9624 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9625 (popup_activated_flag): Make variable non-static.
9626 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9627 (add_menu_item, fill_menu, dispose_menus):
9628 Move functions to mactoolbox.c.
9629 (restore_show_help_function, menu_target_item_handler)
9630 (install_menu_target_item_handler, mac_handle_dialog_event)
9631 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9632 [TARGET_API_MAC_CARBON]: Likewise.
9633 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9634 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9635 (find_and_call_menu_selection, name_is_separator): Make function
9636 non-static.
9637 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9638 to mactoolbox.c.
9639 (set_frame_menubar): Don't call install_menu_quit_handler.
9640 (menu_item_selection): New variable.
9641 (mac_menu_show): Use create_and_show_popup_menu.
9642 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9643 selection but set variable menu_item_selection. All uses changed.
9644 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9645 Call install_menu_quit_handler. Move to mactoolbox.c.
9646
9647 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9648 (Selection): Move typedef to macgui.h.
9649 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9650 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9651 Make variables non-static.
9652 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9653 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9654 Make functions non-static.
9655 (Vmac_service_selection) [MAC_OSX]: Likewise.
9656 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9657 (mac_valid_selection_target_p, mac_clear_selection)
9658 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9659 (mac_put_selection_value, mac_selection_has_target_p)
9660 (mac_get_selection_value, mac_get_selection_target_list)
9661 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9662 Move functions to mactoolbox.c.
9663 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9664 Likewise.
9665 (copy_scrap_flavor_data, mac_handle_service_event)
9666 (install_service_handler) [MAC_OSX]: Likewise.
9667 (syms_of_macselect) <Vmac_dnd_known_types>:
9668 Use mac_dnd_default_known_types.
9669
9670 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9671 Move to mactoolbox.c.
9672 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9673 (Fx_selection_owner_p): Add EXFUN.
9674 (install_window_handler, remove_window_handler, XSetWindowBackground):
9675 Remove externs.
9676 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9677 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9678 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9679 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9680 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9681 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9682 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9683 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9684 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9685 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9686 (mac_valid_selection_target_p, mac_clear_selection)
9687 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9688 (mac_put_selection_value, mac_selection_has_target_p)
9689 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9690 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9691 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9692 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9693 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9694 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9695 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9696 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9697 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9698
9699 * mactoolbox.c: New file.
9700
97012008-04-18 Jason Rumney <jasonr@gnu.org>
9702
9703 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9704
97052008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9706
9707 * character.c (Fmultibyte_char_to_unibyte):
9708 Return latin1 chars unchanged.
9709
9710 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9711 relocated if it points to `name'.
9712
97132008-04-17 Kenichi Handa <handa@m17n.org>
9714
9715 * data.c (Faset): Allow setting a multibyte character in an
9716 ASCII-only unibyte string.
9717
9718 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9719
97202008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9721
9722 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9723 done in config.h.
9724
97252008-04-16 Juanma Barranquero <lekktu@gmail.com>
9726
9727 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9728 (Fchar_direction): Add usage in the docstring.
9729
97302008-04-15 Chong Yidong <cyd@stupidchicken.com>
9731
9732 * keyboard.c (read_key_sequence): Remove always-true checks.
9733
97342008-04-14 Jason Rumney <jasonr@gnu.org>
9735
9736 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9737 compatibility struct, for better underline positioning.
9738
97392008-04-13 David Hansen <david.hansen@gmx.net>
9740
9741 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9742 string.
9743
97442008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9745
9746 * m/hp800.h (XUINT, XSET): Remove.
9747
97482008-04-12 Juanma Barranquero <lekktu@gmail.com>
9749
9750 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9751 previous change.
9752
97532008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9754
9755 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9756 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9757
97582008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9759
9760 * keymap.h (map_keymap_canonical): Declare.
9761 * xmenu.c (single_keymap_panes): Use it.
9762
97632008-04-11 Glenn Morris <rgm@gnu.org>
9764
9765 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9766 set the target's value to that of the alias.
9767
97682008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9769
9770 * term.c (set_tty_color_mode): Left over typo.
9771
97722008-04-10 Michael Albinus <michael.albinus@gmx.de>
9773
9774 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9775 only after check for file name handler functions. Signal, when
9776 native functionality is not supported.
9777 (syms_of_fileio): Declare it unconditionally.
9778
97792008-04-10 Jason Rumney <jasonr@gnu.org>
9780
9781 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9782 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9783
9784 * w32.c (logon_network_drive): Also logon to remote drives that
9785 are mapped to drive letters.
9786
97872008-04-10 Glenn Morris <rgm@gnu.org>
9788
9789 * xdisp.c (truncate-partial-width-windows): Doc fix.
9790
97912008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9792
9793 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9794 Move functions to minibuffer.el.
9795 (syms_of_fileio): Don't declare them.
9796
97972008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9798
9799 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9800 (syms_of_minibuf): Remove its initialization.
9801
9802 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9803
98042008-04-09 Juanma Barranquero <lekktu@gmail.com>
9805
9806 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9807
98082008-04-09 Jason Rumney <jasonr@gnu.org>
9809
9810 * makefile.w32-in (distclean): Delete makefile too.
9811 (maintainer-clean): New target.
9812
9813 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9814
9815 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9816 for new font backend and composite cases.
9817
98182008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9819
9820 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9821 Most of the code moved to run_timers.
9822 (do_pending_atimers): Call run_timers.
9823 (run_timers): New function.
9824
9825 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9826 run atimers.
9827
9828 * process.c (wait_reading_process_output): The same as above.
9829
98302008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9831
9832 * minibuf.c (last_exact_completion): Remove variable.
9833 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9834 (complete_and_exit_1, complete_and_exit_2)
9835 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9836 (Fdisplay_completion_list, display_completion_list_1)
9837 (Fminibuffer_completion_help, Fself_insert_and_exit)
9838 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9839 minibuffer.el.
9840 (syms_of_minibuf): Remove corresponding initializations.
9841
9842 * keyboard.c (Qdeactivate_mark): New var.
9843 (command_loop_1): Use it to call `deactivate-mark'.
9844 (syms_of_keyboard): Initialize it.
9845
9846 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9847 to another frame.
9848 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9849 Don't call set_tty_color_mode.
9850 (store_frame_param): Reset previous_frame rather than call
9851 set_tty_color_mode.
9852 * term.c (set_tty_color_mode): Rewrite.
9853 * dispextern.h (set_tty_color_mode): New type.
9854 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9855
98562008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9857
9858 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9859 for generic chars, which do not exist any more in emacs-unicode.
9860
98612008-04-08 Michael Albinus <michael.albinus@gmx.de>
9862
9863 * coding.c (detect_coding_emacs_mule)
9864 (Ffind_operation_coding_system): Fix typo.
9865
98662008-04-08 Jason Rumney <jasonr@gnu.org>
9867
9868 * w32uniscribe.c (SNAME): Extract only symbol name.
9869
9870 * w32font.h (struct w32_metric_cache): New struct.
9871 (w32font_info): Use it.
9872 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9873 (CACHE_BLOCKSIZE): New constants.
9874
9875 * w32font.c (Qja, Qko, Qzh): New symbols.
9876 (syms_of_w32font): Initialise them.
9877 (font_matches_spec): Use them to filter by language.
9878 (recompute_cached_metrics): Remove function.
9879 (compute_metrics, clear_cached_metrics): New functions.
9880 (w32font_encode_char): Use them to manage metric cache.
9881 (w32font_text_extents): Cache metrics for all glyphs on demand.
9882 Delay converting glyph indices to WORD until needed.
9883 (w32font_open_internal): Initialize metric cache to empty.
9884 (registry_to_w32_charset): Charset should always be a symbol.
9885 (fill_in_logfont, list_all_matching_fonts): Family should
9886 always be a symbol.
9887
98882008-04-06 Jason Rumney <jasonr@gnu.org>
9889
9890 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9891 Give up if glyph indices not supported. Use uniscribe obtained
9892 ABC widths for individual metrics. Map glyph clusters back to
9893 characters using fClusterStart flag. Return number of glyphs
9894 produced, not chars processed.
9895 (uniscribe_shape): Map char at FROM to current glyph.
9896
98972008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9898
9899 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9900 Use SetMenuItemHierarchicalMenu.
9901
99022008-04-05 Jason Rumney <jasonr@gnu.org>
9903
9904 * image.c (pbm_load): Allow color values up to 65535.
9905 Throw an error if max_color_idx is outside the supported range.
9906 Report an error when image size is invalid.
9907 Read two bytes at a time when raw images have max_color_idx above 255.
9908
99092008-04-05 Eli Zaretskii <eliz@gnu.org>
9910
9911 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9912 cFileName a file name that includes `?' characters, use the 8+3
9913 alias in cAlternateFileName instead.
9914
99152008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9916
9917 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9918 append "CCL: Quitted" when the CCL program is quitted.
9919 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9920
9921 * ccl.h (struct ccl_program): New member quit_silently.
9922
99232008-04-05 Chong Yidong <cyd@stupidchicken.com>
9924
9925 * search.c (compile_pattern_1): Treat non-nil and non-string of
9926 search-spaces-regexp as nil.
9927
9928 * minibuf.c (Fassoc_string): Tweak docstring.
9929
99302008-04-05 Eli Zaretskii <eliz@gnu.org>
9931
9932 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9933 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9934 2008-03-14 to force inode be positive.
9935
9936 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9937 _S_* ones, since we now use our own sys/stat.h.
9938 (stat, fstat): Don't mangle the inode number.
9939 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9940
99412008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9942
9943 * frame.h (struct frame): Give one more bit to `visible' since we use
9944 values larger than 1 to indicate obscured frames on ttys.
9945
9946 * keymap.c (Qkeymap_canonicalize): New var.
9947 (Fmap_keymap_internal): New fun.
9948 (describe_map): Use keymap-canonicalize.
9949
9950 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9951 (Fundo_boundary): Set them.
9952 (syms_of_undo): Initialize them.
9953 (record_point): Use them instead of last_point_position*.
9954 (last_undo_buffer): Change type.
9955
99562008-04-04 Jason Rumney <jasonr@gnu.org>
9957
9958 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9959 (recompute_cached_metrics): Don't set ascent and descent per char.
9960
9961 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9962 (uniscribe_check_otf): Add GC protection before consing.
9963 Rearrange loop for counting features.
9964
99652008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9966
9967 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9968 buffer with byte-size of source buffer.
9969
99702008-04-03 Chong Yidong <cyd@stupidchicken.com>
9971
9972 * callint.c (Fcall_interactively): Handle temporary region even
9973 when shift-select-mode is off.
9974
99752008-04-03 Jason Rumney <jasonr@gnu.org>
9976
9977 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9978
99792008-04-03 Kenichi Handa <handa@m17n.org>
9980
9981 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9982 (CATEGORY_MASK_UTF_16): Likewise.
9983 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9984 binary file.
9985 (detect_coding): Add null-byte detection for a binary file.
9986 (detect_coding_system): Likewise.
9987
99882008-04-03 Jason Rumney <jasonr@gnu.org>
9989
9990 * w32uniscribe.c: New file.
9991
9992 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9993
9994 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9995
9996 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9997 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9998 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9999 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10000 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10001 (Qphonetic): New symbols.
10002 (syms_of_w32font): Initialize them.
10003 (font_supported_scripts): Use them.
10004 (w32font_list_family): List all charsets.
10005 (w32font_text_extents, recompute_cached_metrics): Fix metric
10006 calculations.
10007 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10008 Give opentype fonts their own format.
10009 (font_matches_spec): New arguments backend and logfont.
10010 Handle :otf spec for uniscribe backend.
10011 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10012 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10013
10014 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10015 font backend.
10016 (globals_of_w32fns): Initialize uniscribe font backend.
10017
10018 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10019 dependencies.
10020 (w32uniscribe.$(O)): New file to build.
10021 (FONT_OBJ): Include w32uniscribe.$(O).
10022 (LIBS): Add uniscribe libraries.
10023
10024 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10025
100262008-04-02 Chong Yidong <cyd@stupidchicken.com>
10027
10028 * callint.c (Vshift_select_mode): New var.
10029 (Finteractive): Document new ^ spec.
10030 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10031 is present.
10032
10033 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10034 (command_loop_1): Avoid running the direct display versions of
10035 forward-char and backward-char if shift-selection may occur.
10036 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10037 shift-translation takes place.
10038
10039 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10040 avoid clobbering by define-minor-mode.
10041
10042 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10043 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10044
10045 * syntax.c (Fforward_word): Add ^ interactive spec.
10046
10047 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10048 (Fscroll_right): Add ^ interactive spec.
10049
100502008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10051
10052 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10053
10054 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10055
10056 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10057
100582008-03-31 Juri Linkov <juri@jurta.org>
10059
10060 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10061
100622008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10063
10064 * gtkutil.c (xg_set_geometry): Fix indentation.
10065 (xg_resize_outer_widget): Remove.
10066 (x_wm_size_hint_off): Fix indentation.
10067 (xg_frame_set_char_size): Call flush_and_sync after
10068 gtk_window_resize.
10069 (x_wm_set_size_hint): Pass NULL as geometry window to
10070 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10071 Add menu bar and tool bar height to base height.
10072 (xg_update_frame_menubar, free_frame_menubar)
10073 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10074 (update_frame_tool_bar, free_frame_tool_bar):
10075 Change xg_resize_outer_widget to xg_frame_set_char_size.
10076
100772008-03-30 Michael Albinus <michael.albinus@gmx.de>
10078
10079 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10080 (Fdbus_call_method): New parameter TIMEOUT.
10081 (dbus-send-signal): Optimize UNGCPRO call.
10082
100832008-03-29 Juri Linkov <juri@jurta.org>
10084
10085 * window.c (Fdisplay_buffer): Move call to
10086 Vsplit_window_preferred_function out of conditions that check
10087 if window is eligible for vertical splitting.
10088 When Vsplit_window_preferred_function is non-nil, call it and use
10089 its non-nil return value as window. Otherwise, continue doing
10090 vertical splitting using Fsplit_window with arg horflag=nil.
10091 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10092 default value from `split-window' to nil.
10093
100942008-03-29 Juri Linkov <juri@jurta.org>
10095
10096 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10097 for interactive code letters 'b' and 'B'.
10098
100992008-03-29 Eli Zaretskii <eliz@gnu.org>
10100
10101 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10102 multibyte string.
10103
101042008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10105
10106 * keyboard.c (pending_funcalls): New var.
10107 (timer_check): Run it.
10108 (syms_of_keyboard): Initialize it.
10109 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10110 (Vdelete_terminal_functions): New vars.
10111 (syms_of_terminal): Initialize them.
10112 (Fdelete_terminal): Run delete-terminal-functions.
10113 * xdisp.c (safe_eval): Rewrite.
10114 (safe_call2): New fun.
10115 * frame.c (Qdelete_frame_functions): New var.
10116 (syms_of_frame): Initialize it.
10117 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10118 * lisp.h (safe_call2, pending_funcalls): Declare.
10119
101202008-03-28 Andreas Schwab <schwab@suse.de>
10121
10122 * indent.c (Fmove_to_column): Move declaration before statements.
10123
101242008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10125
10126 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10127 (struct frame): Use bit fields for boolean vars.
10128
10129 * process.c (server_accept_connection): Simplify naming.
10130 (emacs_get_tty_pgrp): Use SDATA.
10131
10132 * coding.c (decode_coding_object): Fix last change.
10133
101342008-03-27 Jason Rumney <jasonr@gnu.org>
10135
10136 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10137
101382008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10139
10140 * charset.c (Fdefine_charset_internal): Change the way of
10141 registering charsets in Vcharset_order_list.
10142 (syms_of_charset): Make the charset `eight-bit' supplementary.
10143
101442008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10145
10146 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10147 operations, to avoid having the difference between pointers
10148 overflow.
10149
101502008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10151
10152 * indent.c (check_display_width): New fun.
10153 (scan_for_column): Use it.
10154
10155 * data.c (syms_of_data): Mark most-positive-fixnum and
10156 most-negative-fixnum as constants.
10157
10158 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10159
10160 * indent.c (scan_for_column): Extract from current_column_1.
10161 Merge with the same code from Fmove_to_column.
10162 (current_column_1, Fmove_to_column): Use it.
10163
101642008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10165
10166 * keymap.c (map_keymap_internal): New fun.
10167 (map_keymap): Use it.
10168 (Fmap_keymap_internal): New fun.
10169 (Fmap_keymap): Remove left-out test from before make_save_value.
10170
10171 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10172
10173 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10174 Use XCAR/XCDR.
10175
10176 * process.h (struct Lisp_Process): Remove filter_multibyte.
10177 * process.c (QCfilter_multibyte): Remove.
10178 (setup_process_coding_systems): Don't use filter_multibyte.
10179 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10180 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10181 (Fset_process_filter_multibyte): Change the coding-system to
10182 approximate the previous behavior.
10183 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10184 coding-system.
10185
10186 * coding.c (decode_coding_object): When not decoding into a buffer,
10187 obey the coding system's preference of (uni|multi)byte.
10188
101892008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10190
10191 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10192 every char is changed and has a different byte-length.
10193 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10194 Fix int -> EMACS_INT.
10195
101962008-03-23 David Hansen <david.hansen@gmx.net>
10197
10198 * dbusbind.c (xd_read_message): Remove extra copying of message
10199 strings. Check for NULL `interface' or `member'.
10200
102012008-03-22 Eli Zaretskii <eliz@gnu.org>
10202
10203 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10204 cFileName a file name that includes `?' characters, use the 8+3
10205 alias in cAlternateFileName instead.
10206
102072008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
10208
10209 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
10210
102112008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10212
10213 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
10214 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
10215 work on current_buffer only instead (that was already the case
10216 for some of the code anyway).
10217 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
10218 (temp_set_point, temp_set_point_both): Use EMACS_INT.
10219 (SET_PT, SET_PT_BOTH): Adjust.
10220 * intervals.h (set_point, temp_set_point, set_point_both)
10221 (temp_set_point_both): Remove redundant declarations.
10222
102232008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10224
10225 * fileio.c (Finsert_file_contents):
10226 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
10227 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
10228 when buffer != current_buffer anyway.
10229
102302008-03-20 Andreas Schwab <schwab@suse.de>
10231
10232 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
10233 as default.
10234
102352008-03-19 Jason Rumney <jasonr@gnu.org>
10236
10237 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
10238 (syms_of_w32fns): Initialize them.
10239 (HOURGLASS_ID): New constant.
10240 (x_window_to_frame): Don't check hourglass_window.
10241 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
10242 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
10243 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
10244 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
10245 Only change the cursor if hourglass is not active.
10246 (Fx_create_frame): Initialize frame's current_cursor.
10247 (hourglass_atimer): Remove.
10248 (hourglass_started): New function.
10249 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
10250 (show_hourglass): Adapt to w32, changing argument to frame.
10251
10252 * w32term.h (struct w32_output): Remove hourglass_window.
10253 Add current_cursor.
10254
10255 * eval.c (call_debugger, Fsignal):
10256 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
10257 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
10258 (Fexecute_extended_command, cancel_hourglass_unwind):
10259 * minibuf.c (read_minibuf):
10260 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
10261
102622008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
10263
10264 * window.c (run_funs): New fun.
10265 (run_window_configuration_change_hook): Use it to run the buffer-local
10266 and the global part of the hook.
10267
10268 * xdisp.c (format_mode_line_unwind_data): Add window argument.
10269 (unwind_format_mode_line): Restore selected window.
10270 (x_consider_frame_title, Fformat_mode_line): Set selected window.
10271
102722008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10273
10274 * editfns.c (Fchar_equal): Check they are valid characters.
10275
10276 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
10277
102782008-03-17 Andreas Schwab <schwab@suse.de>
10279
10280 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
10281 against a charset.
10282
10283 * lisp.h (Fbuffer_list): Declare.
10284
102852008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10286
aac0c6e3
MR
10287 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10288 handlebox_widget is != 0.
10289
102902008-03-16 Juri Linkov <juri@jurta.org>
10291
10292 * callint.c (Fcall_interactively): For interactive code letters
10293 'b' and 'B' put the buffer list into the list of default "future"
10294 values of the minibuffer.
10295
102962008-03-16 Andreas Schwab <schwab@suse.de>
10297
10298 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10299 modifiers.
10300
10301 * regex.c (re_match_2_internal): Correct matching of a charset
10302 against latin-1 characters.
10303
103042008-03-16 Kenichi Handa <handa@m17n.org>
10305
10306 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10307 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10308 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10309 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10310 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10311 CHAR_STRING_ADVANCE.
10312 (produce_chars): Fix for the case that the source and the
10313 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10314 instead of CHAR_STRING_ADVANCE.
10315 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10316 STRING_CHAR_ADVANCE.
10317
103182008-03-15 Andreas Schwab <schwab@suse.de>
10319
10320 * regex.c (re_match_2_internal): Correct matching of eight bit
10321 characters in unibyte strings.
10322
103232008-03-15 Martin Rudalics <rudalics@gmx.at>
10324
10325 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10326 at end of range when it coincides with the end of the buffer.
10327
103282008-03-14 Eli Zaretskii <eliz@gnu.org>
10329
10330 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10331
10332 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10333
103342008-03-14 Jason Rumney <jasonr@gnu.org>
10335
10336 * editfns.c (initial_tz): New variable.
10337 (syms_of_editfns): Initialize it.
10338 (Fset_time_zone_rule): Set it when first called.
10339 Use it when TZSTRING is nil.
10340
10341 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10342 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10343 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10344 (globals_of_w32fns): Initialize them.
10345 (compute_tip_xy): Use them to position tooltips.
10346
103472008-03-14 Glenn Morris <rgm@gnu.org>
10348
10349 * emacs.c (main): Revert previous change.
10350 (standard_args): Revert -internal-script back to -scriptload,
10351 and remove the long-option form.
10352
103532008-03-13 Glenn Morris <rgm@gnu.org>
10354
10355 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10356 Remove option -enable-font-backend.
10357
103582008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10359
10360 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10361
103622008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10363
10364 * xterm.c (x_connection_closed): For GTK: If this is the last
10365 terminal just exit without closing the display.
10366
103672008-03-11 Jason Rumney <jasonr@gnu.org>
10368
10369 * w32font.c (w32font_full_name): Use floor to round.
10370
f0131492 103712008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10372
10373 * sound.c (alsa_configure): Declare vol at beginning of block.
10374
10375 * fontset.c (Ffontset_info): Remove extra semicolon.
10376
103772008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10378
10379 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10380 size of resulting string.
10381
103822008-03-10 Jason Rumney <jasonr@gnu.org>
10383
10384 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10385
103862008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10387
10388 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10389 Don't pretend as if characters with display property haven't been
10390 consumed for string-replacing-string case.
10391
103922008-03-08 Kim F. Storm <storm@cua.dk>
10393
10394 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10395 (get_next_display_element, next_element_from_string)
10396 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10397
103982008-03-08 Andreas Schwab <schwab@suse.de>
10399
10400 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10401
104022008-03-06 Jason Rumney <jasonr@gnu.org>
10403
10404 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10405 when charset not specified. Only translate ANSI to unicode when
10406 font_type is truetype.
10407 (w32font_coverage_ok): New function.
10408 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10409
104102008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10411
10412 * lread.c (Fread_char): Resolve modifiers.
10413 (Fread_char_exclusive): Likewise.
10414
10415 * character.c (char_resolve_modifier_mask): New function.
10416 (char_string): Use char_resolve_modifier_mask.
10417 (Fchar_resolve_modifiers): New function.
10418 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10419 function.
10420
104212008-03-04 Jason Rumney <jasonr@gnu.org>
10422
10423 * makefile.w32-in: Always include w32font.c in the build.
10424 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10425
104262008-03-04 Andreas Schwab <schwab@suse.de>
10427
10428 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10429 (versionclean): Likewise.
10430
104312008-03-04 Juanma Barranquero <lekktu@gmail.com>
10432
10433 * .cvsignore: Add oo.
10434
104352008-03-03 Andreas Schwab <schwab@suse.de>
10436
10437 * coding.c (decode_coding_object): Inhibit gap shrinking while
10438 decoding in place.
10439
104402008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10441
10442 * w32term.c: Remove unused include "gnu.h".
10443 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10444
10445 * gnu.h: Rename to ...
10446 * emacs-icon.h: ... this.
10447 * xterm.c: Use emacs-icon.h instead of gnu.h.
10448 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10449
104502008-03-03 Juanma Barranquero <lekktu@gmail.com>
10451
10452 * w32font.c: Include math.h.
10453
104542008-03-03 Jason Rumney <jasonr@gnu.org>
10455
10456 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10457 Compute options separately.
10458 (w32font_open_internal): Set glyph_idx before caching metrics.
10459
10460 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10461 Define if system headers don't.
10462 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10463 (w32font_encode_char): Don't declare here.
10464
10465 * w32font.c (Quniscribe, QCformat): New symbols.
10466 (syms_of_w32font): Define them.
10467 (w32font_has_char): Indicate uncertainty.
10468 (w32font_encode_char): Encode as glyph point. Make static.
10469 (recompute_cached_metrics): New function.
10470 (w32font_open_internal): Use it. Set font to use glyph points
10471 initially. Set format based on type of font.
10472 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10473 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10474 on it. Set format based on information available here.
10475 (add_font_entity_to_list): Identify backend based on opentype_only.
10476
104772008-03-02 Andreas Schwab <schwab@suse.de>
10478
10479 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10480
10481 * coding.c (decode_coding_big5, produce_chars):
10482 Fix typos in last change.
10483
104842008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10485
10486 * gnu.h: New icon.
10487
104882008-03-02 Kenichi Handa <handa@m17n.org>
10489
10490 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10491 `dos', don't decode '\r' if that is the last in the source.
10492 (decode_coding_utf_16, decode_coding_emacs_mule)
10493 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10494 (decode_coding_raw_text, decode_coding_charset): Likewise.
10495 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10496
104972008-03-01 Jason Rumney <jasonr@gnu.org>
10498
10499 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10500
105012008-03-01 Kim F. Storm <storm@cua.dk>
10502
10503 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10504
105052008-03-01 Jason Rumney <jasonr@gnu.org>
10506
10507 * w32font.c (w32font_full_name): New function.
10508 (w32font_open_internal): Use it.
10509
105102008-03-01 Kim F. Storm <storm@cua.dk>
10511
10512 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10513
105142008-03-01 Jason Rumney <jasonr@gnu.org>
10515
10516 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10517
105182008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10519
10520 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10521 xg_frame_resized when the event is for the edit widget.
10522
10523 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10524
10525 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10526 set_char_size.
10527 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10528 operations on widgets here. Just set frame size if needed.
10529 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10530 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10531 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10532 the whole frame.
10533 (xg_create_tool_bar): Move attachment of the tool bar to
10534 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10535 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10536
105372008-03-01 Jason Rumney <jasonr@gnu.org>
10538
10539 * w32fns.c (w32_msg_pump): Disable debug code.
10540
105412008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10542
10543 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10544
105452008-02-29 Chong Yidong <cyd@stupidchicken.com>
10546
10547 * xdisp.c (next_overlay_string): Don't set
10548 overlay_strings_at_end_processed_p if we're currently reading from
10549 a display string.
10550
105512008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10552
10553 * xdisp.c (get_overlay_strings_1): Fix typo.
10554
105552008-02-29 Chong Yidong <cyd@stupidchicken.com>
10556
10557 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10558
105592008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10560
10561 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10562
10563 * xdisp.c (display_mode_element): Cancel the previous change.
10564 (decode_mode_spec): Likewise.
10565 (handle_auto_composed_prop): Don't make composition if it->string
10566 is a string.
10567
105682008-02-27 Kim F. Storm <storm@cua.dk>
10569
10570 * lisp.h (GLYPH): Change type from int to struct with separate char
10571 and face_id members.
10572 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10573 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10574 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10575 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10576 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10577 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10578 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10579 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10580 handle new Lisp glyph code encoding, either an integer or a cons.
10581
10582 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10583 (GLYPH_ALIAS): Delete.
10584 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10585 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10586 (GLYPH_FROM_CHAR): Replace macro by ...
10587 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10588
10589 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10590 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10591 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10592 (GLYPH_INVALID_P): New macro.
10593 (spec_glyph_lookup_face): Update prototype.
10594
10595 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10596 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10597 new glyph code encoding.
10598 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10599 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10600
10601 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10602 Adapt to new glyph type and new glyph code encoding.
10603
10604 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10605
10606 * indent.c (current_column, current_column_1, Fmove_to_column)
10607 (compute_motion): Adapt to new glyph code encoding.
10608
10609 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10610
106112008-02-27 Chong Yidong <cyd@stupidchicken.com>
10612
10613 * process.c (wait_reading_process_output): Check for window
10614 changes caused by timers.
10615 Suggested by Johan Bockgård.
10616
106172008-02-27 Glenn Morris <rgm@gnu.org>
10618
10619 * emacs.c (USAGE1): Add `--disable-font-backend'.
10620
106212008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10622
10623 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10624 is made to the buffer.
10625
106262008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10627
10628 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10629 (face_at_string_position):
10630 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10631 (face_at_string_position):
10632 * xdisp.c (display_string, next_overlay_change):
10633 * buffer.h (overlays_at):
10634 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10635 Update callers.
10636
106372008-02-26 Chong Yidong <cyd@stupidchicken.com>
10638
10639 * editfns.c (Fformat): Doc fix.
10640
106412008-02-26 Juanma Barranquero <lekktu@gmail.com>
10642
10643 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10644 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10645 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10646
106472008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10648
10649 * buffer.c (Fbuffer_swap_text): New function.
10650 (syms_of_buffer): Defsubr it.
10651
106522008-02-25 Chong Yidong <cyd@stupidchicken.com>
10653
10654 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10655
106562008-02-25 Jason Rumney <jasonr@gnu.org>
10657
10658 * w32font.c (w32font_draw): Draw one character at a time when padding.
10659
106602008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10661
10662 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10663 Handle a nil arg. Use run_window_configuration_change_hook.
10664 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10665 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10666 Use run_window_configuration_change_hook.
10667
106682008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10669
10670 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10671 1-pixel width.
10672
106732008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10674
10675 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10676 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10677 if the glyph in the font is zero pixel with.
10678
10679 * dispextern.h (struct glyph_string): New member padding_p.
10680
10681 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10682
10683 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10684
10685 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10686
10687 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10688
10689 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10690
106912008-02-25 Jason Rumney <jasonr@gnu.org>
10692
10693 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10694
106952008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10696
10697 Allow fine-grained image-cache flushing.
10698 * dispextern.h (struct image): Add `dependencies' field.
10699 (clear_image_caches): Change arg to Lisp_Object.
10700 * image.c (make_image): Initialize `dependencies' field.
10701 (clear_image_cache): Change arg to allow fine-grained flushing.
10702 Perform the flush even if image-cache-eviction-delay is nil.
10703 (clear_image_caches): Change arg to Lisp_Object.
10704 (Fclear_image_cache): Expand meaning of the argument.
10705 (mark_image): Mark `dependencies' field.
10706 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10707 (lface_hash): Use XHASH rather than XFASTINT.
10708 (face_at_buffer_position): Fix int -> EMACS_INT position.
10709 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10710 (select_frame_for_redisplay): Remove code duplication.
10711 (redisplay_internal): Adapt arg to call to clear_image_caches.
10712
107132008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10714
10715 * s/vms4-0.h:
10716 * s/vms4-2.h:
10717 * s/vms4-4.h:
10718 * s/vms5-5.h: Remove, unused.
10719
10720 * s/irix5-2.h:
10721 * s/irix6-0.h:
10722 * s/riscos5.h:
10723 * s/mach-bsd4-3.h:
10724 * m/mips4.h: Remove files for obsolete systems.
10725
10726 * Makefile.in:
10727 * filelock.c:
10728 * unexmips.c:
10729 * m/hp9000s300.h:
10730 * m/iris4d.h:
10731 * s/aix3-1.h:
10732 * s/hpux.h:
10733 * s/msdos.h:
10734 * s/usg5-0.h:
10735 * s/usg5-2-2.h:
10736 * s/usg5-2.h:
10737 * s/usg5-3.h: Remove references to obsolete variables.
10738
10739 * s/irix5-0.h: Remove, move all the contents ...
10740 * s/irix6-5.h: ... here. Simplify.
10741 * config.in: Regenerate.
10742
107432008-02-24 Jason Rumney <jasonr@gnu.org>
10744
10745 * w32term.c (x_draw_glyph_string_background): Clear the background
10746 manually when cleartype is in use.
10747 (x_draw_glyph_string_foreground): Draw text transparently when
10748 cleartype is in use.
10749
10750 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10751 a font into it unless we have to.
10752
107532008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10754
10755 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10756 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10757
aac0c6e3
MR
107582008-02-18 Jason Rumney <jasonr@gnu.org>
10759
10760 * w32fns.c (Fw32_shell_execute): Encode parameters.
10761
107622008-02-09 Eli Zaretskii <eliz@gnu.org>
10763
10764 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10765
107662008-02-05 Juanma Barranquero <lekktu@gmail.com>
10767
10768 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10769
107702008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10771
10772 * xterm.c (x_set_offset): Don't change the gravity if
10773 CHANGE_GRAVITY is -1.
10774
107752008-02-23 Chong Yidong <cyd@stupidchicken.com>
10776
10777 * fileio.c (auto_save_error_occurred): New var.
10778 (auto_save_error): Set it.
10779 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10780 error occurred.
10781
107822008-02-23 Eli Zaretskii <eliz@gnu.org>
10783
10784 * w32.c (globals_of_w32): Add initializations for
10785 g_b_init_get_sid_sub_authority and
10786 g_b_init_get_sid_sub_authority_count.
10787
107882008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10789
10790 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10791 (font_parse_xlfd): Use them for sanity check.
10792 (Finternal_set_font_style_table): Make sure the table is bijective.
10793
10794 Consolidate the image_cache to the terminal struct.
10795 * termhooks.h (P_): Remove redundant def.
10796 (struct terminal): New field `image_cache'.
10797 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10798 of FRAME_X_IMAGE_CACHE.
10799 * xterm.h (struct x_display_info): Remove image_cache field.
10800 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10801 * w32term.h (struct w32_display_info): Remove image_cache field.
10802 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10803 * macterm.h (struct mac_display_info): Remove image_cache field.
10804 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10805 * xterm.c (x_term_init):
10806 * w32term.c (w32_term_init):
10807 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10808 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10809 Remove declarations.
10810 (clear_image_caches, mark_image_cache): New declarations.
10811 * xfaces.c (clear_face_cache):
10812 * xdisp.c (redisplay_internal): Use clear_image_caches.
10813 * image.c (clear_image_cache): Don't check that a frame is on
10814 a window-system before checking if it shares the same cache.
10815 (clear_image_caches): New function.
10816 (Fclear_image_cache): Use it.
10817 (mark_image): Move from allo.c.
10818 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10819 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10820 (mark_object): Don't call mark_image_cache for frames.
10821 (mark_terminals): Call mark_image_cache.
10822
10823 * lisp.h (Fdelete_terminal): Declare.
10824
10825 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10826 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10827 wrong_type_argument.
10828
108292008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10830
10831 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10832 malayalam.el, and tamil.el. Add sinhala.el.
10833
108342008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10835
10836 * xterm.c (x_connection_closed): Consolidate identical tests.
10837 (x_delete_terminal): Don't crash if called via x_connection_closed.
10838
108392008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10840
10841 * xdisp.c (decode_mode_spec): New arg string.
10842 (display_mode_element): Adjust for the above change.
10843
108442008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10845
10846 * callint.c (Fcall_interactively): Use AREF.
10847
108482008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10849
10850 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10851
108522008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10853
10854 * xfns.c (Fx_show_tip): Set string to " " if empty.
10855
108562008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10857
10858 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10859 with Qt.
10860
108612008-02-17 Kenichi Handa <handa@m17n.org>
10862
10863 * ftfont.c (ftfont_shape): Return Lispy number.
10864
10865 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10866 for GCs.
10867 (Finternal_set_font_selection_order): Call font_update_sort_order
10868 only when enable_font_backend is set.
10869 (realize_x_face): Set face->font_info to that of default face only
10870 when enable_font_backend is set.
10871
10872 * xdisp.c (handle_composition_prop): Set it->c to the fist
10873 character of the composed region.
10874 (fill_composite_glyph_string): Set base_face->font_info to
10875 s->font_info. Get a face for ascii from base_face->ascii_face.
10876 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10877 with a face already decided.
10878 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10879 non-negative.
10880 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10881 call font_prepare_composition unconditionally.
10882
10883 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10884
10885 * xterm.h (struct x_display_info): New member font.
10886
10887 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10888 (x_set_mouse_face_gc, x_new_font): Likewise.
10889 (x_term_init): Setup display_info->font.
10890 (x_delete_terminal): Free display_info->font.
10891
10892 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10893
10894 * ftxfont.c (ftxfont_default_fid): Delete it.
10895 (ftxfont_open): Set xfont->fid to 0.
10896 (ftxfont_end_for_frame): Clear data specific to the frame and the
10897 font-driver.
10898
10899 * xftfont.c (xftfont_default_fid): Delete it.
10900 (xftfont_open): Set xfont->fid to 0.
10901
10902 * fontset.c (FONTSET_OBJLIST): New macro.
10903 (fontset_find_font): Update font-object list of the fontset.
10904 (free_realized_fontset): New function.
10905 (free_face_fontset): Call free_realized_fontset.
10906 (Ffont_info): Call font_close_object only when enable_font_backend
10907 is set.
10908
10909 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10910 [HAVE_NTGUI]: Include w32term.h.
10911 [MAC_OS]: Include macterm.ch.
10912 (font_otf_ValueRecord): Use make_number.
10913 (font_finish_cache): Fix handling of reference count.
10914 (font_clear_cache): Update num_fonts.
10915 (font_open_entity): Update smallest_char_width and
10916 smallest_font_height of the frame.
10917 (font_close_object): Update num_fonts.
10918 (Fclear_font_cache): Fix finding the target cache data.
10919
109202008-02-16 Glenn Morris <rgm@gnu.org>
10921
10922 * fontset.c (Finternal_char_font): Fix compilation warning.
10923
109242008-02-16 Eli Zaretskii <eliz@gnu.org>
10925
10926 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10927 instead of char arrays. Enlarge the size of array passed to
10928 get_token_information.
10929
10930 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10931 warnings.
10932
109332008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10934
10935 * .gdbinit: Don't set `args', it breaks gdb --args.
10936
109372008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10938
10939 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10940 within a narrowed buffer.
10941
109422008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10943
10944 * coding.c (decode_coding_object, encode_coding_object):
10945 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10946
109472008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10948
10949 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10950 hardcoding 1.
10951 (detect_coding_system):
10952 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10953 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10954 * insdel.c (insert_from_gap):
10955 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10956 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10957 (string_to_multibyte):
10958 * character.c (chars_in_text, multibyte_chars_in_text):
10959 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10960
10961 * character.h (FETCH_STRING_CHAR_ADVANCE)
10962 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10963 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10964 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10965
10966 * casefiddle.c (casify_region): Only call after-change and composition
10967 functions on the part of the region that was changed.
10968
10969 * keyboard.c (read_avail_input):
10970 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10971
109722008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10973
10974 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10975 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10976
109772008-02-11 Juanma Barranquero <lekktu@gmail.com>
10978
10979 * w32menu.c (push_submenu_start, push_submenu_end)
10980 (push_left_right_boundary, push_menu_pane, push_menu_item):
10981 * keyboard.c (read_key_sequence): Don't pass args with side effects
10982 to AREF, it fails when compiling with -DENABLE_CHECKING.
10983
109842008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10985
10986 * Makefile.in (${lispsource}international/charprop.el):
10987 Delete this target.
10988
10989 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10990 emacs-unicode-2.
10991
109922008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10993
10994 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10995
109962008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10997
10998 * frame.c (Qnoelisp): New symbol.
10999 (syms_of_frame): Initialize it.
11000 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11001 harmless Elisp code, from a strong `force' from x_connection_closed.
11002 * frame.h (Qnoelisp): Declare.
11003 * xterm.c (x_connection_closed): Pass `noelisp'.
11004
11005 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11006 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11007 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11008 rather than `int' for the type of `type'.
11009
110102008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11011
11012 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11013
11014 * Makefile.in (GNUC): Remove support for gcc-1.x.
11015
110162008-02-10 Richard Stallman <rms@gnu.org>
11017
11018 * lisp.h (ASET): Use AREF, not ASLOT.
11019
110202008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11021
11022 * lisp.h (ASET): Check bounds.
11023
110242008-02-10 Glenn Morris <rgm@gnu.org>
11025
11026 * buffer.c (mode-name): Doc fix.
11027
110282008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11029
11030 * Makefile.in:
11031 * emacs.c:
11032 * gmalloc.c:
11033 * keyboard.c:
11034 * lisp.h:
11035 * m/ibm370aix.h:
11036 * process.c:
11037 * regex.c:
11038 * s/hpux.h:
11039 * sysdep.c:
11040 * sysselect.h:
11041 * systty.h:
11042 * unexec.c:
11043 * w32term.c:
11044 * xsmfns.c:
11045 * xterm.c: Remove code that deals with obsolete variables.
11046
11047 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11048
11049 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11050 nothing else needs it anymore.
11051
110522008-02-09 Eli Zaretskii <eliz@gnu.org>
11053
11054 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11055 instead of unibyte_char_to_multibyte.
11056
110572008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11058
11059 * s/gnu-linux.h: Remove commented out code.
11060
11061 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11062
11063 * Makefile.in: Update what RMS says about using autoconf.
11064 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11065 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11066 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11067 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11068
110692008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11070
11071 * keymap.c (Fkey_description): Move side effect outside of macro call.
11072
11073 * xfaces.c (Finternal_make_lisp_face):
11074 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11075
11076 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11077 (syms_of_fontset): Use ASET.
11078
11079 * fns.c (concat): Move side effect outside of macro call.
11080 (hash_clear): Use ASET.
11081
110822008-02-08 Richard Stallman <rms@gnu.org>
11083
11084 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11085 If FORCE, and frame has a surrogate minibuffer for another frame,
11086 delete the other frame first.
11087
110882008-02-07 Timo Savola <timo.savola@iki.fi>
11089
11090 * xterm.c (x_detect_focus_change): Handle embed client message.
11091 (handle_one_xevent): Ditto.
11092 (handle_one_xevent): If embedded and we get a button press/release,
11093 request focus.
11094 (xembed_set_info, xembed_send_message): New functions.
11095 (x_make_frame_visible): Call xembed_set_info if embedded.
11096 (x_make_frame_invisible): Call xembed_set_info if embedded.
11097 (x_term_init): Initialize Xatom_XEMBED.
11098 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11099 (x_iconify_frame): Ditto.
11100
11101 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11102 (enum xembed_info, enum xembed_message, enum xembed_focus)
11103 (enum xembed_modifier, enum xembed_accelerator): New.
11104 (xembed_set_info, xembed_send_message): Declare.
11105 (FRAME_X_EMBEDDED_P): New.
11106
11107 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11108 gtk_plug_new.
11109
11110 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11111 window ID of a frame.
11112 (x_window): Reparent frame if embedded.
11113 (Fx_create_frame): Don't set border width if embedded.
11114
11115 * emacs.c (USAGE3): Add --parent-id.
11116 (standard_args): Ditto.
11117
111182008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11119
11120 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11121
111222008-02-07 Jim Meyering <meyering@redhat.com>
11123
11124 Use "do...while (0)", not "if (1)...else" in macro definitions.
11125 The latter provokes a warning from gcc about the empty else, when
11126 followed by ";". Also, without that trailing semicolon, it would
11127 silently swallow up any following statement.
11128 * syntax.h (SETUP_SYNTAX_TABLE)
11129 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11130 * buffer.h (DECODE_POSITION): Likewise.
11131 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11132 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11133 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11134 (FETCH_CHAR_ADVANCE): Likewise.
11135 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11136
111372008-02-07 Jim Meyering <meyering@redhat.com>
11138
11139 * lread.c [lint]: Don't include <sys/inode.h>.
11140
111412008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11142
11143 * xselect.c (x_handle_dnd_message):
11144 * xmenu.c (digest_single_submenu, xmenu_show):
11145 * xdisp.c (with_echo_area_buffer_unwind_data)
11146 (format_mode_line_unwind_data, unwind_format_mode_line)
11147 (display_menu_bar):
11148 * eval.c (Ffetch_bytecode):
11149 * doc.c (store_function_docstring):
11150 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11151 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11152 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11153
111542008-02-07 Kenichi Handa <handa@m17n.org>
11155
11156 * ftxfont.c (ftxfont_open): Don't set
11157 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11158
11159 * ftfont.c (ftfont_open): Fix previous change.
11160
111612008-02-06 Jason Rumney <jasonr@gnu.org>
11162
11163 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11164 Use cached metrics for ASCII characters.
11165 (w32font_open_internal): Don't set font's owning_frame.
11166 Cache metrics for ASCII characters.
11167
11168 * w32font.h (struct w32font_info): Add ascii_metrics.
11169 Remove owning_frame.
11170
111712008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11172
11173 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11174 to negative value.
11175
11176 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11177
11178 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11179
11180 * charset.c (syms_of_charset): Set QCtest and Qeq.
11181
111822008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11183
11184 * process.c (Fstart_process):
11185 * callproc.c (Fcall_process): Handle the case where
11186 Funhandled_file_name_directory returns nil.
11187
11188 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11189 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11190 * font.c (check_gstring): Use them and AREF to access the vector before
11191 we know it's really a gstring.
11192 (Ffont_shape_text): Fix typo.
46e722a9 11193 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11194
11195 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11196 Declare.
11197
11198 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11199
112002008-02-05 Jason Rumney <jasonr@gnu.org>
11201
11202 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
11203 Set smallest_font_height and smallest_char_width in display info.
11204
112052008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
11206
11207 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
11208
112092008-02-05 Miles Bader <miles@gnu.org>
11210
11211 * xfaces.c (get_lface_attributes, merge_named_face)
11212 (lookup_named_face, lookup_derived_face, realize_named_face):
11213 Revert 2008-02-01 change by cyd@stupidchicken.com.
11214
112152008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
11216
11217 * fontset.c (Ffontset_info): Handle the case of inhibitting the
11218 fallback fonts.
11219 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
11220
112212008-02-04 Jason Rumney <jasonr@gnu.org>
11222
11223 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
11224 set full_name.
11225 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
11226
112272008-02-03 Jason Rumney <jasonr@gnu.org>
11228
11229 * makefile.w32-in (OBJ1): Include font.o here.
11230 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
11231
112322008-02-02 Jason Rumney <jasonr@gnu.org>
11233
11234 * makefile.w32-in (temacs): Bump EMHEAP to 21.
11235
112362008-02-01 Jason Rumney <jasonr@gnu.org>
11237
11238 * s/cygwin.h: Define VIRT_ADDR_VARIES.
11239
11240 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
11241
112422008-02-01 Andreas Schwab <schwab@suse.de>
11243
11244 * Makefile.in (shortlisp, lisp): Update for rename of
11245 ../lisp/language/myanmar.el.
11246
112472008-02-01 Chong Yidong <cyd@stupidchicken.com>
11248
11249 * xfaces.c (get_lface_attributes): Delete function.
11250 (merge_named_face, lookup_named_face, lookup_derived_face)
11251 (realize_named_face): Call lface_from_face_name directly, and use
11252 the fact that merge_face_vectors does not alter its FROM argument.
11253
112542008-02-01 Jason Rumney <jasonr@gnu.org>
11255
11256 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
11257 input in the default locale. Handle non-Unicode multibyte input.
11258
112592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11260
11261 * fontset.c (reorder_font_vector): Exclude nil elements from the
11262 font group. Don't try multiple fonts.
11263 (fontset_font): Adjust for the above change.
11264 (Finternal_char_font): Return nil if the found font doesn't
11265 contain the character ch.
11266
11267 * Makefile.in (lisp, shortlisp): Add cham.el.
11268
112692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11270
11271 * font.h (FONTP): Make it return 1 also for a font-object.
11272
11273 * .gdbinit (xfontset): New function.
11274
11275 * font.c (font_find_for_lface): Check if the character C is
11276 supported or not only for the first font.
11277
11278 * fontset.c (reorder_font_vector): Fix typo.
11279 (fontset_find_font): Don't add a font-spec specifying a script.
11280 Use 0 (not Qt) for the indication of empty font-group. Change the
11281 format of RFONT-DEF. Return Qt if no font in the font-group
11282 support the character.
11283 (fontset_font): Adjust for the above change. If no font was
11284 found the character, remember that.
11285 (face_for_char): Adjust for the change of RFONT-DEF.
11286 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11287 no font for the target.
11288 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11289
112902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11291
11292 * font.c (font_load_for_face): Handle the case that the font in
11293 face->lface is a string.
11294
112952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11296
11297 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11298
112992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11300
11301 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11302 Fix previous change. If the frame is not on a window system,
11303 signal an error.
11304
113052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11306
11307 * coding.c (decode_coding_object, encode_coding_object): Adjust
11308 marker positions after conversion.
11309
11310 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11311
113122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11313
11314 * font.c (font_find_for_lface): Fix the handling of the return
11315 value of font_has_char.
11316 (Ffont_shape_text): Fix previous change.
11317
11318 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11319 (fontset_ref_and_range): Delete it.
11320 (fontset_find_font): Call char_table_ref_and_range instead of
11321 FONTSET_REF_AND_RANGE.
11322 (make_fontset): Don't setup font groups of Latin here.
11323 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11324 (new_fontset_from_font): Make the specified font the default for
11325 all Latin characters.
11326
113272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11328
11329 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11330 is on a window system before accessing the fontset of the frame.
11331
113322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11333
11334 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11335
11336 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11337 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11338
11339 * font.c (Ffont_shape_text): If the font driver doesn't have a
11340 shaper function, make zero-width glyphs to have at least one-pixel
11341 width. Fix setting of `to' field of glyphs.
11342
113432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11344
11345 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11346 glyphs.
11347
11348 * font.h (struct font_driver): Improve docstring of member `shape'.
11349
113502008-02-01 Kenichi Handa <handa@m17n.org>
11351
11352 * composite.c (syms_of_composite): Fix docstring of
11353 auto-composition-function.
11354
11355 * font.h (LGLYPH_SIZE): New macro.
11356
11357 * font.c (Ffont_fill_gstring): Stop filling when a character not
11358 supported by the font is found.
11359 (Ffont_shape_text): When a shape callback function returns nil,
11360 try at most two more times with larger gstring.
11361 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11362
11363 * xdisp.c (handle_auto_composed_prop): Change the argument to
11364 auto-composition-function.
11365
11366 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11367 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11368 Lispy glyph and store it in the lgstring.
11369
11370 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11371
11372 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11373
113742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11375
11376 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11377
11378 * fontset.c (Vfont_encoding_charset_alist): New variable.
11379 (syms_of_fontset): DEFVAR it.
11380 (reorder_font_vector, fontset_find_font): Optimize for the case of
11381 no need of reordering.
11382 (face_for_char): Map the charset property by
11383 Vfont_encoding_charset_alist.
11384
113852008-02-01 Jason Rumney <jasonr@gnu.org>
11386
11387 * w32font.c (logfonts_match): Don't check adstyle here.
11388 (font_matches_spec): Check here against physical font instead.
11389 (add_font_entity_to_list): Avoid some substitutions.
11390
11391 * font.c (font_parse_fcname): Default weight and slant to normal.
11392 (font_score): Prefer normal fonts if weight or slant unspecified.
11393 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11394 match freetype scores.
11395
113962008-02-01 Jason Rumney <jasonr@gnu.org>
11397
11398 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11399 font, as it may have been deleted.
11400 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11401 most common hyphenless variation.
11402 (logfonts_match): Check generic family.
11403 (font_matches_spec): Don't check generic family here.
11404 (fill_in_logfont): Set generic family based on adstyle.
11405
11406 * w32font.h (w32font_get_cache): Update declaration.
11407
114082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11409
11410 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11411
11412 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11413 If none of the new drivers are available, call font_update_drivers
11414 with the old drivers.
11415
11416 * w32font.c (w32font_get_cache): Adjust the argument type.
11417
11418 * xfont.c (xfont_get_cache): Adjust the argument type.
11419
11420 * font.h (struct font_driver): Change argument type of get_cache.
11421
11422 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11423
11424 * font.c (Ffont_get): Fix arguments to Fassoc.
11425 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11426 (font_clear_cache): New function.
11427 (font_list_entities, font_matching_entity): Use font_get_cache.
11428 (font_update_drivers): Call font_clear_cache when finishing a driver.
11429
11430 * fontset.c (fontset_find_font): Fix previous change.
11431
114322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11433
11434 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11435 dpyinfo->font_table.
11436 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11437 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11438
11439 * font.c (font_at): Handle the case that the arg C is negative.
11440 Handle the unibyte case.
11441 (Ffont_at): Call font_at with the arg C -1.
11442
11443 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11444 the position here, and call font_at with the arg C -1.
11445 Don't check the range of the existing composition at the point.
11446
114472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11448
11449 * fontset.c (fontset_add): New args charset_id and family.
11450 Change caller.
11451 (load_font_get_repertory, fontset_find_font): Assume that
11452 font_spec is always a font-spec object.
11453 (Fset_fontset_font): Always store a font-spec object in a fontset.
11454
11455 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11456 instead of get_property_and_range.
11457
114582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11459
11460 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11461 (xftfont_open): Don't keep locking face.
11462 (xftfont_close): Don't unlock face.
11463 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11464
11465 * fontset.c (fontset_find_font): Don't prefer a font of
11466 supplementary charset.
11467
114682008-02-01 Kenichi Handa <handa@m17n.org>
11469
11470 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11471 script, langsys_tag to langsys, new member script.
11472 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11473 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11474 listing to the script specified in that property. Fix arg to
11475 OTF_check_features.
11476
114772008-02-01 Jason Rumney <jasonr@gnu.org>
11478
11479 * w32font.h: New file.
11480
11481 * w32font.c: Include it.
11482 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11483 (w32font_open): Set owning_frame.
11484 (w32font_text_extents): Use owning_frame.
11485 (struct font_callback_data): Add opentype_only field.
11486 (add_font_entity_to_list): Use it to filter fonts.
11487 Don't check against full name.
11488 (w32font_list_internal): New function.
11489 (w32font_list): Use it.
11490 (w32font_match_internal): New function.
11491 (w32font_match): Use it.
11492 (w32font_open_internal): New function.
11493 (w32font_open): Use it.
11494 (w32font_get_cache, w32font_close, w32font_has_char)
11495 (w32font_encode_char, w32font_text_extents, w32font_draw):
11496 Make non-static.
11497
11498 * makefile.w32-in (w32font.o): Depend on w32font.h.
11499
115002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11501
11502 * charset.c (Fdefine_charset_internal): Record a supplementary
11503 charset at the tail of Vcharset_order_list.
11504
11505 * font.c (Ffont_shape_text): Fix the return value.
11506
11507 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11508
11509 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11510
115112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11512
11513 * ftfont.c (struct OpenTypeSpec): New struct.
11514 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11515 (ftfont_get_open_type_spec): New function.
11516 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11517
11518 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11519
115202008-02-01 Jason Rumney <jasonr@gnu.org>
11521
11522 * w32font.c (add_font_entity_to_list): Compare only the beginning
11523 of full name.
11524
115252008-02-01 Kenichi Handa <handa@m17n.org>
11526
11527 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11528 Never return HANDLED_RECOMPUTE_PROPS.
11529
115302008-02-01 Kenichi Handa <handa@m17n.org>
11531
11532 * font.c (font_gstring_produce): Delete it.
11533
11534 * composite.h (COMPOSITION_METHOD):
11535 Handle COMPOSITION_WITH_GLYPH_STRING.
11536
115372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11538
11539 * xfont.c (Qx): Delete.
11540 (syms_of_xfont): Don't initialize Qx.
11541
11542 * composite.h (enum composition_method):
11543 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11544
115452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11546
11547 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11548 (choose_face_font): Accept new form of font-spec.
11549
11550 * frame.h (font_driver_list): Declare it unconditionally.
11551 (struct frame): Define members font_driver_list and font_data_list
11552 unconditionally.
11553
11554 * fontset.c: Include "font.h" unconditionally.
11555 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11556 (Fset_fontset_font): Accept a font-spec object.
11557
11558 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11559 PIXEL_SIZE part a wild card.
11560
11561 * dispextern.h (struct glyph_string): Define members clip and
11562 num_clips unconditionally.
11563 (struct face): Define members font_info and extra unconditionally.
11564
11565 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11566 ftfont_info only when HAVE_LIBOTF is defined.
11567
115682008-02-01 Andreas Schwab <schwab@suse.de>
11569
11570 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11571 and end.
11572
115732008-02-01 Jason Rumney <jasonr@gnu.org>
11574
11575 * w32font.c (w32font_driver): Add new fields.
11576
115772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11578
11579 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11580 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11581 (LIBES): Add @M17N_FLT_CFLAGS@.
11582
11583 * composite.c (compose_text): Don't treat the new style
11584 composition specially.
11585
11586 * emacs.c (main): Call syms_of_font unconditionally.
11587
11588 * font.h (FONT_ENTITY_NOT_LOADABLE)
11589 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11590 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11591 (struct font_driver): New member shape.
11592 (font_registry_charsets): Extern it.
11593 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11594 (font_otf_capability, font_drive_otf): Delete their externs.
11595
11596 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11597 (font_charset_alist, font_registry_charsets): Move from xfont.c
11598 and rename.
11599 (font_prop_validate_otf): New function.
11600 (font_property_table): Register it for QCotf.
11601 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11602 (font_drive_otf): Delete.
11603 (font_prepare_composition): New arg F. Adjust for the change of
11604 lispy gstring.
11605 (font_find_for_lface): New arg C.
11606 (font_load_for_face): Adjust for the change of font_find_for_lface.
11607 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11608 lispy gstring.
11609 (Ffont_shape_text): New function.
11610 (Fopen_font): If the font size is not given, use 12-pixel.
11611 (Ffont_at): New arg STRING.
11612 (syms_of_font): Initalize font_charset_alist.
11613 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11614 conditionally.
11615
11616 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11617 fonts of the same font-spec. Change the format of RFONT-DEF.
11618 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11619 Adjust for the change of RFONT-DEF.
11620 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11621
11622 * ftfont.h: New file.
11623
11624 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11625 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11626 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11627 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11628 font_otf_capability and font_drive_otf, set ftfont_shape.
11629 (ftfont_list): Adjust for the change of :otf property value.
11630 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11631 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11632 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11633 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11634 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11635 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11636
11637 * w32term.c (x_draw_composite_glyph_string_foreground):
11638 Adjust for the change of lispy gstring.
11639
11640 * xdisp.c (handle_composition_prop): Adjust for the change of
11641 lispy gstring. Call a function for auto-composition with the
11642 third arg it->window.
11643 (fill_composite_glyph_string): Adjust for the change of lispy string.
11644 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11645
11646 * xfaces.c (set_font_frame_param): Adjust for the change of
11647 font_find_for_lface.
11648
11649 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11650 (xfont_registry_charsets): Likewise. Change caller.
11651 (syms_of_xfont): Don't handle x_font_charset_alist.
11652
11653 * xftfont.c: Include "ftfont.h".
11654 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11655 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11656 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11657 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11658 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11659 Set xftfont_driver.shape to xftfont_shape.
11660
11661 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11662 the change of lispy gstring.
11663
116642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11665
11666 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11667
116682008-02-01 Jason Rumney <jasonr@gnu.org>
11669
11670 * w32font.c (w32font_draw): Fill background manually.
11671
116722008-02-01 Jason Rumney <jasonr@gnu.org>
11673
11674 * font.c (Qfontp): Remove unused symbol.
11675 (QCantialias): New symbol.
11676 (syms_of_font): Define it.
11677 (font_property_table): Set a validator for QCantialias.
11678
11679 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11680 Define if not already.
11681 (QCfamily): Share with xfaces.c.
11682 (Qstandard, Qsubpixel, Qnatural): New symbols.
11683 (syms_of_w32font): Define them. Don't define QCfamily here.
11684 (w32_antialias_type, lispy_antialias_type): New functions.
11685 (w32_enumfont_pattern_entity): New arg requested_font.
11686 Set antialias parameter if non-default was requested.
11687 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11688
116892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11690
11691 * lread.c (read1): Undo the previous change.
11692
116932008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11694
11695 * frame.c (Fdelete_frame): Call font_update_drivers only when
11696 USE_FONT_BACKEND is defined.
11697
116982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11699
11700 * font.h (struct font_bitmap): New member bits_per_pixel.
11701 (struct font_driver): New members start_for_frame and end_for_frame.
11702 (struct font_data_list): New struct.
11703 (font_put_frame_data, font_get_frame_data): Extern them.
11704
11705 * frame.h (struct frame): New member font_data_list.
11706
11707 * font.c (font_update_drivers): Call driver->start_for_frame and
11708 driver->end_for_frame at proper timings.
11709 (font_put_frame_data, font_get_frame_data): New functions.
11710 (Ffont_spec): Add usage in the docstring.
11711
11712 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11713 (Fdelete_frame): Call font_update_drivers.
11714
11715 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11716 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11717 (xftfont_get_xft_draw): New function.
11718 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11719 (xftfont_end_for_frame): New function.
11720 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11721
11722 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11723 Change argument. Cache GCs in the per-frame data.
11724 (struct ftxfont_frame_data): New struct.
11725 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11726 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11727 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11728 (ftxfont_end_for_frame): New function.
11729 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11730
11731 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11732
117332008-02-01 Kenichi Handa <handa@m17n.org>
11734
11735 * xselect.c (Vselection_coding_system)
11736 (Vnext_selection_coding_system): Delete them.
11737 (syms_of_xselect): Don't declare selection-coding-system and
11738 next-selection-coding-system. They are declared in select.el.
11739
117402008-02-01 Jason Rumney <jasonr@gnu.org>
11741
11742 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11743
11744 * w32fns.c: Include imm.h.
11745 (get_composition_string_fn, get_ime_context_fn): New optional
11746 system functions.
11747 (globals_of_w32fns): Load them from imm32.dll.
11748 (ignore_ime_char): New flag.
11749 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11750 WM_IME_ENDCOMPOSITION messages.
11751
11752 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11753 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11754
117552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11756
11757 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11758 (READCHAR_REPORT_MULTIBYTE): New macro.
11759 (readchar): New 2nd arg MULTIBYTE.
11760 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11761 Make symbol's name multibyte according to the multibyteness of the
11762 source.
11763
117642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11765
11766 * xfaces.c (face_for_overlay_string): Call lookup_face with
11767 correct arguments (fix of synching with the trunk).
11768
117692008-02-01 Kenichi Handa <handa@m17n.org>
11770
11771 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11772 (font_prop_validate_non_neg, font_prop_validate_spacing):
11773 Delete argument prop_index.
11774 (font_property_table): Change arguments to validater. Change Callers.
11775 (font_lispy_object): Delete.
11776 (font_at): Use font_find_object instead fo font_lispy_object.
11777
117782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11779
11780 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11781 and file names.
11782
117832008-02-01 Jason Rumney <jasonr@gnu.org>
11784
11785 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11786 (font_matches_spec): Remove debug output.
11787 (add_font_entity_to_list): Avoid using substituted fonts.
11788
117892008-02-01 Jason Rumney <jasonr@gnu.org>
11790
11791 * doc.c (Fsnarf_documentation):
11792 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11793
117942008-02-01 Miles Bader <miles@gnu.org>
11795
11796 * dispextern.h (struct glyph_row): Only define "clip" field if
11797 HAVE_WINDOW_SYSTEM is defined.
11798
117992008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11800
11801 Fix up multi-tty merge.
11802
11803 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11804 and indentation.
11805
11806 * xfaces.c (free_realized_face, clear_face_gcs):
11807 Include font_done_for_face in the input_blocked section, just in case.
11808
11809 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11810 (get_char_face_and_encoding): Undo last change and remove the *other*
11811 duplicate definition (i.e. keep the one that's better scoped and that
11812 includes code for the font-backend).
11813
11814 * terminal.c (create_terminal): Default keyboard_coding to
11815 `no-conversion' and terminal_coding to `undecided'.
11816
11817 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11818
11819 * fontset.c (free_realized_fontsets): Check that the table entry does
11820 contain a fontset before trying to compare it to `base'.
11821
11822 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11823 syms_of_charset, and syms_of_coding earlier because init_window_once
11824 now needs Vcoding_system_hash_table to be setup.
11825
11826 * coding.h (default_buffer_file_coding): Remove.
11827
11828 * coding.c (default_buffer_file_coding): Remove.
11829 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11830 than ->symbol, and use the terminal-local coding system.
11831 (syms_of_coding): Don't setup the coding-systems that are not
11832 terminal-local.
11833 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11834
11835 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11836 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11837
11838 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11839 in chartab.c and were re-added here by mistake.
11840 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11841
11842 * doc.c (Fsnarf_documentation):
11843 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11844 src to etc.
11845
11846 * ChangeLog.10: Add mistakenly removed entry.
11847
118482008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11849
11850 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11851
118522008-02-01 Miles Bader <miles@gnu.org>
11853
11854 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11855 Add extra args to FACE_FOR_CHAR.
11856
118572008-02-01 Kenichi Handa <handa@m17n.org>
11858
11859 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11860 in sequence.
11861
11862 * chartab.c (map_sub_char_table, map_char_table): If the range
11863 contains just one character, call the function with that character
11864 even if the depth is not 3.
11865
118662008-02-01 Jason Rumney <jasonr@gnu.org>
11867
11868 * w32font.c (w32font_text_extents): Calculate metrics for the
11869 whole string.
11870
118712008-02-01 Jason Rumney <jasonr@gnu.org>
11872
11873 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11874
118752008-02-01 Jason Rumney <jasonr@gnu.org>
11876
11877 * w32term.c (x_set_glyph_string_clipping): Use
11878 get_glyph_string_clip_rects.
11879 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11880 Adjust for the change of struct glyph_string.
11881
11882 * w32font.c (w32font_draw): Do clipping here.
11883
118842008-02-01 Kenichi Handa <handa@m17n.org>
11885
11886 * xftfont.c (xftfont_draw): Adjust for the change of struct
11887 glyph_string.
11888
11889 * xterm.c (x_set_glyph_string_clipping): Use
11890 get_glyph_string_clip_rects.
11891 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11892 Adjust for the change of struct glyph_string.
11893
11894 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11895 the resulting clip(s}.
11896 (expose_overlaps): Add arg r. Change callers. Set it to
11897 row->clip temporarily.
11898 (expose_window): Redraw rows overlapping the exposed area.
11899
11900 * dispextern.h (struct glyph_row): New member clip.
11901 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11902 clip_height, new member clip, and num_clips.
11903
119042008-02-01 Kenichi Handa <handa@m17n.org>
11905
11906 * data.c (Fchar_or_string_p): Fix docstring.
11907
119082008-02-01 Kenichi Handa <handa@m17n.org>
11909
11910 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11911 create a temporary XftDraw object.
11912
119132008-02-01 Kenichi Handa <handa@m17n.org>
11914
11915 * font.c (Ffontp): Fix docstring.
11916
11917 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11918 strong evidence of ISO-2022.
11919
119202008-02-01 Kenichi Handa <handa@m17n.org>
11921
11922 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11923 SYNTAX_ENTRY_FOLLOW_PARENT.
11924
119252008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11926
11927 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11928 its type.
11929 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11930 Update to the new type of weak_hash_tables and next_weak.
11931
11932 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11933 a plain C pointer to Lisp_Hash_Table.
11934
11935 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11936 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11937 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11938 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11939 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11940 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11941 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11942 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11943 (GC_EQ): Remove since they've been identical to their non-GC_
11944 alter-egos ever since the markbit was eradicated.
11945
11946 * alloc.c:
11947 * buffer.c:
11948 * buffer.h:
11949 * data.c:
11950 * fileio.c:
11951 * filelock.c:
11952 * fns.c:
11953 * frame.h:
11954 * lisp.h:
11955 * macterm.c:
11956 * print.c:
11957 * process.c:
11958 * w32fns.c:
11959 * w32menu.c:
11960 * w32term.c:
11961 * xfns.c:
11962 * xmenu.c:
11963 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11964
119652008-02-01 Kenichi Handa <handa@m17n.org>
11966
11967 * chartab.c (map_sub_char_table): Make it work for the top-level
11968 char-table. Fix handling of parent char-table.
11969 (map_char_table): Adjust for the above change.
11970
119712008-02-01 Jason Rumney <jasonr@gnu.org>
11972
11973 * w32font.c (Qgdi): Rename from Qw32.
11974
119752008-02-01 Jason Rumney <jasonr@gnu.org>
11976
11977 * w32bdf.c (get_quoted_string): Make function static.
11978
119792008-02-01 Kenichi Handa <handa@m17n.org>
11980
11981 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11982 bigger ascent and descent than those of the font, use them as
11983 font's ascent and descent.
11984
119852008-02-01 Kenichi Handa <handa@m17n.org>
11986
11987 * Makefile.in (${lispsource}international/charprop.el): Move this
11988 target within "#ifdef HAVE_UNIDATA" and "#endif".
11989
119902008-02-01 Kenichi Handa <handa@m17n.org>
11991
11992 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11993 (shortlisp): Add ../lisp/language/tai-viet.el.
11994
119952008-02-01 Ulrich Mueller <ulm@gentoo.org>
11996
11997 * Makefile.in (${lispsource}international/charprop.el): Depend on
11998 temacs${EXEEXT}.
11999
120002008-02-01 Jason Rumney <jasonr@gnu.org>
12001
12002 * w32font.c (w32font_close): Delete the GDI font object.
12003
12004 * w32menu.c: Include character.h.
12005
12006 * w32proc.c: Likewise.
12007
12008 * w32select.c: Likewise.
12009
12010 * makefile.w32-in (w32proc.o): Depend on character.h.
12011
120122008-02-01 Jason Rumney <jasonr@gnu.org>
12013
12014 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12015
12016 * w32menu.c (syms_of_w32menu): Likewise.
12017
12018 * w32proc.c (syms_of_ntproc): Likewise.
12019
12020 * w32select.c (syms_of_w32select): Likewise.
12021
12022 * w32term.c (syms_of_w32term): Likewise.
12023
120242008-02-01 Jason Rumney <jasonr@gnu.org>
12025
12026 * w32font.c (w32font_draw): Delete brush after using it.
12027
120282008-02-01 Jason Rumney <jasonr@gnu.org>
12029
12030 * w32font.c (w32font_open): Don't set font_idx.
12031 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12032 to font settings.
12033 (w32font_draw): Fill background explicitly.
12034
120352008-02-01 Jason Rumney <jasonr@gnu.org>
12036
12037 * w32term.c (w32_initialize): Don't call w32font_initialize.
12038
12039 * w32font.c (w32font_info): Remove subranges.
12040 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12041 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12042 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12043 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12044 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12045 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12046 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12047 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12048 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12049 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12050 New symbols.
12051 (font_callback_data): New struct.
12052 (w32font_list, w32font_match): Use it.
12053 (w32font_open): Don't populate subranges.
12054 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12055 (w32font_encode_char): Always return unicode code-point as-is.
12056 (w32font_text_extents): Supply a transformation matrix to
12057 GetGlyphOutline. Never look up by glyph index. Avoid looping
12058 twice. Use unicode version of GetTexExtentPoint32 instead of
12059 glyph index version.
12060 (set_fonts_frame): Remove.
12061 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12062 set frame parameter. Use backward compatible fake foundries.
12063 Save generic family in extra slot under QCfamily. Make width slot
12064 constant. Save QCspacing value. Save list of scripts instead of
12065 binary subranges.
12066 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12067 (add_font_entity_to_list): Use font_callback_data struct. Filter
12068 unwanted fonts.
12069 (add_one_font_entity_to_list): Use font_callback_data struct.
12070 (w32_registry): Default to iso10646_1.
12071 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12072 string font registries. Don't fill in font name if it is a generic
12073 family name, fill family instead. Use spacing, family and script
12074 extra info to fill pitch, family and charset fields.
12075 (list_all_matching_fonts): Use font_callback_data struct.
12076 (unicode_range_for_char): Remove.
12077 (font_supported_scripts): New function.
12078 (w32font_initialize): Remove.
12079 (syms_of_w32font): Update which symbols are defined.
12080
120812008-02-01 Jason Rumney <jasonr@gnu.org>
12082
12083 * font.c (font_pixel_size): Reverse assq_no_quit args.
12084
12085 * w32term.h (FONT_WIDTH): Report max width, not average.
12086 (FONT_MAX_WIDTH): Remove.
12087 (FONT_AVG_WIDTH): New macro.
12088
12089 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12090 redefinition of FONT_WIDTH.
12091
12092 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12093 (w32_cache_char_metrics): Use FONT_WIDTH.
12094
12095 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12096
120972008-02-01 Jason Rumney <jasonr@gnu.org>
12098
12099 * w32font.c (w32font_open): Make lfHeight negative.
12100
12101 * w32fns.c (x_default_font_parameter): Use new style font name.
12102 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12103
121042008-02-01 Jason Rumney <jasonr@gnu.org>
12105
12106 * w32font.c (QCsubranges): New symbol.
12107 (w32font_open, w32font_has_char): Get subranges from subproperty
12108 of extra.
12109 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12110 (syms_of_w32font): Define :subranges symbol.
12111
12112 * font.c (font_put_extra): Expose externally.
12113
12114 * font.h (font_put_extra): Move declaration from font.c.
12115
12116 * font.c (Ffont_get): Use font driver to determine otf capability.
12117 (adjust_anchor): Check if driver defines anchor_point before using.
12118
12119 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12120 (w32font_draw): Use options.
12121 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12122 Fix detection of truetype fonts.
12123 (registry_to_w32_charset): Handle charsets other than iso8859-1
12124 expressed as lisp symbols.
12125 (w32_registry): Express charset as lisp symbol.
12126 (fill_in_logfont): Reverse pixel and point height logic.
12127 Don't set width here. Set quality to default.
12128
12129 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12130 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12131
12132 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12133 Remove redundant loop and allocation.
12134
12135 * makefile.w32-in (font.o, w32font.o): New objects.
12136 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12137 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12138
12139 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12140 STORE_XCHARB a valid l-value.
12141
12142 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12143 calculations for non-Truetype fonts.
12144 (x_draw_glyph_string): Sync with xterm.c.
12145 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12146 Remove redundant code.
12147 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12148
12149 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12150 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12151
12152 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12153 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12154
12155 * w32font.c: New file for w32 font backend.
12156
121572008-02-01 Kenichi Handa <handa@m17n.org>
12158
12159 * term.c: Don't include "buffer.h" twice.
12160
121612008-02-01 Kenichi Handa <handa@m17n.org>
12162
12163 * character.c (Funibyte_string): New function.
12164 (syms_of_character): Defsubr it.
12165
121662008-02-01 Jason Rumney <jasonr@gnu.org>
12167
12168 * w32term.c [USE_FONT_BACKEND]:
12169 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12170 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12171 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12172 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12173 (x_free_frame_resources): Sync with xterm.c.
12174
121752008-02-01 Andreas Schwab <schwab@suse.de>
12176
12177 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12178 char-table size.
12179
121802008-02-01 Kenichi Handa <handa@m17n.org>
12181
12182 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12183
121842008-02-01 Kenichi Handa <handa@m17n.org>
12185
12186 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12187 font_otf_gpos, add font_drive_otf.
12188
12189 * fontset.c (fontset_find_font): Pay attention to font size
12190 specified for a font.
12191 (reorder_font_vector): Check contents of font_def.
12192
12193 * font.c (struct otf_list): Delete it.
12194 (otf_list): Make it a lisp variable.
12195 (otf_open): Use lispy otf_list.
12196 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12197 (check_otf_features): New function.
12198 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12199 New functions.
12200 (font_drive_otf): New function merging font_otf_gsub and
12201 font_otf_gpos.
12202 (font_open_for_lface): New arg spec. Change argument order.
12203 (font_load_for_face): Adjust for the change of font_open_for_lface.
12204 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
12205 Ffont_otf_gpos.
12206 (syms_of_font): Staticpro otf_list. Delete defsubr of
12207 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
12208
12209 * xfaces.c (set_font_frame_param): Adjust for the change of
12210 font_open_for_lface.
12211
12212 * font.h (font_open_for_lface): Adjust prototype.
12213 (struct font_driver): Delete members otf_gsub and otf_gpos, add
12214 member otf_drive.
12215 (font_otf_gsub, font_otf_gpos): Delete externs.
12216 (font_drive_otf): Extern it.
12217
122182008-02-01 Kenichi Handa <handa@m17n.org>
12219
12220 * font.c (font_at): If the window W is not on a window system,
12221 return Qnil.
12222
12223 * coding.c (produce_chars, encode_coding): Don't call
12224 insert_from_gap if no characters to produce.
12225
122262008-02-01 Kenichi Handa <handa@m17n.org>
12227
12228 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
12229 Fclear_face_cache.
12230
12231 * xfaces.c (face_for_font): Check also face->font==font->font.font.
12232
122332008-02-01 Miles Bader <miles@gnu.org>
12234
12235 * emacs.c (main): Change default value of `enable_font_backend' to 1.
12236 Parse "--disable-font-backend" option.
12237 (standard_args): Add "--disable-font-backend" option.
12238
122392008-02-01 Kenichi Handa <handa@m17n.org>
12240
12241 * fontset.c (fontset_find_font): New function.
12242 (fontset_font): Use fontset_find_font.
12243 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
12244 Register the specified font for all Latin characters.
12245 (new_fontset_from_font): Register the specified font for all Latin
12246 characters.
12247 (dump_fontset): For a realized fontset, include the base fontset
12248 name in the returned vector.
12249
122502008-02-01 Kenichi Handa <handa@m17n.org>
12251
12252 * character.h (CHAR_STRING): Cast C to unsigned on calling
12253 char_string.
12254
12255 * character.c (char_string): Type of arg C changed to unsigned.
12256 Signal an error if C is an invalid character code.
12257
12258 * editfns.c (general_insert_function, Fchar_to_string):
12259 Use CHARACTERP, not INTEGERP.
12260
122612008-02-01 Kenichi Handa <handa@m17n.org>
12262
12263 * character.h (MIN_MULTIBYTE_LEADING_CODE)
12264 (MAX_MULTIBYTE_LEADING_CODE): New macros.
12265
12266 * regex.c (analyse_first): Fix for multibyte characters in "case
12267 charset:" and "case categoryspec:".
12268
122692008-02-01 Andreas Schwab <schwab@suse.de>
12270
12271 * Makefile.in (LIBES): Move standard libraries to the end.
12272
122732008-02-01 Kenichi Handa <handa@m17n.org>
12274
12275 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
12276 nonzero, don't shrink the buffer nextb.
12277
12278 * buffer.h (struct buffer_text): New member inhibit_shrinking.
12279
12280 * coding.c (coding_alloc_by_making_gap): New arg offset.
12281 (alloc_destination): Call coding_alloc_by_making_gap with the arg
12282 offset.
12283 (decode_coding_iso_2022): Update coding->safe_charsets.
12284 (decode_coding_gap): Temporarily set
12285 current_buffer->text->inhibit_shrinking to 1.
12286
122872008-02-01 Kenichi Handa <handa@m17n.org>
12288
12289 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12290 indexing into elements of s->cmp and s->char2b.
12291
122922008-02-01 Juanma Barranquero <lekktu@gmail.com>
12293
12294 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12295
122962008-02-01 Kenichi Handa <handa@m17n.org>
12297
12298 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12299 target_multibyte instead of multibyte.
12300 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12301 (bcmp_translate): Change the argument name from multibyte to
12302 target_multibyte.
12303
123042008-02-01 Kenichi Handa <handa@m17n.org>
12305
12306 These changes are to compile a regexp into a pattern that can be
12307 used both for multibyte and unibyte targets.
12308
12309 * Makefile.in (search.o): Depend on charset.h.
12310
12311 * character.c (multibyte_char_to_unibyte_safe): New function.
12312
12313 * search.c: Include "charset.h".
12314 (compile_pattern_1): Delete argument multibyte. Don't set
12315 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12316 (compile_pattern): Don't compare cp->buf.target_multibyte.
12317 Compare cp->buf.charset_unibyte.
12318 (compile_pattern): Set cp->buf.target_multibyte.
12319
12320 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12321
12322 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12323
12324 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12325 multibyte. Change callers.
12326 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12327 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12328 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12329 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12330 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12331 (regex_compile): Make the compiled pattern usable both for
12332 multibyte and unibyte targets.
12333 (analyse_first): Make the fastmap usable both for multibyte and
12334 unibyte targets.
12335 (TRANSLATE_VIA_MULTIBYTE): Delete.
12336 (re_match_2_internal): Pay attention to the case that the
12337 multibyteness of bufp and target may be different.
12338
123392008-02-01 Kenichi Handa <handa@m17n.org>
12340
12341 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12342 empty box occupy at least one column width.
12343
123442008-02-01 Miles Bader <miles@gnu.org>
12345
12346 * Makefile.in: Remove redundant HAVE_XFT clause.
12347
123482008-02-01 Kenichi Handa <handa@m17n.org>
12349
12350 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12351
123522008-02-01 Kenichi Handa <handa@m17n.org>
12353
12354 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12355 being nil.
12356
123572008-02-01 Kenichi Handa <handa@m17n.org>
12358
12359 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12360
123612008-02-01 Kenichi Handa <handa@m17n.org>
12362
12363 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12364
123652008-02-01 Kenichi Handa <handa@m17n.org>
12366
12367 * search.c (simple_search): Fix previous change.
12368
123692008-02-01 Kenichi Handa <handa@m17n.org>
12370
12371 * xftfont.c (ftfont_font_format): Extern declaration.
12372
12373 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12374
12375 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12376 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12377
12378 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12379 (ftfont_font_format): Fix previous change.
12380
12381 * font.h (Ffont_xlfd_name): EXFUN it.
12382
12383 * font.c (font_parse_xlfd): Fix the array size of `f'.
12384 (register_font_driver): Use EQ to compare driver->type.
12385
12386 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12387 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12388 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12389
123902008-02-01 Kenichi Handa <handa@m17n.org>
12391
12392 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12393 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12394
123952008-02-01 Kenichi Handa <handa@m17n.org>
12396
12397 * xfont.c (xfont_open): Set font->format.
12398
12399 * xftfont.c (xftfont_open): Set font->format.
12400
12401 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12402 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12403 (ftfont_open): Set font->format.
12404 (ftfont_font_format): New function.
12405
12406 * font.h (struct font): New member format.
12407
12408 * font.c (Qopentype): New variable.
12409 (syms_of_font): Defsym it.
12410 (Fquery_font): Change the format of the last element of the return
12411 value.
12412
124132008-02-01 Kenichi Handa <handa@m17n.org>
12414
12415 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12416 last resort.
12417
124182008-02-01 Kenichi Handa <handa@m17n.org>
12419
12420 * coding.c (detect_coding_charset): Fix detection of multi-byte
12421 charset.
12422
124232008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12424
12425 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12426
124272008-02-01 Kenichi Handa <handa@m17n.org>
12428
12429 * xdisp.c (get_next_display_element): Set it->face_id for the
12430 first component of a composition.
12431 (x_produce_glyphs): Check if the font is changed or not for composition.
12432
124332008-02-01 Kenichi Handa <handa@m17n.org>
12434
12435 * fontset.c (Qlatin): New variable.
12436 (syms_of_fontset): Define it as a lisp symbol.
12437 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12438
124392008-02-01 Kenichi Handa <handa@m17n.org>
12440
12441 * font.c (font_unparse_fcname): Pay attention to the case that
12442 some of font property is a null string.
12443
124442008-02-01 Kenichi Handa <handa@m17n.org>
12445
12446 * term.c: Include "composite.h".
12447 (encode_terminal_code): Output all components of composition.
12448 Check the size of encode_terminal_src.
12449 (produce_glyphs): For composition, call produce_composite_glyph.
12450 (append_composite_glyph, produce_composite_glyph): New functions.
12451
12452 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12453 is not found, get font_info from the current ascii face.
12454
124552008-02-01 Kenichi Handa <handa@m17n.org>
12456
12457 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12458 buffer-file-name to Qnil before calling insert_from_buffer.
12459
12460 * font.c (font_unparse_fcname): Pay attention to the case that
12461 foundry is a null string.
12462
124632008-02-01 Kenichi Handa <handa@m17n.org>
12464
12465 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12466
12467 * font.c (Qunicode_sip): New variable.
12468 (syms_of_font): Declare it as a Lisp symbol.
12469
12470 * font.h (Qunicode_sip): Extern it.
12471
124722008-02-01 Kenichi Handa <handa@m17n.org>
12473
12474 * composite.c (get_composition_id): Pay attention to TAB component.
12475
12476 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12477 TAB. Adjust for the change of s->char2b which always points to
12478 the first element of allocated memory.
12479
12480 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12481
12482 * xdisp.c (handle_composition_prop): Set it->c to the first
12483 non-TAB component.
12484 (fill_composite_glyph_string): Change argument.
12485 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12486 (x_produce_glyphs): Fix handling of left/right padding.
12487
124882008-02-01 Kenichi Handa <handa@m17n.org>
12489
12490 * coding.c (detect_coding_system): Fix for handling off
12491 inhibit_iso_escape_detection. Fix for the case that no coding
12492 system is defined for a specific coding category.
12493
124942008-02-01 Kenichi Handa <handa@m17n.org>
12495
12496 * font.c (font_matching_entity): Delete unused local var.
12497
12498 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12499 opening a font.
12500
12501 * fileio.c (Finsert_file_contents): On recovering a file, assume
12502 Unix-like eol.
12503 (choose_write_coding_system): On auto-saving a file, force
12504 Unix-like eol.
12505
12506 * coding.c (setup_coding_system): Fix setting of
12507 coding->common_flags based on eol_type.
12508 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12509 inherit from it.
12510
125112008-02-01 Kenichi Handa <handa@m17n.org>
12512
12513 * alloc.c (NSTATICS): Increas to 0x600.
12514
125152008-02-01 Kenichi Handa <handa@m17n.org>
12516
12517 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12518 (ftfont_list): Don't check :name property.
12519 (ftfont_match): New function.
12520 (ftfont_pattern_entity): If the pattern doesn't contain
12521 FC_SPACING, don't assume FC_MONO.
12522
12523 * font.h (struct font_driver): New member `match'.
12524 (font_update_drivers): Adjust prototype.
12525
12526 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12527 property of FONT.
12528 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12529 them unconditionally.
12530 (font_matching_entity): New function.
12531 (font_open_by_name): Try font_matching_entity if exact match is
12532 not found.
12533 (font_update_drivers): Delete the arg FONT. Return a list of
12534 actually used backends. Don't free faces, font caches here.
12535 Don't store data in frame parameters. Don't call x_set_font.
12536 (Ffont_spec): Store :name property as is.
12537 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12538 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12539 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12540 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12541 Call font->driver->otf_gsub instead of font_otf_gsub.
12542
12543 * frame.c (x_set_font_backend): Do more works that were done in
12544 font_update_drivers before.
12545
12546 * xfont.c (xfont_match): New function.
12547 (xfont_driver): Set xfont_driver.match to xfont_match.
12548 (xfont_draw): Set font in GC if necessary.
12549
12550 * ftxfont.c (ftxfont_match): New function.
12551 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12552
12553 * xftfont.c (xftfont_match): New function.
12554 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12555
125562008-02-01 Kenichi Handa <handa@m17n.org>
12557
12558 * font.h (struct font): New member scalable.
12559 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12560 (font_otf_gsub): Adjust prototype.
12561
12562 * font.c (font_otf_capability): Fix handling of the default langsys.
12563 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12564 Check the contents of SPEC.
12565 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12566 (check_gstring): New function.
12567 (REPLACEMENT_CHARACTER): New macro.
12568 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12569 glyph codes of GSTRING.
12570 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12571 (font_prepare_composition): Set cmp->glyph_len.
12572 (font_open_entity): Set font->scalable.
12573 (Ffont_get): Handle :otf property.
12574 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12575 functions.
12576 (Fquery_font): Use font->font.full_name.
12577 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12578 Sfont_otf_alternates.
12579
12580 * ftfont.c (ftfont_open): Set font->font.full_name and
12581 font->font.name properly. Fix calculation of font->font.height
12582 and font->min_width.
12583
12584 * ftxfont.c (ftxfont_create_gcs): New function.
12585 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12586 (ftxfont_draw_backgrond): Fix filling region.
12587 (ftxfont_default_fid): New function.
12588 (ftxfont_open): Set xfont->fid to the return value of
12589 ftxfont_default_fid.
12590 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12591 (ftxfont_done_face): Free only GCs that are created by
12592 ftxfont_create_gcs.
12593 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12594
12595 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12596 Clip to src->width, etc (not src->clip_XXX).
12597
12598 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12599 FontBackend frame parameter.
12600
126012008-02-01 Kenichi Handa <handa@m17n.org>
12602
12603 * font.h (struct font_driver_list): New member `on'.
12604 (Fclear_font_cache): EXFUN it.
12605 (font_update_drivers): Extern it.
12606
12607 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12608 (font_list_entities): Check driver_list->on.
12609 (register_font_driver): Initalize `on' member to 0.
12610 (font_update_drivers): New function.
12611 (Fclear_font_cache): Check driver_list->on.
12612
12613 * frame.h (Qfont_backend): Extern it.
12614 (x_set_font_backend): Extern it.
12615
12616 * frame.c (Qfont_backend): New variable.
12617 (frame_parms): New element for font-backend.
12618 (x_set_font_backend): New function.
12619
12620 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12621 FontBackend frame parameter.
12622 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12623 x_set_font_backend.
12624
12625 * xfont.c (xfont_list): Don't try listing by :name property if the
12626 name is not for XLFD.
12627
126282008-02-01 Kenichi Handa <handa@m17n.org>
12629
12630 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12631 (LGLYPH_SET_TO): New macros.
12632 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12633 element of G is vector or not.
12634 (font_at): Extern it.
12635
12636 * font.c: Include window.h.
12637 (font_lispy_object): New function.
12638 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12639 end of valid glyph.
12640 (font_close_object): Fix getting (struct font *).
12641 (font_at): New function.
12642 (Ffont_get): If FONT is a font-object, get entity from it.
12643 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12644 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12645 range check.
12646 (Ffont_at): New function.
12647 (syms_of_font): Defsubr Sfont_at.
12648
12649 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12650 before the entry for Qcomposition.
12651 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12652 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12653 the font in gstring.
12654 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12655 LGLYPH_FORM (g) to detect the end of valid glyph.
12656 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12657 we are composing with gstring.
12658
12659 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12660 Check if adjustment is vector or not.
12661
12662 * Makefile.in (font.o): Make it depends on window.h.
12663
126642008-02-01 Kenichi Handa <handa@m17n.org>
12665
12666 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12667 adjustment is vector or not.
12668
126692008-02-01 Miles Bader <miles@gnu.org>
12670
12671 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12672
126732008-02-01 Kenichi Handa <handa@m17n.org>
12674
12675 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12676 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12677 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12678
12679 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12680 (DEVICE_DELTA): Fix typo.
12681 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12682 LGLYPH format.
12683
12684 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12685 the change of LGLYPH format.
12686
126872008-02-01 Kenichi Handa <handa@m17n.org>
12688
12689 * ftfont.c (ftfont_list): Fix typo.
12690 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12691
126922008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12693
12694 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12695
12696 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12697 xftface_info is non-NULL.
12698
126992008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12700
12701 * ftfont.c (ftfont_list): Move misplaced #endif.
12702
127032008-02-01 Kenichi Handa <handa@m17n.org>
12704
12705 * ftfont.c (ftfont_list): Pay attention to the case that
12706 FC_CAPABILITY is not defined.
12707
127082008-02-01 Kenichi Handa <handa@m17n.org>
12709
12710 * xftfont.c (xftfont_open): Set charset related members to -1.
12711
12712 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12713 QCname.
12714 (ftfont_open): Set charset related members to -1.
12715
12716 * fontset.c (Votf_script_alist): New variable.
12717 (syms_of_fontset): Initialize it.
12718 (fontset_font): Delete unused variable.
12719
12720 * fontset.h (Votf_script_alist): Extern it.
12721
12722 * font.c (font_find_for_lface): Optimize code.
12723
12724 * font.h (font_close_object, font_merge_old_spec): Extern them.
12725
127262008-02-01 Kenichi Handa <handa@m17n.org>
12727
12728 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12729 (syms_of_font): Initialize them.
12730 (font_pixel_size): Allow float value in dpi.
12731 (font_prop_validate_type): Delete.
12732 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12733 Change caller.
12734 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12735 (font_prop_validate_extra): Delete.
12736 (font_prop_validate_spacing): New function.
12737 (font_property_table): Add elements for all known properties.
12738 (get_font_prop_index): Rename from check_font_prop_name. New
12739 argument FROM. Change caller.
12740 (font_prop_validate): Validate all known properties.
12741 (font_put_extra): Delete argument force. Change caller.
12742 (font_expand_wildcards): Make it static. Fix the way of shrinking
12743 the possible range.
12744 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12745 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12746 Change caller.
12747 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12748 (font_parse_fcname): Delete argument merge. Fix parsing of point
12749 size. Don't validate properties values here. Change caller.
12750 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12751 (font_open_by_name): Delete unused variable.
12752 (Ffont_spec): Likewise. Validate property values.
12753 (Ffont_match_p): New function.
12754
12755 * font.h (QCscalable): Extern it.
12756 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12757
12758 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12759
12760 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12761 (xfont_list_pattern): New function.
12762 (xfont_list): Use xfont_list_pattern.
12763
127642008-02-01 Kenichi Handa <handa@m17n.org>
12765
12766 * font.h (Flist_fonts): EXFUN it.
12767
127682008-02-01 Jason Rumney <jasonr@gnu.org>
12769
12770 * w32term.c (w32_initialize): Add back smoothing_type and
12771 smoothing_enabled definitions.
12772
127732008-02-01 Kenichi Handa <handa@m17n.org>
12774
12775 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12776 s->face->font on determining underline position.
12777
127782008-02-01 Kenichi Handa <handa@m17n.org>
12779
12780 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12781 (font_has_char): Accept font-object too.
12782 (font_find_for_lface): Try at first with a size specified in face.
12783
127842008-02-01 Kenichi Handa <handa@m17n.org>
12785
12786 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12787 font_open_by_name.
12788
127892008-02-01 Kenichi Handa <handa@m17n.org>
12790
12791 * font.h (QCspacing, QCdpi): Extern them.
12792 (enum font_spacing): New enum.
12793 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12794
12795 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12796 (QCspacing, QCdpi): New variables.
12797 (syms_of_font): Initialize them.
12798 (font_pixel_size): New function.
12799 (font_put_extra): New function.
12800 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12801 in FONT_EXTRA.
12802 (font_parse_fcname): Handle enumerated values (e.g. bold).
12803 Fix handling font size. Add QCname property that contains only
12804 unknown properties.
12805 (font_score): Change argument. Change caller. Pay attention to
12806 FONT_PIXEL_SIZE_QUANTUM.
12807 (font_sort_entites, font_list_entities, font_find_for_lface)
12808 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12809 (Ffont_spec): Add QCname property that contains only unknown properties.
12810
12811 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12812 include weight in listing pattern, instead check weight of each
12813 listed font. Don't include scalable in pattern. Pay attention to
12814 FONT_PIXEL_SIZE_QUANTUM.
12815
128162008-02-01 Kenichi Handa <handa@m17n.org>
12817
12818 * font.c (font_parse_fcname): Fix parsing of point-size.
12819 (font_unparse_fcname): Produce symbolic names for style properties.
12820 (font_list_entities): Handle float size correctly.
12821 (font_open_by_name): Prefer `normal' property values if the name
12822 doesn't specify them.
12823
12824 * fontset.c (Finternal_char_font): Use font_get_name, not
12825 Ffont_xlfd_name.
12826
12827 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12828 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12829 pattern. Don't force scalable.
12830
12831 * xftfont.c (xftfont_open): For generating a name, start from
12832 96-byte buffer.
12833
128342008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12835
12836 * frame.h (x_new_fontset2): Fix prototype.
12837
128382008-02-01 Kenichi Handa <handa@m17n.org>
12839
12840 * font.h (struct font_driver): Delete member parse_name.
12841 (font_match_p, font_get_spec, font_parse_fcname)
12842 (font_unparse_fcname): Extern them.
12843 (font_get_name): Adjust prototype.
12844
12845 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12846 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12847 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12848 unnecessary checks for weight, slant, and swidth.
12849 (font_parse_fcname): New function.
12850 (font_unparse_fcname): New function.
12851 (font_parse_name): New function.
12852 (font_match_p): New function.
12853 (font_get_name): Change return value to Lisp string.
12854 (font_get_spec): New function.
12855 (Qunspecified, Qignore_defface): Don't extern them.
12856 (font_find_for_lface): Assume that LFACE is fully specified.
12857 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12858 object, use it for FACE.
12859 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12860 driver->parse_name.
12861 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12862
12863 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12864 prototype.
12865
12866 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12867 argument F. Don't call Fnew_fontset. Instead, directly call
12868 make_fontset.
12869
12870 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12871
12872 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12873 of x_new_fontset2.
12874
12875 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12876 (Qsans__serif): New variables.
12877 (ftfont_generic_family_list): New variable.
12878 (syms_of_ftfont): Initialize the above variables.
12879 (ftfont_pattern_entity): Delete argument NAME.
12880 (ftfont_list_generic_family): New function.
12881 (ftfont_parse_name): Delete this function.
12882 (ftfont_list): Try generic family only when FcFontList found no font.
12883 (ftfont_list_family): Fix args to FcObjectSetBuild.
12884
12885 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12886 object in attrs[LFACE_FONT_INDEX].
12887 (set_lface_from_font_name): Cancel all changes for font-backend.
12888 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12889 function.
12890 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12891 font object in QCfont attribute.
12892 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12893 (realize_default_face) [USE_FONT_BACKEND]: Call
12894 set_lface_from_font_and_fontset.
12895
12896 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12897 "fixed", and signal error here if no suitable font was found.
12898
12899 * xfont.c (xfont_parse_name): Delete this function.
12900
12901 * xftfont.c (xftfont_open): Change coding style of error
12902 handling. Generate fontconfig's fontname pattern.
12903
12904 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12905 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12906
12907 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12908 Both args FONTSET and FONT_OBJECT must be existing ones.
12909
129102008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12911
12912 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12913
129142008-02-01 Kenichi Handa <handa@m17n.org>
12915
12916 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12917
12918 * font.h (struct font): Fix typo.
12919
12920 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12921 XLFD_XXX_INDEX.
12922 (enum xlfd_field_mask): New enum.
12923 (intern_font_field): Changed argument. Change caller. If digits
12924 are followed by non-digits, return a symbol.
12925 (font_expand_wildcards): New function.
12926 (font_parse_xlfd): Fix wildcard handling.
12927 (Ffont_spec): If :name is specified, reflect the info in the other
12928 properties.
12929
12930 * ftfont.c (ftfont_pattern_entity): Fix typo.
12931 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12932 locale.
12933
129342008-02-01 Kenichi Handa <handa@m17n.org>
12935
12936 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12937
12938 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12939 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12940 registry doesn't specify encoding part.
12941 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12942 (font_open_by_name): At first try parsing the name.
12943 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12944 as Lisp symbols.
12945
12946 * fontset.c (reorder_font_vector): Pay attention to the case that
12947 the 3rd element of font_def is nil.
12948 (fontset_font): For the default fontset, append one more fontset
12949 elements for a script-based font specification. Don't add script
12950 attribute on finding a font.
12951 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12952 font name.
12953 (fontset_ascii_font): If a font can't be opened, return nil.
12954
12955 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12956 (ftfont_pattern_entity): New function.
12957 (ftfont_get_cache): Assume that freetype_font_cache is already
12958 initialized.
12959 (ftfont_list): Handle the case that a file is specified in font
12960 name. Use ftfont_pattern_entity to generate entities.
12961 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12962 (syms_of_ftfont): Initialize freetype_font_cache.
12963
12964 * xftfont.c (xftfont_open): Make the font name fontconfig's
12965 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12966 (xftfont_close): Free font->font.name if not NULL.
12967
12968 * xfont.c (xfont_list): If script is specified for a font, return
12969 null_vector.
12970 (xfont_list_family): Declare argument type.
12971
12972 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12973 name, set LFACE_FONT (lface) to nil.
12974
12975 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12976 return Qnil.
12977
129782008-02-01 Kenichi Handa <handa@m17n.org>
12979
12980 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12981 (standard_args): Add "-enable-font-backend".
12982
129832008-02-01 Kenichi Handa <handa@m17n.org>
12984
12985 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12986 (struct xftdraw_list, xftdraw_list): Delete them.
12987 (register_xftdraw, check_xftdraw): Delete them.
12988 (xftfont_prepare_face): Don't call register_xftdraw.
12989 (xftfont_done_face): Don't call check_xftdraw.
12990 (xftfont_draw): Get background color only when with_background is
12991 nonzero.
12992
12993 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12994
129952008-02-01 Kenichi Handa <handa@m17n.org>
12996
12997 These changes are for the new font handling codes.
12998
12999 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13000 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13001 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13002 (FONTSRC, FONTOBJ): New variables.
13003 (obj): Add $(FONTOBJ).
13004 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13005 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13006 @LIBOTF_LIBS@.
13007 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13008 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13009
13010 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13011
13012 * character.h (Vscript_representative_chars): Extern it.
13013
13014 * character.c (Vscript_representative_chars): New variable.
13015 (syms_of_character): Declare it as a Lisp variable.
13016
13017 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13018 enable_font_backend is nonzero, accept the composition method
13019 COMPOSITION_WITH_GLYPH_STRING.
13020
13021 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13022 enumeration COMPOSITION_WITH_GLYPH_STRING.
13023
13024 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13025 members clip_x, clip_y, clip_width, and clip_height.
13026 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13027
13028 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13029 --enable-font-backend. Call syms_of_font.
13030
13031 * fns.c (assoc_no_quit): New function.
13032
13033 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13034 (face_for_font, new_fontset_from_font)
13035 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13036
13037 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13038 (fontset_font, fontset_ascii, face_for_char)
13039 (make_fontset_for_ascii_face, Ffont_info)
13040 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13041 is nonzero, use font-backend mechanism.
13042 (find_font_encoding): Make it non-static.
13043 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13044 New functions.
13045
13046 * frame.h (struct frame): New members resx and resy.
13047 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13048 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13049
13050 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13051 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13052
13053 * lisp.h (assoc_no_quit): Extern it.
13054
13055 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13056 Through out the file, use FONT_INFO_FROM_FACE instead of
13057 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13058 rif->per_char_metric.
13059 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13060 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13061 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13062 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13063 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13064 nonzero, use font-backend mechanism.
13065 (get_per_char_metric): New function.
13066
13067 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13068 (set_lface_from_font_name)
13069 (set_font_frame_param, free_realized_face)
13070 (prepare_face_for_display, clear_face_gcs)
13071 (Finternal_set_font_selection_order, realize_x_face)
13072 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13073 font-backend mechanism.
13074 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13075 (load_face_font) [USE_FONT_BACKEND]: Abort.
13076 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13077 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13078
13079 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13080 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13081 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13082 nonzero, register all available font drivers. Call
13083 x_default_font_parameter for deciding a font.
13084 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13085
13086 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13087 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13088 (x_set_glyph_string_clipping_exactly)
13089 (x_compute_glyph_string_overhangs)
13090 (x_draw_glyph_string_foreground)
13091 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13092 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13093 enable_font_backend is nonzero, use font-backend mechanism.
13094 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13095
130962008-02-01 Kenichi Handa <handa@m17n.org>
13097
13098 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13099 system_eol_type.
13100 (syms_of_coding): Initialize system_eol_type.
13101
13102 * process.c (Fset_process_coding_system): Inherit system's eol
13103 format if necessary.
13104
131052008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13106
13107 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13108
131092008-02-01 Kenichi Handa <handa@m17n.org>
13110
13111 * coding.c (decode_eol): Pay attention to buffer relocation in
13112 del_range_2.
13113 (decode_coding): Call decode_eol before restoring undo_list.
13114
131152008-02-01 Kenichi Handa <handa@m17n.org>
13116
13117 * charset.c (Fdefine_charset_internal): Fix setting of
13118 emacs_mule_bytes.
13119
131202008-02-01 Kenichi Handa <handa@m17n.org>
13121
13122 * keyboard.c (read_char): Check if C is a character or not before
13123 looking up Vkeyboard_translate_table.
13124
131252008-02-01 Kenichi Handa <handa@m17n.org>
13126
13127 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13128 condition to terminate the loop.
13129
131302008-02-01 Kenichi Handa <handa@m17n.org>
13131
13132 * coding.c (produce_composition): Compare charbuf[i] instead of
13133 args[i] against 0.
13134 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13135
131362008-02-01 Kenichi Handa <handa@m17n.org>
13137
13138 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13139 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13140 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13141 detect_coding.
13142 (emacs_mule_char): Handle old style (Emacs 20) component character
13143 of a composition.
13144 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13145 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13146 composition rule.
13147 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13148
131492008-02-01 Kenichi Handa <handa@m17n.org>
13150
13151 * coding.c (encode_coding_ccl): Allocate destination dynamically
13152 when necessary.
13153
131542008-02-01 Kenichi Handa <handa@m17n.org>
13155
13156 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13157 the loop. When quitted, show a proper error message.
13158
131592008-02-01 Kenichi Handa <handa@m17n.org>
13160
13161 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13162 src->clip_head and src->clip_tail temporarily instead of src->hl.
13163
13164 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13165 character sequence.
13166 (Fccl_execute_on_string): Use ASET, not XSET.
13167
131682008-02-01 Kenichi Handa <handa@m17n.org>
13169
13170 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13171
131722008-02-01 Kenichi Handa <handa@m17n.org>
13173
13174 * coding.c (decode_coding): Fix the condition of terminating the
13175 decoding loop.
13176
131772008-02-01 Kenichi Handa <handa@m17n.org>
13178
13179 * data.c (Faset): On setting a character bigger than 255 in a
13180 unibyte string, signal an error instead of make the string multibyte.
13181
131822008-02-01 Kenichi Handa <handa@m17n.org>
13183
13184 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13185 made by a mapping table.
13186
131872008-02-01 Kenichi Handa <handa@m17n.org>
13188
13189 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13190 not.
13191 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13192 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13193
13194 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13195 s->face is NULL or not.
13196
131972008-02-01 Kenichi Handa <handa@m17n.org>
13198
13199 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
13200 (x_draw_glyph_string): Fix drawing of right_overhang and
13201 left_overhang around/on cursor.
13202
13203 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
13204
132052008-02-01 Kenichi Handa <handa@m17n.org>
13206
13207 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
13208
132092008-02-01 Kenichi Handa <handa@m17n.org>
13210
13211 * coding.c (Fdefine_coding_system_internal)
13212 (Fdefine_coding_system_alias): Avoid a duplicated element in
13213 Vcoding_system_alist.
13214
132152008-02-01 Kenichi Handa <handa@m17n.org>
13216
13217 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
13218
13219 * coding.c (Qcoding_system_define_form): New variable.
13220 (syms_of_coding): Intern and staticpro it.
13221 (Fcoding_system_p): Check Qcoding_system_define_form.
13222 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
13223
13224 * coding.h (CODING_SYSTEM_P): If ID is not available, call
13225 Fcoding_system_p.
13226 (CHECK_CODING_SYSTEM): If ID is not available, call
13227 Fcheck_coding_system.
13228 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
13229 Try also Fcheck_coding_system.
13230
132312008-02-01 Kenichi Handa <handa@m17n.org>
13232
13233 * coding.c (code_conversion_restore): GCPRO arg.
13234
132352008-02-01 Kenichi Handa <handa@m17n.org>
13236
13237 * character.c (lisp_string_width): Check multibyteness of STRING.
13238
132392008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13240
13241 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
13242 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
13243 (decode_mac_font_name): Use decode_coding_c_string instead of
13244 decode_coding.
13245 (x_load_font): Initialize fontp->fontset to -1. Set
13246 fontp->encoding_type.
13247
132482008-02-01 Kenichi Handa <handa@m17n.org>
13249
13250 * search.c (search_buffer): Give up BM search on case-fold-search
13251 if one of a target character has a case-equivalence of different
13252 byte length even if that target charcter is an ASCII.
13253 (simple_search): Fix calculation of byte length of matched text.
13254 (boyer_moore): Fix handling of case-equivalent multibyte characters.
13255
132562008-02-01 Kenichi Handa <handa@m17n.org>
13257
13258 * coding.c (decode_coding): Fix handling of invalid bytes.
13259
132602008-02-01 Kenichi Handa <handa@m17n.org>
13261
13262 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
13263 Unicode characters.
13264
132652008-02-01 Kenichi Handa <handa@m17n.org>
13266
13267 * coding.c (encode_coding_object): If a pre-write-conversion
13268 function makes a new buffer, kill it.
13269
132702008-02-01 Kenichi Handa <handa@m17n.org>
13271
13272 * coding.c (QCascii_compatible_p): New variable.
13273 (syms_of_coding): Initialize it.
13274 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
13275 calling string_char.
13276 (record_conversion_result): Add `default:' case.
13277 (coding_charset_list): Delete unused variable `coding_type'.
13278 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
13279 property in the plist of the coding system.
13280 (Fcoding_system_put): Check QCascii_compatible_p.
13281
132822008-02-01 Miles Bader <miles@gnu.org>
13283
13284 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13285 removed calculation of frame `f', as it's now used.
13286
132872008-02-01 Kenichi Handa <handa@m17n.org>
13288
13289 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13290 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13291 (UNIDATA): New variable.
13292 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13293 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13294 $(RUN_TEMACS) unconditionally.
13295
132962008-02-01 Kenichi Handa <handa@m17n.org>
13297
13298 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13299 (admindir): New variable.
13300 ($(lispsource)international/charprop.el): New target.
13301
133022008-02-01 Miles Bader <miles@gnu.org>
13303
13304 * character.c (chars-in-region): Remove obsolete function.
13305 (syms_of_character): Remove its initialization.
13306
133072008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13308
13309 * w32select.c (validate_coding_system)
13310 (setup_windows_coding_system): New functions.
13311 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13312 setup_windows_coding_system.
13313 (setup_config, Fw32_get_clipboard_data): Use
13314 validate_coding_system.
13315 (Fx_selection_exists): Move call to setup_config to a place
13316 where signals are allowed.
13317
13318 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13319 (Fcheck_coding_system): Add declarations.
13320
133212008-02-01 Kenichi Handa <handa@m17n.org>
13322
13323 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13324
133252008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13326
13327 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13328 string as the second argument for x_new_fontset.
13329
133302008-02-01 Kenichi Handa <handa@m17n.org>
13331
13332 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13333 (encode_coding_object): Use safe_call instead of call2.
13334
133352008-02-01 Kenichi Handa <handa@m17n.org>
13336
13337 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13338
13339 * Makefile.in (lisp): Include charprop.el.
13340
133412008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13342
13343 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13344 Not sure if it's unnecessary.
13345
133462008-02-01 Steven Tamm <steventamm@mac.com>
13347
13348 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13349 some possibly unnecessary fontset checking code that crashed
13350 when creating a new frame.
13351
133522008-02-01 Kenichi Handa <handa@m17n.org>
13353
13354 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13355 lookup_face.
13356
13357 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13358
13359 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13360
133612008-02-01 Kenichi Handa <handa@m17n.org>
13362
13363 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13364 (coding_charset_list): New function.
13365
13366 * coding.h (coding_charset_list): Extern it.
13367
133682008-02-01 Kenichi Handa <handa@m17n.org>
13369
13370 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13371 concatenation of family and registry.
13372
133732008-02-01 Kenichi Handa <handa@m17n.org>
13374
13375 * character.h (BYTE8_STRING): Fix typo.
13376
13377 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13378 string to multibyte (sync to HEAD).
13379
13380 * casefiddle.c (casify_region): Handle changes in byte-length
13381 using replace_range_2 (sync to HEAD).
13382
133832008-02-01 Andreas Schwab <schwab@suse.de>
13384
13385 * chartab.c (map_char_table): GCPRO table and arg.
13386
133872008-02-01 Kenichi Handa <handa@m17n.org>
13388
13389 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13390 already at limit.
13391
133922008-02-01 Kenichi Handa <handa@m17n.org>
13393
13394 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13395 instead of fast_c_string_match_ignore_case.
13396 (find_font_encoding): Change argument to Lisp_Object. Use
13397 fast_string_match_ignore_case instead of
13398 fast_c_string_match_ignore_case. Change caller.
13399
134002008-02-01 Kenichi Handa <handa@m17n.org>
13401
13402 * xdisp.c (get_next_display_element): In unibyte case, decide to
13403 display in octal form by checking a character by
13404 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13405
13406 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13407
13408 * character.c (unibyte_has_multibyte_table): New variable.
13409
13410 * character.h (unibyte_has_multibyte_table): Extern it.
13411 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13412
134132008-02-01 Kenichi Handa <handa@m17n.org>
13414
13415 * coding.c (encode_coding_iso_2022): Fix handling of charset
13416 annotation.
13417
134182008-02-01 Kenichi Handa <handa@m17n.org>
13419
13420 * coding.c (setup_coding_system): If coding_system is nil, use
13421 Qundecided.
13422 (Fterminal_coding_system): Return nil if terminal coding system is
13423 `undecided'.
13424 (syms_of_coding): Define coding-system `undecided' here. Setup
13425 terminal_coding as `undecided'.
13426
134272008-02-01 Kenichi Handa <handa@m17n.org>
13428
13429 * xdisp.c (message_dolog, set_message_1): Call
13430 unibyte_char_to_multibyte with arg type int.
13431
13432 * lread.c (read1): Fix reading of a char-table.
13433
13434 * print.c (print_object): Include sub char-table in circularities
13435 detection.
13436
134372008-02-01 Kenichi Handa <handa@m17n.org>
13438
13439 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13440 Append the found sequences in car of ARGS instead of prepending.
13441
134422008-02-01 Kenichi Handa <handa@m17n.org>
13443
13444 * fileio.c (report_file_error): Make a unibyte string from
13445 strerror (errorno).
13446 (Fsubstitute_in_file_name): Fix the arg to
13447 unibyte_char_to_multibyte. It is evaluated twice.
13448
134492008-02-01 Kenichi Handa <handa@m17n.org>
13450
13451 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13452
134532008-02-01 Kenichi Handa <handa@m17n.org>
13454
13455 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13456 BOM is not found.
13457 (detect_coding, detect_coding_system): Optimization for ISO-2022
13458 when no 8-bit data is found.
13459
134602008-02-01 Jason Rumney <jasonr@gnu.org>
13461
13462 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13463
134642008-02-01 Kenichi Handa <handa@m17n.org>
13465
13466 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13467 CHARS.
13468
134692008-02-01 Steven Tamm <steventamm@mac.com>
13470
13471 * macterm.c (mac_encode_char): Add charset argument and update
13472 to use encoding_type.
13473 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13474 switch to pure fontset.
13475 (decode_mac_font_name): Temporarily remove decoding.
13476 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13477 (x_load_font): Temporarily remove encoding.
13478
134792008-02-01 Kenichi Handa <handa@m17n.org>
13480
13481 * xfaces.c (Fface_font): If frame is not on a window system,
13482 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13483 refer to face->font.
13484 (split_font_name_into_vector, build_font_name_from_vector)
13485 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13486 when HAVE_WINDOW_SYSTEM is defined.
13487
134882008-02-01 Kenichi Handa <handa@m17n.org>
13489
13490 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13491 (x_produce_glyphs): Fix setting of members of cmp in case
13492 cmp->glyph_len is zero.
13493
13494 * fontset.c (Fset_fontset_font): Fix docstring.
13495 (Ffontset_info): Make it backward compatible. New arg ALL.
13496
134972008-02-01 Kim F. Storm <storm@cua.dk>
13498
13499 * process.c (read_process_output): Grow decoding_buf when needed;
13500 this could cause a crash in allocate_string and compact_small_strings.
13501
135022008-02-01 Kenichi Handa <handa@m17n.org>
13503
13504 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13505
135062008-02-01 Kenichi Handa <handa@m17n.org>
13507
13508 * coding.c (setup_coding_system): Set coding->common_flags
13509 correctly for raw-text.
13510 (consume_chars): On encoding unibyte text by raw-text, don't check
13511 multibyte form.
13512 (encode_coding): On encoding by raw-text, never use translation tables.
13513
13514 * fileio.c (e_write): Short cut for the case of no encoding.
13515
135162008-02-01 Kenichi Handa <handa@m17n.org>
13517
13518 * coding.c (detect_coding, detect_coding_system): Delete unused
13519 variables.
13520
135212008-02-01 Kenichi Handa <handa@m17n.org>
13522
13523 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13524 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13525
135262008-02-01 Kenichi Handa <handa@m17n.org>
13527
13528 * coding.c (Ffind_coding_systems_region_internal): Include
13529 raw-text and no-conversion in the result.
13530
135312008-02-01 Kenichi Handa <handa@m17n.org>
13532
13533 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13534 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13535 FONT_DEF.
13536 (font_def_arg, add_arg, from_arg, to_arg): New args.
13537 (set_fontset_font): Change argument.
13538 (Fset_fontset_font): Fix for the case that TARGET is a script
13539 name and charset name.
13540 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13541
135422008-02-01 Kenichi Handa <handa@m17n.org>
13543
13544 * fontset.c (fontset_font): Rename from fontset_face. Change return
13545 value.
13546 (face_suitable_for_char_p, face_for_char): Adjust for the change
13547 of fontset_font.
13548 (make_fontset_for_ascii_face): Fix setting of the fontset element
13549 for ASCII.
13550 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13551 to get a font name.
13552 (Ffontset_info): Adjust for the change of fontset_font.
13553
13554 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13555
13556 * character.h (LEADING_CODE_LATIN_1_MIN)
13557 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13558
135592008-02-01 Kenichi Handa <handa@m17n.org>
13560
13561 * editfns.c (check_translation): New function.
13562 (Ftranslate_region_internal): Handle M:N mapping.
13563
135642008-02-01 Kenichi Handa <handa@m17n.org>
13565
13566 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13567
135682008-02-01 Kenichi Handa <handa@m17n.org>
13569
13570 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13571 goto invalid_code.
13572 (decode_coding_iso_2022): Fix handling of invalid designation.
13573
13574 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13575 after calling code_conversion_save.
13576
135772008-02-01 Kenichi Handa <handa@m17n.org>
13578
13579 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13580
13581 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13582
13583 * fontset.c: Include "intervals.h".
13584 (fontset_face): Fix comparing of Lisp_Objects.
13585 (free_face_fontset, new_fontset_from_font_name): Fix
13586 Lisp_Object/int mixup.
13587
13588 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13589
13590 * coding.c: Add many prototypes for static functions.
13591 (get_translation_table): Allow max_lookup to be NULL.
13592 (decode_coding, Ffind_coding_systems_region_internal)
13593 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13594 get_translation_table with max_lookup NULL.
13595
135962008-02-01 Kenichi Handa <handa@m17n.org>
13597
13598 * coding.c (get_translation_table): Declare it as Lisp_Object.
13599 (LOOKUP_TRANSLATION_TABLE): New macro.
13600 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13601 instead of CHAR_TABLE_REF.
13602
136032008-02-01 Kenichi Handa <handa@m17n.org>
13604
13605 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13606 annotation data format.
13607 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13608 Change arguments FROM and TO to single argument NCHARS. Change caller.
13609 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13610 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13611 (decode_coding_ccl, decode_coding_charset): Pay attention to
13612 coding->charbuf_used.
13613 (get_translation): New function.
13614 (produce_chars): New arguments translation_table and last_block.
13615 Translate characters here. Return number of carryover chars.
13616 Change caller.
13617 (produce_composition): New argument pos. Change caller.
13618 Adjust for the change of annotation data format.
13619 (produce_charset, produce_annotation): Likewise.
13620 (decode_coding, encode_coding): Don't call translate_chars.
13621 (consume_chars): New arg translation_table. Change caller.
13622 (translate_chars): Delete.
13623 (syms_of_coding): Make translation-table's number of extra slots 2.
13624
136252008-02-01 Kenichi Handa <handa@m17n.org>
13626
13627 * search.c (simple_search): Fix setting this_pos_byte in backward
13628 search.
13629
13630 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13631 byte sequence.
13632 (detect_coding_ccl): Fix setting of the variable valids.
13633
136342008-02-01 Kenichi Handa <handa@m17n.org>
13635
13636 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13637
13638 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13639
13640 * editfns.c (Ftranslate_region_internal): Rename from
13641 Ftranslate_region. Accept a char-table in TABLE.
13642 (syms_of_editfns): Defsubr Stranslate_region_internal.
13643
13644 * xfaces.c (set_lface_from_font_name): If a font is specified for
13645 a frame, generate a fontset from the font.
13646 (build_scalable_font_name): If the scalable font is requested for
13647 a specific size, don't change that size.
13648 (try_font_list): Try a scalable font also in the case that a
13649 pattern string is specified.
13650
136512008-02-01 Kenichi Handa <handa@m17n.org>
13652
13653 * xfaces.c (Fface_font): New optional arg CHARACTER.
13654
136552008-02-01 Kenichi Handa <handa@m17n.org>
13656
13657 * charset.h (CHARSET_OFFSET): New macro.
13658
136592008-02-01 Kenichi Handa <handa@m17n.org>
13660
13661 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13662
13663 * fontset.c (fontset_face): Handle the case that repertory is a
13664 char-table.
13665 (find_font_encoding): Return nil for unknown encoding.
13666 (Fset_fontset_font): Ignore a font of unknown encoding.
13667
136682008-02-01 Kenichi Handa <handa@m17n.org>
13669
13670 * keymap.c (describe_vector): Handle default value of a char table.
13671
13672 * fontset.c (fontset_face): Handle fallback fonts correctly.
13673 (Ffontset_info): Return infomation about fallback fonts.
13674
136752008-02-01 Kenichi Handa <handa@m17n.org>
13676
13677 * fontset.c (FONTSET_DEFAULT): New macro.
13678 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13679 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13680 the case that it is nil.
13681 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13682 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13683
13684 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13685 subset or superset.
13686
136872008-02-01 Kenichi Handa <handa@m17n.org>
13688
13689 * emacs.c (main): Call init_charset after syms_of_XXX.
13690
13691 * charset.c (Vcharset_map_directory): Delete.
13692 (Vcharset_map_path): New variable.
13693 (load_charset_map_from_file): Use Vcharset_map_path instead.
13694 (init_charset): Initialize Vcharset_map_path.
13695 (syms_of_charset): Delete declaration of "charset-map-directory",
13696 add declaration of "charset-map-path".
13697
136982008-02-01 Kenichi Handa <handa@m17n.org>
13699
13700 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13701 ASCII only string.
13702
13703 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13704
13705 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13706 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13707
137082008-02-01 Kenichi Handa <handa@m17n.org>
13709
13710 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13711
13712 * coding.c (QCmnemonic, QCdefalut_char)
13713 (QCdecode_translation_table, QCencode_translation_table)
13714 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13715 (get_translation_table): Return a list of translation tables if
13716 necessary.
13717 (decode_coding): Call get_translation_table with ENCODEP 0.
13718 (char_encodable_p): If translation_table is non-nil, always call
13719 translate_char.
13720 (Fdefine_coding_system_internal): Accept list of translation
13721 tables as :encode-translation-table and :decode-translation-table.
13722 (Fcoding_system_put): New function.
13723 (syms_of_coding): Declare new symbols. Defsubr
13724 Scoding_system_put.
13725 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13726 typically JISX0212.
13727
13728 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13729 when the charset is superset type.
13730
13731 * character.c (translate_char): Accept list of translation tables.
13732
137332008-02-01 Kenichi Handa <handa@m17n.org>
13734
13735 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13736 (CODING_ATTR_TRANS_TBL): New macro.
13737
13738 * coding.c (get_translation_table): New function.
13739 (translate_chars): Fix the bug of skipping annotation data.
13740 (decode_coding, encode_coding): Utilize get_translation_table.
13741 (char_encodable_p, Funencodable_char_position): Translate char if
13742 necessary.
13743 (Ffind_coding_systems_region_internal)
13744 (Fcheck_coding_systems_region): Setup translation table for encode
13745 in a coding system attribute vector in advance.
13746 (Fdefine_coding_system_internal): Allow a symbol as translation
13747 table. For shift-jis type coding system, allow 4th charset.
13748
137492008-02-01 Kenichi Handa <handa@m17n.org>
13750
13751 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13752
13753 * xdisp.c (get_next_display_element): Pass -1 as POS to
13754 FACE_FOR_CHAR if displaying a C-string.
13755
137562008-02-01 Kenichi Handa <handa@m17n.org>
13757
13758 * composite.c (get_composition_id): Handle xoff and yoff in a
13759 composition rule.
13760
13761 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13762 (struct composition): New member lbearing and rbearing.
13763
13764 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13765 (x_get_glyph_overhangs): Handle a composition glyph.
13766 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13767
13768 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13769 composition glyph.
13770
137712008-02-01 Kenichi Handa <handa@m17n.org>
13772
13773 * print.c: Include charset.h.
13774 (Vprint_charset_text_property): New variable.
13775 (Qdefault): Extern it.
13776 (PRINT_STRING_NON_CHARSET_FOUND)
13777 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13778 (print_check_string_result): New variable.
13779 (print_check_string_charset_prop): New function.
13780 (print_prune_charset_plist): New variable.
13781 (print_prune_string_charset): New function.
13782 (print_object): Call print_prune_string_charset if
13783 Vprint_charset_text_property is not t.
13784 (print_interval): Print nothing if interval->plist is nil.
13785 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13786 variable. Init and staticpro print_prune_charset_plist.
13787
137882008-02-01 Kenichi Handa <handa@m17n.org>
13789
13790 * fontset.c (new_fontset_from_font_name): Use the specified font
13791 for all characters in the new fontset.
13792
13793 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13794 OBJECT args.
13795
13796 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13797 OBJECT args for composition too.
13798
13799 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13800 OBJECT args.
13801
138022008-02-01 Kenichi Handa <handa@m17n.org>
13803
13804 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13805
13806 * fontset.c (reorder_font_vector): Adjust for the change of
13807 FONT_DEF format.
13808 (fontset_face): New arg id. Change caller.
13809 (face_for_char): New args pos and object.
13810 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13811 (fs_query_fontset): Check NAME by Fassoc too.
13812 (Fset_fontset_font): Allow non-XLFD font name.
13813 (Ffontset_info): Adjust for the change of FONT_DEF format.
13814
13815 * fontset.h (face_for_char): Adjust prototype.
13816
13817 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13818 (append_space, extend_face_to_end_of_line)
13819 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13820 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13821
13822 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13823 POS and OBJECT args.
13824
13825 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13826 POS and OBJECT args.
13827
138282008-02-01 Jason Rumney <jasonr@gnu.org>
13829
13830 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13831 of GlobalAlloc'ed memory.
13832
138332008-02-01 Kenichi Handa <handa@m17n.org>
13834
13835 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13836
13837 * charset.h (charset_table_used): Delete extern.
13838
13839 * charset.c (charset_table_used): Make it static.
13840 (map_charset_chars): Fix args to c_function with.
13841
13842 * chartab.c (map_sub_char_table_for_charset): Fix args to
13843 c_function with.
13844
13845 * coding.h (enum coding_result_code): Delete
13846 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13847
13848 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13849 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13850 (Vlast_code_conversion_error): New variables.
13851 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13852 (ONE_MORE_BYTE): Record error if any instead of signaling an
13853 error. If non-ASCII multibyte char is found, return the negative
13854 value of the code. All callers changed to check it.
13855 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13856 (record_conversion_result): New function. Change all codes setting
13857 coding->result to call this function.
13858 (detect_coding_utf_8, decode_coding_utf_8)
13859 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13860 Don't use the local variable incomplete.
13861 (emacs_mule_char): Change the second arg to `const'.
13862 (decode_coding): Fix of flushing out unprocessed data.
13863 (make_conversion_work_buffer): Fix making of a work buffer.
13864 (decode_coding_object): Return coding->dst_object.
13865
13866 * fontset.c (set_fontset_font): Fix args.
13867
13868 * lisp.h (CHARACTERBITS): Define as 22.
13869
13870 * process.c (send_process): Be sure to set coding->src_multibyte.
13871
13872 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13873
138742008-02-01 Kenichi Handa <handa@m17n.org>
13875
13876 * xdisp.c (handle_auto_composed_prop): Give limit to
13877 Fnext_single_char_property_change.
13878
138792008-02-01 Kenichi Handa <handa@m17n.org>
13880
13881 * composite.c (syms_of_composite): Don't make the composition hash
13882 table weak.
13883
13884 * fontset.c (Fset_fontset_font): Fix docstring.
13885
13886 * lisp.h (detect_coding_system): Adjust prototype.
13887
13888 * fileio.c (kill_workbuf_unwind): Delete this function.
13889 (Finsert_file_contents): Adjust the call of detect_coding_system.
13890 Get conversion_buffer by code_conversion_save. Use the macro
13891 CODING_MAY_REQUIRE_DECODING. After decoding, update
13892 coding_system.
13893
13894 * coding.h (make_conversion_work_buffer): Delete extern.
13895 (code_conversion_save): Extern it.
13896
13897 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13898 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13899 (decode_coding_utf_8): Don't do eol converion.
13900 (detect_coding_utf_16): Check coding->src_chars, not
13901 coding->src_bytes. Add heuristics for those that have no signature.
13902 (decode_coding_emacs_mule, decode_coding_iso_2022)
13903 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13904 Don't do eol converion.
13905 (adjust_coding_eol_type): Return a new coding system.
13906 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13907 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13908 each change.
13909 (decode_coding): Pay attention to undo_list. Do eol conversion for
13910 all types of coding-systems (if necessary).
13911 (Vcode_conversion_work_buf_list): Delete it.
13912 (Vcode_conversion_reused_workbuf): Rename from
13913 Vcode_conversion_reused_work_buf.
13914 (Vcode_conversion_workbuf_name): New variable.
13915 (reused_workbuf_in_use): New variable.
13916 (make_conversion_work_buffer): Delete the arg DEPTH.
13917 (code_conversion_restore): Change argument to cons.
13918 (code_conversion_save): Delete the argument BUFFER. Change callers.
13919 (detect_coding_system): New argument src_chars. Change callers.
13920 Fix for utf-16 detection.
13921 (init_coding_once): Don't use ISO_carriage_return.
13922 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13923 reused_workbuf_in_use.
13924
139252008-02-01 Kenichi Handa <handa@m17n.org>
13926
13927 * keymap.c (store_in_keymap): Pay attention to the case that idx
13928 is a cons specifying a character range.
13929
139302008-02-01 Kenichi Handa <handa@m17n.org>
13931
13932 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13933 HANDLED_RECOMPUTE_PROPS.
13934
13935 * coding.c (Fdefine_coding_system_internal): Fix checking of
13936 ascii compatibility.
13937
139382008-02-01 Kenichi Handa <handa@m17n.org>
13939
13940 * charset.c (find_charsets_in_text): Delete unused locale variable.
13941 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13942
13943 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13944 Resync charset_list to Vemacs_mule_charset_list.
13945
13946 * keymap.c (store_in_keymap): Pay attention to the case that idx
13947 is a cons specifying a character range.
13948
139492008-02-01 Kenichi Handa <handa@m17n.org>
13950
13951 * composite.c (update_compositions): Bind inhibit-read-only, etc
13952 to t before calling remove-list-of-text-properties.
13953
13954 * print.c (print_object): Always print ASCII chars as is.
13955
139562008-02-01 Kenichi Handa <handa@m17n.org>
13957
13958 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13959
13960 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13961 is a char table.
13962
139632008-02-01 Kenichi Handa <handa@m17n.org>
13964
13965 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13966
139672008-02-01 Kenichi Handa <handa@m17n.org>
13968
13969 * xfaces.c (set_lface_from_font_name): Fix for the case that
13970 FONTNAME is not fontset name.
13971
139722008-02-01 Kenichi Handa <handa@m17n.org>
13973
13974 * fns.c (base64_encode_1): Fix previous change.
13975
139762008-02-01 Kenichi Handa <handa@m17n.org>
13977
13978 * fontset.c (set_fontset_font): New function.
13979 (Fset_fontset_font): If a font is specified for a charset, use
13980 map_charset_chars to store the font spec in a fontset.
13981
139822008-02-01 Kenichi Handa <handa@m17n.org>
13983
13984 * fontset.c (fontset_face): Create a fallback fontset on demand.
13985 (make_fontset): Don't create a fallback fontset here.
13986 (free_face_fontset): Free a fallback fontset (if any) too.
13987 (n_auto_fontsets): Delete this variable.
13988 (auto_fontset_alist): New variable.
13989 (new_fontset_from_font_name): Check auto_fontset_alist.
13990 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13991 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13992 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13993 Defsubr Sfontset_list_all.
13994
139952008-02-01 Kenichi Handa <handa@m17n.org>
13996
13997 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13998
139992008-02-01 Kenichi Handa <handa@m17n.org>
14000
14001 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14002
140032008-02-01 Kenichi Handa <handa@m17n.org>
14004
14005 * editfns.c (Fgoto_char): Fix docstring.
14006
140072008-02-01 Kenichi Handa <handa@m17n.org>
14008
14009 * insdel.c (insert_from_gap): Adjust intervals correctly.
14010
140112008-02-01 Jason Rumney <jasonr@gnu.org>
14012
14013 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14014 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14015 (w32_initialize): Try to load it.
14016 (x_get_font_repertory): Use it if available.
14017 (w32_encode_char): Add shortcut for unicode output.
14018
14019 * w32fns.c (w32_load_system_font): Default charset to -1.
14020 (x_to_w32_charset): Match all fonts for unicode.
14021 (w32_to_x_charset): New parameter matching. Don't return partial
14022 or wildcard charsets.
14023 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14024 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14025 (w32_to_x_font): Match charset to real charset.
14026 (enum_font_cb2): Always list unicode versions.
14027
14028 * makefile.w32-in (temacs): Increase EMHEAP.
14029
140302008-02-01 Jason Rumney <jasonr@gnu.org>
14031
14032 * w32term.c (w32_encode_char): New charset parameter.
14033 font_info.encoding becomes encoding_type.
14034 (x_get_font_repertory): New function. Warning: stub only!
14035 (x_new_font): Return quickly if font already set.
14036 (x_new_fontset): fontsetname parameter is Lisp_Object.
14037 Use new fs_query_fontset. Try new_fontset_from_font_name.
14038 Use fontset_name for return value.
14039
14040 * w32term.h: Declare x_get_font_repertory.
14041
14042 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14043 place of find_charset_in_text. Use encode_coding_object in place
14044 of encode_coding.
14045 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14046 decode_coding.
14047
14048 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14049 of x_new_fontset.
14050 (w32_load_system_font): Initialize charset as unicode.
14051 font_info.encoding becomes encoding_type.
14052 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14053 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14054 (syms_of_w32fns): Set get_font_repertory_func.
14055
14056 * w32console.c: Include character.h. Use terminal_encode_buffer
14057 from term.c.
14058 (write_glyphs): Use new version of encode_terminal_code. Use
14059 encode_coding_object in place of encode_coding.
14060
14061 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14062 encoding becomes encoding_type.
14063
14064 * term.c (terminal_encode_buffer): Make externally visible.
14065
14066 * makefile.w32-in: Add character.h dependancies.
14067 (character.o, chartab.o): New targets.
14068
140692008-02-01 Kenichi Handa <handa@m17n.org>
14070
14071 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14072 CODING_ID_EOL_TYPE.
14073
140742008-02-01 Andreas Schwab <schwab@suse.de>
14075
14076 * coding.c (produce_chars): Revert last change.
14077
140782008-02-01 Kenichi Handa <handa@m17n.org>
14079
14080 * charset.h (charset_unicode): Extern it.
14081
14082 * charset.c (string_xstring_p): Check by (C >= 0x100).
14083 (find_charsets_in_text): Change format of the arc CHARSETS. New
14084 arg MULTIBYTE.
14085 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14086 change of find_charsets_in_text.
14087 (Fsplit_char): Fix doc. Never return unknown.
14088
14089 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14090
14091 * coding.c (Fdefine_coding_system_alias): Update
14092 Vcoding_system_list.
14093
14094 * fontset.c (load_font_get_repertory): Pay attention to the case
14095 that ENCODING of a font is specified by a char-table.
14096
14097 * xterm.c (x_get_font_repertory): Handle the case that the
14098 encoding of font is other than Unicode.
14099
141002008-02-01 Kenichi Handa <handa@m17n.org>
14101
14102 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14103 if a character is encodable by the terminal coding system. If
14104 not, produces proper number of `?'s. Update
14105 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14106 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14107
141082008-02-01 Kenichi Handa <handa@m17n.org>
14109
14110 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14111 variables.
14112 (encode_terminal_code): Change argument. Encode multiple
14113 characters at once. Store the result of encoding in
14114 terminal_encode_buffer.
14115 (write_glyphs, insert_glyphs): Adjust for the change of
14116 encode_terminal_code.
14117 (term_init): Initialize terminal_encode_buffer and
14118 terminal_encode_buf_size.
14119
14120 * coding.c (consume_chars): If coding->src_object is nil, don't
14121 check annotation.
14122
141232008-02-01 Kenichi Handa <handa@m17n.org>
14124
14125 * character.c (char_string): Use ASCII_CHAR_P instead of
14126 SINGLE_BYTE_CHAR_P.
14127
141282008-02-01 Kenichi Handa <handa@m17n.org>
14129
14130 * xdisp.c (handle_auto_composed_prop): Check if the last
14131 characters of auto-composed region is newly composed with the
14132 following characters.
14133 (handle_composition_prop): Fix checking of point being inside
14134 composition.
14135
141362008-02-01 Kenichi Handa <handa@m17n.org>
14137
14138 * fns.c (concat): Don't change multibyteness of the result by
14139 concatenating an 8-bit character.
14140
14141 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14142 multibyteness of the result when newelt is an 8-bit character.
14143
141442008-02-01 Dave Love <fx@gnu.org>
14145
14146 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14147 EMACS_INT.
14148
14149 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14150
14151 * xfaces.c (face_numeric_value): Declare dim size_t.
14152 (Finternal_lisp_face_equal_p): Remove unused f.
14153
14154 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14155 (MATRIX_ROW): Remove unused vars.
14156 (draw_glyphs, x_insert_glyphs, fast_find_position)
14157 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14158 byte/char counts.
14159
14160 * regex.c (regex_compile): Remove unused var.
14161
14162 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14163
14164 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14165 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14166
14167 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14168
14169 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14170
14171 * fileio.c (Fwrite_region): Remove unused var.
14172
14173 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14174 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14175
14176 * composite.c (Fremove_list_of_text_properties): Declare.
14177
14178 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14179 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14180 (coding_inherit_eol_type): Remove unused attrs.
14181 (detect_coding): Cast arg of detect_eol.
14182
14183 * charset.c (syms_of_charset): Remove unused var p.
14184 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14185 byte/char counts.
14186
14187 * casetab.c (set_case_table): Remove unused var.
14188
14189 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14190 unused vars.
14191
141922008-02-01 Dave Love <fx@gnu.org>
14193
14194 * xterm.c (x_bitmap_mask): Declare.
14195
141962008-02-01 Dave Love <fx@gnu.org>
14197
14198 * xterm.c (x_term_init): Fix type error.
14199
14200 * lisp.h: Add Funibyte_char_to_multibyte.
14201
14202 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
14203 (Fset_coding_system_priority): Doc fix.
14204
14205 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
14206
14207 * indent.c (check_composition): Make start and end EMACS_INT.
14208
14209 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
14210
14211 * xdisp.c (handle_composition_prop, check_point_in_composition):
14212 Make buffer positions EMACS_INT.
14213
14214 * composite.c (find_composition, run_composition_function)
14215 (update_compositions, Ffind_composition_internal): Make buffer
14216 positions EMACS_INT.
14217
14218 * composite.h (find_composition, update_compositions): Make
14219 position args EMACS_INT.
14220
14221 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
14222
14223 * intervals.c (get_property_and_range):
14224 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
14225
14226 * unexalpha.c: Don't include varargs.h.
14227
142282008-02-01 Dave Love <fx@gnu.org>
14229
14230 * coding.h (ENCODE_UTF_8): New.
14231
14232 * Makefile.in (gtkutil.o): Depend on coding.h.
14233
14234 * coding.c (Fset_coding_system_priority): Doc fix.
14235
142362008-02-01 Kenichi Handa <handa@m17n.org>
14237
14238 * fileio.c (Finsert_file_contents): Call setup_coding_system in
14239 the case of auto saving.
14240
142412008-02-01 Andreas Schwab <schwab@suse.de>
14242
14243 * chartab.c (map_char_table, map_char_table_for_charset): Protect
14244 `range' from GC.
14245
142462008-02-01 Kenichi Handa <handa@m17n.org>
14247
14248 * coding.c (decode_coding_sjis): Check bytes more rigidly.
14249
142502008-02-01 Kenichi Handa <handa@m17n.org>
14251
14252 * fileio.c (choose_write_coding_system): Return a decided coding system.
14253 (Fwrite_region): Set Vlast_coding_system_used to the return value
14254 of choose_write_coding_system.
14255
142562008-02-01 Kenichi Handa <handa@m17n.org>
14257
14258 * charset.c (Fset_charset_priority): Pay attention to duplicated
14259 arguments.
14260
14261 * coding.c (QCcategory): New variable.
14262 (syms_of_coding): Defsym it. Set all elements of
14263 Vcoding_category_table and their symbol values.
14264 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
14265 coding-category-XXX, and coding-category-list.
14266 (Fdefine_coding_system_internal): Add category in the plist.
14267
142682008-02-01 Kenichi Handa <handa@m17n.org>
14269
14270 * callproc.c (Fcall_process): Handle carryover correctly.
14271
14272 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
14273 (raw_text_coding_system): Check NILP (coding_system).
14274 (coding_inherit_eol_type): Check NILP (coding_system) and
14275 NILP (parent).
14276 (consume_chars): Fix for the case of raw-text.
14277
14278 * process.c (read_process_output): Handle carryover correctly.
14279
142802008-02-01 Dave Love <fx@gnu.org>
14281
14282 * regex.c (re_search_2): Fix last change.
14283
142842008-02-01 Kenichi Handa <handa@m17n.org>
14285
14286 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14287 target_multibyte. Even in a unibyte case, return a converted
14288 multibyte char.
14289 (GET_CHAR_AFTER): New macro.
14290 (PATFETCH): Translate via multibyte char.
14291 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14292 (SETUP_MULTIBYTE_RANGE): New macro.
14293 (regex_compile): Setup compiled code so that its multibyteness
14294 matches that of a target. Fix the handling of "[X-YZ]" using
14295 SETUP_MULTIBYTE_RANGE.
14296 (analyse_first) <charset>: For filling fastmap for all multibyte
14297 characters, don't check by BASE_LEADING_CODE_P.
14298 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14299 the same as RE_MULTIBYTE_P (bufp) now.
14300 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14301 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14302 (TRANSLATE_VIA_MULTIBYTE): New macro.
14303 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14304 It is the same as RE_MULTIBYTE_P (bufp) now.
14305 <exactn>: Translate via multibyte.
14306 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14307 translate it.
14308 <charset, charset_not>: Fetch a character by
14309 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14310 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14311 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14312 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14313 by GET_CHAR_AFTER.
14314 (bcmp_translate): Likewise.
14315
14316 * search.c (compile_pattern): Check the member target_multibyte,
14317 not the member multibyte of buf.
14318
14319 * lread.c (read1): While reading a string, set force_singlebyte
14320 and force_multibyte correctly.
14321
14322 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14323 up of unibyte_to_multibyte_table.
14324
143252008-02-01 Kenichi Handa <handa@m17n.org>
14326
14327 * coding.c (setup_coding_system): If coding has
14328 post-read-conversion or pre-write-conversion, set
14329 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14330 respectively.
14331 (decode_coding_gap): Run post-read-conversion if any.
14332
14333 * fileio.c (Finsert_file_contents): Even if we read into a
14334 unibyte buffer, check if we must decode the result or not.
14335
143362008-02-01 Kenichi Handa <handa@m17n.org>
14337
14338 * coding.c (make_conversion_work_buffer): Change the work buffer
14339 name to the same one as that of Emacs 21.
14340
143412008-02-01 Kenichi Handa <handa@m17n.org>
14342
14343 * coding.h (make_conversion_work_buffer): Adjust prototype.
14344 (code_conversion_restore): Don't extern it.
14345
14346 * coding.c (detected_mask): Delete unused variable.
14347 (decode_coding_iso_2022): Pay attention to the byte sequence of
14348 CTEXT extended segment, and retain those bytes as is.
14349 (decode_coding_ccl): Delete unused variable `valids'.
14350 (setup_coding_system): Delete unused variable `category'.
14351 (consume_chars): Delete unused variable `category'. Make it work
14352 for non-multibyte case.
14353 (make_conversion_work_buffer): Change argument.
14354 (saved_coding): Delete unused variable.
14355 (code_conversion_restore): Don't check saved_coding->destination.
14356 (code_conversion_save): New function.
14357 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14358 instead of record_unwind_protect.
14359 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14360 (detect_coding_system): Delete unused variable `mask'.
14361 (Fdefine_coding_system_internal): Delete unused variable id.
14362
14363 * fileio.c (kill_workbuf_unwind): New function.
14364 (Finsert_file_contents): On replacing, call
14365 make_conversion_work_buffer with correct args, and call
14366 record_unwind_protect with the first arg kill_workbuf_unwind.
14367
14368 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14369
143702008-02-01 Kenichi Handa <handa@m17n.org>
14371
14372 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14373 (fontset_add): Fix for the case that TO is less than TO1.
14374 (Ffontset_info): Don't use fallback fontset on checking the
14375 default fontset.
14376 (dump_fontset): New function for debugging.
14377
14378 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14379 coding_type is Qcharset.
14380
143812008-02-01 Kenichi Handa <handa@m17n.org>
14382
14383 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14384 (map_char_table): Don't inherit the value from the parent on
14385 initializing VAL. Adjust for the above change.
14386
143872008-02-01 Kenichi Handa <handa@m17n.org>
14388
14389 * coding.c (Qsignature, Qendian): Delete these variables.
14390 (syms_of_coding): Don't initialize them.
14391 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14392 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14393 detect_info->found.
14394 (decode_coding_utf_16): Don't detect BOM here.
14395 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14396 is NOT utf_16_without_bom.
14397 (setup_coding_system): For a coding system of type utf-16, check
14398 if the attribute :endian is Qbig or not (not nil or not), and set
14399 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14400 (detect_coding): If coding type is utf-16 and BOM detection is
14401 required, detect it.
14402 (Fdefine_coding_system_internal): For a coding system of type
14403 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14404
144052008-02-01 Kenichi Handa <handa@m17n.org>
14406
14407 * coding.c (coding_set_source): Fix for the case that the current
14408 buffer is different from coding->src_object.
14409 (decode_coding_object): Don't use the conversion work buffer if
14410 DST_OBJECT is a buffer.
14411
144122008-02-01 Dave Love <fx@gnu.org>
14413
14414 * lread.c (read_emacs_mule_char) [len==2]: Index
14415 emacs_mule_charset correctly.
14416
144172008-02-01 Dave Love <fx@gnu.org>
14418
14419 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14420 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14421 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14422 treated specially.)
14423 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14424 (detected_mask): Remove Big5 bits.
14425
144262008-02-01 Kenichi Handa <handa@m17n.org>
14427
14428 The following changes are to make the font rescaling facility
14429 compatible with Emacs 21.
14430
14431 * xfaces.c (Vface_font_rescale_alist): Rename from
14432 Vface_resizing_fonts.
14433 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14434 (font_rescale_ratio): Rename from font_resizing_ratio.
14435 (split_font_name): Set font->rescale_ratio.
14436 (better_font_p): Pay attention to font->rescale_ratio.
14437 (build_scalable_font_name): Likewise. Change RESX, and RESY
14438 fields.
14439 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14440
144412008-02-01 Kenichi Handa <handa@m17n.org>
14442
14443 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14444 (Qutf_16_le): Remove these variables.
14445 (syms_of_coding): Don't DEFSYM them.
14446 (decode_coding_utf_16): Fix handling of BOM.
14447 (encode_coding_utf_16): Fix handling of BOM.
14448
144492008-02-01 Kenichi Handa <handa@m17n.org>
14450
14451 * fileio.c (Finsert_file_contents): On replacing, before decoding
14452 the file into the work buffer, set point of the work buffer to the end.
14453
144542008-02-01 Dave Love <fx@gnu.org>
14455
14456 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14457
144582008-02-01 Dave Love <fx@gnu.org>
14459
14460 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14461 and fix C types.
14462
144632008-02-01 Kenichi Handa <handa@m17n.org>
14464
14465 * xdisp.c (SKIP_GLYPHS): New macro.
14466 (set_cursor_from_row): Pay attention to string display properties.
14467
14468 * category.c (copy_category_entry): Fix for the case that RANGE
14469 is an integer.
14470
14471 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14472
14473 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14474
144752008-02-01 Kenichi Handa <handa@m17n.org>
14476
14477 * charset.c (Fcharset_id_internal): New function.
14478 (syms_of_charset): Defsubr it.
14479
14480 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14481 with the last arg charset_list acquired from coding.
14482 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14483 the attribute coding_attr_ccl_valids.
14484
14485 * coding.h (enum define_coding_ccl_arg_index): Set the first
14486 member coding_arg_ccl_decoder to coding_arg_max.
14487
14488 * ccl.h (ccl_driver): Adjust prototype.
14489
14490 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14491 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14492 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14493 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14494 last arg Qnil.
14495
144962008-02-01 Kenichi Handa <handa@m17n.org>
14497
14498 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14499 call encode_char.
14500
14501 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14502
145032008-02-01 Dave Love <fx@gnu.org>
14504
14505 * composite.c (syms_of_composite): Make composition_hash_table weak.
14506
145072008-02-01 Kenichi Handa <handa@m17n.org>
14508
14509 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14510 (font_name_registry): Don't extern them.
14511 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14512
14513 * fontset.h (Qfontset): Don't extern it.
14514 (new_fontset_from_font_name): Extern it.
14515
14516 * fontset.c: Give 8 extra slots to fontset objects.
14517 (Qfontset_info): New variable.
14518 (syms_of_fontset): Defsym it.
14519 (FONTSET_FALLBACK): New macro.
14520 (fontset_face): Try also the default fontset.
14521 (make_fontset): Realize a fallback fontset from the default fontset.
14522 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14523 using split_font_name_into_vector and build_font_name_from_vector.
14524 (Fset_fontset_font): Access the elements of font_spec by enum
14525 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14526 name by using split_font_name_into_vector.
14527 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14528 generate a proper font name from the fontset name. Update
14529 Vfontset_alias_alist.
14530 (n_auto_fontsets): New variable.
14531 (new_fontset_from_font_name): New function.
14532 (Ffont_info): Store the information about fonts generated from the
14533 default fontset in the first extra slot of the returned char-table.
14534
14535 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14536 (font_name_registry): Delete function.
14537 (split_font_name_into_vector): New function.
14538 (build_font_name_from_vector): New function.
14539 (font_list): The argument REGISTRY is now a list of registry names.
14540 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14541 specifies an explicit font name, return the name as is. Make a
14542 list of registy names.
14543
14544 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14545 of x_new_fontset.
14546 (Fx_create_frame): Don't call x_new_fontset here. Just use
14547 x_list_fonts to check the existence of fonts.
14548
14549 * xterm.h (x_new_fontset): Adjust prototype.
14550
14551 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14552 string. Use new_fontset_from_font_name to create a fontset from a
14553 font name.
14554
145552008-02-01 Kenichi Handa <handa@m17n.org>
14556
14557 * syntax.c (Vfind_word_boundary_function_table): New name for
14558 Vnext_word_boundary_function_table.
14559 (find-word-boundary-function-table): New name for
14560 next-word-boundary-function-table.
14561
145622008-02-01 Dave Love <fx@gnu.org>
14563
14564 * Makefile.in: Fix some dependencies.
14565
14566 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14567 set it to nil before returning.
14568
14569 * composite.c (update_compositions): Fix type error.
14570
14571 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14572
145732008-02-01 Kenichi Handa <handa@m17n.org>
14574
14575 * xterm.c (x_new_font): Optimize for the case that the font is
14576 already set for the frame.
14577
145782008-02-01 Kenichi Handa <handa@m17n.org>
14579
14580 * chartab.c (char_table_ascii): Check if the char table contents
14581 is sub-char-table or not.
14582 (char_table_set, char_table_set_range): Fix argument to
14583 char_table_ascii.
14584
14585 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14586 (detect_coding_utf_8, detect_coding_utf_16)
14587 (detect_coding_emacs_mule, detect_coding_iso_2022)
14588 (detect_coding_sjis, detect_coding_big5)
14589 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14590 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14591 sequence is valid in this coding system. Change callers.
14592 (MAX_ANNOTATION_LENGTH): New macro.
14593 (ADD_ANNOTATION_DATA): New macro.
14594 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14595 ADD_ANNOTATION_DATA. Change the format of annotation data.
14596 (ADD_CHARSET_DATA): New macro.
14597 (emacs_mule_char): New argument ID. Change callers.
14598 (decode_coding_emacs_mule, decode_coding_iso_2022)
14599 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14600 Produce charset annotation data in coding->charbuf.
14601 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14602 to charset annotation data in coding->charbuf.
14603 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14604 coding->common_flags if the coding system is iso-2022 based and
14605 uses designation.
14606 (produce_composition): Adjust for the new annotation data format.
14607 (produce_charset): New function.
14608 (produce_annotation): Handle charset annotation.
14609 (handle_composition_annotation, handle_charset_annotation): New
14610 functions.
14611 (consume_chars): Handle charset annotation. Utilize the above two
14612 functions.
14613 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14614 buffer, get the deleted text as a string and set
14615 coding->src_object to that string.
14616 (detect_coding, detect_coding_system): Use the new struct
14617 coding_detection_info.
14618
14619 * coding.h (struct coding_detection_info): New structure.
14620 (struct coding_system): Adjust prototype of the member `detector'.
14621 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14626
146272008-02-01 Dave Love <fx@gnu.org>
14628
14629 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14630 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14631 to new local and nullify apropos_accumulate before returning.
14632 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14633
146342008-02-01 Kenichi Handa <handa@m17n.org>
14635
14636 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14637 correctly.
e3eea1fc 14638
aac0c6e3
MR
146392008-02-01 Dave Love <fx@gnu.org>
14640
14641 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14642
146432008-02-01 Kenichi Handa <handa@m17n.org>
14644
14645 The following changes are to make character composition happen
14646 automatically on displaying.
14647
14648 * Makefile.in (lisp, shortlisp): Add composite.elc.
14649
14650 * composite.h (Qauto_composed, Vauto_composition_function)
14651 (Qauto_composition_function): Extern them.
14652
14653 * composite.c (Vcomposition_function_table)
14654 (Qcomposition_function_table): Delete variables.
14655 (Qauto_composed, Vauto_composition_function)
14656 (Qauto_composition_function): New variables.
14657 (run_composition_function): Don't call
14658 compose-chars-after-function.
14659 (update_compositions): Clear `auto-composed' text property.
14660 (compose_chars_in_text): Delete this function.
14661 (syms_of_composite): Staticpro Qauto_composed and
14662 Qauto_composition_function. Declare Vauto_composition_function as
14663 a Lisp variable.
14664
14665 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14666
14667 * xdisp.c (it_props): Add an entry for Qauto_composed.
14668 (handle_auto_composed_prop): New function.
14669
14670 * xselect.c (selection_data_to_lisp_data): Don't call
14671 compose_chars_in_text.
14672
146732008-02-01 Dave Love <fx@gnu.org>
14674
14675 * keyboard.c (read_char): Modify checking around use of
14676 Vkeyboard_translate_table.
14677
14678 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14679 and fix C types.
14680
146812008-02-01 Kenichi Handa <handa@m17n.org>
14682
14683 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14684 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14685 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14686 the case that the last byte is '\r' correctly.
14687 (decode_coding): Flush out the unprocessed data correctly.
14688 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14689
146902008-02-01 Dave Love <fx@gnu.org>
14691
14692 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14693 Add XK_ISO... case.
14694 (xaw_scroll_callback): Revert last change.
14695
146962008-02-01 Kenichi Handa <handa@m17n.org>
14697
14698 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14699
147002008-02-01 Kenichi Handa <handa@m17n.org>
14701
14702 * xfaces.c (Vface_resizing_fonts): New variable.
14703 (struct font_name): New member `resizing_ratio'.
14704 (font_resizing_ratio): New function.
14705 (split_font_name): Set font->resizing_ratio.
14706 (better_font_p): Pay attention to font->resizing_ratio.
14707 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14708 RESX, and RESY fields.
14709 (try_alternative_families): Try scalable fonts if
14710 Vscalable_fonts_allowed is not Qt.
14711 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14712
147132008-02-01 Dave Love <fx@gnu.org>
14714
14715 * xterm.c (xaw_scroll_callback): Cast correctly.
14716
147172008-02-01 Dave Love <fx@gnu.org>
14718
14719 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14720 (lispy_kana_keys): Comment out.
14721 (make_lispy_event) [XK_kana_A]: Comment out.
14722
14723 * xterm.c (xaw_scroll_callback): Cast call_data.
14724 (XTread_socket): Deal with ASCII keysyms.
14725 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14726
147272008-02-01 Dave Love <fx@gnu.org>
14728
14729 * xterm.c (Vx_keysym_table): New.
14730 (syms_of_xterm): Initialize it.
14731 (XTread_socket): Use it.
14732 From head: Eliminate incorrect optimization that tried to avoid
14733 decoding the output of X*LookupString.
14734 (x_get_font_repertory): Delete charset declaration.
14735
147362008-02-01 Kenichi Handa <handa@m17n.org>
14737
14738 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14739 return 0.
14740 (Fdefine_coding_system_internal): Setup
14741 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14742
147432008-02-01 Dave Love <fx@gnu.org>
14744
14745 * coding.c (Fcheck_coding_system): Doc fix.
14746
14747 * editfns.c (Finsert_byte): Return a proper value.
14748
147492008-02-01 Kenichi Handa <handa@m17n.org>
14750
14751 * coding.c (decode_coding): Fix args to translate_chars. Pay
14752 attention to Vstandard_translation_table_for_decode.
14753 (encode_coding): Fix args to translate_chars. Pay attention to
14754 Vstandard_translation_table_for_encode.
14755
14756 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14757 SINGLE_BYTE_CHAR_P.
14758
14759 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14760 not by SINGLE_BYTE_CHAR_P.
14761
14762 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14763 SINGLE_BYTE_CHAR_P.
14764
14765 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14766 SINGLE_BYTE_CHAR_P.
14767
14768 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14769 by SINGLE_BYTE_CHAR_P.
14770
14771 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14772 SINGLE_BYTE_CHAR_P.
14773
147742008-02-01 Dave Love <fx@gnu.org>
14775
14776 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14777
147782008-02-01 Dave Love <fx@gnu.org>
14779
14780 * fns.c (Flanginfo): Fix typo.
14781
14782 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14783
147842008-02-01 Kenichi Handa <handa@m17n.org>
14785
14786 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14787 (detect_coding_emacs_mule, detect_coding_iso_2022)
14788 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14789 incomplete byte sequence. Don't update *mask when correctly detected.
14790 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14791 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14792 (detect_coding, detect_coding_system): Adjust for the changes above.
14793
147942008-02-01 Kenichi Handa <handa@m17n.org>
14795
14796 * character.c (char_string): Rename from
14797 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14798 (string_char): Rename from string_char.
14799
14800 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14801 if C is greater than MAX_3_BYTE_CHAR.
14802 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14803 string_char instead of string_char_with_unification.
14804
148052008-02-01 Dave Love <fx@gnu.org>
14806
14807 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14808
148092008-02-01 Kenichi Handa <handa@m17n.org>
14810
14811 * keymap.c (push_key_description): Pay attention to force_multibyte.
14812
14813 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14814
148152008-02-01 Dave Love <fx@gnu.org>
14816
14817 * charset.c (define_charset_internal): Rename `supprementary'.
14818
14819 * Makefile.in (lisp, shortlisp): Remove latin-N.
14820
148212008-02-01 Dave Love <fx@gnu.org>
14822
14823 * xfns.c (x_window, x_window): Use use_xim.
14824
14825 * xterm.c (use_xim): Initialize.
14826 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14827 (x_term_init): Maybe set use_xim.
14828
14829 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14830
148312008-02-01 Kenichi Handa <handa@m17n.org>
14832
14833 * search.c (search_buffer): Fix case-fold-search of multibyte
14834 characters.
14835 (boyer_moore): Rename the last argument to char_high_bits.
14836
148372008-02-01 Kenichi Handa <handa@m17n.org>
14838
14839 * xdisp.c (display_string): Fix for the case of zero width glyph.
14840
14841 * xfns.c (x_set_font): Change the error message of the case that
14842 x_new_fontset returns Qt.
14843
14844 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14845 (Finternal_set_lisp_face_attribute): Use signal_error for the
14846 error of invalid fontset.
14847
14848 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14849 fontset, return Qt.
14850
148512008-02-01 Dave Love <fx@gnu.org>
14852
14853 * unexelf.c (unexec): Make .got handling not SGI-specific.
14854
14855 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14856
14857 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14858
14859 * keyboard.c (read_key_sequence): Fix type error.
14860
14861 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14862 type error.
14863
14864 * fontset.c (fontset_add): Return Lisp_Object.
14865
148662008-02-01 Dave Love <fx@gnu.org>
14867
14868 * charset.h (charset_ordered_list_tick): Declare extern.
14869
148702008-02-01 Kenichi Handa <handa@m17n.org>
14871
14872 The following changes (and some of 2008-02-01 changes of mine) are
14873 for handling syntax, category, and case conversion for unibyte
14874 characters by converting them to multibyte on the fly. With these
14875 changes, we don't have to setup syntax and case tables for unibyte
14876 characters in each language environment.
14877
14878 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14879 multibyte if necessary.
14880
14881 * bytecode.c (Fbyte_code): Likewise.
14882
14883 * character.h (LEADING_CODE_LATIN_1_MIN)
14884 (LEADING_CODE_LATIN_1_MAX): New macros.
14885 (unibyte_to_multibyte_table): Extern it.
14886 (unibyte_char_to_multibyte): New macro.
14887 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14888 (CHAR_LEADING_CODE): New macro.
14889 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14890
14891 * character.c (unibyte_to_multibyte_table): New variable.
14892 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14893 (multibyte_char_to_unibyte): If C is an eight-bit character,
14894 convert it to the corresponding byte value.
14895
14896 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14897 not 1, signals an error. Update the elements of
14898 unibyte_to_multibyte_table.
14899 (init_charset_once): Initialize unibyte_to_multibyte_table.
14900 (syms_of_charset): Define the charset `iso-8859-1'.
14901
14902 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14903 as is without converting it to unibyte. In a unibyte buffer,
14904 convert C to multibyte before checking the syntax.
14905
14906 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14907
14908 * minibuf.c (Fminibuffer_complete_word): Use the macro
14909 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14910
14911 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14912
14913 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14914 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14915 that is zero, convert an eight-bit char to multibyte.
14916 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14917 non-emacs case.
14918 (PATFETCH): Convert an eight-bit char to multibyte.
14919 (HANDLE_UNIBYTE_RANGE): New macro.
14920 (regex_compile): Setup the compiled pattern for multibyte chars
14921 even if the given regex string is unibyte. Use PATFETCH_RAW
14922 instead of PATFETCH in many places. To handle `charset'
14923 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14924 only for ASCII chars.
14925 (analyse_first) <exactn>: Simplify because the compiled pattern
14926 is multibyte.
14927 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14928 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14929 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14930 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14931 multibyte always 1.
14932 (re_search_2): In emacs, set the locale variable multibyte to 1,
14933 otherwise to 0. New local variable target_multibyte. Check it
14934 to decide the multibyteness of STR1 and STR2. If
14935 target_multibyte is zero, convert unibyte chars to multibyte
14936 before translating and checking fastmap.
14937 (TARGET_CHAR_AND_LENGTH): New macro.
14938 (re_match_2_internal): In emacs, set the locale variable multibyte
14939 to 1, otherwise to 0. New local variable target_multibyte. Check
14940 it to decide the multibyteness of STR1 and STR2. Use
14941 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14942 <charset, charset_not>: If multibyte is nonzero, check fastmap
14943 only for ASCII chars. Call bcmp_translate with
14944 target_multibyte, not with multibyte.
14945 <begline>: Declare the local variable C as `unsigned'.
14946 (bcmp_translate): Change the last arg name to target_multibyte.
14947
14948 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14949 the regexp pattern and the matching target. Set cp->buf.multibyte
14950 to the multibyteness of the regexp pattern. Set
14951 cp->but.target_multibyte to the multibyteness of the matching target.
14952 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14953 FETCH_STRING_CHAR_ADVANCE.
14954 (Freplace_match): Convert unibyte chars to multibyte.
14955
14956 * syntax.c (char_quoted, back_comment, scan_words)
14957 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14958 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14959 unibyte chars to multibyte.
14960 (skip_chars): Delete the arg syntaxp, and move the code for
14961 handling syntaxes to skip_syntaxes. Change callers.
14962 Fix the case that the multibyteness of STRING and the current
14963 buffer doesn't match.
14964 (skip_syntaxes): New function.
14965 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14966 SINGLE_BYTE_CHAR_P.
14967
149682008-02-01 Kenichi Handa <handa@m17n.org>
14969
14970 * xfaces.c (QCfontset): New variable.
14971 (LFACE_FONTSET): New macro.
14972 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14973 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14974 (Finternal_set_lisp_face_attribute)
14975 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14976 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14977 check also LFACE_FONTSET_INDEX.
14978 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14979 attrs[LFACE_FONT_INDEX].
14980 (syms_of_xfaces): Intern and staticpro QCfontset.
14981
14982 * dispextern.h (enum lface_attribute_index): New member
14983 LFACE_FONTSET_INDEX.
14984
14985 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14986
149872008-02-01 Kenichi Handa <handa@m17n.org>
14988
14989 * coding.c (coding_set_destination): Fix coding->destination for
14990 the case converting a region.
14991 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14992 (encode_coding_object): Fix coding->dst_pos and
14993 coding->dst_pos_byte for the case converting a region.
14994
14995 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14996
14997 * character.h (BYTE8_STRING): New macro.
14998
14999 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15000
150012008-02-01 Kenichi Handa <handa@m17n.org>
15002
15003 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15004 characters by octal form.
15005
15006 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15007
15008 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15009 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15010 _fetch_multibyte_char_len.
15011 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15012
15013 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15014
15015 * casefiddle.c (casify_object): Simplify. Handle the case that
15016 the case conversion change the byte length.
15017 (casify_region): Likewise.
15018
15019 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15020
15021 * character.c (_fetch_multibyte_char_len): Delete this variable.
15022 (syms_of_character): Setup Vprintable_chars.
15023
15024 * editfns.c (Fchar_equal): Fix for the unibyte case.
15025 (Finsert_byte): New function.
15026 (syms_of_editfns): Defsubr it.
15027
15028 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15029 of direct code 0x3ffff.
15030
15031 * search.c (Freplace_match): Fix for the unibyte case.
15032
150332008-02-01 Kenichi Handa <handa@m17n.org>
15034
15035 * lread.c (safe_to_load_p): Fix the logic.
15036
15037 * syntax.c (scan_words): Don't treat characters belonging to
15038 different scripts as constituting a word.
15039
15040 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15041
15042 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15043
15044 * emacs.c (main): In the case of --unibyte, instead of aborting on
15045 finding non-empty buffer, make it unibyte.
15046
150472008-02-01 Kenichi Handa <handa@m17n.org>
15048
15049 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15050 to create a fontset.
15051
150522008-02-01 Dave Love <fx@gnu.org>
15053
15054 * character.c (Funibyte_char_to_multibyte): Doc fix.
15055
15056 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15057
150582008-02-01 Kenichi Handa <handa@m17n.org>
15059
15060 * fontset.c (fontset_add): Make the type `int'.
15061 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15062
15063 * character.c (unibyte_char_to_multibyte)
15064 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15065 charset_unibyte, not charset_primary.
15066
15067 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15068
15069 * charset.c (charset_unibyte): Rename from charset_primary.
15070 (Funibyte_charset): Rename from Fprimary_charset.
15071 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15072 (syms_of_charset): Adjust for the above changes.
15073
15074 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15075 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15076 it->multibyte_p is zero.
15077
15078 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15079 Delete extern.
15080
150812008-02-01 Kenichi Handa <handa@m17n.org>
15082
15083 * coding.c (Fdefine_coding_system_internal): Fix category setting
15084 for a coding system of type iso-2022.
15085
150862008-02-01 Kenichi Handa <handa@m17n.org>
15087
15088 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15089
150902008-02-01 Kenichi Handa <handa@m17n.org>
15091
15092 * syntax.c (Vnext_word_boundary_function_table): New variable.
15093 (next-word-boundary-function-table): Declare it as a Lisp variable
15094 in syms_of_syntax.
15095 (scan_words): Call functions in Vnext_word_boundary_function_table
15096 if any.
15097
15098 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15099
15100 * fontset.c (fs_load_font): If fontp->charset is not negative,
15101 return fontp without setting its members.
15102
151032008-02-01 Dave Love <fx@gnu.org>
15104
15105 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15106
15107 * m/sparc.h (HAVE_ALLOCA): Delete.
15108
15109 * s/irix6-5.h: Don't include strings.h.
15110 (bcopy, bzero, bcmp): Don't undef.
15111
15112 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15113
15114 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15115 (TIOCSIGSEND): Don't test IRIX6.
15116 (bcopy, bzero, bcmp): Define conditionally.
15117
151182008-02-01 Kenichi Handa <handa@m17n.org>
15119
15120 * buffer.c (Qas, Qmake, Qto): New variables.
15121 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15122 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15123
15124 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15125 we are inserting a process output into a multibyte buffer.
15126
15127 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15128 multibyte_char_to_unibyte.
15129
15130 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15131 by the primary charset, make it eight-bit char.
15132 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15133
15134 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15135 (charset_8_bit__control, charset_8_bit_graphic)
15136 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15137 (define_charset_internal): New function.
15138 (syms_of_charset): Call define_charset_internal for pre-defined
15139 charsets.
15140
15141 * charset.h (charset_8_bit): Extern it.
15142
15143 * coding.c (make_conversion_work_buffer): Adjust for the change
15144 of Fset_buffer_multibyte.
15145 (encode_coding_raw_text): Increment p0 in the loop.
15146
15147 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15148
15149 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15150 for the change of Fset_buffer_multibyte.
15151
15152 * fns.c (Fstring_to_multibyte): New function.
15153 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15154
151552008-02-01 Dave Love <fx@gnu.org>
15156
15157 * xfns.c (x_put_x_image): Declare args.
15158
15159 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15160 (try_font_list): Declare an arg.
15161
15162 * xdisp.c (message2_nolog, set_message): Declare an arg.
15163
15164 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15165
15166 * syntax.c (scan_sexps_forward): Declare an arg.
15167
15168 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15169 Declare an arg.
15170
15171 * lisp.h (Fnew_fontset): Declare.
15172
15173 * keymap.c (push_key_description): Call CHARACTERP correctly.
15174
15175 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15176 (face_for_char): Delete unused vars.
15177 (Fset_fontset_font): Doc fix. Delete unused vars.
15178
15179 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15180
15181 * composite.c (update_compositions): Declare arg.
15182
15183 * cm.c (calccost, cmgoto): Declare args.
15184
15185 * charset.c: Remove `emacs' conditional. Doc fixes.
15186 (map_char_table_for_charset): Declare.
15187
15188 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15189
15190 * ccl.c: Remove `emacs' conditional.
15191
151922008-02-01 Kenichi Handa <handa@m17n.org>
15193
15194 The following changes are to allow specifying multiple font
15195 patterns for a character range (specified by script or charset).
15196
15197 * Makefile.in (abbrev.o): Depend on syntax.h.
15198 (xfaces.o): Depend on charset.h.
15199
15200 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
15201 SINGLE_BYTE_CHAR_P.
15202
15203 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
15204
15205 * character.h (Vchar_script_table): Extern it.
15206
15207 * character.c (Vscript_alist): Delete.
15208 (Vchar_script_table, Qchar_script_table): New variable.
15209 (syms_of_character): Declare Vchar_script_table as a lisp variable
15210 and initialize it.
15211
15212 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
15213 have property char-table-extra-slots, make no extra slot.
15214
15215 * dispextern.h (struct face): Delete member `charset'.
15216 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
15217 SINGLE_BYTE_CHAR_P.
15218 (choose_face_font, lookup_non_ascii_face, font_name_registry):
15219 Add prototypes.
15220 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
15221 (generate_ascii_font_name): Rename from generate_ascii_font.
15222
15223 * fontset.h (get_font_repertory_func): New prototype.
15224 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
15225 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
15226
15227 * fontset.c (Qprepend, Qappend): New variables.
15228 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
15229 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
15230 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
15231 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
15232 (fontset_ref_and_range, fontset_add, reorder_font_vector)
15233 (load_font_get_repertory): New functions.
15234 (fontset_set): Delete.
15235 (fontset_face): New arg FACE. Return face ID, not face.
15236 Complete re-write to handle new fontset structure. Change caller.
15237 (free_face_fontset): Use ASET istead of AREF (X) = Y.
15238 (face_for_char): Don't call lookup_face.
15239 (make_fontset_for_ascii_face): New arg FACE.
15240 (fs_load_font): New arg CHARSET_ID. Don't check
15241 Vfont_encoding_alist here.
15242 (find_font_encoding): New function.
15243 (list_fontsets): Use STRINGP, not ! NILP.
15244 (accumulate_script_ranges): New function.
15245 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
15246 re-written to handle new fontset structure.
15247 (Ffontset_font): Return a copy of element.
15248 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
15249 docstring of font-encoding-alist.
15250
15251 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
15252 (Fset_fotset_font): Fix arguments to 5.
15253
15254 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
15255
15256 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
15257 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15258 (highlight_trailing_whitespace): Adjust for the change of
15259 lookup_named_face.
15260
15261 * xfaces.c: Include charset.h.
15262 (load_face_font): Delete argument C. Change caller.
15263 (generate_ascii_font_name): Rename from generate_ascii_font.
15264 (font_name_registry): New function.
15265 (cache_face): Store ascii faces before non-ascii faces in buckets.
15266 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
15267 Lookup only ascii faces.
15268 (lookup_non_ascii_face): New function.
15269 (lookup_named_face): Delete argument C. Change caller.
15270 (lookup_derived_face): Delete argument C. Change caller.
15271 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
15272 a string, just call font_list with it.
15273 (choose_face_font): Delete arguments FACE and C. New arg
15274 FONT_SPEC. Change caller.
15275 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
15276 Change caller.
15277 (realize_non_ascii_face): New function.
15278 (realize_x_face): Call load_face_font here.
15279 (realize_tty_face): Delete argument C. Change caller.
15280 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
15281 get a face ID.
15282 (dump_realized_face): Don't print charset of FACE.
15283
15284 * xfns.c (x_set_font): Always call x_new_fontset and
15285 store_frame_parameter.
15286 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15287 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15288
15289 * xterm.h (x_get_font_repertory): Extern it.
15290
15291 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15292 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15293 it->multibyte_p is zero.
15294 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15295 (x_new_fontset): If FONTSETNAME doesn't match any existing
15296 fontsets, create a new one.
15297 (x_get_font_repertory): New function.
15298
152992008-02-01 Kenichi Handa <handa@m17n.org>
15300
15301 * coding.c (Ffind_coding_systems_region_internal): Detect an
15302 ASCII only string correctly.
15303
15304 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15305 version is 0.
15306
153072008-02-01 Kenichi Handa <handa@m17n.org>
15308
15309 * lread.c: Include "coding.h".
15310 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15311 (load_each_byte, unread_char): New variables.
15312 (readchar_backlog): Delete.
15313 (readchar): Return a character unless load_each_byte is nonzero.
15314 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15315 cons. If unread_char is not -1, simply return it.
15316 (unreadchar): Handle the case that readcharfun is
15317 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15318 (read_multibyte): Delete.
15319 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15320 (read_emacs_mule_char): New functions.
15321 (Fload): Even if the file doesn't have the extension ".elc", if
15322 safe_to_load_p returns a positive version number, assume that the
15323 file contains bytecompiled code. If the version is less than 22,
15324 load the file while decoding multibyte sequences by emacs-mule.
15325 (readevalloop): Don't use readchar_backlog.
15326 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15327 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15328 (read_escape): Delete the arg BYTEREP.
15329 (read1): Set load_each_byte to 1 temporarily while handling
15330 #@NUMBER. Don't call read_multibyte.
15331 (read_vector): Call Fread with a cons. If readcharfun is
15332 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15333 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15334 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15335 and Qload_force_doc_strings.
15336
153372008-02-01 Kenichi Handa <handa@m17n.org>
15338
15339 * xdisp.c (face_before_or_after_it_pos): Call
15340 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15341
153422008-02-01 Kenichi Handa <handa@m17n.org>
15343
15344 * character.h (TRAILING_CODE_P): New macro.
15345 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15346 (string_char_with_unification): Fix prototype.
15347 (Vscript_alist): Extern it.
15348
15349 * character.c (Vscript_alist): New variable.
15350 (string_char_with_unification, str_as_unibyte)
15351 (string_escape_byte8): Add `const' to local variables.
15352 (syms_of_character): Declare script-alist as a Lisp variable.
15353
15354 * charset.h (Vcharset_ordered_list): Extern it.
15355 (charset_ordered_list_tick): Extern it.
15356 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15357 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15358 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15359 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15360 (Funify_charset): Adjust for the change of Funify_charset.
15361
15362 * charset.c (charset_ordered_list_tick): New variable.
15363 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15364 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15365 deunify intead of unify a charset.
15366 (string_xstring_p): Add `const' to local variables.
15367 (find_charsets_in_text): Add `const' to arguments and local variables.
15368 (encode_char): Adjust for the change of Funify_charset. Fix
15369 detecting of invalid code.
15370 (Fset_charset_priority): Increment charset_ordered_list_tick.
15371 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15372 and TO_CODE.
15373
15374 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15375 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15376 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15377 (decode_coding_ccl, consume_chars)
15378 (Ffind_coding_systems_region_internal)
15379 (Fcheck_coding_systems_region): Add `const' to local variables.
15380
15381 * print.c (print_object): Use octal form for printing the
15382 contents of a bool vector.
15383
153842008-02-01 Dave Love <fx@gnu.org>
15385
15386 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15387 <version == 20>: Refuse to load.
15388
153892008-02-01 Dave Love <fx@gnu.org>
15390
15391 * fns.c: Move coding.h.
15392 (Qcodeset, Qdays, Qmonths): New.
15393 (concat): Use CHARACTERP instead of INTEGERP.
15394 (Flocale_codeset): Delete.
15395 (Flanginfo): New function.
15396 (syms_of_fns): Change accordingly.
15397
15398 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15399
154002008-02-01 Dave Love <fx@gnu.org>
15401
15402 * casetab.c (init_casetab_once, init_casetab_once): Fix
15403 CHAR_TABLE_SET call.
15404
15405 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15406
15407 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15408
15409 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15410 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15411 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15412
15413 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15414
15415 * coding.c (ENCODE_DESIGNATION, decode_eol)
15416 (make_conversion_work_buffer, code_conversion_restore)
15417 (Fdefine_coding_system_internal): Convert Lisp types.
15418 (code_conversion_restore): Use EQ, not ==.
15419 (Fencode_coding_string): Fix code_convert_string call.
15420
15421 * coding.h (code_convert_region): Fix prototype.
15422
15423 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15424
15425 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15426 (Ffontset_info): Convert Lisp types.
15427
15428 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15429
15430 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15431
15432 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15433
15434 * chartab.c: Include "...h", not <...h> in some cases.
15435
15436 * callproc.c (Fcall_process): Remove unused variables.
15437
154382008-02-01 Dave Love <fx@gnu.org>
15439
15440 * coding.c (Fset_coding_system_priority): Allow null arg list.
15441
154422008-02-01 Dave Love <fx@gnu.org>
15443
15444 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15445 (Fself_insert_and_exit): Use CHARACTERP.
15446
15447 * callproc.c (Fcall_process): Remove unused vars.
15448
15449 * xterm.c (XTread_socket): Add extra dead keysyms.
15450
15451 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15452
15453 * dispextern.h: Remove prototypes for redraw_frame,
15454 redraw_garbaged_frames.
15455
15456 * cmds.c (Fself_insert_command): Use CHARACTERP.
15457
15458 * chartab.c (make_sub_char_table): Remove unused var.
15459 (Fset_char_table_default, Fmap_char_table): Doc fix.
15460
15461 * keymap.c (access_keymap): Remove generic char code.
15462 (push_key_description): Use CHARACTERP.
15463
154642008-02-01 Dave Love <fx@gnu.org>
15465
15466 * charset.c: Doc fixes.
15467 (Funify_charset): Extra checking.
15468
154692008-02-01 Dave Love <fx@gnu.org>
15470
15471 * lread.c: Remove some unused variables.
15472 (safe_to_load_p): If safe, return the magic number version byte.
15473 (Fload): Maybe use load-with-code-conversion.
15474
154752008-02-01 Kenichi Handa <handa@m17n.org>
15476
15477 * category.c (Fmodify_category_entry): Don't modify the contents
15478 of category_set for characters out of the range. Avoid
15479 unnecessary modification.
15480
15481 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15482 Vchar_unify_table. The default value of the table is now nil.
15483
15484 * character.c (syms_of_character): Setup Vchar_width_table for
15485 eight-bit-control and raw-byte chars.
15486
15487 * charset.h (enum define_charset_arg_index): Delete
15488 charset_arg_parents and add charset_arg_subset and
15489 charset_arg_superset.
15490 (enum charset_attr_index): Delete charset_parents and add
15491 charset_subset and charset_superset.
15492 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15493 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15494 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15495 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15496 (CHARSET_SUPERSET): New macros.
15497 (charset_work): Extern it.
15498 (ENCODE_CHAR): Use charset_work.
15499 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15500 (map_charset_chars): Extern it.
15501
15502 * charset.c (load_charset_map): Set the default value of encoder
15503 and deunifier char-tables to nil.
15504 (map_charset_chars): Change argument. Change callers. Use
15505 map_char_table_for_charset instead of map_char_table.
15506 (Fmap_charset_chars): New optional args from_code and to_code.
15507 (Fdefine_charset_internal): Adjust for the change of
15508 `define-charset' (:parents -> :subset or :superset).
15509 (charset_work): New variable.
15510 (encode_char, syms_of_charset): Adjust for the change of
15511 Fdefine_charset_internal.
15512 (Ffind_charset_string): Setup the vector `charsets' correctly.
15513
15514 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15515 the previous change.
15516 (char_table_ref_and_range): Adjust for the above change.
15517 (map_sub_char_table_for_charset): New function.
15518 (map_char_table_for_charset): New function.
15519
15520 * keymap.c (describe_vector): Handle a char-table directly here.
15521 (describe_char_table): Delete.
15522
15523 * lisp.h (map_charset_chars): Delete.
15524
155252008-02-01 Dave Love <fx@gnu.org>
15526
15527 * fns.c (count_combining): Comment out (unused).
15528 (Flocale_codeset): New.
15529 (syms_of_fns): Defsubr it.
15530
15531 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15532 (size_t): Remove.
15533
155342008-02-01 Dave Love <fx@gnu.org>
15535
15536 * Makefile.in (chartab.o): Depend on charset.h.
15537
155382008-02-01 Kenichi Handa <handa@m17n.org>
15539
15540 * character.c (syms_of_character): Set the default value of
15541 Vprintable_chars to Qnil.
15542
155432008-02-01 Dave Love <fx@gnu.org>
15544
15545 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15546
155472008-02-01 Kenichi Handa <handa@m17n.org>
15548
15549 * charset.c (load_charset_map): Handle the case that from < to
15550 correctly.
15551
15552 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15553 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15554 Pay attention to raw-8-bit chars.
15555
155562008-02-01 Kenichi Handa <handa@m17n.org>
15557
15558 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15559 It is not bytecompiled now.
15560
15561 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15562 (charset_jisx0208): New variables.
15563 (Fdefine_charset_internal): Setup them if appropriate.
15564 (init_charset_once): Initialize them to -1.
15565
15566 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15567 (charset_jisx0208): Extern them.
15568
15569 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15570 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15571 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15572 (setup_iso_safe_charsets): Fix arguments to Fassq.
15573 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15574 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15575 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15576 (encode_coding_iso_2022): Change the 1st arg to
15577 ENCODE_ISO_CHARACTER to a variable.
15578
155792008-02-01 Kenichi Handa <handa@m17n.org>
15580
15581 * charset.h (enum define_charset_arg_index): New enums
15582 charset_arg_min_code and charset_arg_max_code.
15583 (struct charset): New member char_index_offset.
15584
15585 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15586 Take charset->char_index_offset into account.
15587 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15588 args[charset_arg_max_code]. Setup charset.char_index_offset.
15589 (syms_of_charset): Fix args to Fdefine_charset_internal.
15590
155912008-02-01 Dave Love <fx@gnu.org>
15592
15593 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15594
155952008-02-01 Dave Love <fx@gnu.org>
15596
15597 * coding.c: Doc fixes.
15598 (Fcoding_system_aliases): Fix return value.
15599 (Qmac): Remove (duplicated) definition.
15600
156012008-02-01 Dave Love <fx@gnu.org>
15602
15603 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15604 functions.
15605
15606 * character.c (Fstring): Doc fix.
15607
15608 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15609
15610 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15611 ids.
15612 (font-encoding-alist): Doc fix.
15613
156142008-02-01 Dave Love <fx@gnu.org>
15615
15616 * term.c (costs_set): Declare static, non-initialized for pcc.
15617 (encode_terminal_code): Remove unused var.
15618
15619 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15620 for K&R.
15621
15622 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15623
15624 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15625 (suffixes): Move out of make_subsidiaries for K&R.
15626
15627 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15628
15629 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15630
156312008-02-01 Dave Love <fx@gnu.org>
15632
15633 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15634
15635 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15636
156372008-02-01 Yong Lu <lyongu@asia-infonet.com>
15638
15639 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15640
15641 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15642
156432008-02-01 Kenichi Handa <handa@m17n.org>
15644
15645 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15646 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15647
156482008-02-01 Kenichi Handa <handa@m17n.org>
15649
15650 * coding.c (decode_coding_charset): Adjust for the change of
15651 Fdefine_coding_system_internal.
15652 (Fdefine_coding_system_internal): For a coding system of
15653 `charset' type, store a list of charset IDs in
15654 `charset_attr_charset_valids' element of coding attributes.
15655
156562008-02-01 Kenichi Handa <handa@m17n.org>
15657
15658 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15659 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15660 caller. Handle 2-byte and 3-byte charsets correctly.
15661 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15662 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15663 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15664 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15665 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15666 sequence.
15667 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15668 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15669 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15670 and alt&rule composition.
15671 (decode_coding_iso_2022): Handle composition correctly.
15672 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15673
15674 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15675 re-defining a charset. If the charset has :emacs-mule-id, setup
15676 emacs_mule_bytes.
15677 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15678
156792008-02-01 Kenichi Handa <handa@m17n.org>
15680
15681 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15682 (encode_coding_big5, encode_coding_charset): If coding requires safe
15683 encoding, produce a character specified by
15684 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15685
156862008-02-01 Dave Love <fx@gnu.org>
15687
15688 * xterm.c (XSetIMValues): Declare.
15689
15690 * process.c: Conditionally include sys/wait.h, pty.h.
15691
15692 * print.c (print_object): Fix print format for 64-bit systems.
15693
15694 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15695
15696 * buffer.c (emacs_strerror): Declare.
15697
15698 * fontset.c (Fclear_face_cache): Declare.
15699 (accumulate_font_info): Comment-out (unused).
15700 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15701 variables.
15702
15703 * character.h (string_escape_byte8): Declare.
15704
15705 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15706 unused vars.
15707 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15708 (Fmap_charset_chars): Doc fix.
15709
15710 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15711 (Fset_coding_system_priority, Fset_coding_system_priority)
15712 (Fdefine_coding_system_internal): Doc fix.
15713
157142008-02-01 Dave Love <fx@gnu.org>
15715
15716 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15717
157182008-02-01 Kenichi Handa <handa@m17n.org>
15719
15720 * character.c (string_escape_byte8): Make multibyte string with
15721 correct size.
15722
15723 * charset.c (Fmake_char): Delete unnecessary code.
15724
157252008-02-01 Kenichi Handa <handa@m17n.org>
15726
15727 * xfns.c (x_encode_text): Allocate coding.destination here, and
15728 call encode_coding_object with dst_object Qnil.
15729
15730 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15731 multibyte form correctly.
15732
15733 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15734 against Vfont_encoding_alist.
15735
15736 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15737 handling of charset list.
15738 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15739 (decode_coding_object): Move point to coding->dst_pos before
15740 calling post-read-conversion function.
15741 (encode_coding_object): Give correct arguments to
15742 pre-write-conversion. Ignore the return value of
15743 pre-write-conversion function. Pay attention to the case that
15744 pre-write-conversion changes the current buffer. If dst_object is
15745 Qt, even if coding->src_bytes is zero, allocate at least one byte
15746 to coding->destination.
15747
15748 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15749
15750 * charset.c (Fmake_char): Make it more backward compatible.
15751 (Fmap_charset_chars): Fix docstring.
15752
157532008-02-01 Dave Love <fx@gnu.org>
15754
15755 * coding.c: Doc fixes.
15756 (Fdefine_coding_system_alias): Use names, not symbols, in
15757 coding-system-alist.
15758
157592008-02-01 Kenichi Handa <handa@m17n.org>
15760
15761 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15762 of calling free_realized_face.
15763
157642008-02-01 Yong Lu <lyongu@asia-infonet.com>
15765
15766 * charset.c (read_hex): Don't treat SPC as a comment starter.
15767 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15768 (Fdecode_char): Fix typo.
15769
157702008-02-01 Kenichi Handa <handa@m17n.org>
15771
15772 * charset.h (struct charset): New member `code_space_mask'.
15773
15774 * coding.c (coding_set_source): Delete the local variable beg_byte.
15775 (encode_coding_charset, Fdefine_coding_system_internal):
15776 Delete the local variable charset.
15777 (Fdefine_coding_system_internal): Setup
15778 attrs[coding_attr_charset_valids] correctly.
15779
15780 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15781 member to check if CODE is valid or not.
15782 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15783 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15784 is within the range of charset->min_code and carset->max_code.
15785
157862008-02-01 Dave Love <fx@gnu.org>
15787
15788 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15789
15790 * dispextern.h (generate_ascii_font): Fix return type.
15791
15792 * xfaces.c (generate_ascii_font): Fix arg declaration.
15793
15794 * coding.c (coding_inherit_eol_type)
15795 (Fset_terminal_coding_system_internal)
15796 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15797
157982008-02-01 Kenichi Handa <handa@m17n.org>
15799
15800 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15801 multiple charsets correctly.
15802
158032008-02-01 Kenichi Handa <handa@m17n.org>
15804
15805 * search.c (boyer_moore): Fix handling of multibyte character
15806 translation.
15807
15808 * xdisp.c (display_mode_element): When the variable `elt' is
15809 changed, update `this' and `lisp_string'.
15810
158112008-02-01 Kenichi Handa <handa@m17n.org>
15812
15813 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15814
15815 * callproc.c (Fcall_process): Be sure to give the current buffer
15816 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15817
15818 * charset.c (struct charset_map_entries): New struct.
15819 (load_charset_map): Rename from parse_charset_map. New args
15820 entries and n_entries. Change caller.
15821 (load_charset_map_from_file): Rename from load_charset_map.
15822 Change caller. New arg control_flag. Call load_charset_map at
15823 the tail.
15824 (load_charset_map_from_vector): New function.
15825 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15826 (encode_char): If the charset is compact, change a character index
15827 to a code point.
15828
15829 * coding.c (coding_alloc_by_making_gap): Check the case that the
15830 source and destination are the same correctly.
15831 (decode_coding_raw_text): Set coding->consumed_char and
15832 coding->consumed to 0.
15833 (produce_chars): If coding->chars_at_source is nonzero, update
15834 coding->consumed_char and coding->consumed before calling
15835 alloc_destination.
15836 (Fdefine_coding_system_alias): Register ALIAS in
15837 Vcoding_system_alist.
15838 (syms_of_coding): Define `no-conversion' coding system at the tail.
15839
15840 * fileio.c (Finsert_file_contents): Set coding_system instead of
15841 val. If the current buffer is multibyte, always call
15842 decode_coding_gap.
15843
15844 * xfaces.c (try_font_list): Give higher priority to fontset's
15845 family than face's family.
15846
158472008-02-01 Kenichi Handa <handa@m17n.org>
15848
15849 * callproc.c (Fcall_process): Be sure to give the current buffer
15850 to decode_coding_c_string.
15851
15852 * xfaces.c (try_font_list): Give a family specified in a fontset
15853 higher priority than a family specified in a face.
15854
158552008-02-01 Kenichi Handa <handa@m17n.org>
15856
15857 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15858 Fix arguments to insert_from_buffer.
15859
15860 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15861
158622008-02-01 Kenichi Handa <handa@m17n.org>
15863
15864 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15865 (decode_coding_gap): Set coding->dst_multibyte correctly.
15866
158672008-02-01 Kenichi Handa <handa@m17n.org>
15868
15869 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15870 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15871 (encode_coding_utf_16): Substitute coding->default_char for
15872 non-Unicode characters.
15873 (decode_coding): Don't call record_insert here.
15874 (setup_coding_system): Initialize `surrogate' of
15875 coding->spec.utf_16 to 0.
15876 (EMIT_ONE_BYTE): Fix for multibyte case.
15877
15878 * insdel.c (insert_from_gap): Call record_insert.
15879
158802008-02-01 Kenichi Handa <handa@m17n.org>
15881
15882 * casefiddle.c (casify_region): Fix multibyte case.
15883
15884 * character.c (c_string_width): Add return type `int'.
15885 (char_string_with_unification): Delete arg ADVANCED.
15886
15887 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15888 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15889 (CHAR_STRING_ADVANCE): Make it do-while statement.
15890
15891 * chartab.c (sub_char_table_set_range): Optimize for the case
15892 DEPTH == 3. Add workaround code for a GCC optimization bug.
15893
15894 * charset.c (parse_charset_map): Remove an unused variable.
15895
15896 * coding.c: Delete unused variables.
15897
15898 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15899 earlier. If inserted is zero and the coding system doesn't
15900 require flushing, don't call decode_coding_gap.
15901
15902 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15903
159042008-02-01 Kenichi Handa <handa@m17n.org>
15905
15906 The following changes are for using Unicode as an internal
15907 character model, and use UTF-8 format for buffer/string
15908 representation.
15909
15910 * .gdbinit (xchartable): Adjust for the change of char table structure.
15911 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15912
15913 * Makefile.in (obj): Add character.o and chartab.o.
15914 (lisp, shortlisp): Remove utf-8.elc.
15915 (*.o): For many files, change dependency on charset.h to
15916 character.h, and add dependency on character.h.
15917 (character.o, chartab.o): New targets.
15918
15919 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15920 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15921 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15922 of "charset.h".
15923
15924 * dired.c, filelock.c: Include "character.h".
15925
15926 * alloc.c: Include "character.h" instead of "charset.h".
15927 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15928 (syms_of_alloc): Remove defsubr for Smake_char_table.
15929
15930 * buffer.c: Include "character.h" instead of "charset.h", don't
15931 include "coding.h".
15932 (Fset_buffer_multibyte): Adjust for UTF-8.
15933
15934 * buffer.h: EXFUN Fbuffer_live_p.
15935
15936 * callproc.c: Include "character.h" instead of "charset.h".
15937 (Fcall_process): Big change for the new code-conversion APIs.
15938
15939 * casetab.c: Include "character.h" instead of "charset.h".
15940 (set_canon, set_identity, shuffle): Adjust for the new
15941 map_char_table spec.
15942 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15943 accessing the char table structure.
15944
15945 * chartab.c: New file that implements char table.
15946
15947 * category.c: Include "character.h".
15948 (copy_category_entry): New function.
15949 (copy_category_table): Call map_char_table and copy_category_entry.
15950 (Fmake_category_table): Initialize all top-level slots.
15951 (char_category_set): New function.
15952 (modify_lower_category_set): Delete.
15953 (Fmodify_category_entry): Call char_table_ref_and_range.
15954
15955 * category.h (CATEGORY_SET): Just call char_category_set.
15956
15957 * ccl.c: Include "character.h".
15958 (Qccl, Qcclp): New variables.
15959 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15960 it's less than 256.
15961 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15962 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15963 and DST type.
15964 (ccl_driver): Change types of argument, adjust code accordingly.
15965 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15966 ccl_driver.
15967 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15968
15969 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15970 New members src_multibyte, dst_multibyte, consumed, and produced.
15971 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15972 (CODING_SPEC_CCL_PROGRAM): New macro.
15973 (ccl_driver): Update prototype.
15974 (Qccl, Qcclp, Fccl_program_p): Extern them.
15975 (CHECK_CCL_PROGRAM): New macro.
15976
15977 * character.c, character.h, chartab.c: New files.
15978
15979 * charset.c: Mostly re-written. Move character and multibyte sequence
15980 handling codes to character.c.
15981
15982 * charset.h: Mostly re-written. Move character and multibyte sequence
15983 handling codes to character.h.
15984
15985 * coding.c, coding.h: Mostly re-written.
15986
15987 * composite.c: Include "character.h" instead of "charset.h".
15988 (CHAR_WIDTH): Move to character.h.
15989 (HASH_KEY, HASH_VALUE): Delete.
15990
15991 * composite.h (enum composition_method): Change order of enumeration
15992 symbols.
15993
15994 * data.c: Include "character.h" instead of "charset.h".
15995 (Faref): Call CHAR_TABLE_REF for a char table.
15996 (Faset): Call CHAR_TABLE_SET for a char table.
15997
15998 * dispextern.h (free_realized_face, check_face_attribytes)
15999 (generate_ascii_font): Extern them.
16000 (free_realized_multibyte_face): Delete extern.
16001
16002 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16003 table structure.
16004
16005 * editfns.c: Include "character.h" instead of "charset.h".
16006 (Fchar_to_string): Always call CHAR_STRING.
16007
16008 * emacs.c (main): Call init_charset_once, init_charset,
16009 syms_of_chartab, and syms_of_character.
16010
16011 * fileio.c: Include "character.h" instead of "charset.h".
16012 (Finsert_file_contents): Big change for the new code-conversion API.
16013 (choose_write_coding_system, Fwrite_region): Likewise.
16014 (build_annotations_2): Delete.
16015 (e_write): Big change for the new code-conversion API.
16016
16017 * fns.c: Include "character.h" instead of "charset.h".
16018 (copy_sub_char_table): Move to chartab.c.
16019 (Fcopy_sequence): Call copy_char_table for a char table.
16020 (concat): Delete codes calling count_multibyte.
16021 (string_char_to_byte, string_byte_to_char): Adjust for the new
16022 multibyte form.
16023 (internal_equal): Adjust for the change of char table structure.
16024 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16025 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16026 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16027 (char_table_translate, optimize_sub_char_table)
16028 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16029 chartab.c.
16030 (char_table_ref_and_index): Delete.
16031 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16032 (Fmd5): Call preferred_coding_system instead of accessing
16033 Vcoding_category_list. Adjust for the new code-conversion API.
16034 (syms_of_fns): Move defsubr for char table related functions to
16035 chartab.c.
16036
16037 * fontset.c: Mostly re-written.
16038
16039 * fontset.h (struct font_info): Change type of the member encoding_type.
16040 (enum FONT_SPEC_INDEX): New enum.
16041 (fontset_font_pattern, fs_load_font): Update prototype.
16042 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16043
16044 * indent.c: Include "character.h" instead of "charset.h".
16045 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16046
16047 * insdel.c: Include "character.h" instead of "charset.h".
16048 (copy_text): Don't refer to Vnonascii_translation_table.
16049 (insert_from_gap): New function.
16050
16051 * keyboard.c: Include "character.h" instead of "charset.h".
16052 (command_loop_1): Never call direct_output_forward_char before
16053 a non-ASCII character.
16054 (read_char): If Vkeyboard_translate_table is a char table, always
16055 translate a character.
16056
16057 * keymap.c: Include "character.h".
16058 (store_in_keymap): Handle the case that IDX is a cons.
16059 (Fdefine_key): Handle the case that KEY is a cons and the car part
16060 is also a cons (range).
16061 (push_key_description): Adjust for the new character code.
16062 (describe_vector): Call describe_char_table for a char table.
16063 (describe_char_table): New function.
16064
16065 * keymap.h (describe_char_table): Extern it.
16066
16067 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16068 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16069 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16070 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16071 Delete.
16072 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16073 structure.
16074 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16075 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16076 (CHARTAB_SIZE_BITS_3): New macros.
16077 (chartab_size): Extern it.
16078 (struct Lisp_Char_Table): Re-design.
16079 (struct Lisp_Sub_Char_Table): New structure.
16080 (HASH_KEY, HASH_VALUE): Move from fns.c.
16081 (CHARACTERBITS): Define as 22.
16082 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16083 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16084 (GC_SUB_CHAR_TABLE_P): New macro.
16085 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16086 (code_convert_string_norecord): Deleted extern.
16087 (init_character_once, syms_of_character, init_charset)
16088 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16089
16090 * lread.c: Include "character.h".
16091 (read_multibyte): New arg NBYTES.
16092 (read_escape): Change the meaning of returned *BYTEREP.
16093 (to_multibyte): Delete.
16094 (read1): Adjust the handling of char table and string.
16095
16096 * print.c: Include "character.h" instead of "charset.h".
16097 (print_string): Convert 8-bit raw bytes to octal form by
16098 string_escape_byte8.
16099 (print_object): Adjust for the new multibyte form. Print 8-bit
16100 raw bytes always in octal form. Handle sub char table correctly.
16101
16102 * process.c: Include "character.h" instead of "charset.h".
16103 (read_process_output, send_process): Adjust for the new
16104 code-conversion API.
16105
16106 * puresize.h (BASE_PURESIZE): Increase.
16107
16108 * regex.c: Include "character.h" instead of "charset.h".
16109 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16110 (regex_compile): Accept a range whose starting and ending
16111 character have different leading bytes.
16112 (analyse_first): Adjust for the above change.
16113
16114 * search.c: Include "character.h" instead of "charset.h".
16115 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16116 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16117
16118 * syntax.c: Include "character.h" instead of "charset.h".
16119 (syntax_parent_lookup): Delete.
16120 (Fmodify_syntax_entry): Accept a cons as CHAR.
16121 (skip_chars): Adjust for the new multibyte form.
16122 (init_syntax_once): Call char_table_set_range instead of directly
16123 accessing the structure of a char table.
16124
16125 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16126 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16127 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16128 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16129
16130 * term.c: Include "buffer.h" and "character.h".
16131 (encode_terminal_code, write_glyphs): Adjust for the new
16132 code-conversion API.
16133 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16134
16135 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16136
16137 * xdisp.c: Include "character.h".
16138 (get_next_display_element): Adjust for the new multibyte form.
16139 (disp_char_vector): Adjust for the new char table structure.
16140 (decode_mode_spec_coding): Adjust for the new structure of
16141 coding system.
16142 (decode_mode_spec): Adjust for the new code-conversion API.
16143
16144 * xfaces.c: Include "character.h" instead of "charset.h".
16145 (load_face_font): Adjust for the change of choose_face_font and
16146 FS_LOAD_FONT.
16147 (generate_ascii_font): New function.
16148 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16149 (set_font_frame_param): Adjust for the change of choose_face_font.
16150 (free_realized_face): Make it public.
16151 (free_realized_faces_for_fontset): Rename from
16152 free_realized_multibyte_face. Free also faces realized for ASCII.
16153 (choose_face_font): Change arguments. Adjust for the change of
16154 fontset_font_pattern and FS_LOAD_FONT.
16155
16156 * xfns.c: Include "character.h".
16157 (x_encode_text): Adjust for the new code-conversion API.
16158
16159 * xselect.c: Don't include "charset.h".
16160 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16161
16162 * xterm.c: Include "character.h".
16163 (x_encode_char): New argument CHARSET. Change caller.
16164 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16165 Call ENCODE_CHAR instead of SPLIT_CHAR.
16166 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16167 CHAR_WIDTH instead of CHARSET_WIDTH.
16168 (XTread_socket): Adjust for the new code-conversion API.
16169 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16170 (x_load_font): Adjust for the change of struct font.
16171
161722008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16173
16174 * xfaces.c (face_at_buffer_position): Remove unused vars.
16175
161762008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16177
16178 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16179 Fix overflow checking.
16180
161812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16182
16183 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16184 Cancel previous change.
16185
161862008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16187
16188 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16189 ccl->eight_bit_control. Fix check for buffer overflow.
16190 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16191 (ccl_driver): Initialize extra_bytes to 0.
16192
161932008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16194
16195 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16196 return it ORed with ctrl_modifier.
16197
161982008-01-29 Miles Bader <miles@gnu.org>
16199
16200 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
16201
162022008-01-28 Jason Rumney <jasonr@gnu.org>
16203
16204 * w32.c (stat): Don't double check for networked drive.
16205
162062008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
16207
16208 * window.c (run_window_configuration_change_hook): New function.
16209 Code extracted from set_window_buffer. Set the selected frame.
16210 (set_window_buffer): Use it.
16211 * window.h (run_window_configuration_change_hook): Declare.
16212 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
16213
16214 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
16215
162162008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
16217
16218 * Makefile.in: Remove references to unused macros.
16219
162202008-01-26 Eli Zaretskii <eliz@gnu.org>
16221
16222 * w32.c (g_b_init_get_sid_sub_authority)
16223 (g_b_init_get_sid_sub_authority_count): New static variables.
16224 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
16225 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
16226 (init_user_info): Use them to retrieve uid and gid.
16227 Use 500/513, the Windows defaults, as Administrator's uid/gid.
16228 (fstat): Use pw_uid and pw_gid from the_passwd structure for
16229 st_uid and st_gid of the file.
16230
162312008-01-26 Jason Rumney <jasonr@gnu.org>
16232
16233 * w32.c (logon_network_drive): New function.
16234 (stat): Use it.
16235
162362008-01-26 Chong Yidong <cyd@stupidchicken.com>
16237
16238 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
16239 invisible text covered with an ellipsis.
16240
162412008-01-25 Richard Stallman <rms@gnu.org>
16242
16243 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
16244 jump back to beginning. Move some other initializations after that.
16245 (Qwindow_text_change_functions, Vwindow_text_change_functions):
16246 New variables.
16247 (syms_of_xdisp): Init them.
16248
16249 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
16250
16251 * buffer.c (reset_buffer_local_variables):
16252 Implement `permanent-local-hook'.
16253 (Qpermanent_local_hook): New variable.
16254 (syms_of_buffer): Init and staticpro it.
16255
162562008-01-25 Michael Albinus <michael.albinus@gmx.de>
16257
16258 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
16259
162602008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
16261
16262 * fns.c (Fclrhash): Return TABLE.
16263
162642008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16265
16266 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
16267 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
16268 is set even without positional changes.
16269 (x_scroll_bar_clear): Set bar->redraw_needed_p.
16270
16271 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
16272
162732008-01-23 Jason Rumney <jasonr@gnu.org>
16274
16275 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
16276
16277 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
16278 the unicode range available in MULE by locale-coding-system.
16279 Improve dbcs lead byte detection. Set event timestamp and modifiers
16280 earlier.
16281
162822008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16283
16284 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16285 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16286 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16287 when used on child processes.
16288
162892008-01-21 Michael Albinus <michael.albinus@gmx.de>
16290
16291 * dbusbind.c (Fdbus_method_return_internal): Rename from
16292 Fdbus_method_return.
16293 (Fdbus_unregister_object): Move to dbus.el.
16294 (Fdbus_call_method, Fdbus_method_return_internal)
16295 (Fdbus_send_signal): Improve debug messages.
16296
162972008-01-20 Martin Rudalics <rudalics@gmx.at>
16298
16299 * undo.c (undo_inhibit_record_point): New variable.
16300 (syms_of_undo): Initialize it.
16301 (record_point): Don't record point when undo_inhibit_record_point
16302 is set.
16303
163042008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16305
16306 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16307
16308 * xdisp.c (Qauto_hscroll_mode): New var.
16309 (syms_of_xdisp): Initialize it.
16310 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16311 window's buffer.
16312 (hscroll_windows): Don't check automatic_hscrolling_p here.
16313
16314 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16315 vscroll if we're setting window-buffer to the value it already has.
16316
163172008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16318
16319 * m/intel386.h: Remove references to XENIX.
16320
163212008-01-17 Andreas Schwab <schwab@suse.de>
16322
16323 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16324 instead of HAVE_X86_64_LIB64_DIR.
16325 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16326
163272008-01-17 Glenn Morris <rgm@gnu.org>
16328
16329 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16330 to HAVE_X86_64_LIB64_DIR.
16331
163322008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16333
16334 * s/irix3-3.h:
16335 * s/irix4-0.h:
16336 * s/386-ix.h:
16337 * s/domain.h:
16338 * s/hpux9-x11r4.h:
16339 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16340
16341 * sysdep.c: Remove code containing references to symbols defined
16342 by unsupported systems.
16343
163442008-01-16 Glenn Morris <rgm@gnu.org>
16345
16346 * coding.c (select-safe-coding-system-function): Doc fix.
16347
163482008-01-15 Glenn Morris <rgm@gnu.org>
16349
16350 * config.in: Revert 2008-01-13 change: this is a generated file.
16351
163522008-01-13 Tom Tromey <tromey@redhat.com>
16353
16354 * lisp.h: Fix typo.
16355
163562008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16357
16358 * m/sequent-ptx.h:
16359 * m/sequent.h:
16360 * s/ptx.h:
16361 * s/ptx4-2.h:
16362 * s/ptx4.h: Remove files for systems no longer supported.
16363
16364 * callproc.c (Fcall_process): Fix previous change.
16365
163662008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16367
16368 * unexsunos4.c: Remove file, system not supported anymore.
16369
16370 * m/mips.h:
16371 * m/intel386.h:
16372 * callproc.c:
16373 * config.in:
16374 * ecrt0.c:
16375 * emacs.c:
16376 * fileio.c:
16377 * frame.c:
16378 * getpagesize.h:
16379 * keyboard.c:
16380 * lread.c:
16381 * process.c:
16382 * puresize.h:
16383 * sysdep.c:
16384 * systty.h:
16385 * syswait.h:
16386 * unexec.c:
16387 * xdisp.c:
16388 * alloc.c: Remove code containing references to symbols defined by
16389 unsupported systems.
16390
163912008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16392
16393 * coding.c (detect_coding_mask): Fix previous change.
16394
163952008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16396
16397 * coding.c (detect_coding_iso2022): New arg
16398 latin_extra_code_state. Allow Latin extra codes only
16399 when *latin_extra_code_state is nonzero.
16400 (detect_coding_mask): If there is a NULL byte, detect the encoding
16401 as UTF-16 or binary. If Latin extra codes exist, detect the
16402 encoding as ISO-2022 only when there's no other proper encoding is
16403 found.
16404
164052008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16406
16407 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16408 #ifdef MAC_OS.
16409
164102008-01-08 Richard Stallman <rms@gnu.org>
16411
16412 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16413
164142008-01-06 Nick Roberts <nickrob@snap.net.nz>
16415
16416 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16417 menu bar in parentheses.
16418
164192008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16420
16421 * m/7300.h:
16422 * m/acorn.h:
16423 * m/alliant-2800.h:
16424 * m/alliant.h:
16425 * m/alliant1.h:
16426 * m/alliant4.h:
16427 * m/altos.h:
16428 * m/amdahl.h:
16429 * m/apollo.h:
16430 * m/att3b.h:
16431 * m/aviion-intel.h:
16432 * m/aviion.h:
16433 * m/celerity.h:
16434 * m/clipper.h:
16435 * m/cnvrgnt.h:
16436 * m/convex.h:
16437 * m/cydra5.h:
16438 * m/delta88k.h:
16439 * m/dpx2.h:
16440 * m/dual.h:
16441 * m/elxsi.h:
16442 * m/f301.h:
16443 * m/gould-np1.h:
16444 * m/gould.h:
16445 * m/i860.h:
16446 * m/ibmps2-aix.h:
16447 * m/ibmrt-aix.h:
16448 * m/ibmrt.h:
16449 * m/irist.h:
16450 * m/is386.h:
16451 * m/isi-ov.h:
16452 * m/mega68.h:
16453 * m/mg1.h:
16454 * m/news-r6.h:
16455 * m/news-risc.h:
16456 * m/news.h:
16457 * m/nh3000.h:
16458 * m/nh4000.h:
16459 * m/ns16000.h:
16460 * m/ns32000.h:
16461 * m/nu.h:
16462 * m/orion.h:
16463 * m/orion105.h:
16464 * m/paragon.h:
16465 * m/pfa50.h:
16466 * m/plexus.h:
16467 * m/pyramid.h:
16468 * m/pyrmips.h:
16469 * m/sh3el.h:
16470 * m/sps7.h:
16471 * m/sr2k.h:
16472 * m/stride.h:
16473 * m/sun1.h:
16474 * m/sun2.h:
16475 * m/sun3-68881.h:
16476 * m/sun3-fpa.h:
16477 * m/sun3-soft.h:
16478 * m/sun3.h:
16479 * m/sun386.h:
16480 * m/symmetry.h:
16481 * m/tad68k.h:
16482 * m/tahoe.h:
16483 * m/targon31.h:
16484 * m/tek4300.h:
16485 * m/tekxd88.h:
16486 * m/tower32.h:
16487 * m/tower32v3.h:
16488 * m/ustation.h:
16489 * m/wicat.h:
16490 * m/xps100.h:
16491 * s/cxux.h:
16492 * s/cxux7.h:
16493 * s/dgux.h:
16494 * s/dgux4.h:
16495 * s/dgux5-4-3.h:
16496 * s/dgux5-4r2.h:
16497 * s/esix.h:
16498 * s/esix5r4.h:
16499 * s/hiuxmpp.h:
16500 * s/hiuxwe2.h:
16501 * s/iris3-5.h:
16502 * s/iris3-6.h:
16503 * s/isc2-2.h:
16504 * s/isc3-0.h:
16505 * s/isc4-0.h:
16506 * s/isc4-1.h:
16507 * s/newsos5.h:
16508 * s/newsos6.h:
16509 * s/osf1.h:
16510 * s/osf5-0.h:
16511 * s/riscix1-1.h:
16512 * s/riscix12.h:
16513 * s/sco4.h:
16514 * s/sco5.h:
16515 * s/sunos4-0.h:
16516 * s/sunos4-1.h:
16517 * s/sunos413.h:
16518 * s/sunos4shr.h:
16519 * s/umax.h:
16520 * s/unipl5-2.h:
16521 * s/xenix.h:
16522 * cxux-crt0.s:
16523 * unexapollo.c:
16524 * unexconvex.c:
16525 * unexenix.c:
16526 * unexsni.c: Remove files for systems no longer supported.
16527
16528 * m/intel386.h: Remove references to unsupported systems.
16529
16530 * w32.c (get_emacs_configuration): Remove reference to i860.
16531
16532 * sysdep.c: Remove dead code.
16533
165342008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16535
16536 * s/rtu.h:
16537 * m/masscomp.h: Remove files. Platform is obsolete.
16538
165392008-01-04 Michael Albinus <michael.albinus@gmx.de>
16540
16541 * dbusbind.c (Fdbus_method_return): New function.
16542 (xd_read_message): Add the serial number to the event.
16543 (Fdbus_register_method): Activate the function.
16544
165452008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16546
16547 * keyboard.c (read_key_sequence): Fix typo.
16548
165492008-01-03 Michael Albinus <michael.albinus@gmx.de>
16550
16551 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16552 (xd_signature, xd_append_arg): Handle element type detection for
16553 empty arrays.
16554 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16555 SDATA () calls; this must be solved more general.
16556 (Fdbus_register_signal): Use SBYTES instead of strlen.
16557
165582008-01-03 Magnus Henoch <magnus@zemdatav>
16559
16560 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16561 unsigned int for byte values (necessary for big-endian platform).
16562 (Fdbus_call_method): Handle the case of no returned arguments.
16563
165642007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16565
16566 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16567
165682007-12-31 Magnus Henoch <mange@freemail.hu>
16569
16570 * dbusbind.c (xd_signature): Signature of variant is just "v".
16571
165722007-12-30 Michael Albinus <michael.albinus@gmx.de>
16573
16574 * dbusbind.c: Fix several errors and compiler warnings.
16575 Reported by Tom Tromey <tromey@redhat.com>.
16576 (XD_ERROR, XD_DEBUG_MESSAGE)
16577 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16578 (xd_append_arg): Part for basic D-Bus types rewritten.
16579 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16580 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16581 appropriate.
16582 (xd_read_message): Return Qnil. Don't signal an error; it is not
16583 useful during event reading.
16584 (Fdbus_register_signal): Signal an error if the check for
16585 FUNCTIONP fails.
16586 (Fdbus_register_method): New function. The implementation is not
16587 complete, the call of the function signals an error therefore.
16588 (Fdbus_unregister_object): New function, renamed from
16589 Fdbus_unregister_signal. The initial check signals an error, if
16590 the object is not well formed.
16591
165922007-12-30 Richard Stallman <rms@gnu.org>
16593
16594 * textprop.c (get_char_property_and_overlay):
16595 Signal error if POSITION is out of range in a buffer.
16596
165972007-12-29 Martin Rudalics <rudalics@gmx.at>
16598
16599 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16600 because the original parameters are in pure storage now.
16601
166022007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16603
16604 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16605
166062007-12-22 Eli Zaretskii <eliz@gnu.org>
16607
16608 * callint.c (syms_of_callint) <command-history>: Add reference to
16609 history-length in the doc string.
16610
166112007-12-17 Jason Rumney <jasonr@gnu.org>
16612
16613 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16614 before passing as wParam.
16615
166162007-12-22 Michael Albinus <michael.albinus@gmx.de>
16617
16618 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16619 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16620 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16621 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16622 as number.
16623 (Fdbus_call_method): Fix docstring.
16624
166252007-12-21 Michael Albinus <michael.albinus@gmx.de>
16626
16627 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16628 New macros.
16629 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16630 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16631 Simplify.
16632 (xd_signature): New function.
16633 (xd_append_arg): Compute also signatures. Major rewrite.
16634 (xd_retrieve_arg): Make debug messages friendly.
16635 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16636 Check for signatures of arguments.
16637
166382007-12-19 Michael Albinus <michael.albinus@gmx.de>
16639
16640 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16641 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16642 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16643 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16644 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16645 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16646 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16647 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16648 (xd_retrieve_value): Remove. Functionality included in ...
16649 (xd_append_arg): New function.
16650 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16651
166522007-12-16 Michael Albinus <michael.albinus@gmx.de>
16653
16654 * dbusbind.c (top): Include <stdio.h>.
16655 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16656 dbus_message_new_method_call and dbus_message_new_signal.
16657 (Fdbus_register_signal): Rename unique_name to uname.
16658 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16659 non-existing unique name. Fix typos in matching rule. Return an
16660 object which is useful in Fdbus_unregister_signal.
16661 (Fdbus_unregister_signal): Reimplementation, in order to remove
16662 only the corresponding entry.
16663 (Vdbus_registered_functions_table): Change the order of entries.
16664 Apply these changes in xd_read_message and Fdbus_register_signal.
16665
166662007-12-16 Andreas Schwab <schwab@suse.de>
16667
16668 * fileio.c (Finsert_file_contents): Fix overflow check to not
16669 depend on undefined integer overflow.
16670
166712007-12-14 Jason Rumney <jasonr@gnu.org>
16672
16673 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16674 for characters above 127.
16675
166762007-12-13 Jason Rumney <jasonr@gnu.org>
16677
16678 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16679 before dereferencing array.
16680 (lookup_vk_code): Remove zero comparison.
16681
166822007-12-14 Michael Albinus <michael.albinus@gmx.de>
16683
16684 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16685 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16686 Use `unsigned int' instead of `uint'.
16687 (xd_read_message, Fdbus_register_signal): Split expressions into
16688 multiple lines before operators "&&" and "||", according to the
16689 GNU Coding Standards.
16690
166912007-12-14 Eli Zaretskii <eliz@gnu.org>
16692
16693 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16694
166952007-12-12 Juri Linkov <juri@jurta.org>
16696
16697 * buffer.c (Frename_buffer): In interactive spec replace
16698 `read-buffer' with `read-string' that uses `buffer-name-history'
16699 as history, and the current buffer's name as default.
16700
167012007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16702
16703 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16704 manipulating the backtrace manually.
16705 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16706 (struct backtrace, backtrace_list): Remove.
16707 (command_loop_1): Remove dead var `no_direct'.
16708
16709 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16710 preserve non-built-in buffer-local variables.
16711 (Fkill_all_local_variables): Don't re-create&re-set permanent
16712 buffer-local variables.
16713
167142007-12-09 Juri Linkov <juri@jurta.org>
16715
16716 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16717 Lisp code that uses `read-buffer' with current buffer as default.
16718
167192007-12-08 Michael Albinus <michael.albinus@gmx.de>
16720
16721 * dbusbind.c (xd_read_message): Generate an event for every
16722 registered handler. There might be several handlers registered
16723 for the same signal.
16724 (Fdbus_register_signal): Don't overwrite a registration for the
16725 same signal. Add a new registration if handlers are different.
16726 (Vdbus_registered_functions_table): Rework doc string.
16727
167282007-12-07 Michael Albinus <michael.albinus@gmx.de>
16729
16730 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16731 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16732 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16733 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16734 Unify argument lists.
16735 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16736 arguments and hash table keys. Use unique name for service.
16737 (Fdbus_unregister_signal): Remove checks.
16738 (Vdbus_registered_functions_table): Fix doc string.
16739
167402007-12-05 Magnus Henoch <mange@freemail.hu>
16741
16742 * process.c (make_process): Initialize pty_flag to 0.
16743
167442007-12-05 Jason Rumney <jasonr@gnu.org>
16745
16746 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16747 specified XBMs.
16748
167492007-12-05 Richard Stallman <rms@gnu.org>
16750
16751 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16752
167532007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16754
16755 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16756 New variable.
16757 (mac_try_close_socket) [MAC_OSX]: New function.
16758 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16759 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16760
16761 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16762 Use mac_try_close_socket.
16763
167642007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16765
16766 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16767 reloc_base.
16768 (copy_dysymtab): Compute relocation base here.
16769 (rebase_reloc_address) [__ppc64__]: New function.
16770 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16771 changed.
16772
167732007-12-05 Jason Rumney <jasonr@gnu.org>
16774
16775 * w32proc.c (sys_spawnve): Quote args with wildcards.
16776
167772007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16778
16779 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16780 __objc_* sections.
16781 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16782
167832007-12-05 Michael Albinus <michael.albinus@gmx.de>
16784
16785 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16786 Move check for Vdbus_registered_functions_table to
16787 xd_read_queued_messages.
16788 (xd_read_queued_messages): Protect xd_read_message calls by
16789 internal_condition_case_1.
16790
167912007-12-04 Michael Albinus <michael.albinus@gmx.de>
16792
16793 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16794 Qdbus_system_bus and Qdbus_session_bus, respectively.
16795 (Vdbus_intern_symbols): Remove.
16796 (Vdbus_registered_functions_table): New hash table.
16797 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16798 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16799 Rewrite in order to manage registered functions by hash table
16800 Vdbus_registered_functions_table.
16801
168022007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16803
16804 * xterm.c: Update URL to Window Manager Specification in comment.
16805
168062007-12-02 Michael Albinus <michael.albinus@gmx.de>
16807
16808 * config.in (HAVE_DBUS): Add.
16809
16810 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16811 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16812 (obj): Add $(DBUS_OBJ).
16813 (LIBES): Add $(DBUS_LIBS).
16814 (dbusbind.o): New target.
16815
16816 * dbusbind.c: New file.
16817
16818 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16819
16820 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16821 (Qdbus_event): New Lisp symbol.
16822 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16823 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16824 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16825
16826 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16827
168282007-12-01 Richard Stallman <rms@gnu.org>
16829
16830 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16831
168322007-11-30 Jason Rumney <jasonr@gnu.org>
16833
16834 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16835 (w32con_reset_terminal_modes): Clear screen buffer.
16836 (w32_face_attributes): Don't use color indexes that are out of range.
16837 Only reverse the default colors.
16838
16839 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16840 WINDOWSNT.
16841
16842 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16843
168442007-11-29 Jason Rumney <jasonr@gnu.org>
16845
16846 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16847 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16848 if the terminal colors are initialized.
16849 (unspecified_fg, unspecified_bg): Remove unused declarations.
16850
168512007-11-29 Andreas Schwab <schwab@suse.de>
16852
16853 * keyboard.c (apply_modifiers): Fix typo.
16854
168552007-11-29 Richard Stallman <rms@gnu.org>
16856
16857 * keymap.c (Fcurrent_local_map): Doc fix.
16858
168592007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16860
16861 * s/gnu-kfreebsd.h: New file.
16862
168632007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16864
16865 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16866 Don't cast redundantly.
16867
16868 * keyboard.c (KEY_TO_CHAR): New macro.
16869 (parse_modifiers, apply_modifiers): Accept integer arguments.
16870 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16871 for chars and symbol keys.
16872 After doing such remapping, apply function-key-map again.
16873
168742007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16875
16876 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16877 compiled anymore.
16878
168792007-11-26 Andreas Schwab <schwab@suse.de>
16880
16881 * process.c (list_processes_1): Fix indentation level of the
16882 command column.
16883
168842007-11-23 Andreas Schwab <schwab@suse.de>
16885
16886 * editfns.c (Fformat): Handle %c specially since it requires the
16887 argument to be of type int.
16888
168892007-11-23 Markus Triska <markus.triska@gmx.at>
16890
16891 * emacs.c (main): Call init_editfns before init_process, since
16892 init_process sets Vprocess_connection_type depending on OS release.
16893
168942007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16895
16896 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16897 (find_symbol_value): Use do_symval_forwarding.
16898
16899 * data.c (set_internal): Set the value in the `cons-cell' (for
16900 Buffer_Local_values) not only for frame-local variables.
16901
169022007-11-22 Andreas Schwab <schwab@suse.de>
16903
16904 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16905 values to sprintf.
16906 * keymap.c (Fsingle_key_description): Likewise.
16907 * print.c (print_object): Likewise.
16908
169092007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16910
16911 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16912 file for image is nil.
16913
169142007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16915
16916 * term.c: Include stdarg.h.
16917 (fatal): Implement using varargs.
16918 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16919
169202007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16921
16922 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16923 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16924 Update call to buffer_slot_type_mismatch.
16925 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16926 (buffer_slot_type_mismatch): Update.
16927 * buffer.c (buffer_local_types): Remove.
16928 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16929 (defvar_per_buffer): Set the type in the buffer_objfwd.
16930
169312007-11-21 Jason Rumney <jasonr@gnu.org>
16932
16933 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16934 CreateFileMapping returns NULL on failure.
16935
169362007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16937
16938 * search.c (Fset_match_data): Remove the `evaporate' feature.
16939 (unwind_set_match_data): Don't use the `evaporate' feature.
16940
169412007-11-21 Jason Rumney <jasonr@gnu.org>
16942
16943 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16944
16945 * w32console.c (w32con_write_glyphs): Remove unused variables.
16946
169472007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16948
16949 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16950
16951 * s/darwin.h (MULTI_KBOARD): Remove.
16952
16953 * macfns.c (x_create_tip_frame, Fx_create_frame)
16954 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16955
169562007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16957
16958 * buffer.c (Fbuffer_local_value): Remove redundant test.
16959 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16960 than in `current-buffer' to match the comment.
16961 Do the swap using swap_in_global_binding.
16962
16963 * data.c (store_symval_forwarding, set_internal):
16964 * eval.c (specbind): Remove dead code.
16965
16966 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16967 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16968 Since we do not want to see internal Lisp_*fwd objects here.
16969
169702007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16971
16972 * sysdep.c (init_system_name): Use getaddrinfo if available.
16973
16974 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16975 (x_scroll_bar_note_movement): start, end, with, height in struct
16976 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16977
169782007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16979
16980 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16981
169822007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16983
16984 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16985 This undoes Richard's change of 14-Oct-2002.
16986
16987 * alloc.c (allocate_other_vector):
16988 * lisp.h (allocate_other_vector): Remove.
16989
16990 * window.c (struct save_window_data): Move non-lisp data to the end
16991 and make it `int' rather than Lisp_Object.
16992 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16993 Done wrap/unwrap integer values.
16994 (Fset_window_configuration, compare_window_configurations):
16995 Update use of fields to their new types.
16996
16997 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16998 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16999 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17000 (SET_SCROLL_BAR_X_WINDOW): Remove.
17001 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17002 Access the new x_window field directly.
17003 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17004 Don't wrap/unwrap integers into Lisp_Objects.
17005 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17006 (x_scroll_bar_report_motion):
17007 Don't wrap/unwrap integers into Lisp_Objects.
17008 (x_term_init): Use SDATA.
17009 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17010 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17011 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17012 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17013 * xfns.c (x_set_background_color):
17014 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17015 Access the new x_window field directly.
17016
17017 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17018 (allocate_pseudovector): Make non-static.
17019
17020 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17021 (allocate_pseudovector): Declare.
17022 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17023
170242007-11-15 Andreas Schwab <schwab@suse.de>
17025
17026 * editfns.c (Fformat): Correctly format EMACS_INT values.
17027 Also take precision into account when formatting an integer.
17028
17029 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17030
170312007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17032
17033 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17034 (syms_of_keyboard): Defsubr it.
17035
17036 * data.c (swap_in_global_binding): Fix longstanding bug where
17037 store_symval_forwarding was not called with the right second argument,
17038 thus causing objfwd-ing from being dropped.
17039
170402007-11-14 Juanma Barranquero <lekktu@gmail.com>
17041
17042 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17043 (Fx_display_pixel_height, Fx_display_planes)
17044 (Fx_display_color_cells, Fx_server_max_request_size)
17045 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17046 (Fx_display_visual_class, Fx_display_save_under):
17047 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17048 (Fx_display_pixel_height, Fx_display_planes)
17049 (Fx_display_color_cells, Fx_server_max_request_size)
17050 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17051 (Fx_display_mm_height, Fx_display_mm_width)
17052 (Fx_display_backing_store, Fx_display_visual_class)
17053 (Fw32_select_font, Fx_display_save_under):
17054 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17055 (Fx_display_pixel_height, Fx_display_planes)
17056 (Fx_display_color_cells, Fx_server_max_request_size)
17057 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17058 (Fx_display_save_under): Fix typos in docstrings.
17059
170602007-11-14 Juanma Barranquero <lekktu@gmail.com>
17061
17062 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17063 corresponding to deleted entries; they are an implementation detail.
17064 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17065 Remove variables.
17066 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17067 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17068 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17069 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17070 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17071 (Fw32_define_rgb_color, Fw32_load_color_file)
17072 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17073 Fix typos in docstrings.
17074 (Fx_server_version): Reflow docstring.
17075 (Fw32_shell_execute): Doc fixes.
17076
170772007-11-13 Juanma Barranquero <lekktu@gmail.com>
17078
17079 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17080 if w32_parse_hot_key returned nil.
17081
170822007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17083
17084 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17085
170862007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17087
aac0c6e3
MR
17088 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17089
17090 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17091
17092 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17093 Remove W32_SCROLL_BAR_CLICK_EVENT.
17094
17095 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17096 Add MULTIMEDIA_KEY_EVENT.
17097
17098 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17099 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17100 (make_lispy_event) [WINDOWSNT]: Use it to translate
17101 MULTIMEDIA_KEY_EVENT.
17102
17103 * w32term.h (WM_APPCOMMAND): Define if not already.
17104 (GET_APPCOMMAND_LPARAM): Likewise.
17105
17106 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17107 WM_APPCOMMAND.
17108
17109 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17110 (syms_of_w32fns): Export and initialize it.
17111 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17112
171132007-11-09 Chong Yidong <cyd@stupidchicken.com>
17114
17115 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17116 twice.
17117
17118 * xdisp.c (handle_face_prop): Fix last change.
17119
171202007-11-09 Richard Stallman <rms@gnu.org>
17121
17122 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17123 not just for after-strings and before-strings.
17124 Call face_for_overlay_string and pass the overlay to it.
17125 (handle_display_prop): Determine whether property came from an overlay.
17126 Pass OVERLAY arg to handle_single_display_spec.
17127 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17128 (load_overlay_strings): Fill in it->string_overlays.
17129 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17130
17131 * xfaces.c (face_for_overlay_string): Function renamed from
17132 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17133
17134 * dispextern.h (struct it): New elt string_overlays.
17135 New elt from_overlay, also in stack.
17136 Rearrange a few elements.
17137 (face_for_overlay_string): Decl renamed from
17138 face_at_buffer_position_no_overlays, and add argument.
17139
171402007-11-09 Richard Stallman <rms@gnu.org>
17141
17142 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17143 to get the base face for an overlay string.
17144
17145 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17146
17147 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17148
17149 * xdisp.c (handle_stop): Move some code out of loop.
17150
171512007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17152
17153 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17154 Fix conversion from Lisp object to ATSUFontID.
17155
171562007-11-09 Jason Rumney <jasonr@gnu.org>
17157
17158 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17159
171602007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17161
17162 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17163 Don't assume regions are aligned to page boundary.
17164 (print_load_command_name): Add LC_UUID if defined.
17165
171662007-11-09 Richard Stallman <rms@gnu.org>
17167
17168 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17169
171702007-11-07 Jason Rumney <jasonr@gnu.org>
17171
17172 * s/windows95.h: Remove.
17173
171742007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17175
17176 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17177 abort with a message on unhandled store_type values.
17178
171792007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17180
17181 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17182 Remove HAVE_X11R5 and HAVE_X11R4.
17183
171842007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17185
17186 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17187
171882007-11-01 Johan Bockgård <bojohan@gnu.org>
17189
17190 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17191 Don't set s->stippled_p here, since it has already been set by
17192 x_set_glyph_string_gc from x_draw_glyph_string.
17193
171942007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17195
17196 * sunfns.c: Remove file.
17197
17198 * m/sun386.h:
17199 * m/sun2.h:
17200 * m/sparc.h: Remove Sun windows code.
17201
172022007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
17203
17204 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
17205 (init_keyboard): Set current_kboard's window-system to nil.
17206 (tty_read_avail_input): Typo.
17207 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
17208
172092007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
17210
17211 * s/usg5-4.h:
17212 * s/usg5-3.h:
17213 * s/ptx.h:
17214 * m/is386.h:
17215 * m/ibmps2-aix.h:
17216 * Makefile.in: Remove all mentions of X10.
17217
17218 * dispnew.c (syms_of_display): Don't mention version 10.
17219
172202007-10-28 Juanma Barranquero <lekktu@gmail.com>
17221
17222 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
17223 ($(BLD)/abbrev.$(O)): Remove.
17224
172252007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
17226
17227 Rewrite abbrev.c in Elisp.
17228 * image.c (Qcount): Don't declare as extern.
17229 (syms_of_image): Initialize and staticpro `Qcount'.
17230 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
17231 * emacs.c (main): Don't call syms_of_abbrev.
17232 * Makefile.in (obj): Remove abbrev.o.
17233 (abbrev.o): Remove.
17234 * abbrev.c: Remove.
17235
172362007-10-26 Martin Rudalics <rudalics@gmx.at>
17237
17238 * window.c (window_min_size_2): Don't count header-line.
17239
172402007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
17241
17242 * frame.h (struct frame): Move all bit fields after the first bit
17243 field to take advantage of the available space. Group all the
17244 chars together to reduce wasted space due to padding.
17245
172462007-10-26 Juanma Barranquero <lekktu@gmail.com>
17247
17248 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
17249
17250 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
17251 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
17252 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
17253 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
17254 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
17255 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
17256 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
17257 (last_marked, mark_object_loop_halt): Make static.
17258
17259 * frame.c (syms_of_frame) <delete-frame-functions>:
17260 Fix typo in docstring.
17261
172622007-10-25 Juanma Barranquero <lekktu@gmail.com>
17263
17264 * w32.c (init_environment): Fix tiny memory leak.
17265 (w32_get_resource): Remove unused variable `ok'.
17266
172672007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
17268
17269 Make `window-system' into a keyboard-local variable (rather than
17270 frame-local as done originally by multi-tty).
17271
17272 * keyboard.h (struct kboard): Add Vwindow_system.
17273 * keyboard.c (init_kboard): Set a default for Vwindow_system.
17274 (mark_kboards): Mark Vwindow_system.
17275
17276 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
17277 (init_display): Don't set the obsolete `window-system' frame-param.
17278
17279 * xterm.c (x_term_init):
17280 * w32term.c (w32_create_terminal):
17281 * term.c (init_tty): Set Vwindow_system.
17282 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
17283 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
17284
17285 * xfns.c (Fx_create_frame, x_create_tip_frame):
17286 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17287 * macfns.c (Fx_create_frame):
17288 Don't set the obsolete `window-system' frame-param.
17289
17290 * frame.h (Qwindow_system): Remove.
17291 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17292 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17293
172942007-10-24 Richard Stallman <rms@gnu.org>
17295
17296 * frame.c (x_figure_window_size): For fullscreen case,
17297 set USPosition | PPosition without clobbering rest of window_prompting.
17298
17299 * keyboard.c (Fcurrent_idle_time): Doc fix.
17300
17301 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17302
173032007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17304
17305 * process.c (unwind_request_sigio): Only define if __ultrix__.
17306
17307 * callproc.c (child_setup): Remove spurious *.
17308
17309 * lisp.h (Fget_text_property): Declare.
17310 (have_menus_p): Declare it here rather than in sys-dep header files.
17311 * macterm.h (have_menus_p):
17312 * msdos.h (have_menus_p):
17313 * xterm.h (have_menus_p): Remove.
17314
17315 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17316 (Fmake_variable_frame_local): Just check the variable's const-ness
17317 rather than checking nil or t.
17318
173192007-10-22 Jason Rumney <jasonr@gnu.org>
17320
17321 * w32fns.c: Include math.h.
17322 (w32_abort): Declaration moved to nt/config.nt.
17323
17324 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17325 (abort): Redefinition moved to nt/config.nt.
17326
17327 * m/windowsnt.h: Remove.
17328
173292007-10-22 Juanma Barranquero <lekktu@gmail.com>
17330
17331 * emacs.c (Fdump_emacs): Fix typo in message.
17332 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17333 <installation-directory>: Reflow docstring.
17334
173352007-10-22 Juri Linkov <juri@jurta.org>
17336
17337 * minibuf.c: Allow minibuffer default to be a list of default values.
17338 With empty input use the first element of this list as returned default.
17339 (string_to_object)
17340 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17341 (read_minibuf): If defalt is cons, set histstring to its car.
17342 (Fread_string): If default_value is cons, set val to its car.
17343 (Fread_buffer): If def is cons, use its car.
17344 (Fcompleting_read): If defalt is cons, set val to its car.
17345
173462007-10-21 Michael Albinus <michael.albinus@gmx.de>
17347
17348 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17349
173502007-10-20 Juanma Barranquero <lekktu@gmail.com>
17351
17352 * doc.c (Fdocumentation): Check for advice in all cases.
17353
173542007-10-19 Chong Yidong <cyd@stupidchicken.com>
17355
17356 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17357
173582007-10-19 Richard Stallman <rms@gnu.org>
17359
17360 * doc.c (Fdocumentation): Check for and handle an advised function.
17361
173622007-10-19 Juanma Barranquero <lekktu@gmail.com>
17363
17364 * process.c (Fset_process_filter): Doc fix.
17365
173662007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17367
17368 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17369 which caused key-translation-map to applied repeatedly (thus breaking
17370 double-mode).
17371
173722007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17373
17374 * xselect.c (x_own_selection, x_handle_selection_clear)
17375 (x_clear_frame_selections):
17376 * w32menu.c (list_of_panes, list_of_items):
17377 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17378 * textprop.c (validate_plist, interval_has_all_properties)
17379 (interval_has_some_properties, interval_has_some_properties_list)
17380 (add_properties, text_property_list):
17381 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17382 * minibuf.c (Fassoc_string):
17383 * macselect.c (x_own_selection, x_clear_frame_selections)
17384 (Fx_disown_selection_internal):
17385 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17386 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17387
173882007-10-17 Chong Yidong <cyd@stupidchicken.com>
17389
17390 * process.c: Link to libs for calling res_init() if available.
17391 (Fmake_network_process): Call res_init() before getaddrinfo or
17392 gethostbyname, if possible.
17393
173942007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17395
17396 * lread.c (read1): Set pvectype for char_tables.
17397
17398 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17399 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17400 Add type checks.
17401 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17402
17403 * alloc.c (free_misc): Use XMISCTYPE.
17404 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17405
174062007-10-17 Glenn Morris <rgm@gnu.org>
17407
17408 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17409 (syms_of_minibuf): Add Qcompletion_ignore_case.
17410 * dired.c (Qcompletion_ignore_case): Change to external.
17411 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17412 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17413 (Fread_file_name): Use it rather than intern'ing.
17414
17415 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17416 (Fread_coding_system): Ignore case of user input.
17417
174182007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17419
17420 * xdisp.c (handle_display_prop): Ignore display specs after
17421 replacing one when string text is being replaced.
17422 (handle_single_display_spec): Pretend as if characters with display
17423 property haven't been consumed only when buffer text is being replaced.
17424
174252007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17426
17427 * xfns.c (Fx_create_frame, Fx_display_list):
17428 * window.c (window_fixed_size_p, enlarge_window)
17429 (shrink_window_lowest_first):
17430 * macterm.c (init_font_name_table):
17431 * macfns.c (Fx_create_frame, Fx_display_list):
17432 * lread.c (close_load_descs):
17433 * keyboard.c (read_char_x_menu_prompt):
17434 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17435 * coding.c (code_convert_region_unwind): Test the type of an object
17436 rather than just !NILP before extracting data from it.
17437
17438 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17439
17440 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17441 (XMISCANY): New macro.
17442 (XMISCTYPE): Use it.
17443 (struct Lisp_Misc_Any): New type.
17444 (union Lisp_Misc): Use it.
17445 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17446 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17447 (find_symbol_value, set_internal, default_value, Fset_default)
17448 (Fmake_variable_buffer_local, Fmake_local_variable)
17449 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17450 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17451 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17452 * alloc.c (allocate_buffer): Set the size and tag.
17453 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17454 Use XMISCANY.
17455 (die): Follow the GNU convention for error messages.
17456 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17457 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17458 tag any more.
17459 (set_buffer_internal_1):
17460 * frame.c (store_frame_param):
17461 * eval.c (specbind):
17462 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17463
17464 * doc.c (Fsnarf_documentation): Simplify.
17465
174662007-10-14 Juanma Barranquero <lekktu@gmail.com>
17467
17468 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17469 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17470
174712007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17472
17473 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17474
174752007-10-14 Juanma Barranquero <lekktu@gmail.com>
17476
17477 * eval.c (do_autoload): Don't save autoloads.
17478
17479 * data.c (Ffset): Save autoload of the function being set.
17480
174812007-10-07 John Paul Wallington <jpw@pobox.com>
17482
17483 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17484 parameter before setting up faces.
17485
174862007-10-13 Eli Zaretskii <eliz@gnu.org>
17487
17488 * ccl.c (Fregister_code_conversion_map):
17489 * keyboard.c (append_tool_bar_item): Reformat last change.
17490
17491 * lisp.h (eabs): Rename from `abs'. All callers changed.
17492
174932007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17494
17495 * buffer.c (add_overlay_mod_hooklist):
17496 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17497 * fontset.c (make_fontset):
17498 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17499 (append_tool_bar_item):
17500 * macmenu.c (grow_menu_items):
17501 * w32menu.c (grow_menu_items):
17502 * xmenu.c (grow_menu_items): Use larger_vector.
17503
175042007-10-13 Eli Zaretskii <eliz@gnu.org>
17505
17506 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17507 selected frame'' on MSDOS).
17508
175092007-10-12 Martin Rudalics <rudalics@gmx.at>
17510
17511 * frame.c (Qexplicit_name): New variable.
17512 (x_report_frame_params): Report it in parameter alist.
17513 (syms_of_frame): Intern and staticpro it.
17514
175152007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17516
17517 * macfns.c (x_create_tip_frame): Set terminal for frame.
17518
175192007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17520
17521 * frame.c (Qenvironment): Remove.
17522 (syms_of_frame) <Qenvironment>: Don't initialize.
17523 (Fdelete_frame): Don't treat the `environment' param specially.
17524 * frame.h (Qenvironment): Don't declare.
17525 * callproc.c (set_initial_environment): Don't set unused frame param.
17526
17527 * frame.c (Fframe_with_environment): Remove.
17528 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17529
17530 * lisp.h (Fframe_with_environment): Don't declare.
17531
175322007-10-10 Juanma Barranquero <lekktu@gmail.com>
17533
17534 * indent.c (indent_tabs_mode, last_known_column)
17535 (last_known_column_modified): Make static.
17536 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17537
175382007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17539
17540 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17541
175422007-10-09 Jason Rumney <jasonr@gnu.org>
17543
17544 * w32term.c (x_set_window_size): Disable code that attempts to tell
17545 Lisp code about a size change before it actually happens.
17546
175472007-10-09 Richard Stallman <rms@gnu.org>
17548
17549 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17550 return HANDLED_RETURN.
17551
175522007-10-08 Martin Rudalics <rudalics@gmx.at>
17553
17554 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17555 when there's an unread command event.
17556
17557 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17558 window autoselection act appropriately when leaving selected frame.
17559 (syms_of_frame): Initialize focus_follows_mouse.
17560 * frame.h (focus_follows_mouse): Extern it.
17561 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17562 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17563 * msdos.c (dos_rawgetc): Likewise.
17564 * w32term.c (w32_read_socket): Likewise.
17565 * xterm.c (handle_one_xevent): Likewise.
17566 * xdisp.c (syms_of_xdisp): In doc-string of
17567 mouse-autoselect-window mention focus-follows-mouse.
17568
175692007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17570
17571 * macterm.c (mac_load_query_font): Fix missing return value.
17572 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17573 Add BLOCK_INPUT.
17574
175752007-10-08 Richard Stallman <rms@gnu.org>
17576
17577 * xdisp.c (get_window_cursor_type): Implement documented behavior
17578 for cursor-in-non-selected-windows = t.
17579
175802007-10-08 Jason Rumney <jasonr@gnu.org>
17581
17582 * w32.c (w32_get_resource): Always close registry keys.
17583
175842007-10-08 Jason Rumney <jasonr@gnu.org>
17585
17586 * makefile.w32-in (LIBS): Add COMCTL32.
17587
17588 * w32fns.c (globals_of_w32fns): Init common controls.
17589
175902007-10-08 Richard Stallman <rms@gnu.org>
17591
17592 * image.c (our_memory_buffer): Rename from omfib_buffer.
17593
175942007-10-08 Richard Stallman <rms@gnu.org>
17595
17596 * buffer.c (Foverlays_at): Doc fix.
17597
175982007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17599
17600 * fns.c (Fplist_put): Preserve uneven tail data.
17601
176022007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17603
17604 * termhooks.h (enum event_kind): Remove trailing comma.
17605
17606 * frame.h (enum): Remove trailing comma.
17607
176082007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17609
17610 * w32proc.c (delete_child): Don't terminate threads of zombies.
17611
176122007-10-08 Martin Rudalics <rudalics@gmx.at>
17613
17614 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17615
17616 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17617 last-repeatable-command.
17618 (init_kboard): Initialize Vlast_repeatable_command.
17619 (command_loop_1): Set it to real_this_command unless that was
17620 bound to an input event.
17621 (mark_kboards): Mark it.
17622
176232007-10-08 Richard Stallman <rms@gnu.org>
17624
17625 * eval.c (condition-case): Doc fix.
17626
176272007-10-08 Masatake YAMATO <jet@gyve.org>
17628
17629 * xfaces.c (tty_supports_face_attributes_p): Fix code
17630 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17631 was copied and not edited.
17632
176332007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17634
17635 Add new `input-decode-map' keymap and use it for terminal
17636 escape sequences.
17637 * keyboard.h (struct kboard): Add Vinput_decode_map.
17638 Remove Vlocal_key_translation_map.
17639 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17640 (init_kboard): Init input-decode-map.
17641 Replace local-key-translation-map back with key-translation-map.
17642 (syms_of_keyboard): Declare input-decode-map.
17643 Remove local-key-translation-map. Update docstrings.
17644 (mark_kboards): Mark Vinput_decode_map.
17645 Don't mark Vlocal_key_translation_map.
17646 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17647 Replace local-key-translation-map back with key-translation-map.
17648 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17649 Bind in input-decode-map rather than function-key-map.
17650
17651 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17652 This was made redundant by the previous introduction of XSETPVECTYPE.
17653
176542007-10-09 Richard Stallman <rms@gnu.org>
17655
17656 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17657
176582007-09-29 Richard Stallman <rms@gnu.org>
17659
17660 * eval.c (internal_condition_case_2, internal_condition_case_1)
17661 (internal_condition_case): Reenable abort if x_catching_errors ()
17662 to see if that really happens and why.
17663
176642007-10-06 Andreas Schwab <schwab@suse.de>
17665
17666 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17667
176682007-10-04 Juanma Barranquero <lekktu@gmail.com>
17669
17670 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17671
176722007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17673
17674 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17675
176762007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17677
17678 * window.h (struct window):
17679 * window.c (struct save_window_data, struct saved_window):
17680 * termhooks.h (struct terminal):
17681 * process.h (struct Lisp_Process):
17682 * frame.h (struct frame):
17683 * buffer.h (struct buffer):
17684 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17685 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17686 The size field of (pseudo)vectors is now unsigned.
17687 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17688
17689 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17690 Turn `count' into an integer.
17691
17692 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17693 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17694 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17695 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17696 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17697
17698 * alloc.c (allocate_pseudovector): New fun.
17699 (ALLOCATE_PSEUDOVECTOR): New macro.
17700 (allocate_window, allocate_terminal, allocate_frame)
17701 (allocate_process): Use it.
17702 (mark_vectorlike): New function.
17703 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17704 (mark_terminals): Use it.
17705 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17706 (Fmake_byte_code): Use XSETPVECTYPE.
17707
17708 * frame.c (Fframe_parameters): Minor simplification.
17709
17710 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17711
17712 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17713
17714 * buffer.c (Fget_buffer_create, init_buffer_once):
17715 * lread.c (defsubr):
17716 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17717
17718 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17719 defined differently in the m/*.h files.
17720 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17721 (XSETPVECTYPE): New macro.
17722 (XSETPSEUDOVECTOR): Use it.
17723
17724 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17725 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17726
17727 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17728 * lread.c (defvar_per_buffer):
17729 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17730
17731 * window.c (candidate_window_p): Only consider as visible frames that
17732 are on the same terminal.
17733
17734 * m/ibms390x.h (MARKBIT): Remove unused macro.
17735
177362007-10-01 Juanma Barranquero <lekktu@gmail.com>
17737
17738 * lread.c (Fload): Fix typo in docstring.
17739
177402007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17741
17742 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17743 of a non-zero value can't yield zero.
17744
177452007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17746
17747 * term.c (term_clear_mouse_face, term_mouse_highlight)
17748 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17749
17750 * print.c (safe_debug_print): Use XHASH.
17751
17752 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17753 Lisp elements such as tags.
17754 (XHASH): New macro.
17755 (EQ): Use it.
17756 (SREF, SSET, STRING_COPYIN): Use SDATA.
17757 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17758
17759 * alloc.c (mark_terminal): Remove left-over declaration.
17760 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17761 (allocate_vectorlike): Remove type argument. Adjust callers.
17762 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17763 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17764
17765 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17766 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17767 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17768 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17769 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17770 Use them.
17771
17772 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17773 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17774 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17775
177762007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17777
17778 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17779 loaded by default.
17780
177812007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17782
17783 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17784 on this tty.
17785 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17786
17787 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17788 Update all users.
17789 (handle_one_term_event): Use Gpm_DrawPointer.
17790 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17791 Signal errors instead of returning nil. Always return nil.
17792 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17793 Make it a noop if gpm-mouse was not activated.
17794 (syms_of_term): Update names.
17795
177962007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17797
17798 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17799 (init_sys_modes): Check that gpm_tty is the current tty.
17800
17801 * alloc.c (allocate_terminal): Set the vector size to only count the
17802 lisp fields. Initialize those to nil.
17803 (mark_object): Don't treat terminals specially.
17804 (mark_terminal): Remove.
17805 (mark_terminals): Use mark_object instead.
17806
17807 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17808 the GC to the beginning.
17809
17810 * indent.h:
17811 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17812
17813 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17814
178152007-09-25 Jason Rumney <jasonr@gnu.org>
17816
17817 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17818
17819 * w32console.c (create_w32cons_output): Remove.
17820
17821 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17822
17823 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17824 (reset_sys_modes): Use reset_terminal_modes_hook.
17825
178262007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17827
17828 * eval.c (do_autoload): Don't output any message.
17829
178302007-09-24 Juri Linkov <juri@jurta.org>
17831
17832 * emacs.c (standard_args): Change priority of "--no-splash"
17833 from 40 to 3. Add "--no-desktop" with the same priority.
17834
178352007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17836
17837 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17838 and optimize the case where they are all 1.
17839
178402007-09-23 Johannes Weiner <hannes@saeurebad.de>
17841
17842 * lisp.h (abs): Define if not defined.
17843 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17844 Don't define `abs', since it's defined in lisp.h.
17845
178462007-09-22 Eli Zaretskii <eliz@gnu.org>
17847
17848 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17849 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17850 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17851 (init_tty): Use DEV_TTY instead of "/dev/tty".
17852 [WINDOWSNT]: No need to protect from NAME arg being null.
17853
178542007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17855
17856 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17857 up the tty state.
17858
178592007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17860
17861 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17862 (gpm_tty): Change its type.
17863 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17864 (gpm_tty): Change its type and initialize it.
17865 (Fterm_open_connection): Check the frame is indeed a tty.
17866 Use the new gpm_tty.
17867 (Fterm_close_connection): Use the new gpm_tty.
17868 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17869 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17870
178712007-09-21 Juanma Barranquero <lekktu@gmail.com>
17872
17873 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17874 underline_color, to draw strike-through.
17875
178762007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17877
17878 * lisp.h (allocate_terminal): Declare.
17879
17880 * window.c (candidate_window_p): Consider frames that are being placed
17881 by the user as somewhere between visible and iconified.
17882 (window_loop): Prefer windows on the current frame.
17883 (Fselect_window): Move the use of select-frame to the beginning so we
17884 can just delegate all the work (it'll call us back anyway).
17885
17886 * frame.c (Qdisplay_environment_variable):
17887 * frame.h (Qdisplay_environment_variable): Delete.
17888
17889 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17890 of the first arg, since that value may be a union.
17891
17892 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17893 parameter rather than Qdisplay_environment_variable. If all else
17894 fails, look for DISPLAY in initial-environment.
17895
178962007-09-21 Glenn Morris <rgm@gnu.org>
17897
17898 * Makefile.in (emacstool): Remove target.
17899 (lisp, shortlisp): Remove termdev.elc.
17900
179012007-09-21 Markus Triska <markus.triska@gmx.at>
17902
17903 * xterm.c (x_delete_display): Compile session management conditionally.
17904
179052007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17906
17907 * callproc.c (getenv_internal_1): New function.
17908 (getenv_internal): Use it.
17909 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17910
17911 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17912 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17913 (Fset_terminal_parameter): Work with dead terminals as well.
17914 (Fmodify_terminal_parameters): Remove.
17915
17916 * terminal.c (get_terminal): Handle terminals.
17917 Make sure the terminal returned is live.
17918 (create_terminal): Use allocate_terminal.
17919 (mark_terminals): Move to alloc.c.
17920 (delete_terminal): Use terminal->name as liveness status.
17921 NULL out fields after freeing their contents.
17922 Don't deallocate the object.
17923 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17924 rather than an int.
17925 (Fterminal_live_p): Accept non-integer arguments.
17926 (Fterminal_list): Return terminal objects rather than an ints.
17927
17928 * alloc.c (enum mem_type): New member for `terminal' objects.
17929 (allocate_terminal): New function.
17930 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17931 Handle terminals.
17932 (mark_terminal): New fun.
17933 (mark_terminals): Move from terminal.c.
17934
17935 * term.c (get_tty_terminal): Don't treat output_initial specially.
17936 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17937 (delete_tty): Use terminal->name as liveness status.
17938
17939 * termhooks.h (struct terminal): Make it into a pseudovector.
17940 Remove `deleted' replaced by checking `name's nullness.
17941
17942 * print.c (print_object): Handle terminals.
17943
17944 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17945 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17946
17947 * frame.c (make_terminal_frame):
17948 * keyboard.c (tty_read_avail_input):
17949 * w32term.c (x_delete_terminal):
17950 * xfns.c (Fx_create_frame, x_create_tip_frame):
17951 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17952
179532007-09-20 Glenn Morris <rgm@gnu.org>
17954
17955 * process.c (Fmake_network_process): Doc fix.
17956
179572007-09-19 Jason Rumney <jasonr@gnu.org>
17958
17959 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17960
179612007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17962
17963 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17964 Fix a C warning regarding variable constness.
17965
17966 * xterm.c (handle_one_xevent): Fix a C warning.
17967
179682007-09-18 Jason Rumney <jasonr@gnu.org>
17969
17970 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17971
179722007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17973
17974 * gtkutil.c (gdpy_def): New variable.
17975 (xg_initialize): Initialize gdpy_def.
17976 (xg_display_close): If no other display exists, set gdpy_def to a
17977 new connection.
17978
179792007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17980
17981 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17982 when we have no file name for the icon.
17983 (xg_tool_bar_expose_callback): Remove.
17984 (xg_create_tool_bar): Don't connect expose signal to
17985 xg_tool_bar_expose_callback.
17986 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17987
179882007-09-16 Andreas Schwab <schwab@suse.de>
17989
17990 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17991 values instead of zapping them.
17992
179932007-09-14 Glenn Morris <rgm@gnu.org>
17994
17995 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17996 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17997 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17998 scope and rename to omfib_buffer for clarity.
17999 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18000
180012007-09-14 Kenichi Handa <handa@m17n.org>
18002
18003 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18004
180052007-09-13 Jason Rumney <jasonr@gnu.org>
18006
18007 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18008
18009 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18010
18011 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18012 (mac_term_init): Call here instead, passing rif.
18013
180142007-09-13 Glenn Morris <rgm@gnu.org>
18015
18016 * s/hpux.h: No longer define `static' as nothing.
18017
180182007-09-13 Johan Bockgård <bojohan@gnu.org>
18019
18020 * callint.c (Fcall_interactively): Remove unused var `fun'.
18021
180222007-09-12 Romain Francoise <romain@orebokech.com>
18023
18024 * window.c (prefer_window_split_horizontally, display_buffer):
18025 Revert 2007-09-08 change.
18026
180272007-09-12 Glenn Morris <rgm@gnu.org>
18028
18029 * alloca.c: Remove file.
18030 * Makefile.in (alloca): Do not undef.
18031 (allocaobj, alloca.o): Remove.
18032 (otherobj): Remove allocaobj.
18033 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18034 * regex.c (C_ALLOCA): Remove all references and code that was only
18035 used when this was defined.
18036 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18037 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18038 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18039
18040 * Makefile.in (SOURCES, unlock, relock): Delete.
18041
18042 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18043 (menu_grab_callback): All uses changed.
18044
18045 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18046 (x_reply_selection_request): All uses changed.
18047
180482007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18049
18050 * lread.c (load_warn_old_style_backquotes): Change message to look
18051 better when it appears in the middle of byte-compiler messages.
18052
180532007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18054
18055 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18056
18057 * xterm.c (x_create_terminal): Add comment.
18058
18059 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18060
180612007-09-10 Richard Stallman <rms@gnu.org>
18062
18063 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18064
180652007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18066
18067 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18068 (DEFUN): Document `intspec', use it instead of `prompt'.
18069
18070 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18071
18072 * data.c (Finteractive_form): If the interactive specification starts
18073 with a `(', use it as a Lisp form.
18074
18075 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18076 name and file modes.
18077
18078 * callint.c (Fcall_interactively): Comment fixes.
18079
180802007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18081
18082 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18083 and compiled functions.
18084
180852007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18086
18087 * window.c (prefer_window_split_horizontally): New variable.
18088 (display_buffer): Consider splitting window horizontally depending
18089 on prefer_window_split_horizontally.
18090
180912007-09-08 Eli Zaretskii <eliz@gnu.org>
18092
18093 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18094
180952007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18096
18097 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18098
18099 * frame.c (x_set_frame_parameters): Check number is positive before
18100 using XFASTINT.
18101
18102 * window.c (freeze_window_start): Don't presume selected_window holds
18103 a window object.
18104 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18105
181062007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18107
18108 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18109
181102007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18111
18112 * window.c (Vsplit_window_preferred_function): New var.
18113 (Fdisplay_buffer): Use it.
18114 (syms_of_window): Export, and initialize it.
18115
181162007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18117
18118 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18119
181202007-09-06 Glenn Morris <rgm@gnu.org>
18121
18122 * gtkutil.c (menu_grab_callback) <cnt>:
18123 * xselect.c (x_reply_selection_request) <cnt>: Move static
18124 variable to file scope.
18125
181262007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18127
18128 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18129 consistent values of selected_frame and selected_window.
18130
181312007-09-04 Jason Rumney <jasonr@gnu.org>
18132
18133 * w32console.c (initialize_w32_display): Zero unused hooks.
18134
181352007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18136
18137 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18138 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18139
181402007-09-04 Jason Rumney <jasonr@gnu.org>
18141
18142 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18143 in w32console.c. Set up input. Remove XXX comments that have been
18144 confirmed as correct.
18145
18146 * s/ms-w32.h (MULTI_KBOARD): Define.
18147
18148 * w32console.c (one_and_only_w32cons): Remove.
18149 (initialize_w32_display): Take terminal argument.
18150
18151 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18152 initialize_w32_display.
18153 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18154
18155 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18156
18157 * keyboard.c (discard_mouse_events): Discard it.
18158 (make_lispy_event): Translate it to a lisp event.
18159 (lispy_wheel_names): Add wheel-left and right events.
18160 (syms_of_keyboard): Enlarge wheel_syms.
18161
18162 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18163 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18164
18165 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18166
18167 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18168 from WM_MOUSEHWHEEL.
18169 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18170
18171 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18172 terminal.
18173
18174 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18175 keyboard for the terminal.
18176
181772007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18178
18179 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18180 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18181 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18182 and resume-tty-function to resume-tty-hook.
18183 (Fsuspend_tty, Fresume_tty): Use new names.
18184
181852007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18186
18187 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18188 if it starts with "n:".
18189
181902007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18191
18192 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18193
181942007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18195
18196 * frame.h:
18197 * frame.c (Qterm_environment_variable): Remove.
18198 (syms_of_frame): Don't init and staticpro it.
18199
18200 * callproc.c (getenv_internal): Remove special case for $TERM.
18201
18202 * callproc.c (Vinitial_environment): New variable.
18203 (set_initial_environment): Initialize it.
18204 (syms_of_callproc): Declare it.
18205 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
18206 TERM under which a process runs is never related to the TERM in which
18207 Emacs is running.
18208
182092007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18210
18211 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
18212 * s/darwin.h: ... do it here.
18213
182142007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
18215
18216 * lisp.h (set_initial_environment): Rename from set_global_environment.
18217
18218 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
18219 removed by mistake on the multi-tty branch.
18220
18221 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
18222 (Fmodify_frame_parameters): Return a value.
18223
18224 * image.c (png_load): Comment-out var only used in commented-out code.
18225
18226 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
18227 before passing it to mark_object.
18228
18229 * xfaces.c (internal_resolve_face_name): Return a value.
18230 (internal_resolve_face_name, resolve_face_name_error): Comment out.
18231
18232 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
18233 (x_icon): Comment-out var only used in commented-out code.
18234
182352007-08-29 Romain Francoise <romain@orebokech.com>
18236
18237 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
18238 QUIT hasn't been provided.
18239
182402007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18241
18242 * callproc.c (child_setup, getenv_internal): Use the
18243 display-environment-variable and term-environment-variable frame params.
18244 (set_initial_environment): Initialise Vprocess_environment.
18245
18246 * config.in: Disable multi-keyboard support on a mac.
18247
18248 * frame.c (Qterm_environment_variable)
18249 (Qdisplay_environment_variable): New variables.
18250 (syms_of_frame): Intern and staticpro them.
18251 (Fmake_terminal_frame): Disable output method test.
18252
18253 * frame.h: Declare them here.
18254
18255 * macfns.c (x_set_mouse_color): Get rif from the frame.
18256 (x_set_tool_bar_lines): Don't use updating_frame.
18257 (mac_window): Add 2 new parameters for consistency with other systems.
18258 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
18259 frame parameters following what is done in X11 and w32. Don't use
18260 FRAME_MAC_DISPLAY_INFO.
18261 (Fx_open_connection, start_hourglass): Remove window-system check.
18262 (x_create_tip_frame): Get the keyboard from the terminal.
18263
18264 * macmenu.c: Reorder includes.
18265 (Fx_popup_menu): Use terminal specific mouse_position_hook.
18266
18267 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
18268 terminal parameter.
18269 (x_clear_frame): Add a frame parameter.
18270 (note_mouse_movement): Get rif from the frame.
18271 (mac_term_init): Initialize the terminal.
18272 (mac_initialize): Make static and move terminal initialization ...
18273 (mac_create_terminal): ... to this new function.
18274
18275 * macterm.h (struct mac_display_info): Add terminal.
18276 (mac_initialize): Delete declaration.
18277
18278 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
18279
18280 * sysdep.c: Comment out text after #endif.
18281
18282 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
18283 is defined. Better initialize ttys in windows. Use terminal
18284 specific mouse_position_hook.
18285
18286 * termhooks.h (union display_info): Add mac_display_info.
18287
18288 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18289 Set the default minibuffer frame, window_system and the rest of the
18290 frame parameters following what is done in X11.
18291
18292 * w32term.c (w32_initialize): Make static.
18293
18294 * xselect.c (x_handle_selection_clear): Only access
18295 terminal->kboard when MULTI_KBOARD is defined.
18296
18297 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18298 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18299
183002007-08-29 Jason Rumney <jasonr@gnu.org>
18301
18302 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18303 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18304
18305 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18306 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18307
18308 * keyboard.c (restore_kboard_configuration): Only define when
18309 MULTI_KBOARD defined.
18310
18311 * makefile.w32-in: Update dependancies from Makefile.in.
18312 (OBJ1): Add terminal.$(O)
18313
18314 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18315 Don't define function body.
18316 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18317
18318 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18319
18320 * w32.c (request_sigio, unrequest_sigio): Remove.
18321
18322 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18323 (w32con_clear_frame, w32con_clear_end_of_line)
18324 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18325 (w32con_delete_glyphs, w32con_set_terminal_window)
18326 (scroll_line, w32_sys_ring_bell): Add frame arg.
18327 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18328 Add terminal arg.
18329 (PICK_FRAME): Remove.
18330 (w32con_write_glyphs): Use frame specific terminal coding.
18331 (one_and_only_w32cons): New global variable.
18332 (initialize_w32_display): Use it for storing hooks.
18333 (create_w32cons_output): New function.
18334
18335 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18336 arg a frame.
18337
18338 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18339 Set window_system.
18340 (x_set_tool_bar_lines): Don't use updating_frame.
18341 (Fx_create_frame): Set terminal and ref count.
18342 (Fx_open_connection): Remove window-system check.
18343
18344 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18345
18346 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18347 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18348 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18349 Add frame arg.
18350 (x_delete_terminal, w32_create_terminal): New functions.
18351 (w32_term_init): Create a terminal.
18352 (w32_initialize): Move terminal specific initialization to
18353 w32_create_terminal.
18354
18355 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18356 (w32_clear_rect, w32_clear_area): Use background from frame.
18357 (w32_display_info): Add terminal.
18358 (w32_sys_ring_bell, x_delete_display): Declare here.
18359
18360 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18361
18362 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18363
183642007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18365
18366 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18367 Fix get_named_tty calls for the controlling tty.
18368
183692007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18370
18371 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18372
183732007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18374
18375 * term.c (tty_insert_glyphs): Add missing first parameter.
18376
183772007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18378
18379 * buffer.c (Fbuffer_list, Fbury_buffer):
18380 Take frame->buried_buffer_list into account.
18381
18382 * cm.c (current_tty): New variable, for cmputc().
18383 (cmputc): Use it.
18384 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18385 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18386 (cmgoto): Add tty parameter. Pass it on to calccost().
18387 Use emacs_tputs() instead of tputs().
18388
18389 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18390 tputs().
18391 (current_tty): New variable, for cmputc().
18392 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18393
18394 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18395 (internal_condition_case, internal_condition_case_1)
18396 (internal_condition_case_2): Don't abort when x_catching_errors.
18397
18398 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18399 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18400 prevent crashes caused by bogus longjmps in read_char.
18401
18402 * keymap.h (Fset_keymap_parent): Add EXFUN.
18403
18404 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18405 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18406 Remove redundant definition.
18407
18408 * macfns.c (x_set_mouse_color, x_make_gc):
18409 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18410
18411 * w32term.c (x_free_frame_resources):
18412 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18413 (w32_initialize): Use the accessor macros for terminal characteristics.
18414
18415 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18416 Use the accessor macros for terminal characteristics.
18417 * msdos.c (internal_terminal_init): Use the accessor macros for
18418 terminal characteristics.
18419 (ScreenVisualBell, internal_terminal_init):
18420 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18421
18422 * termopts.h (no_redraw_on_reenter): Declare.
18423
18424 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18425 (mark_terminals, mark_ttys): Declare.
18426 (Fgarbage_collect): Call them.
18427 (mark_object): Mark buried_buffer_list.
18428
18429 * prefix-args.c: Include stdlib.h for exit.
18430
18431 * syssignal.h: Add comment.
18432
18433 * indent.c: Include stdio.h.
18434
18435 * window.h (Vinitial_window_system): Declare.
18436 (Vwindow_system): Delete declaration.
18437
18438 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18439
18440 * image.c (lookup_image): Don't initialize `c' until the xasserts
18441 have been run.
18442
18443 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18444 FRAME_FOREGROUND_PIXEL.
18445
18446 * print.c (print_preprocess): Don't lose print_depth levels while
18447 iterating.
18448
18449 * widget.c (update_from_various_frame_slots):
18450 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18451
18452 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18453 frames.
18454 (window_internal_height): Remove bogus make_number call.
18455 (init_window_once): Call make_terminal_frame with two zero parameters.
18456
18457 * fileio.c (Fread_file_name): Update comment.
18458
18459 * callint.c (Fcall_interactively):
18460 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18461 Make sure it is correctly unwound.
18462
18463 * xsmfns.c (x_session_close): New function.
18464
18465 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18466 Delete declarations.
18467
18468 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18469 (x_output): Remove background_pixel and foreground_pixel fields.
18470 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18471 (x_delete_device, x_session_close): Declare.
18472
18473 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18474 (read_filtered_event): Call `read_char' with a local
18475 `wrong_kboard_jmpbuf'.
18476
18477 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18478 Don't call single_kboard_state. Use FRAME_RIF.
18479
18480 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18481 systems.
18482
18483 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18484 (Fframe_with_environment, Fset_input_meta_mode)
18485 (Fset_quit_char): EXFUN.
18486 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18487 (init_sys_modes, reset_sys_modes): Update prototypes.
18488 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18489
18490 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18491 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18492 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18493 Delete declarations.
18494 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18495 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18496 New declarations.
18497
18498 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18499 already does that during init_display(). Call syms_of_keymap
18500 before syms_of_keyboard. Call `syms_of_terminal'.
18501 Call set_initial_environment, not set_process_environment.
18502 (shut_down_emacs): Call reset_all_sys_modes() instead of
18503 reset_sys_modes().
18504
18505 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18506 (internal_resolve_face_name, resolve_face_name_error): New functions.
18507 (resolve_face_name): Protect against loops and errors thrown by Fget.
18508 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18509 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18510
18511 * scroll.c: Replace CURTTY() with local variables throughout the
18512 file (where applicable).
18513 (calculate_scrolling, calculate_direct_scrolling)
18514 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18515 characteristics.
18516
18517 * keymap.c (Vfunction_key_map): Remove.
18518 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18519 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18520 (Vkey_translation_map): Remove.
18521 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18522 (Fdescribe_buffer_bindings)
18523 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18524 Update for terminal-local key-translation-map.
18525
18526 * Makefile.in (callproc.o): Update dependencies.
18527 (lisp, shortlisp): Add termdev.elc.
18528 (obj): Add terminal.o.
18529 (terminal.o): Add dependencies.
18530 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18531 (data.o, fns.o): Add termhooks.h dependency.
18532 (SOME_MACHINE_LISP): Add dnd.elc.
18533 (minibuf.o): Fix typo.
18534 Update dependencies.
18535
18536 * data.c (do_symval_forwarding, store_symval_forwarding)
18537 (find_symbol_value): Use the selected frame's keyboard, not
18538 current_kboard.
18539
18540 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18541 Vwindow_system.
18542
18543 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18544 Fmenu_bar_open.
18545 (syms_of_xmenu): Update defsubr.
18546 (mouse_position_for_popup, Fx_popup_menu)
18547 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18548 (set_frame_menubar, free_frame_menubar)
b97439ce 18549 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18550 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18551 an X frame.
18552
18553 * xselect.c (x_own_selection): Abort if not an X frame.
18554 (some_frame_on_display): Check if it is an X frame.
18555 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18556
18557 * coding.c: Include frame.h and termhooks.h.
18558 (terminal_coding, keyboard_coding): Delete.
18559 (Fset_terminal_coding_system_internal)
18560 (Fset_keyboard_coding_system_internal)
18561 (Fkeyboard_coding_system)
18562 (Fterminal_coding_system): Add a terminal parameter.
18563 Get terminal_coding from the terminal.
18564 (init_coding_once): Don't call setup_coding_system here.
18565
18566 * dispextern.h (set_scroll_region, turn_off_insert)
18567 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18568 (tty_clear_end_of_line, tty_setup_colors)
18569 (delete_tty, updating_frame)
18570 (produce_special_glyphs, produce_glyphs, write_glyphs)
18571 (insert_glyphs): Remove.
18572 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18573 (tty_turn_off_highlight, get_tty_size): Add declaration.
18574 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18575
18576 * frame.h (enum output_method): Add output_initial.
18577 (struct x_output): Delete.
18578 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18579 Access foreground_pixel and background_pixel directly from the frame.
18580 (tty_display): Delete.
18581 (struct frame): Add buried_buffer_list, foreground_pixel,
18582 background_pixel and terminal. Delete kboard.
18583 (union output_data): Add tty.
18584 (FRAME_KBOARD): Get the kboard from the terminal.
18585 (FRAME_INITIAL_P): New macro.
18586 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18587 (Qterm_environment_variable, Qdisplay_environment_variable)
18588 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18589 New declarations.
18590
18591 * termchar.h (tty_output, tty_display_info): New structures.
18592 (tty_list): Declare.
18593 (FRAME_TTY, CURTTY): New macros.
18594 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18595 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18596 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18597 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18598
18599 * callproc.c: Include frame.h and termhooks.h, for terminal
18600 parameters.
18601 (add_env): New function.
18602 (child_setup): Use it.
18603 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18604 (getenv_internal): Fix get_terminal_param call.
18605 (Fgetenv_internal, egetenv): Update doc.
18606 (syms_of_callproc): Initialize Vprocess_environment to nil.
18607 Register and initialize them. Remove obsolete defvars. Update doc
18608 strings.
18609 (child_setup): Handle Vlocal_environment_variables.
18610 (getenv_internal): Add terminal parameter.
18611 Handle Vlocal_environment_variables.
18612 (Fgetenv_internal): Add terminal parameter.
18613 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18614 environment in a frame (not terminal) parameter. Update doc strings.
18615 (set_initial_environment): Rename from set_global_environment.
18616 Store Emacs environment in initial frame parameter.
18617
18618 * xdisp.c (redisplay_internal): Update references to
18619 `previous_terminal_frame'.
18620 (display_mode_line, Fformat_mode_line): Replace calls to
18621 `push_frame_kboard' with `push_kboard'.
18622 (get_glyph_string_clip_rects): Add extra parentheses and
18623 braces to prevent compiler warnings.
18624 (calc_pixel_width_or_height): Add xassert to check that the
18625 frame is alive. Don't call `lookup_image' on a termcap frame.
18626 (message2_nolog, message3_nolog, redisplay_internal)
18627 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18628 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18629 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18630 (Fx_display_pixel_width, Fx_display_pixel_height)
18631 (Fx_display_planes, Fx_display_color_cells)
18632 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18633 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18634 (Fx_display_backing_store, Fx_display_visual_class)
18635 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18636 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18637
18638 * xfns.c (x_set_foreground_color x_set_background_color)
18639 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18640 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18641 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18642 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18643 terminal that is being deleted.
18644 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18645 frame parameter, and make sure it overrides any user-supplied setting.
18646 (Fx_close_connection, Fx_synchronize): Unify argument names with
18647 the rest of the DEFUNs.
18648
18649 * dispnew.c (Fsend_string_to_terminal): Update call to
18650 `get_tty_terminal'.
18651 (Fredraw_frame, Fsend_string_to_terminal)
18652 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18653 FRAME_TERMCAP_P and FRAME_TTY.
18654 (window_change_signal): Don't believe width/height values that are
18655 impossibly small.
18656 (Vinitial_window_system): Rename from Vwindow_system.
18657 (termscript, Wcm, rif): Delete.
18658
18659 * termhooks.h (struct terminal): New struct containing the
18660 previously global text display hooks and new members NAME,
18661 DELETED and PARAM_ALIST.
18662 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18663 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18664 (FRAME_RIF): New macros.
18665 (get_terminal_param, get_device): New declarations.
18666 (termscript): Delete declaration.
18667
18668 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18669 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18670 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18671 FRAME_FOREGROUND_PIXEL.
18672 (x_fully_uncatch_errors): Disable definition.
18673 (x_scroll_bar_expose): Fix reference to foreground pixel.
18674 (XTread_socket): Disable loop on all X displays.
18675 (x_delete_terminal): Don't set terminal->deleted and let
18676 delete_terminal delete the frames on the terminal.
18677 (x_delete_display): Doc update to reflect changes in
18678 delete_terminal.
18679 (x_display_info) <terminal>: Move member earlier in the struct.
18680 (deleting_tty): Remove old variable.
18681 (Fsuspend_tty): Call clear_tty_hooks.
18682 (Fresume_tty, init_tty): Call set_tty_hooks.
18683 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18684 errors on X frames.
18685 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18686 (handle_one_xevent): Initialize `f' to NULL.
18687 (x_delete_terminal, x_create_terminal): New functions.
18688 (XTset_terminal_modes, XTreset_terminal_modes)
18689 (XTread_socket, x_connection_closed, x_term_init)
18690 (x_term_init, x_delete_display): Add terminal parameter.
18691 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18692 X connections.
18693
18694 * frame.c: Include termchar.h.
18695 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18696 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18697 (Qdisplay_environment_variable): New vars.
18698 (Fframep): Deal with output_initial.
18699 (Fframe-live-p): Doc fix.
18700 (Fwindow-system): New function.
18701 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18702 (make_terminal_frame): Don't create frames on a terminal that is
18703 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18704 (store_frame_param): Check for found_for_frame before calling XFRAME.
18705 (Fmake_terminal_frame): Handle NULL tty names correctly.
18706 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18707 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18708 frames to refer to a deleted frame in their 'environment parameter.
18709 (Fframe_with_environment): New function.
18710 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18711 (get_future_frame_param): New function.
18712 (Fmake_terminal_frame): Use it.
18713 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18714
18715 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18716 * sysdep.c (reset_sys_modes): Update for renames.
18717
18718 * keyboard.c (tty_read_avail_input): New function.
18719 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18720 (syms_of_keyboard): Defsubr them.
18721 (Fset_input_meta_mode, Fset_quit_char): New functions.
18722 (Fset_input_mode): Split to above functions.
18723 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18724 parameter. Use it in call to `read_char'.
18725 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18726 Set wrong_kboard_jmpbuf correctly in recursive calls.
18727 Use current_kboard to access Vkeyboard_translate_table.
18728 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18729 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18730 Update longjmp invocations. Remember the original current_kboard,
18731 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18732 changes it. Comment out unnecessary calls to
18733 `record_single_kboard_state' and `any_kboard_state'.
18734 Update recursive calls.
18735 (wrong_kboard_jmpbuf): Remove global variable.
18736 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18737 Handle deleted interrupted_kboards correctly; that is a legal
18738 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18739 and read_char calls. Abort if interrupted_kboard died in read_char.
18740 (any_kboard_state, single_kboard_state)
18741 (push_frame_kboard): Remove function.
18742 (pop_kboard): Switch out of single_kboard mode if the kboard has
18743 been deleted. Remove unused variable. Help debugging by not
18744 changing current_kboard unnecessarily. Set current_kboard to the
18745 kboard of the selected frame when the stored kboard object has
18746 been deleted before pop_kboard.
18747 (temporarily_switch_to_single_kboard): Change first parameter to a
18748 frame pointer. Throw an error when caller wants to change kboards
18749 while in single_kboard mode. Don't push_kboard if we weren't in
18750 single kboard state. Don't pop_kboard if we popped into any
18751 kboard state.
18752 (restore_kboard_configuration): Abort if pop_kboard changed the
18753 kboard in single_kboard mode. Call pop_kboard only after setting
18754 up single_kboard mode.
18755 (Frecursive_edit): Switch to single_kboard mode only in nested
18756 command loops.
18757 (cmd_error, command_loop, command_loop_1, timer_check):
18758 Comment out unnecessary call to `any_kboard_state' and
18759 `record_single_kboard_state'.
18760 (delete_kboard): Exit single_kboard mode if we have just deleted
18761 that kboard. Use FRAME_KBOARD.
18762 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18763 `fatal_error_signal'.
18764 (record_single_kboard_state): Don't push_kboard if we weren't in
18765 single kboard state. Don't pop_kboard if we popped into any
18766 kboard state.
18767 (push_frame_kboard): Rename to push_kboard.
18768 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18769 (read_avail_input): Read input from all terminals.
18770 (mark_kboards): Also mark Vkeyboard_translate_table.
18771 (kbd_buffer_store_event_hold): Simplify condition.
18772 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18773 (Vkeyboard_translate_table): Move to struct kboard.
18774 (init_kboard): Initialize Vkeyboard_translate_table.
18775 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18776 Vkeyboard_translate_table. Update doc strings. Update docs of
18777 local-function-key-map and function-key-map.
18778
18779 * terminal.c: New file.
18780
18781 * term.c: Include errno.h.
18782 (Vring_bell_function, device_list, initial_device)
18783 (next_device_id, ring_bell, update_begin, update_end)
18784 (set_terminal_window, cursor_to, raw_cursor_to)
18785 (clear_to_end, clear_frame, clear_end_of_line)
18786 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18787 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18788 (syms_of_term): Move their initialization to terminal.c.
18789 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18790 (Ftty_display_color_cells)
18791 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18792 (clear_tty_hooks, set_tty_hooks)
18793 (init_tty, maybe_fatal): New functions.
18794 (Ftty_type): Return nil if terminal is not on a tty instead of
18795 throwing an error. Doc update.
18796 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18797 Doc update. Initialize new subrs and variables.
18798 (delete_tty): Use terminal->deleted.
18799 (tty_set_terminal_modes): Rename from set_terminal_modes.
18800 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18801 (set_scroll_region): Rename to `tty_set_scroll_region'.
18802 (turn_on_insert): Rename to `tty_turn_on_insert'.
18803 (turn_off_insert): Rename to `tty_turn_off_insert'.
18804 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18805 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18806 (toggle_highligh): Rename to `tty_toggle_highlight'.
18807 (background_highlight): Rename to `tty_background_highlight'.
18808 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18809 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18810 (tty_set_scroll_region, tty_background_highlight)
18811 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18812 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18813 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18814 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18815 Add static modifier.
18816 (tty_reset_terminal_modes, tty_set_terminal_window)
18817 (tty_set_scroll_region, tty_background_highlight)
18818 (tty_highlight_if_desired, tty_cursor_to)
18819 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18820 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18821 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18822 renames.
18823
188242007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18825
18826 * keyboard.c: Qrtl is new.
18827 (parse_tool_bar_item): Handle :rtl keyword.
18828 (syms_of_keyboard): Intern :rtl keyword.
18829
18830 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18831
18832 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18833 so no Lisp code is executed.
18834 (file_for_image, find_rtl_image): New functions.
18835 (xg_get_image_for_pixmap): Use file_for_image.
18836 (update_frame_tool_bar): If direction is RTL, use RTL image if
18837 defined. Use Gtk stock images if defined.
18838
188392007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18840
18841 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18842 for nonexistent or zero-width glyph in composition glyph.
18843
188442007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18845
18846 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18847
18848 * xdisp.c (Finvisible_p): New function.
18849 (syms_of_xdisp): defsubr it.
18850
188512007-08-24 Juanma Barranquero <lekktu@gmail.com>
18852
18853 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18854 Doc fixes.
18855
188562007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18857
18858 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18859
188602007-08-24 Martin Rudalics <rudalics@gmx.at>
18861
18862 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18863 whether decoding has modified buffer contents.
18864
188652007-08-24 Jason Rumney <jasonr@gnu.org>
18866
18867 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18868 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18869 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18870 (init_svg_functions) [HAVE_NTGUI]: New function.
18871 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18872 (svg_load_image): Use them.
18873 (svg_load_image) [HAVE_NTGUI]: Implement background.
18874
188752007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18876
18877 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18878 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18879 (LIBX): Remove @RSVG_LIBS@.
18880 (LIBES): Add $(RSVG_LIBS).
18881
18882 * image.c (svg_load_image): Blend with specified background if exists.
18883 Use IMAGE_BACKGROUND. Add Mac OS Support.
18884
18885 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18886 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18887 Remove macros.
18888 [MAC_OSX] (socket_callback): Do nothing.
18889 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18890 ReceiveNextEvent.
18891 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18892 socket_callback.
18893 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18894
188952007-08-22 Glenn Morris <rgm@gnu.org>
18896
18897 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18898
188992007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18900
18901 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18902
18903 * image.c: Add support for SVG images. Some additional comments
18904 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18905 (svg_image_p): New function to test for SVG image.
18906 (svg_load): New function to load SVG image.
18907 (svg_load_image): New function, helper for svg_load.
18908 (Qsvg): New Lisp_object.
18909 (svg_keyword_index): New enum.
18910 (svg_format): New static `image_keyword' struct.
18911 (svg_type): New static `image_type' struct.
18912 (librsvg/rsvg.h): Include it.
18913
189142007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18915
18916 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18917
189182007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18919
18920 * lread.c (Qold_style_backquotes): New var.
18921 (syms_of_lread): Init and staticpro it.
18922 (load_warn_old_style_backquotes): New fun.
18923 (Fload): Use them to warn about old style backquotes.
18924 (end_of_file_error, Fload): Remove unused vars.
18925
18926 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18927
18928 * lread.c (Vold_style_backquotes): New var.
18929 (syms_of_lread): Init and export it to Elisp.
18930 (read1): Set it when we find an old-style (back)quote.
18931
189322007-08-22 Jason Rumney <jasonr@gnu.org>
18933
18934 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18935
189362007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18937
18938 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18939
189402007-08-19 Richard Stallman <rms@gnu.org>
18941
18942 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18943
189442007-08-19 Andreas Schwab <schwab@suse.de>
18945
18946 * alloc.c (pure): Round PURESIZE up.
18947
189482007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18949
18950 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18951 active frame.
18952
189532007-08-16 Richard Stallman <rms@gnu.org>
18954
18955 * eval.c (Fcommandp): Add parens to clarify.
18956
18957 * minibuf.c (Fall_completions): Use enum for type of table.
18958
18959 * emacs.c (USAGE2): Improve text.
18960
189612007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18962
18963 * term.c (tty_default_color_capabilities): Declare static
18964 variables in file scope, to avoid HPUX compiler problem.
18965
189662007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18967
18968 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18969 to gtk_toolbar_insert.
18970
189712007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18972
18973 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18974
18975 * insdel.c (reset_var_on_error): New fun.
18976 (signal_before_change, signal_after_change):
18977 Use it to reset (after|before)-change-functions to nil in case of error.
18978 Bind inhibit-modification-hooks to t.
18979 Don't bind (after|before)-change-functions to nil while they run.
18980
189812007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18982
18983 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18984 filling pixmap with stippled background.
18985
189862007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18987
18988 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18989 Don't use invisible frame as parent window for repositioning.
18990
189912007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18992
18993 * print.c (new_backquote_output): Rename from old_backquote_output.
18994 (print): Inverse its logic (according to its name) so as to match the
18995 behavior of new_backquote_flag in lread.c.
18996
189972007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18998
18999 * gmalloc.c (posix_memalign): New function.
19000
19001 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19002 ActivateControl/DeactivateControl here.
19003 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19004 frame-notice-user-settings is non-nil.
19005 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19006 for kEventParamFMFontStyle.
19007 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19008 mac_pass_command_to_system and mac_pass_control_to_system here.
19009 (XTread_socket): Call ActivateControl/DeactivateControl here.
19010 (XTread_socket) [TARGET_API_MAC_CARBON]:
19011 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19012 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19013 for window repositioning.
19014
190152007-08-08 Glenn Morris <rgm@gnu.org>
19016
19017 * Replace `iff' in doc-strings and comments.
19018
190192007-08-07 Chong Yidong <cyd@stupidchicken.com>
19020
19021 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19022
190232007-08-07 Martin Rudalics <rudalics@gmx.at>
19024
19025 * fileio.c (Finsert_file_contents): Run format-decode and
19026 after_insert_file_functions on entire buffer when REPLACE is
19027 non-nil and inhibit modification_hooks and point_motion_hooks.
19028 For consistency, run after_insert_file_functions iff something
19029 got inserted. Move signal_after_change and update_compositions
19030 after code running after_insert_file_functions. Make sure that
19031 undo_list doesn't record intermediate steps of the decoding process.
19032
190332007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19034
19035 * emacs.c (main)
19036 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19037 Call malloc_enable_thread on interactive startup.
19038
19039 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19040 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19041 [USE_PTHREAD]: Conditionalize with it.
19042 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19043 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19044 New functions.
19045
190462007-08-06 Chong Yidong <cyd@stupidchicken.com>
19047
19048 * xdisp.c (redisplay_window): When restoring original buffer
19049 position, make sure it is still valid.
19050
19051 * image.c (png_load): Ignore png-supplied background color.
19052
190532007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19054
19055 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19056 Use kCFAbsoluteTimeIntervalSince1970.
19057
19058 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19059 New variable.
19060 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19061 event loop should be quit.
19062 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19063 Quit dialog event loop if quit_dialog_event_loop is set.
19064
19065 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19066 (Selection): New typedef. Use instead of ScrapRef.
19067 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19068 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19069 (mac_clear_selection): Rename from clear_scrap.
19070 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19071 scrap_has_target_type. All uses changed.
19072 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19073 (mac_selection_has_target_p): New functions.
19074 (mac_put_selection_value): Rename from put_scrap_string.
19075 (mac_get_selection_value): Rename from get_scrap_string.
19076 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19077 (put_scrap_private_timestamp, scrap_has_target_type)
19078 (get_scrap_private_timestamp): Remove functions.
19079 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19080 (x_own_selection, x_get_local_selection):
19081 Use mac_valid_selection_value_p.
19082 (x_own_selection): Don't use put_scrap_private_timestamp.
19083 Record OWNERSHIP-INFO into Vselection_alist instead.
19084 (x_get_local_selection): Don't check type if request is local.
19085 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19086 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19087
190882007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19089
19090 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19091 add comment explaining why.
19092
190932007-08-03 Richard Stallman <rms@gnu.org>
19094
19095 * fileio.c (Fvisited_file_modtime): Use make_time.
19096
190972007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19098
19099 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19100 build.
19101
191022007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19103
19104 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19105
191062007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19107
19108 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19109
191102007-07-30 Richard Stallman <rms@gnu.org>
19111
19112 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19113
191142007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19115
19116 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19117
191182007-07-28 Nick Roberts <nickrob@snap.net.nz>
19119
19120 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19121 remote default-directory.
19122
19123 * buffer.c (mode-line-format): Update doc string.
19124
191252007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19126
19127 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19128 scroll bar gap.
19129 (x_scroll_bar_create): Set bar->fringe_extended_p.
19130 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19131 on frame edge. Check fringe background extension. Don't clear
19132 extended fringe background area.
19133
19134 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19135 (w32_fill_area): Enclose multiple statements with do ... while (0).
19136
19137 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19138 Extend fringe background to scroll bar gap.
19139 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19140 Set bar->fringe_extended_p.
19141 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19142 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19143 background extension. Don't clear extended fringe background area.
19144
19145 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19146 New member fringe_extended_p.
19147
191482007-07-25 Glenn Morris <rgm@gnu.org>
19149
19150 * Relicense all FSF files to GPLv3 or later.
19151
19152 * COPYING: Switch to GPLv3.
19153
191542007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19155
19156 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19157
19158 * data.c (Finteractive_form): Check for the presence of an
19159 `interactive-form' symbol property more thoroughly.
19160
19161 * data.c (Finteractive_form): Use an `interactive-form' property if
19162 present, analogous to the function-documentation property.
19163
191642007-07-24 Jason Rumney <jasonr@gnu.org>
19165
19166 * w32fns.c (x_real_positions): Get real position from OS instead of
19167 calculating it.
19168
191692007-07-23 Jason Rumney <jasonr@gnu.org>
19170
19171 * filelock.c (current_lock_owner): Allow for @ sign in username.
19172
191732007-07-22 Nick Roberts <nickrob@snap.net.nz>
19174
19175 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19176 remote default-directory.
19177
19178 * buffer.c (mode-line-format): Describe above case in doc string.
19179
191802007-07-20 Eli Zaretskii <eliz@gnu.org>
19181
19182 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19183 Define if not defined.
19184
191852007-07-18 Jason Rumney <jasonr@gnu.org>
19186
19187 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19188
191892007-07-18 Richard Stallman <rms@gnu.org>
19190
19191 * data.c (Fsetq_default): Doc fix.
19192
19193 * eval.c (Fsetq): Doc fix.
19194
191952007-07-18 Juanma Barranquero <lekktu@gmail.com>
19196
19197 * coding.c (Ffind_operation_coding_system):
19198 * eval.c (For, Fand): Doc fixes.
19199 Reported by Johan Bockgård.
19200
192012007-07-18 Jan Djärv <jan.h.d@swipnet.se>
19202
19203 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
19204
19205 * xterm.h: Declare x_ewmh_activate_frame.
19206
19207 * xterm.c (x_ewmh_activate_frame): New function.
19208 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
19209
192102007-07-17 Martin Rudalics <rudalics@gmx.at>
19211
19212 * window.c (Fdisplay_buffer): If largest or LRU window is the
19213 only window, split it even if it is not eligible for splitting.
19214 This restores the original behavior broken by the 2007-07-15
19215 change.
19216
192172007-07-17 Glenn Morris <rgm@gnu.org>
19218
19219 * abbrev.c (abbrev_check_chars): New function.
19220 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19221 Call abbrev_check_chars to check abbrev characters are word
19222 constituents. Doc fix.
19223
192242007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
19225
19226 * process.c (Fstart_process, Fmake_network_process)
19227 (read_process_output): Fix up last changes.
19228
192292007-07-16 Eli Zaretskii <eliz@gnu.org>
19230
19231 * makefile.w32-in (clean): Don't delete *~.
19232
192332007-07-16 Andreas Schwab <schwab@suse.de>
19234
19235 * window.c (Fdisplay_buffer): Use NILP.
19236 (Fset_window_scroll_bars): Likewise.
19237
192382007-07-15 Martin Rudalics <rudalics@gmx.at>
19239
19240 * window.c (window_min_size_2): New function.
19241 (window_min_size_1, size_window, Fdisplay_buffer)
19242 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
19243 windows without mode- or header-lines when window-min-height is
19244 too small.
19245 (size_window): Reset nodelete_p after testing it, following an
19246 earlier note by Kim F. Storm.
19247 (display_buffer): Do not set split_height_threshold to twice the
19248 value of window_min_height to avoid changing the value of a
19249 customizable variable. Rather explicitly check whether the
19250 height of the window that shall be splitted is at least as large
19251 as split_height_threshold.
19252 (Fwindow_full_width_p): New defun.
19253 (syms_of_window): Defsubr it.
19254
19255 * window.h: Add EXFUN for Fwindow_full_width_p.
19256
192572007-07-14 Jason Rumney <jasonr@gnu.org>
19258
19259 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
19260
192612007-07-14 Richard Stallman <rms@gnu.org>
19262
19263 * eval.c (maybe_call_debugger): New function.
19264 (find_handler_clause): Use maybe_call_debugger.
19265 Call it when the handler says `debug'.
19266 Eliminate DEBUGGER_VALUE_PTR.
19267 (Fsignal): Eliminate debugger_value.
19268 (Qdebug): New variable.
19269 (syms_of_eval): Initialize it.
19270
192712007-07-14 Juanma Barranquero <lekktu@gmail.com>
19272
19273 * eval.c (Fprogn):
19274 * keyboard.c (Ftrack_mouse):
19275 * print.c (Fwith_output_to_temp_buffer):
19276 * window.c (Fsave_window_excursion): Doc fix.
19277
192782007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
19279
19280 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
19281
192822007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
19283
19284 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19285 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19286 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19287 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19288 Remove unused encoding_carryover.
19289 * process.c: Adjust all functions accordingly.
19290
192912007-07-12 Richard Stallman <rms@gnu.org>
19292
19293 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19294
192952007-07-11 Jason Rumney <jasonr@gnu.org>
19296
19297 * makefile.w32-in (LIBS): Include OLE32.
19298
19299 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19300 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19301
193022007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19303
19304 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19305 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19306 from a Lisp_Object into a bare pointer.
19307 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19308 Adjust the code correspondingly.
19309
19310 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19311
19312 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19313 (term_show_mouse_face): Remove unused var `j'.
19314 (handle_one_term_event): Remove unused vars `i' and `j'.
19315 Don't cast return value of ttyname since it's not necessary.
19316
193172007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19318
19319 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19320 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19321
19322 * fns.c (map_char_table): Use an array of int for `indices' rather than
19323 an array of Lisp_Objects (which are only ever integers anyway).
19324 (Fmap_char_table): Update caller.
19325 * lisp.h: Update prototype.
19326 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19327 * fontset.c (Ffontset_info):
19328 * casetab.c (set_case_table): Update callers.
19329
19330 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19331
19332 * keymap.c (struct accessible_keymaps_data)
19333 (struct where_is_internal_data): New structures.
19334 (accessible_keymaps_1, where_is_internal_1): Use them to change
19335 interface to adhere to the one used by map_keymap.
19336 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19337 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19338
19339 * keymap.h (map_keymap_function_t): More informative prototype.
19340
193412007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19342
19343 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19344 (looking_at_1): Don't change search_regs and last_thing_searched
19345 if `inhibit-changing-match-data' is non-nil.
19346 (string_match_1, search_buffer, set_search_regs): Likewise.
19347 (syms_of_search): Add Lisp level definition for
19348 `inhibit-changing-match-data' and set it to nil.
19349 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19350 start and end of the match, instead of using values in search_regs.
19351
193522007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19353
19354 * minibuf.c (Fcompleting_read): New value `confirm-only'
19355 for `require-match'.
19356
193572007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19358
19359 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19360 part of the 2007-06-27 change to syms_of_fileio.
19361
193622007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19363
19364 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19365 Check WINDOWP before using XWINDOW. Consolidate return statements.
19366
193672007-06-27 Richard Stallman <rms@gnu.org>
19368
19369 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19370
193712007-06-27 Juanma Barranquero <lekktu@gmail.com>
19372
19373 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19374
193752007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19376
19377 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19378 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19379 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19380 (_free_internal, memalign): Use them.
19381 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19382 Initialize to PTHREAD_MUTEX_INITIALIZER.
19383 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19384 (morecore_nolock): Rename from morecore. All uses changed.
19385 Use only nolock versions of internal allocation functions.
19386 (_malloc_internal_nolock, _realloc_internal_nolock)
19387 (_free_internal_nolock): New functions created from
19388 _malloc_internal, _realloc_internal, and _free_internal.
19389 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19390 Copy hook value to automatic variable before its use.
19391 (memalign): Copy hook value to automatic variable before its use.
19392
193932007-06-26 Kenichi Handa <handa@m17n.org>
19394
19395 * coding.c (Ffind_operation_coding_system): Docstring improved.
19396 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19397
193982007-06-25 David Kastrup <dak@gnu.org>
19399
19400 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19401 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19402 cater for additional parameter.
19403
19404 * keymap.h: Adjust number of parameters to `current-active-maps'.
19405
19406 * doc.c (Fsubstitute_command_keys): Adjust call of
19407 `current-active-maps'.
19408
194092007-06-25 David Kastrup <dak@gnu.org>
19410
19411 * callint.c (Fcall_interactively): Make the parsing of interactive
19412 specs somewhat more readable.
19413
194142007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19415
19416 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19417 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19418 if extended background has already been filled.
19419
194202007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19421
19422 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19423 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19424
19425 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19426 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19427 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19428 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19429 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19430 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19431 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19432 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19433 Run timers during dialog popup.
19434 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19435
194362007-06-21 Jason Rumney <jasonr@gnu.org>
19437
19438 * image.c (convert_mono_to_color_image): Swap fore and background.
19439
194402007-06-20 Jason Rumney <jasonr@gnu.org>
19441
19442 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19443 (w32_free_bdf_font): Unmap memory not handle.
19444
194452007-06-20 Sam Steingold <sds@gnu.org>
19446
19447 * gmalloc.c (__morecore): Fix the declaration to comply with the
19448 definition.
19449
194502007-06-20 Juanma Barranquero <lekktu@gmail.com>
19451
19452 * w32term.c (w32_delete_display): Remove leftover declaration.
19453 (w32_define_cursor, w32_initialize): Make static.
19454
19455 * w32.c (_wsa_errlist): Fix typo in error message.
19456 (init_environment): Ignore any environment variable from the
19457 registry having a null value.
19458
194592007-06-20 Glenn Morris <rgm@gnu.org>
19460
19461 * Makefile.in (LIBGIF): Default to -lgif.
19462
194632007-06-17 Jason Rumney <jasonr@gnu.org>
19464
19465 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19466 unicode strings.
19467
194682007-06-16 Juanma Barranquero <lekktu@gmail.com>
19469
19470 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19471 Fix typo in docstring.
19472
194732007-06-16 Eli Zaretskii <eliz@gnu.org>
19474
19475 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19476 and their keybindings.
19477
194782007-06-15 Chong Yidong <cyd@stupidchicken.com>
19479
19480 * composite.c (update_compositions): Fix last fix.
19481
194822007-06-14 Jason Rumney <jasonr@gnu.org>
19483
19484 * w32.c (get_process_times_fn): New function pointer.
19485 (globals_of_w32): Intialize it if present in kernel32.dll.
19486 (w32_get_internal_run_time): New function.
19487
19488 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19489
194902007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19491
19492 * composite.c (update_compositions): Check the validness of
19493 compositions.
19494
194952007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19496
19497 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19498 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19499
19500 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19501 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19502
19503 * macgui.h (USE_MAC_TOOLBAR): New define.
19504
19505 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19506 Return immediately unless popup is activated.
19507
19508 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19509 background to scroll bar gap.
19510 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19511 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19512 scroll bars on frame edge. Check fringe background extension.
19513 Don't clear extended fringe background area.
19514 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19515 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19516 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19517 [USE_MAC_TOOLBAR]: New macros.
19518 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19519 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19520 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19521 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19522 [USE_MAC_TOOLBAR]: New functions.
19523 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19524 manually if previous repositioning has failed.
19525 (mac_handle_keyboard_event): Use precomputed event kind.
19526 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19527 as tool bar item click. Handle mouse movement over tool bar items.
19528
19529 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19530 toolbar_win_gravity.
19531 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19532 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19533 Add externs.
19534
19535 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19536 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19537
195382007-06-14 Chong Yidong <cyd@stupidchicken.com>
19539
19540 * image.c (search_image_cache): Remove unused variable.
19541
195422007-06-13 Chong Yidong <cyd@stupidchicken.com>
19543
19544 * xfns.c, xmenu.c: Link to xaw3d if available.
19545
195462007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19547
19548 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19549 frame_foreground and frame_background.
19550
19551 * image.c (lookup_image): Save frame foreground and background colors.
19552 (search_image_cache): Check if saved and current frame colors match.
19553
195542007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19555
19556 * regex.c (regex_compile): Remove the `regnum' counter.
19557 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19558
195592007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19560
19561 * term.c: Include intervals.h to declare Fget_text_property.
19562
195632007-06-10 Jason Rumney <jasonr@gnu.org>
19564
19565 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19566
195672007-06-08 Juanma Barranquero <lekktu@gmail.com>
19568
19569 * callint.c (Fcall_interactively):
19570 * editfns.c (Fdelete_and_extract_region):
19571 * fileio.c (Fread_file_name):
19572 * fns.c (Fmapconcat):
19573 * keyboard.c (cmd_error_internal):
19574 * keymap.c (Fkey_description):
19575 * lread.c (openp):
19576 * minibuf.c (read_minibuf):
19577 * search.c (wordify):
19578 * sunfns.c (sel_read):
19579 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19580 * xfns.c (x_default_scroll_bar_color_parameter):
19581 * xmenu.c (menu_help_callback):
19582 * xselect.c (Fx_get_atom_name):
19583 * xterm.c (x_term_init): Use empty_unibyte_string.
19584
195852007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19586
19587 * alloc.c (init_strings): Initialize canonical empty strings.
19588 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19589 canonical empty string when the requested size is 0.
19590
19591 * emacs.c (empty_unibyte_string): Rename from empty_string.
19592 (empty_multibyte_string): New canonical empty string.
19593 (syms_of_emacs): Don't initialize empty_string.
19594
19595 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19596 string, if appropriate.
19597 (empty_unibyte_string, empty_multibyte_string): New externs.
19598 (empty_string): Remove extern.
19599
19600 * lread.c (syms_of_lread): Use empty_unibyte_string.
19601
196022007-06-07 Jason Rumney <jasonr@gnu.org>
19603
19604 * s/ms-w32.h: Don't define HAVE_TZNAME.
19605
19606 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19607
196082007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19609
19610 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19611
19612 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19613 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19614
19615 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19616 Don't call next handler.
19617 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19618 Remove argument. Install handler to application.
19619 (set_frame_menubar): Don't change deep_p.
19620 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19621 FRAME_OUTER_TO_INNER_DIFF_Y.
19622 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19623 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19624 [HAVE_DIALOGS]: New macros.
19625 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19626 Use them.
19627 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19628
19629 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19630 init_service_handler. All callers changed. Return OSStatus value.
19631
19632 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19633 All callers changed so as not to call SetPortWindowPort.
19634 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19635 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19636 mac_draw_string_common.
19637 (mac_draw_image_string_qd): Likewise.
19638 (mac_draw_string_common): Use them. Add INLINE.
19639 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19640 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19641 GetGlobalMouse.
19642 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19643 and FRAME_OUTER_TO_INNER_DIFF_Y.
19644 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19645 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19646 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19647 repositioning window to mac_handle_window_event.
19648 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19649 saving window location to mac_handle_window_event
19650 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19651 (install_menu_target_item_handler): Remove argument in extern.
19652 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19653 Also accept command events.
19654 (do_keystroke): New function created from XTread_socket.
19655 (init_command_handler): Remove functions.
19656 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19657 and save window location by kEventWindowShowing and kEventWindowHiding
19658 handlers here. Don't call next handler for window state change and
19659 focus events.
19660 (mac_handle_application_event, mac_handle_keyboard_event)
19661 [TARGET_API_MAC_CARBON]: New functions.
19662 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19663 kEventWindowShowing and kEventWindowHiding events. Move installation
19664 of mouse, font, text input and menu target item handlers to
19665 install_application_handler.
19666 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19667 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19668 New function.
19669 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19670 Register it.
19671 (XTread_socket) [TARGET_API_MAC_CARBON]:
19672 Consolidate SendEventToEventTarget calls.
19673 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19674 Move application activation handler to mac_handle_application_event.
19675 Move keyboard handler to mac_handle_keyboard_event.
19676 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19677 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19678 init_command_handler. Call install_application_handler.
19679
19680 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19681 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19682
196832007-06-07 Glenn Morris <rgm@gnu.org>
19684
19685 * emacs.c (main): Use `emacs-copyright' in --version output.
19686
196872007-06-06 Chong Yidong <cyd@stupidchicken.com>
19688
19689 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19690
196912007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19692
19693 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19694
19695 * macgui.h: Replace WindowPtr with WindowRef.
19696
19697 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19698 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19699 Replace ControlHandle with ControlRef.
19700 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19701
19702 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19703 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19704 Replace ControlHandle with ControlRef.
19705 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19706 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19707
19708 * macterm.h (struct scroll_bar): Rename member control_handle_low
19709 and control_handle_high to control_ref_low and control_ref_high.
19710 All uses changed.
19711 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19712 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19713 respectively. All uses changed.
19714 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19715 (install_window_handler, remove_window_handler): Replace WindowPtr
19716 with WindowRef in externs.
19717
197182007-06-05 Juanma Barranquero <lekktu@gmail.com>
19719
19720 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19721
197222007-06-03 Nick Roberts <nickrob@snap.net.nz>
19723
19724 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19725
19726 * frame.c (Fmouse_position, Fmouse_pixel_position):
19727 Condition on HAVE_GPM too.
19728
19729 * term.c (term_mouse_highlight): Remove unused variables.
19730 (Fterm_open_connection): Set gpm_zerobased to 1.
19731 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19732 Use zero based co-ordinates.
19733 (handle_one_term_event): Report a drag as mouse movement too.
19734
19735 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19736
197372007-06-03 Chong Yidong <cyd@stupidchicken.com>
19738
19739 * image.c (search_image_cache): New function. Require background
19740 color match if background color is unspecified in the image spec.
19741 (uncache_image, lookup_image): Use it.
19742
197432007-06-01 Juanma Barranquero <lekktu@gmail.com>
19744
19745 * window.c (Fshrink_window): Reflow docstring.
19746
197472007-06-02 Chong Yidong <cyd@stupidchicken.com>
19748
19749 * Version 22.1 released.
19750
197512007-06-01 Richard Stallman <rms@gnu.org>
19752
19753 * xfns.c (x_encode_text): Add GCPRO.
19754
197552007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19756
19757 * xfns.c (x_set_name_internal): Save encoded name before
19758 x_encode_text in case string data is relocated.
19759
197602007-05-31 Richard Stallman <rms@gnu.org>
19761
19762 * buffer.c (syms_of_buffer): Doc fix.
19763
197642007-05-30 Nick Roberts <nickrob@snap.net.nz>
19765
19766 * sysdep.c (init_sys_modes): Add rather than replace with
19767 O_NONBLOCK.
19768
19769 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19770 term_mouse_moveto.
19771
19772 * termhooks.h (term_mouse_moveto): New extern.
19773
19774 * term.c (mouse_face_window): Rename...
19775 (Qmouse_face_window): ...to this.
19776 (term_show_mouse_face, term_clear_mouse_face)
19777 (term_mouse_highlight): Use Qmouse_face_window.
19778 (term_mouse_moveto): New function.
19779 (term_mouse_position): Make it work.
19780 (syms_of_term): Uncomment assignment to mouse_position_hook.
19781 Staticpro Qmouse_face_window.
19782
197832007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19784
19785 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19786 around current_column call.
19787
197882007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19789
19790 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19791 * xdisp.c (next_element_from_buffer):
19792 * window.c (delete_window):
19793 * term.c (term_mouse_highlight):
19794 * msdos.c (getdefdir):
19795 * macterm.c (mac_create_bitmap_from_bitmap_data)
19796 (init_font_name_table):
19797 * fns.c (Fsxhash):
19798 * data.c (Fmake_local_variable):
19799 * ccl.c (ccl_driver): Likewise.
19800
198012007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19802
19803 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19804 Call mac_wakeup_from_rne on window size change.
19805
198062007-05-25 Chong Yidong <cyd@stupidchicken.com>
19807
19808 * image.c (uncache_image): Fix typo.
19809
198102007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19811
19812 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19813
198142007-05-22 Richard Stallman <rms@gnu.org>
19815
19816 * xterm.c (x_connection_closed): Remove NO_RETURN.
19817
198182007-05-22 Martin Rudalics <rudalics@gmx.at>
19819
19820 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19821
198222007-05-21 Chong Yidong <cyd@stupidchicken.com>
19823
19824 * image.c (uncache_image): New function.
19825 (Fimage_refresh): New function.
19826
198272007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19828
19829 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19830
198312007-05-20 Nick Roberts <nickrob@snap.net.nz>
19832
19833 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19834 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19835
198362007-05-20 Nick Roberts <nickrob@snap.net.nz>
19837
19838 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19839 conditional on [HAVE_GPM_H].
19840
198412007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19842
19843 * syntax.c (skip_chars): Update syntax-table only after we checked that
19844 the new location is valid.
19845
198462007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19847
19848 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19849 mac_get_window_bounds.
19850
198512007-05-20 Nick Roberts <nickrob@snap.net.nz>
19852
19853 * Makefile.in (LIBGPM): Allow it to be set from configure.
19854 If set then link Emacs with it.
19855
19856 * config.in: Regenerate.
19857
19858 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19859 New externs.
19860
19861 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19862 Include gpm.h.
19863 (handle_one_term_event, term_gpm): New externs.
19864
19865 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19866 and allow it to be interrupted by SIGIO.
19867
19868 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19869 (wait_reading_process_output): Wait on gpm_fd too.
19870 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19871 (add_gpm_wait_descriptor_called_flag): New variable.
19872 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19873
19874 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19875 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19876 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19877 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19878 (make_lispy_event): Add case GPM_CLICK_EVENT.
19879 (read_avail_input): Handle mouse input.
19880
19881 * term.c (write_glyphs_with_face): New function.
19882 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19883 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19884 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19885 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19886 (last_mouse_x, last_mouse_y): New variables.
19887 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19888 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19889 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19890 (Fterm_close_connection): New functions.
19891 (term_init): Initialise mouse_face_window.
19892
198932007-05-19 Chong Yidong <cyd@stupidchicken.com>
19894
19895 * xdisp.c (redisplay_window): If first window line is a
19896 continuation line, recompute the new window start instead of
19897 recentering.
19898
198992007-05-18 Glenn Morris <rgm@gnu.org>
19900
19901 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19902 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19903
199042007-05-17 Glenn Morris <rgm@gnu.org>
19905
19906 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19907
199082007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19909
19910 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19911 dead key repeat and up events.
19912
199132007-05-14 Chong Yidong <cyd@stupidchicken.com>
19914
19915 * image.c (pbm_load): Check image size for monochrome pbm.
19916
199172007-05-13 Chong Yidong <cyd@stupidchicken.com>
19918
19919 * xterm.c (XTread_socket): Revert last change.
19920
199212007-05-12 Chong Yidong <cyd@stupidchicken.com>
19922
19923 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19924
19925 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19926
199272007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19928
19929 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19930 mixup (YAILOM).
19931
199322007-05-07 Andreas Schwab <schwab@suse.de>
19933
19934 * keymap.c (Flookup_key): Fix typo in last change.
19935
199362007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19937
19938 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19939 mapping for unibyte strings.
19940
199412007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19942
19943 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19944 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19945
199462007-04-29 Richard Stallman <rms@gnu.org>
19947
19948 * insdel.c (replace_range): For undo, record insertion first.
19949
199502007-04-29 Andreas Schwab <schwab@suse.de>
19951
19952 * lisp.h (VECSIZE): Use OFFSETOF.
19953
199542007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19955
19956 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19957 disabled lines.
19958
199592007-04-28 Richard Stallman <rms@gnu.org>
19960
19961 * lread.c (read_escape): In a string, \s is always space.
19962
199632007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19964
19965 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19966
19967 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19968 submenu for menu bar items.
19969
19970See ChangeLog.10 for earlier changes.
19971
19972;; Local Variables:
19973;; coding: utf-8
19974;; add-log-time-zone-rule: t
aac0c6e3
MR
19975;; End:
19976
76b6f707 19977 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19978
19979 This file is part of GNU Emacs.
19980
19981 GNU Emacs is free software: you can redistribute it and/or modify
19982 it under the terms of the GNU General Public License as published by
19983 the Free Software Foundation, either version 3 of the License, or
19984 (at your option) any later version.
19985
19986 GNU Emacs is distributed in the hope that it will be useful,
19987 but WITHOUT ANY WARRANTY; without even the implied warranty of
19988 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19989 GNU General Public License for more details.
19990
19991 You should have received a copy of the GNU General Public License
19992 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19993
19994;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40