(XSETPSEUDOVECTOR): Don't set the tag anymore.
[bpt/emacs.git] / src / ChangeLog
1 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
4 This was made redundant by the previous introduction of XSETPVECTYPE.
5
6 2007-10-09 Richard Stallman <rms@gnu.org>
7
8 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
9
10 2007-09-29 Richard Stallman <rms@gnu.org>
11
12 * eval.c (internal_condition_case_2, internal_condition_case_1)
13 (internal_condition_case): Reenable abort if x_catching_errors ()
14 to see if that really happens and why.
15
16 2007-10-06 Andreas Schwab <schwab@suse.de>
17
18 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
19
20 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
21
22 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
23
24 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
25
26 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
27
28 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
29
30 * window.h (struct window):
31 * window.c (struct save_window_data, struct saved_window):
32 * termhooks.h (struct terminal):
33 * process.h (struct Lisp_Process):
34 * frame.h (struct frame):
35 * buffer.h (struct buffer):
36 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
37 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
38 The size field of (pseudo)vectors is now unsigned.
39 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
40
41 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
42 Turn `count' into an integer.
43
44 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
45 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
46 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
47 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
48 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
49
50 * alloc.c (allocate_pseudovector): New fun.
51 (ALLOCATE_PSEUDOVECTOR): New macro.
52 (allocate_window, allocate_terminal, allocate_frame)
53 (allocate_process): Use it.
54 (mark_vectorlike): New function.
55 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
56 (mark_terminals): Use it.
57 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
58 (Fmake_byte_code): Use XSETPVECTYPE.
59
60 * frame.c (Fframe_parameters): Minor simplification.
61
62 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
63
64 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
65
66 * buffer.c (Fget_buffer_create, init_buffer_once):
67 * lread.c (defsubr):
68 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
69
70 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
71 defined differently in the m/*.h files.
72 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
73 (XSETPVECTYPE): New macro.
74 (XSETPSEUDOVECTOR): Use it.
75
76 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
77 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
78
79 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
80 * lread.c (defvar_per_buffer):
81 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
82
83 * window.c (candidate_window_p): Only consider as visible frames that
84 are on the same terminal.
85
86 * m/ibms390x.h (MARKBIT): Remove unused macro.
87
88 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
89
90 * lread.c (Fload): Fix typo in docstring.
91
92 2007-10-01 Micha\e,Ak\e(Bl Cadilhac <michael@cadilhac.name>
93
94 * floatfns.c (Fexpt): Manually check for overflows, so that a power
95 of a non-zero value can't yield zero.
96
97 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
98
99 * term.c (term_clear_mouse_face, term_mouse_highlight)
100 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
101
102 * print.c (safe_debug_print): Use XHASH.
103
104 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
105 Lisp elements such as tags.
106 (XHASH): New macro.
107 (EQ): Use it.
108 (SREF, SSET, STRING_COPYIN): Use SDATA.
109 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
110
111 * alloc.c (mark_terminal): Remove left-over declaration.
112 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
113 (allocate_vectorlike): Remove type argument. Adjust callers.
114 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
115 Only handle the one remaining MEM_TYPE_VECTORLIKE.
116
117 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
118 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
119 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
120 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
121 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
122 Use them.
123
124 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
125 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
126 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
127
128 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
129
130 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
131 loaded by default.
132
133 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
134
135 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
136 on this tty.
137 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
138
139 * term.c (mouse_face_window): Rename from Qmouse_face_window.
140 Update all users.
141 (handle_one_term_event): Use Gpm_DrawPointer.
142 (Fgpm_mouse_start): Rename from Fterm_open_connection.
143 Signal errors instead of returning nil. Always return nil.
144 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
145 Make it a noop if gpm-mouse was not activated.
146 (syms_of_term): Update names.
147
148 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
149
150 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
151 (init_sys_modes): Check that gpm_tty is the current tty.
152
153 * alloc.c (allocate_terminal): Set the vector size to only count the
154 lisp fields. Initialize those to nil.
155 (mark_object): Don't treat terminals specially.
156 (mark_terminal): Remove.
157 (mark_terminals): Use mark_object instead.
158
159 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
160 the GC to the beginning.
161
162 * indent.h:
163 * indent.c: Use EMACS_INT for ints coming from Elisp data.
164
165 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
166
167 2007-09-25 Jason Rumney <jasonr@gnu.org>
168
169 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
170
171 * w32console.c (create_w32cons_output): Remove.
172
173 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
174
175 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
176 (reset_sys_modes): Use reset_terminal_modes_hook.
177
178 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
179
180 * eval.c (do_autoload): Don't output any message.
181
182 2007-09-24 Juri Linkov <juri@jurta.org>
183
184 * emacs.c (standard_args): Change priority of "--no-splash"
185 from 40 to 3. Add "--no-desktop" with the same priority.
186
187 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
188
189 * alloc.c (gc_sweep): Check cons cell mark bits word by word
190 and optimize the case where they are all 1.
191
192 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
193
194 * lisp.h (abs): Define if not defined.
195 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
196 Don't define `abs', since it's defined in lisp.h.
197
198 2007-09-22 Eli Zaretskii <eliz@gnu.org>
199
200 * term.c (DEV_TTY): New macro. Provide a definition for
201 MS-Windows.
202 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
203 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
204 (init_tty): Use DEV_TTY instead of "/dev/tty".
205 [WINDOWSNT]: No need to protect from NAME arg being null.
206
207 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
208
209 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
210 up the tty state.
211
212 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
213
214 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
215 (gpm_tty): Change its type.
216 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
217 (gpm_tty): Change its type and initialize it.
218 (Fterm_open_connection): Check the frame is indeed a tty.
219 Use the new gpm_tty.
220 (Fterm_close_connection): Use the new gpm_tty.
221 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
222 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
223
224 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
225
226 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
227 underline_color, to draw strike-through.
228
229 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
230
231 * lisp.h (allocate_terminal): Declare.
232
233 * window.c (candidate_window_p): Consider frames that are being placed
234 by the user as somewhere between visible and iconified.
235 (window_loop): Prefer windows on the current frame.
236 (Fselect_window): Move the use of select-frame to the beginning so we
237 can just delegate all the work (it'll call us back anyway).
238
239 * frame.c (Qdisplay_environment_variable):
240 * frame.h (Qdisplay_environment_variable): Delete.
241
242 * .gdbinit (xbacktrace): Print the arg's address rather than the value
243 of the first arg, since that value may be a union.
244
245 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
246 parameter rather than Qdisplay_environment_variable. If all else
247 fails, look for DISPLAY in initial-environment.
248
249 2007-09-21 Glenn Morris <rgm@gnu.org>
250
251 * Makefile.in (emacstool): Remove target.
252 (lisp, shortlisp): Remove termdev.elc.
253
254 2007-09-21 Markus Triska <markus.triska@gmx.at>
255
256 * xterm.c (x_delete_display): Compile session management conditionally.
257
258 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
259
260 * callproc.c (getenv_internal_1): New function.
261 (getenv_internal): Use it.
262 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
263
264 * terminal.c (get_terminal): Don't accept ints to represent terminals.
265 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
266 (Fset_terminal_parameter): Work with dead terminals as well.
267 (Fmodify_terminal_parameters): Remove.
268
269 * terminal.c (get_terminal): Handle terminals.
270 Make sure the terminal returned is live.
271 (create_terminal): Use allocate_terminal.
272 (mark_terminals): Move to alloc.c.
273 (delete_terminal): Use terminal->name as liveness status.
274 NULL out fields after freeing their contents.
275 Don't deallocate the object.
276 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
277 rather than an int.
278 (Fterminal_live_p): Accept non-integer arguments.
279 (Fterminal_list): Return terminal objects rather than an ints.
280
281 * alloc.c (enum mem_type): New member for `terminal' objects.
282 (allocate_terminal): New function.
283 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
284 Handle terminals.
285 (mark_terminal): New fun.
286 (mark_terminals): Move from terminal.c.
287
288 * term.c (get_tty_terminal): Don't treat output_initial specially.
289 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
290 (delete_tty): Use terminal->name as liveness status.
291
292 * termhooks.h (struct terminal): Make it into a pseudovector.
293 Remove `deleted' replaced by checking `name's nullness.
294
295 * print.c (print_object): Handle terminals.
296
297 * lisp.h (enum pvec_type): New `terminal' pseudovector.
298 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
299
300 * frame.c (make_terminal_frame):
301 * keyboard.c (tty_read_avail_input):
302 * w32term.c (x_delete_terminal):
303 * xfns.c (Fx_create_frame, x_create_tip_frame):
304 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
305
306 2007-09-20 Glenn Morris <rgm@gnu.org>
307
308 * process.c (Fmake_network_process): Doc fix.
309
310 2007-09-19 Jason Rumney <jasonr@gnu.org>
311
312 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
313
314 2007-09-19 Micha\e,Ak\e(Bl Cadilhac <michael@cadilhac.name>
315
316 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
317 Fix a C warning regarding variable constness.
318
319 * xterm.c (handle_one_xevent): Fix a C warning.
320
321 2007-09-18 Jason Rumney <jasonr@gnu.org>
322
323 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
324
325 2007-09-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
326
327 * gtkutil.c (gdpy_def): New variable.
328 (xg_initialize): Initialize gdpy_def.
329 (xg_display_close): If no other display exists, set gdpy_def to a
330 new connection.
331
332 2007-09-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
333
334 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
335 when we have no file name for the icon.
336 (xg_tool_bar_expose_callback): Remove.
337 (xg_create_tool_bar): Don't connect expose signal to
338 xg_tool_bar_expose_callback.
339 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
340
341 2007-09-16 Andreas Schwab <schwab@suse.de>
342
343 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
344 values instead of zapping them.
345
346 2007-09-14 Glenn Morris <rgm@gnu.org>
347
348 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
349 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
350 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
351 scope and rename to omfib_buffer for clarity.
352 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
353
354 2007-09-14 Kenichi Handa <handa@m17n.org>
355
356 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
357
358 2007-09-13 Jason Rumney <jasonr@gnu.org>
359
360 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
361
362 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
363
364 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
365 (mac_term_init): Call here instead, passing rif.
366
367 2007-09-13 Glenn Morris <rgm@gnu.org>
368
369 * s/hpux.h: No longer define `static' as nothing.
370
371 2007-09-13 Johan Bockg\e,Ae\e(Brd <bojohan@gnu.org>
372
373 * callint.c (Fcall_interactively): Remove unused var `fun'.
374
375 2007-09-12 Romain Francoise <romain@orebokech.com>
376
377 * window.c (prefer_window_split_horizontally, display_buffer):
378 Revert 2007-09-08 change.
379
380 2007-09-12 Glenn Morris <rgm@gnu.org>
381
382 * alloca.c: Remove file.
383 * Makefile.in (alloca): Do not undef.
384 (allocaobj, alloca.o): Remove.
385 (otherobj): Remove allocaobj.
386 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
387 * regex.c (C_ALLOCA): Remove all references and code that was only
388 used when this was defined.
389 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
390 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
391 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
392
393 * Makefile.in (SOURCES, unlock, relock): Delete.
394
395 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
396 (menu_grab_callback): All uses changed.
397
398 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
399 (x_reply_selection_request): All uses changed.
400
401 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
402
403 * lread.c (load_warn_old_style_backquotes): Change message to look
404 better when it appears in the middle of byte-compiler messages.
405
406 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
407
408 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
409
410 * xterm.c (x_create_terminal): Add comment.
411
412 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
413
414 2007-09-10 Richard Stallman <rms@gnu.org>
415
416 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
417
418 2007-09-10 Micha\e,Ak\e(Bl Cadilhac <michael@cadilhac.name>
419
420 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
421 (DEFUN): Document `intspec', use it instead of `prompt'.
422
423 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
424
425 * data.c (Finteractive_form): If the interactive specification starts
426 with a `(', use it as a Lisp form.
427
428 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
429 name and file modes.
430
431 * callint.c (Fcall_interactively): Comment fixes.
432
433 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
434
435 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
436 and compiled functions.
437
438 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
439
440 * window.c (prefer_window_split_horizontally): New variable.
441 (display_buffer): Consider splitting window horizontally depending
442 on prefer_window_split_horizontally.
443
444 2007-09-08 Eli Zaretskii <eliz@gnu.org>
445
446 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
447
448 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
449
450 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
451
452 * frame.c (x_set_frame_parameters): Check number is positive before
453 using XFASTINT.
454
455 * window.c (freeze_window_start): Don't presume selected_window holds
456 a window object.
457 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
458
459 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
460
461 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
462
463 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
464
465 * window.c (Vsplit_window_preferred_function): New var.
466 (Fdisplay_buffer): Use it.
467 (syms_of_window): Export, and initialize it.
468
469 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
470
471 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
472
473 2007-09-06 Glenn Morris <rgm@gnu.org>
474
475 * gtkutil.c (menu_grab_callback) <cnt>:
476 * xselect.c (x_reply_selection_request) <cnt>: Move static
477 variable to file scope.
478
479 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
480
481 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
482 consistent values of selected_frame and selected_window.
483
484 2007-09-04 Jason Rumney <jasonr@gnu.org>
485
486 * w32console.c (initialize_w32_display): Zero unused hooks.
487
488 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
489
490 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
491 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
492
493 2007-09-04 Jason Rumney <jasonr@gnu.org>
494
495 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
496 in w32console.c. Set up input. Remove XXX comments that have been
497 confirmed as correct.
498
499 * s/ms-w32.h (MULTI_KBOARD): Define.
500
501 * w32console.c (one_and_only_w32cons): Remove.
502 (initialize_w32_display): Take terminal argument.
503
504 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
505 initialize_w32_display.
506 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
507
508 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
509
510 * keyboard.c (discard_mouse_events): Discard it.
511 (make_lispy_event): Translate it to a lisp event.
512 (lispy_wheel_names): Add wheel-left and right events.
513 (syms_of_keyboard): Enlarge wheel_syms.
514
515 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
516 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
517
518 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
519
520 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
521 from WM_MOUSEHWHEEL.
522 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
523
524 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
525 terminal.
526
527 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
528 keyboard for the terminal.
529
530 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
531
532 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
533 (Vresume_tty_hook): Rename from Vresume_tty_functions.
534 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
535 and resume-tty-function to resume-tty-hook.
536 (Fsuspend_tty, Fresume_tty): Use new names.
537
538 2007-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
539
540 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
541 if it starts with "n:".
542
543 2007-08-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
544
545 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
546
547 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
548
549 * frame.h:
550 * frame.c (Qterm_environment_variable): Remove.
551 (syms_of_frame): Don't init and staticpro it.
552
553 * callproc.c (getenv_internal): Remove special case for $TERM.
554
555 * callproc.c (Vinitial_environment): New variable.
556 (set_initial_environment): Initialize it.
557 (syms_of_callproc): Declare it.
558 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
559 TERM under which a process runs is never related to the TERM in which
560 Emacs is running.
561
562 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
563
564 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
565 * s/darwin.h: ... do it here.
566
567 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
568
569 * lisp.h (set_initial_environment): Rename from set_global_environment.
570
571 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
572 removed by mistake on the multi-tty branch.
573
574 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
575 (Fmodify_frame_parameters): Return a value.
576
577 * image.c (png_load): Comment-out var only used in commented-out code.
578
579 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
580 before passing it to mark_object.
581
582 * xfaces.c (internal_resolve_face_name): Return a value.
583 (internal_resolve_face_name, resolve_face_name_error): Comment out.
584
585 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
586 (x_icon): Comment-out var only used in commented-out code.
587
588 2007-08-29 Romain Francoise <romain@orebokech.com>
589
590 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
591 QUIT hasn't been provided.
592
593 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
594
595 * callproc.c (child_setup, getenv_internal): Use the
596 display-environment-variable and term-environment-variable frame
597 params.
598 (set_initial_environment): Initialise Vprocess_environment.
599
600 * config.in: Disable multi-keyboard support on a mac.
601
602 * frame.c (Qterm_environment_variable)
603 (Qdisplay_environment_variable): New variables.
604 (syms_of_frame): Intern and staticpro them.
605 (Fmake_terminal_frame): Disable output method test.
606
607 * frame.h: Declare them here.
608
609 * macfns.c (x_set_mouse_color): Get rif from the frame.
610 (x_set_tool_bar_lines): Don't use updating_frame.
611 (mac_window): Add 2 new parameters for consistency with other systems.
612 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
613 frame parameters following what is done in X11 and w32. Don't use
614 FRAME_MAC_DISPLAY_INFO.
615 (Fx_open_connection, start_hourglass): Remove window-system check.
616 (x_create_tip_frame): Get the keyboard from the terminal.
617
618 * macmenu.c: Reorder includes.
619 (Fx_popup_menu): Use terminal specific mouse_position_hook.
620
621 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
622 terminal parameter.
623 (x_clear_frame): Add a frame parameter.
624 (note_mouse_movement): Get rif from the frame.
625 (mac_term_init): Initialize the terminal.
626 (mac_initialize): Make static and move terminal initialization ...
627 (mac_create_terminal): ... to this new function.
628
629 * macterm.h (struct mac_display_info): Add terminal.
630 (mac_initialize): Delete declaration.
631
632 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
633
634 * sysdep.c: Comment out text after #endif.
635
636 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
637 is defined. Better initialize ttys in windows. Use terminal
638 specific mouse_position_hook.
639
640 * termhooks.h (union display_info): Add mac_display_info.
641
642 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
643 Set the default minibuffer frame, window_system and the rest of the
644 frame parameters following what is done in X11.
645
646 * w32term.c (w32_initialize): Make static.
647
648 * xselect.c (x_handle_selection_clear): Only access
649 terminal->kboard when MULTI_KBOARD is defined.
650
651 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
652 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
653
654 2007-08-29 Jason Rumney <jasonr@gnu.org>
655
656 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
657 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
658
659 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
660 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
661
662 * keyboard.c (restore_kboard_configuration): Only define when
663 MULTI_KBOARD defined.
664
665 * makefile.w32-in: Update dependancies from Makefile.in
666 (OBJ1): Add terminal.$(O)
667
668 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
669 Don't define function body.
670 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
671
672 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
673
674 * w32.c (request_sigio, unrequest_sigio): Remove.
675
676 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
677 (w32con_clear_frame, w32con_clear_end_of_line)
678 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
679 (w32con_delete_glyphs, w32con_set_terminal_window)
680 (scroll_line, w32_sys_ring_bell): Add frame arg.
681 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
682 Add terminal arg.
683 (PICK_FRAME): Remove.
684 (w32con_write_glyphs): Use frame specific terminal coding.
685 (one_and_only_w32cons): New global variable.
686 (initialize_w32_display): Use it for storing hooks.
687 (create_w32cons_output): New function.
688
689 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
690 arg a frame.
691
692 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
693 Set window_system.
694 (x_set_tool_bar_lines): Don't use updating_frame.
695 (Fx_create_frame): Set terminal and ref count.
696 (Fx_open_connection): Remove window-system check.
697
698 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
699
700 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
701 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
702 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
703 Add frame arg.
704 (x_delete_terminal, w32_create_terminal): New functions.
705 (w32_term_init): Create a terminal.
706 (w32_initialize): Move terminal specific initialization to
707 w32_create_terminal.
708
709 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
710 (w32_clear_rect, w32_clear_area): Use background from frame.
711 (w32_display_info): Add terminal.
712 (w32_sys_ring_bell, x_delete_display): Declare here.
713
714 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
715
716 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
717
718 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
719
720 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
721 Fix get_named_tty calls for the controlling tty.
722
723 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
724
725 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
726
727 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
728
729 * term.c (tty_insert_glyphs): Add missing first parameter.
730
731 2007-08-29 Karoly Lorentey <karoly@lorentey.hu>
732
733 * buffer.c (Fbuffer_list, Fbury_buffer):
734 Take frame->buried_buffer_list into account.
735
736 * cm.c (current_tty): New variable, for cmputc().
737 (cmputc): Use it.
738 (cmcheckmagic): Add tty parameter, look up terminal streams there.
739 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
740 (cmgoto): Add tty parameter. Pass it on to calccost().
741 Use emacs_tputs() instead of tputs().
742
743 * cm.h (emacs_tputs): New macro to set current_tty, and then call
744 tputs().
745 (current_tty): New variable, for cmputc().
746 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
747
748 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
749 (internal_condition_case, internal_condition_case_1)
750 (internal_condition_case_2): Don't abort when x_catching_errors.
751
752 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
753 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
754 prevent crashes caused by bogus longjmps in read_char.
755
756 * keymap.h (Fset_keymap_parent): Add EXFUN.
757
758 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
759 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
760 Remove redundant definition.
761
762 * macfns.c (x_set_mouse_color, x_make_gc):
763 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
764
765 * w32term.c (x_free_frame_resources):
766 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
767 (w32_initialize): Use the accessor macros for terminal characteristics.
768
769 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
770 Use the accessor macros for terminal characteristics.
771 * msdos.c (internal_terminal_init): Use the accessor macros for
772 terminal characteristics.
773 (ScreenVisualBell, internal_terminal_init):
774 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
775
776 * termopts.h (no_redraw_on_reenter): Declare.
777
778 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
779 (mark_terminals, mark_ttys): Declare.
780 (Fgarbage_collect): Call them.
781 (mark_object): Mark buried_buffer_list.
782
783 * prefix-args.c: Include stdlib.h for exit.
784
785 * syssignal.h: Add comment.
786
787 * indent.c: Include stdio.h.
788
789 * window.h (Vinitial_window_system): Declare.
790 (Vwindow_system): Delete declaration.
791
792 * fontset.c (Finternal_char_font): Use FRAME_RIF.
793
794 * image.c (lookup_image): Don't initialize `c' until the xasserts
795 have been run.
796
797 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
798 FRAME_FOREGROUND_PIXEL.
799
800 * print.c (print_preprocess): Don't lose print_depth levels while
801 iterating.
802
803 * widget.c (update_from_various_frame_slots):
804 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
805
806 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
807 frames.
808 (window_internal_height): Remove bogus make_number call.
809 (init_window_once): Call make_terminal_frame with two zero parameters.
810
811 * fileio.c (Fread_file_name): Update comment.
812
813 * callint.c (Fcall_interactively):
814 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
815 Make sure it is correctly unwound.
816
817 * xsmfns.c (x_session_close): New function.
818
819 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
820 Delete declarations.
821
822 * xterm.h: Remove declaration for x_fully_uncatch_errors.
823 (x_output): Remove background_pixel and foreground_pixel fields.
824 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
825 (x_delete_device):
826 (x_session_close): Declare.
827
828 * lread.c: Include setjmp.h. Update declaration of `read_char'.
829 (read_filtered_event): Call `read_char' with a local
830 `wrong_kboard_jmpbuf'.
831
832 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
833 Don't call single_kboard_state. Use FRAME_RIF.
834
835 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
836 systems.
837
838 * lisp.h (set_process_environment): Rename to `set_global_environment'.
839 (Fframe_with_environment, Fset_input_meta_mode)
840 (Fset_quit_char): EXFUN.
841 (x_create_device, tty_output, terminal, tty_display_info): Declare.
842 (init_sys_modes, reset_sys_modes): Update prototypes.
843 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
844
845 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
846 Vlocal_key_translation_map, and Vkeyboard_translate_table.
847 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
848 Delete declarations.
849 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
850 (temporarily_switch_to_single_kboard, tty_read_avail_input):
851 New declarations.
852
853 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
854 already does that during init_display(). Call syms_of_keymap
855 before syms_of_keyboard. Call `syms_of_terminal'.
856 Call set_initial_environment, not set_process_environment.
857 (shut_down_emacs): Call reset_all_sys_modes() instead of
858 reset_sys_modes().
859
860 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
861 (internal_resolve_face_name, resolve_face_name_error): New functions.
862 (resolve_face_name): Protect against loops and errors thrown by Fget.
863 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
864 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
865
866 * scroll.c: Replace CURTTY() with local variables throughout the
867 file (where applicable).
868 (calculate_scrolling, calculate_direct_scrolling)
869 (scrolling_1, scroll_cost): Use the accessor macros for terminal
870 characteristics.
871
872 * keymap.c (Vfunction_key_map): Remove.
873 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
874 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
875 (Vkey_translation_map): Remove.
876 (syms_of_keymap): Remove DEFVAR for key-translation-map.
877 (Fdescribe_buffer_bindings):
878 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
879 Update for terminal-local key-translation-map.
880
881 * Makefile.in (callproc.o): Update dependencies.
882 (lisp, shortlisp): Add termdev.elc.
883 (obj): Add terminal.o.
884 (terminal.o): Add dependencies.
885 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
886 (data.o, fns.o): Add termhooks.h dependency.
887 (SOME_MACHINE_LISP): Add dnd.elc.
888 (minibuf.o): Fix typo.
889 Update dependencies.
890
891 * data.c (do_symval_forwarding, store_symval_forwarding)
892 (find_symbol_value): Use the selected frame's keyboard, not
893 current_kboard.
894
895 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
896 Vwindow_system.
897
898 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
899 Fmenu_bar_open.
900 (syms_of_xmenu): Update defsubr.
901 (mouse_position_for_popup, Fx_popup_menu)
902 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
903 (set_frame_menubar, free_frame_menubar)
904 (create_and_show_popup_menu, xmenu_show, )
905 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
906 an X frame.
907
908 * xselect.c (x_own_selection): Abort if not an X frame.
909 (some_frame_on_display): Check if it is an X frame.
910 (x_handle_selection_clear): Deal with MULTI_KBOARD.
911
912 * coding.c: Include frame.h and termhooks.h.
913 (terminal_coding, keyboard_coding): Delete.
914 (Fset_terminal_coding_system_internal):
915 (Fset_keyboard_coding_system_internal):
916 (Fkeyboard_coding_system):
917 (Fterminal_coding_system): Add a terminal parameter.
918 Get terminal_coding from the terminal.
919 (init_coding_once): Don't call setup_coding_system here.
920
921 * dispextern.h (set_scroll_region, turn_off_insert)
922 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
923 (tty_clear_end_of_line, tty_setup_colors)
924 (delete_tty, updating_frame)
925 (produce_special_glyphs, produce_glyphs, write_glyphs)
926 (insert_glyphs): Remove.
927 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
928 (tty_turn_off_highlight, get_tty_size): Add declaration.
929 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
930
931 * frame.h (enum output_method): Add output_initial.
932 (struct x_output): Delete.
933 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
934 Access foreground_pixel and background_pixel directly from the frame.
935 (tty_display): Delete.
936 (struct frame): Add buried_buffer_list, foreground_pixel,
937 background_pixel and terminal. Delete kboard
938 (union output_data): Add tty.
939 (FRAME_KBOARD): Get the kboard from the terminal.
940 (FRAME_INITIAL_P): New macro.
941 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
942 (Qterm_environment_variable, Qdisplay_environment_variable)
943 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
944 New declarations.
945
946 * termchar.h (tty_output, tty_display_info): New structures.
947 (tty_list): Declare.
948 (FRAME_TTY, CURTTY): New macros.
949 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
950 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
951 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
952 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
953
954 * callproc.c: Include frame.h and termhooks.h, for terminal
955 parameters.
956 (add_env): New function.
957 (child_setup): Use it.
958 (child_setup, getenv_internal): Handle the new Vprocess_environment.
959 (getenv_internal): Fix get_terminal_param call.
960 (Fgetenv_internal, egetenv): Update doc.
961 (syms_of_callproc): Initialize Vprocess_environment to nil.
962 Register and initialize them. Remove obsolete defvars. Update doc
963 strings.
964 (child_setup): Handle Vlocal_environment_variables.
965 (getenv_internal): Add terminal parameter.
966 Handle Vlocal_environment_variables.
967 (Fgetenv_internal): Add terminal parameter.
968 (child_setup, getenv_internal, Fgetenv_internal): Store the local
969 environment in a frame (not terminal) parameter. Update doc strings.
970 (set_initial_environment): Rename from set_global_environment.
971 Store Emacs environment in initial frame parameter.
972
973 * xdisp.c (redisplay_internal): Update references to
974 `previous_terminal_frame'.
975 (display_mode_line, Fformat_mode_line): Replace calls to
976 `push_frame_kboard' with `push_kboard'.
977 (get_glyph_string_clip_rects): Add extra parentheses and
978 braces to prevent compiler warnings.
979 (calc_pixel_width_or_height): Add xassert to check that the
980 frame is alive. Don't call `lookup_image' on a termcap frame.
981 (message2_nolog, message3_nolog, redisplay_internal)
982 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
983 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
984 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
985 (Fx_display_pixel_width, Fx_display_pixel_height)
986 (Fx_display_planes, Fx_display_color_cells)
987 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
988 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
989 (Fx_display_backing_store, Fx_display_visual_class)
990 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
991 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
992
993 * xfns.c (x_set_foreground_color x_set_background_color)
994 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
995 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
996 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
997 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
998 terminal that is being deleted.
999 (Fx_create_frame): Use `store_frame_param' to set `window-system'
1000 frame parameter, and make sure it overrides any user-supplied setting.
1001 (Fx_close_connection, Fx_synchronize): Unify argument names with
1002 the rest of the DEFUNs.
1003
1004 * dispnew.c (Fsend_string_to_terminal): Update call to
1005 `get_tty_terminal'.
1006 (Fredraw_frame, Fsend_string_to_terminal)
1007 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
1008 FRAME_TERMCAP_P and FRAME_TTY.
1009 (window_change_signal): Don't believe width/height values that are
1010 impossibly small.
1011 (Vinitial_window_system): Rename from Vwindow_system.
1012 (termscript, Wcm, rif): Delete.
1013
1014 * termhooks.h (struct terminal): New struct containing the
1015 previously global text display hooks and new members NAME,
1016 DELETED and PARAM_ALIST.
1017 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
1018 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
1019 (FRAME_RIF): New macros.
1020 (get_terminal_param, get_device): New declarations.
1021 (termscript): Delete declaration.
1022
1023 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
1024 (XTflash, x_free_frame_resources, x_scroll_bar_create)
1025 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
1026 FRAME_FOREGROUND_PIXEL.
1027 (x_fully_uncatch_errors): Disable definition.
1028 (x_scroll_bar_expose): Fix reference to foreground pixel.
1029 (XTread_socket): Disable loop on all X displays.
1030 (x_delete_terminal): Don't set terminal->deleted and let
1031 delete_terminal delete the frames on the terminal.
1032 (x_delete_display): Doc update to reflect changes in
1033 delete_terminal.
1034 (x_display_info) <terminal>: Move member earlier in the struct.
1035 (deleting_tty): Remove old variable.
1036 (Fsuspend_tty): Call clear_tty_hooks.
1037 (Fresume_tty, init_tty): Call set_tty_hooks.
1038 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
1039 errors on X frames.
1040 (x_catch_errors_unwind): Abort if x_error_message is NULL.
1041 (handle_one_xevent): Initialize `f' to NULL.
1042 (x_delete_terminal, x_create_terminal): New functions.
1043 (XTset_terminal_modes, XTreset_terminal_modes)
1044 (XTread_socket, x_connection_closed, x_term_init)
1045 (x_term_init, x_delete_display): Add terminal parameter.
1046 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
1047 X connections.
1048
1049 * frame.c (Fframep): Deal with output_initial.
1050 (Qbuffer_predicate, Qbuffer_list, Qburied_buffer_list, Qtty)
1051 (Qtty_type, Qwindow_system, Qenvironment)
1052 (Qterm_environment_variable, Qdisplay_environment_variable): New vars.
1053 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
1054 (make_terminal_frame): Don't create frames on a terminal that is
1055 being deleted.
1056 (make_terminal_frame): Use FRAME_BACKGROUND_PIXEL and
1057 FRAME_FOREGROUND_PIXEL.
1058 (store_frame_param): Check for found_for_frame before calling XFRAME.
1059 (Fmake_terminal_frame): Handle NULL tty names correctly.
1060 (syms_of_frame): Enhance doc string of `default-frame-alist'.
1061 (Fdelete_frame): Remove unused variable `count'.
1062 (Qenvironment): New variable.
1063 (Fdelete_frame): Don't allow other frames to refer to a deleted
1064 frame in their 'environment parameter.
1065 (Fframe_with_environment): New function.
1066 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
1067 (get_future_frame_param): New function.
1068 (Fmake_terminal_frame): Use it.
1069 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
1070
1071 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
1072 * sysdep.c (reset_sys_modes): Update for renames.
1073
1074 * keyboard.c (tty_read_avail_input): New function.
1075 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
1076 (syms_of_keyboard): Defsubr them.
1077 (Fset_input_meta_mode, Fset_quit_char): New functions.
1078 (Fset_input_mode): Split to above functions.
1079
1080 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
1081 parameter. Use it in call to `read_char'.
1082 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
1083 Set wrong_kboard_jmpbuf correctly in recursive calls.
1084 Use current_kboard to access Vkeyboard_translate_table.
1085 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
1086 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
1087 Update longjmp invocations. Remember the original current_kboard,
1088 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
1089 changes it. Comment out unnecessary calls to
1090 `record_single_kboard_state' and `any_kboard_state'.
1091 Update recursive calls.
1092 (wrong_kboard_jmpbuf): Remove global variable.
1093 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
1094 Handle deleted interrupted_kboards correctly; that is a legal
1095 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
1096 and read_char calls. Abort if interrupted_kboard died in read_char.
1097 (any_kboard_state, single_kboard_state)
1098 (push_frame_kboard): Remove function.
1099 (pop_kboard): Switch out of single_kboard mode if the kboard has
1100 been deleted. Remove unused variable. Help debugging by not
1101 changing current_kboard unnecessarily. Set current_kboard to the
1102 kboard of the selected frame when the stored kboard object has
1103 been deleted before pop_kboard.
1104 (temporarily_switch_to_single_kboard): Change first parameter to a
1105 frame pointer. Throw an error when caller wants to change kboards
1106 while in single_kboard mode. Don't push_kboard if we weren't in
1107 single kboard state. Don't pop_kboard if we popped into any
1108 kboard state.
1109 (restore_kboard_configuration): Abort if pop_kboard changed the
1110 kboard in single_kboard mode. Call pop_kboard only after setting
1111 up single_kboard mode.
1112 (Frecursive_edit): Switch to single_kboard mode only in nested
1113 command loops.
1114 (cmd_error, command_loop, command_loop_1, timer_check):
1115 Comment out unnecessary call to `any_kboard_state' and
1116 `record_single_kboard_state'.
1117 (delete_kboard): Exit single_kboard mode if we have just deleted
1118 that kboard. Use FRAME_KBOARD.
1119 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
1120 `fatal_error_signal'.
1121 (record_single_kboard_state): Don't push_kboard if we weren't in
1122 single kboard state. Don't pop_kboard if we popped into any
1123 kboard state.
1124 (push_frame_kboard): Rename to push_kboard.
1125 (kbd_buffer_get_event): Use FRAME_TERMINAL.
1126 (read_avail_input): Read input from all terminals.
1127 (mark_kboards): Also mark Vkeyboard_translate_table.
1128 (kbd_buffer_store_event_hold): Simplify condition.
1129 (read_key_sequence): Reinitialize fkey and keytran at each replay.
1130 (Vkeyboard_translate_table): Move to struct kboard.
1131 (init_kboard): Initialize Vkeyboard_translate_table.
1132 (syms_of_keyboard): Use DEFVAR_KBOARD to define
1133 Vkeyboard_translate_table. Update doc strings. Update docs of
1134 local-function-key-map and function-key-map.
1135
1136 * terminal.c: New file.
1137
1138 * term.c: Include errno.h.
1139 (Vring_bell_function, device_list, initial_device)
1140 (next_device_id, ring_bell, update_begin, update_end)
1141 (set_terminal_window, cursor_to, raw_cursor_to)
1142 (clear_to_end, clear_frame, clear_end_of_line)
1143 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
1144 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
1145 (syms_of_term): Move their initialization to terminal.c.
1146 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
1147 (Ftty_display_color_cells)
1148 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
1149 (clear_tty_hooks, set_tty_hooks)
1150 (init_tty, maybe_fatal): New functions.
1151 (Ftty_type): Return nil if terminal is not on a tty instead of
1152 throwing an error. Doc update.
1153 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
1154 Doc update. Initialize new subrs and variables.
1155 (delete_tty): Use terminal->deleted.
1156 (tty_set_terminal_modes): Rename from set_terminal_modes.
1157 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
1158 (set_scroll_region): Rename to `tty_set_scroll_region'.
1159 (turn_on_insert): Rename to `tty_turn_on_insert'.
1160 (turn_off_insert): Rename to `tty_turn_off_insert'.
1161 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
1162 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
1163 (toggle_highligh): Rename to `tty_toggle_highlight'.
1164 (background_highlight): Rename to `tty_background_highlight'.
1165 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
1166 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
1167 (tty_set_scroll_region, tty_background_highlight)
1168 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
1169 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
1170 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
1171 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
1172 Add static modifier.
1173 (tty_reset_terminal_modes, tty_set_terminal_window)
1174 (tty_set_scroll_region, tty_background_highlight)
1175 (tty_highlight_if_desired, tty_cursor_to)
1176 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
1177 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
1178 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
1179 renames.
1180
1181 2007-08-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1182
1183 * keyboard.c: Qrtl is new.
1184 (parse_tool_bar_item): Handle :rtl keyword.
1185 (syms_of_keyboard): Intern :rtl keyword.
1186
1187 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
1188
1189 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
1190 so no Lisp code is executed.
1191 (file_for_image, find_rtl_image): New functions.
1192 (xg_get_image_for_pixmap): Use file_for_image
1193 (update_frame_tool_bar): If direction is RTL, use RTL image if
1194 defined. Use Gtk stock images if defined.
1195
1196 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1197
1198 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
1199 for nonexistent or zero-width glyph in composition glyph.
1200
1201 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
1202
1203 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
1204
1205 * xdisp.c (Finvisible_p): New function.
1206 (syms_of_xdisp): defsubr it.
1207
1208 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
1209
1210 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
1211 Doc fixes.
1212
1213 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1214
1215 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
1216
1217 2007-08-24 Martin Rudalics <rudalics@gmx.at>
1218
1219 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
1220 whether decoding has modified buffer contents.
1221
1222 2007-08-24 Jason Rumney <jasonr@gnu.org>
1223
1224 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
1225 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
1226 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
1227 (init_svg_functions) [HAVE_NTGUI]: New function.
1228 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
1229 (svg_load_image): Use them.
1230 (svg_load_image) [HAVE_NTGUI]: Implement background.
1231
1232 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1233
1234 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
1235 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
1236 (LIBX): Remove @RSVG_LIBS@.
1237 (LIBES): Add $(RSVG_LIBS).
1238
1239 * image.c (svg_load_image): Blend with specified background if exists.
1240 Use IMAGE_BACKGROUND. Add Mac OS Support.
1241
1242 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
1243 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
1244 Remove macros.
1245 [MAC_OSX] (socket_callback): Do nothing.
1246 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
1247 ReceiveNextEvent.
1248 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
1249 socket_callback.
1250 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
1251
1252 2007-08-22 Glenn Morris <rgm@gnu.org>
1253
1254 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
1255
1256 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
1257
1258 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
1259
1260 * image.c: Add support for SVG images. Some additional comments
1261 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
1262 (svg_image_p): New function to test for SVG image.
1263 (svg_load): New function to load SVG image.
1264 (svg_load_image): New function, helper for svg_load.
1265 (Qsvg): New Lisp_object.
1266 (svg_keyword_index): New enum.
1267 (svg_format): New static `image_keyword' struct.
1268 (svg_type): New static `image_type' struct.
1269 (librsvg/rsvg.h): Include it.
1270
1271 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
1272
1273 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
1274
1275 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
1276
1277 * lread.c (Qold_style_backquotes): New var.
1278 (syms_of_lread): Init and staticpro it.
1279 (load_warn_old_style_backquotes): New fun.
1280 (Fload): Use them to warn about old style backquotes.
1281 (end_of_file_error, Fload): Remove unused vars.
1282
1283 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
1284
1285 * lread.c (Vold_style_backquotes): New var.
1286 (syms_of_lread): Init and export it to Elisp.
1287 (read1): Set it when we find an old-style (back)quote.
1288
1289 2007-08-22 Jason Rumney <jasonr@gnu.org>
1290
1291 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
1292
1293 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
1294
1295 * puresize.h (BASE_PURESIZE): Increase to 1140000.
1296
1297 2007-08-19 Richard Stallman <rms@gnu.org>
1298
1299 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
1300
1301 2007-08-19 Andreas Schwab <schwab@suse.de>
1302
1303 * alloc.c (pure): Round PURESIZE up.
1304
1305 2007-08-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1306
1307 * xterm.c (handle_one_xevent): Remove check that mouse click is in
1308 active frame.
1309
1310 2007-08-16 Richard Stallman <rms@gnu.org>
1311
1312 * eval.c (Fcommandp): Add parens to clarify.
1313
1314 * minibuf.c (Fall_completions): Use enum for type of table.
1315
1316 * emacs.c (USAGE2): Improve text.
1317
1318 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
1319
1320 * term.c (tty_default_color_capabilities): Declare static
1321 variables in file scope, to avoid HPUX compiler problem.
1322
1323 2007-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1324
1325 * gtkutil.c (update_frame_tool_bar): Use -1 as index
1326 to gtk_toolbar_insert.
1327
1328 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
1329
1330 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
1331
1332 * insdel.c (reset_var_on_error): New fun.
1333 (signal_before_change, signal_after_change):
1334 Use it to reset (after|before)-change-functions to nil in case of error.
1335 Bind inhibit-modification-hooks to t.
1336 Don't bind (after|before)-change-functions to nil while they run.
1337
1338 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1339
1340 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
1341 filling pixmap with stippled background.
1342
1343 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1344
1345 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
1346 Don't use invisible frame as parent window for repositioning.
1347
1348 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
1349
1350 * print.c (new_backquote_output): Rename from old_backquote_output.
1351 (print): Inverse its logic (according to its name) so as to match the
1352 behavior of new_backquote_flag in lread.c.
1353
1354 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1355
1356 * gmalloc.c (posix_memalign): New function.
1357
1358 * macterm.c (frame_highlight, frame_unhighlight): Don't call
1359 ActivateControl/DeactivateControl here.
1360 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
1361 frame-notice-user-settings is non-nil.
1362 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
1363 for kEventParamFMFontStyle.
1364 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
1365 mac_pass_command_to_system and mac_pass_control_to_system here.
1366 (XTread_socket): Call ActivateControl/DeactivateControl here.
1367 (XTread_socket) [TARGET_API_MAC_CARBON]:
1368 Check mac_pass_command_to_system and mac_pass_control_to_system here.
1369 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
1370 for window repositioning.
1371
1372 2007-08-08 Glenn Morris <rgm@gnu.org>
1373
1374 * Replace `iff' in doc-strings and comments.
1375
1376 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
1377
1378 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
1379
1380 2007-08-07 Martin Rudalics <rudalics@gmx.at>
1381
1382 * fileio.c (Finsert_file_contents): Run format-decode and
1383 after_insert_file_functions on entire buffer when REPLACE is
1384 non-nil and inhibit modification_hooks and point_motion_hooks.
1385 For consistency, run after_insert_file_functions iff something
1386 got inserted. Move signal_after_change and update_compositions
1387 after code running after_insert_file_functions. Make sure that
1388 undo_list doesn't record intermediate steps of the decoding process.
1389
1390 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1391
1392 * emacs.c (main)
1393 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
1394 Call malloc_enable_thread on interactive startup.
1395
1396 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
1397 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
1398 [USE_PTHREAD]: Conditionalize with it.
1399 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
1400 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
1401 New functions.
1402
1403 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
1404
1405 * xdisp.c (redisplay_window): When restoring original buffer
1406 position, make sure it is still valid.
1407
1408 * image.c (png_load): Ignore png-supplied background color.
1409
1410 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1411
1412 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
1413 Use kCFAbsoluteTimeIntervalSince1970.
1414
1415 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
1416 New variable.
1417 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
1418 event loop should be quit.
1419 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
1420 Quit dialog event loop if quit_dialog_event_loop is set.
1421
1422 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
1423 (Selection): New typedef. Use instead of ScrapRef.
1424 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
1425 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
1426 (mac_clear_selection): Rename from clear_scrap.
1427 (get_flavor_type_from_symbol): New argument SEL and subsume function of
1428 scrap_has_target_type. All uses changed.
1429 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
1430 (mac_selection_has_target_p): New functions.
1431 (mac_put_selection_value): Rename from put_scrap_string.
1432 (mac_get_selection_value): Rename from get_scrap_string.
1433 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
1434 (put_scrap_private_timestamp, scrap_has_target_type)
1435 (get_scrap_private_timestamp): Remove functions.
1436 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
1437 (x_own_selection, x_get_local_selection):
1438 Use mac_valid_selection_value_p.
1439 (x_own_selection): Don't use put_scrap_private_timestamp.
1440 Record OWNERSHIP-INFO into Vselection_alist instead.
1441 (x_get_local_selection): Don't check type if request is local.
1442 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
1443 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
1444
1445 2007-08-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1446
1447 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
1448 add comment explaining why.
1449
1450 2007-08-03 Richard Stallman <rms@gnu.org>
1451
1452 * fileio.c (Fvisited_file_modtime): Use make_time.
1453
1454 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
1455
1456 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
1457 build.
1458
1459 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
1460
1461 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
1462
1463 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
1464
1465 * puresize.h (BASE_PURESIZE): Increase to 1130000.
1466
1467 2007-07-30 Richard Stallman <rms@gnu.org>
1468
1469 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
1470
1471 2007-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1472
1473 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
1474
1475 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
1476
1477 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
1478 remote default-directory.
1479
1480 * buffer.c (mode-line-format): Update doc string.
1481
1482 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1483
1484 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
1485 scroll bar gap.
1486 (x_scroll_bar_create): Set bar->fringe_extended_p.
1487 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
1488 on frame edge. Check fringe background extension. Don't clear
1489 extended fringe background area.
1490
1491 * w32term.h (struct scroll_bar): New member fringe_extended_p.
1492 (w32_fill_area): Enclose multiple statements with do ... while (0).
1493
1494 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
1495 Extend fringe background to scroll bar gap.
1496 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
1497 Set bar->fringe_extended_p.
1498 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
1499 Put leftmost/rightmost scroll bars on frame edge. Check fringe
1500 background extension. Don't clear extended fringe background area.
1501
1502 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
1503 New member fringe_extended_p.
1504
1505 2007-07-25 Glenn Morris <rgm@gnu.org>
1506
1507 * Relicense all FSF files to GPLv3 or later.
1508
1509 * COPYING: Switch to GPLv3.
1510
1511 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
1512
1513 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
1514
1515 * data.c (Finteractive_form): Check for the presence of an
1516 `interactive-form' symbol property more thoroughly.
1517
1518 * data.c (Finteractive_form): Use an `interactive-form' property if
1519 present, analogous to the function-documentation property.
1520
1521 2007-07-24 Jason Rumney <jasonr@gnu.org>
1522
1523 * w32fns.c (x_real_positions): Get real position from OS instead of
1524 calculating it.
1525
1526 2007-07-23 Jason Rumney <jasonr@gnu.org>
1527
1528 * filelock.c (current_lock_owner): Allow for @ sign in username.
1529
1530 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
1531
1532 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
1533 remote default-directory.
1534
1535 * buffer.c (mode-line-format): Describe above case in doc string.
1536
1537 2007-07-20 Eli Zaretskii <eliz@gnu.org>
1538
1539 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
1540 Define if not defined.
1541
1542 2007-07-18 Jason Rumney <jasonr@gnu.org>
1543
1544 * w32proc.c (w32_executable_type): Handle 64 bit executables.
1545
1546 2007-07-18 Richard Stallman <rms@gnu.org>
1547
1548 * data.c (Fsetq_default): Doc fix.
1549
1550 * eval.c (Fsetq): Doc fix.
1551
1552 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
1553
1554 * coding.c (Ffind_operation_coding_system):
1555 * eval.c (For, Fand): Doc fixes.
1556 Reported by Johan Bockg\e,Ae\e(Brd.
1557
1558 2007-07-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1559
1560 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
1561
1562 * xterm.h: Declare x_ewmh_activate_frame.
1563
1564 * xterm.c (x_ewmh_activate_frame): New function.
1565 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
1566
1567 2007-07-17 Martin Rudalics <rudalics@gmx.at>
1568
1569 * window.c (Fdisplay_buffer): If largest or LRU window is the
1570 only window, split it even if it is not eligible for splitting.
1571 This restores the original behavior broken by the 2007-07-15
1572 change.
1573
1574 2007-07-17 Glenn Morris <rgm@gnu.org>
1575
1576 * abbrev.c (abbrev_check_chars): New function.
1577 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
1578 Call abbrev_check_chars to check abbrev characters are word
1579 constituents. Doc fix.
1580
1581 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
1582
1583 * process.c (Fstart_process, Fmake_network_process)
1584 (read_process_output): Fix up last changes.
1585
1586 2007-07-16 Eli Zaretskii <eliz@gnu.org>
1587
1588 * makefile.w32-in (clean): Don't delete *~.
1589
1590 2007-07-16 Andreas Schwab <schwab@suse.de>
1591
1592 * window.c (Fdisplay_buffer): Use NILP.
1593 (Fset_window_scroll_bars): Likewise.
1594
1595 2007-07-15 Martin Rudalics <rudalics@gmx.at>
1596
1597 * window.c (window_min_size_2): New function.
1598 (window_min_size_1, size_window, Fdisplay_buffer)
1599 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
1600 windows without mode- or header-lines when window-min-height is
1601 too small.
1602 (size_window): Reset nodelete_p after testing it, following an
1603 earlier note by Kim F. Storm.
1604 (display_buffer): Do not set split_height_threshold to twice the
1605 value of window_min_height to avoid changing the value of a
1606 customizable variable. Rather explicitly check whether the
1607 height of the window that shall be splitted is at least as large
1608 as split_height_threshold.
1609
1610 2007-07-14 Jason Rumney <jasonr@gnu.org>
1611
1612 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
1613
1614 2007-07-14 Richard Stallman <rms@gnu.org>
1615
1616 * eval.c (maybe_call_debugger): New function.
1617 (find_handler_clause): Use maybe_call_debugger.
1618 Call it when the handler says `debug'.
1619 Eliminate DEBUGGER_VALUE_PTR.
1620 (Fsignal): Eliminate debugger_value.
1621 (Qdebug): New variable.
1622 (syms_of_eval): Initialize it.
1623
1624 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
1625
1626 * eval.c (Fprogn):
1627 * keyboard.c (Ftrack_mouse):
1628 * print.c (Fwith_output_to_temp_buffer):
1629 * window.c (Fsave_window_excursion): Doc fix.
1630
1631 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1632
1633 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
1634
1635 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
1636
1637 * process.h (struct Lisp_Process): Turn slots infd, outfd,
1638 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
1639 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
1640 read_output_delay, and read_output_skip from Lisp_Objects to ints.
1641 Remove unused encoding_carryover.
1642 * process.c: Adjust all functions accordingly.
1643
1644 2007-07-12 Richard Stallman <rms@gnu.org>
1645
1646 * term.c: Include unistd.h only if HAVE_UNISTD_H.
1647
1648 2007-07-11 Jason Rumney <jasonr@gnu.org>
1649
1650 * makefile.w32-in (LIBS): Include OLE32.
1651
1652 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
1653 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
1654
1655 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1656
1657 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
1658 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
1659 from a Lisp_Object into a bare pointer.
1660 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
1661 Adjust the code correspondingly.
1662
1663 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
1664
1665 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
1666 (term_show_mouse_face): Remove unused var `j'.
1667 (handle_one_term_event): Remove unused vars `i' and `j'.
1668 Don't cast return value of ttyname since it's not necessary.
1669
1670 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
1671
1672 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
1673 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
1674
1675 * fns.c (map_char_table): Use an array of int for `indices' rather than
1676 an array of Lisp_Objects (which are only ever integers anyway).
1677 (Fmap_char_table): Update caller.
1678 * lisp.h: Update prototype.
1679 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
1680 * fontset.c (Ffontset_info):
1681 * casetab.c (set_case_table): Update callers.
1682
1683 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
1684
1685 * keymap.c (struct accessible_keymaps_data)
1686 (struct where_is_internal_data): New structures.
1687 (accessible_keymaps_1, where_is_internal_1): Use them to change
1688 interface to adhere to the one used by map_keymap.
1689 (Faccessible_keymaps, where_is_internal): Use map_keymap.
1690 (accessible_keymaps_char_table, where_is_internal_2): Remove.
1691
1692 * keymap.h (map_keymap_function_t): More informative prototype.
1693
1694 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
1695
1696 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
1697 (looking_at_1): Don't change search_regs and last_thing_searched
1698 if `inhibit-changing-match-data' is non-nil.
1699 (string_match_1, search_buffer, set_search_regs): Likewise.
1700 (syms_of_search): Add Lisp level definition for
1701 `inhibit-changing-match-data' and set it to nil.
1702 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
1703 start and end of the match, instead of using values in search_regs.
1704
1705 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
1706
1707 * minibuf.c (Fcompleting_read): New value `confirm-only'
1708 for `require-match'.
1709
1710 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
1711
1712 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
1713 part of the 2007-06-27 change to syms_of_fileio.
1714
1715 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1716
1717 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
1718 Check WINDOWP before using XWINDOW. Consolidate return statements.
1719
1720 2007-06-27 Richard Stallman <rms@gnu.org>
1721
1722 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
1723
1724 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
1725
1726 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
1727
1728 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1729
1730 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
1731 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
1732 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
1733 (_free_internal, memalign): Use them.
1734 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
1735 Initialize to PTHREAD_MUTEX_INITIALIZER.
1736 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
1737 (morecore_nolock): Rename from morecore. All uses changed.
1738 Use only nolock versions of internal allocation functions.
1739 (_malloc_internal_nolock, _realloc_internal_nolock)
1740 (_free_internal_nolock): New functions created from
1741 _malloc_internal, _realloc_internal, and _free_internal.
1742 (_malloc_internal, _realloc_internal, _free_internal): Use them.
1743 Copy hook value to automatic variable before its use.
1744 (memalign): Copy hook value to automatic variable before its use.
1745
1746 2007-06-26 Kenichi Handa <handa@m17n.org>
1747
1748 * coding.c (Ffind_operation_coding_system): Docstring improved.
1749 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
1750
1751 2007-06-25 David Kastrup <dak@gnu.org>
1752
1753 * keymap.c (Fcurrent_active_maps): Add `position' argument.
1754 (Fwhere_is_internal): Adjust call to `current-active-maps' to
1755 cater for additional parameter.
1756
1757 * keymap.h: Adjust number of parameters to `current-active-maps'.
1758
1759 * doc.c (Fsubstitute_command_keys): Adjust call of
1760 `current-active-maps'.
1761
1762 2007-06-25 David Kastrup <dak@gnu.org>
1763
1764 * callint.c (Fcall_interactively): Make the parsing of interactive
1765 specs somewhat more readable.
1766
1767 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1768
1769 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
1770 to scroll bar gap also when bitmap fills fringe. Draw only foreground
1771 if extended background has already been filled.
1772
1773 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1774
1775 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
1776 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
1777
1778 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
1779 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
1780 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
1781 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
1782 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
1783 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
1784 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
1785 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
1786 Run timers during dialog popup.
1787 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
1788
1789 2007-06-21 Jason Rumney <jasonr@gnu.org>
1790
1791 * image.c (convert_mono_to_color_image): Swap fore and background.
1792
1793 2007-06-20 Jason Rumney <jasonr@gnu.org>
1794
1795 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
1796 (w32_free_bdf_font): Unmap memory not handle.
1797
1798 2007-06-20 Sam Steingold <sds@gnu.org>
1799
1800 * gmalloc.c (__morecore): Fix the declaration to comply with the
1801 definition.
1802
1803 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
1804
1805 * w32term.c (w32_delete_display): Remove leftover declaration.
1806 (w32_define_cursor, w32_initialize): Make static.
1807
1808 * w32.c (_wsa_errlist): Fix typo in error message.
1809 (init_environment): Ignore any environment variable from the
1810 registry having a null value.
1811
1812 2007-06-20 Glenn Morris <rgm@gnu.org>
1813
1814 * Makefile.in (LIBGIF): Default to -lgif.
1815
1816 2007-06-17 Jason Rumney <jasonr@gnu.org>
1817
1818 * w32menu.c (add_menu_item): Don't use multibyte string functions on
1819 unicode strings.
1820
1821 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
1822
1823 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
1824 Fix typo in docstring.
1825
1826 2007-06-16 Eli Zaretskii <eliz@gnu.org>
1827
1828 * w32menu.c (add_menu_item): Escape `&' characters in menu items
1829 and their keybindings.
1830
1831 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
1832
1833 * composite.c (update_compositions): Fix last fix.
1834
1835 2007-06-14 Jason Rumney <jasonr@gnu.org>
1836
1837 * w32.c (get_process_times_fn): New function pointer.
1838 (globals_of_w32): Intialize it if present in kernel32.dll.
1839 (w32_get_internal_run_time): New function.
1840
1841 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
1842
1843 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
1844
1845 * composite.c (update_compositions): Check the validness of
1846 compositions.
1847
1848 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1849
1850 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
1851 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
1852
1853 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
1854 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
1855
1856 * macgui.h (USE_MAC_TOOLBAR): New define.
1857
1858 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
1859 Return immediately unless popup is activated.
1860
1861 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
1862 background to scroll bar gap.
1863 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
1864 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
1865 scroll bars on frame edge. Check fringe background extension.
1866 Don't clear extended fringe background area.
1867 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
1868 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
1869 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
1870 [USE_MAC_TOOLBAR]: New macros.
1871 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
1872 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
1873 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
1874 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
1875 [USE_MAC_TOOLBAR]: New functions.
1876 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
1877 manually if previous repositioning has failed.
1878 (mac_handle_keyboard_event): Use precomputed event kind.
1879 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
1880 as tool bar item click. Handle mouse movement over tool bar items.
1881
1882 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
1883 toolbar_win_gravity.
1884 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
1885 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
1886 Add externs.
1887
1888 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
1889 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
1890
1891 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
1892
1893 * image.c (search_image_cache): Remove unused variable.
1894
1895 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
1896
1897 * xfns.c, xmenu.c: Link to xaw3d if available.
1898
1899 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1900
1901 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
1902 frame_foreground and frame_background.
1903
1904 * image.c (lookup_image): Save frame foreground and background colors.
1905 (search_image_cache): Check if saved and current frame colors match.
1906
1907 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
1908
1909 * regex.c (regex_compile): Remove the `regnum' counter.
1910 Use bufp->re_nsub instead. Add support for \(?N:RE\).
1911
1912 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
1913
1914 * term.c: Include intervals.h to declare Fget_text_property.
1915
1916 2007-06-10 Jason Rumney <jasonr@gnu.org>
1917
1918 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
1919
1920 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
1921
1922 * callint.c (Fcall_interactively):
1923 * editfns.c (Fdelete_and_extract_region):
1924 * fileio.c (Fread_file_name):
1925 * fns.c (Fmapconcat):
1926 * keyboard.c (cmd_error_internal):
1927 * keymap.c (Fkey_description):
1928 * lread.c (openp):
1929 * minibuf.c (read_minibuf):
1930 * search.c (wordify):
1931 * sunfns.c (sel_read):
1932 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
1933 * xfns.c (x_default_scroll_bar_color_parameter):
1934 * xmenu.c (menu_help_callback):
1935 * xselect.c (Fx_get_atom_name):
1936 * xterm.c (x_term_init): Use empty_unibyte_string.
1937
1938 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
1939
1940 * alloc.c (init_strings): Initialize canonical empty strings.
1941 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
1942 canonical empty string when the requested size is 0.
1943
1944 * emacs.c (empty_unibyte_string): Rename from empty_string.
1945 (empty_multibyte_string): New canonical empty string.
1946 (syms_of_emacs): Don't initialize empty_string.
1947
1948 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
1949 string, if appropriate.
1950 (empty_unibyte_string, empty_multibyte_string): New externs.
1951 (empty_string): Remove extern.
1952
1953 * lread.c (syms_of_lread): Use empty_unibyte_string.
1954
1955 2007-06-07 Jason Rumney <jasonr@gnu.org>
1956
1957 * s/ms-w32.h: Don't define HAVE_TZNAME.
1958
1959 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
1960
1961 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1962
1963 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
1964
1965 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
1966 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
1967
1968 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
1969 Don't call next handler.
1970 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
1971 Remove argument. Install handler to application.
1972 (set_frame_menubar): Don't change deep_p.
1973 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
1974 FRAME_OUTER_TO_INNER_DIFF_Y.
1975 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
1976 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
1977 [HAVE_DIALOGS]: New macros.
1978 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
1979 Use them.
1980 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
1981
1982 * macselect.c [MAC_OSX] (install_service_handler): Rename from
1983 init_service_handler. All callers changed. Return OSStatus value.
1984
1985 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
1986 All callers changed so as not to call SetPortWindowPort.
1987 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
1988 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
1989 mac_draw_string_common.
1990 (mac_draw_image_string_qd): Likewise.
1991 (mac_draw_string_common): Use them. Add INLINE.
1992 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
1993 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
1994 GetGlobalMouse.
1995 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
1996 and FRAME_OUTER_TO_INNER_DIFF_Y.
1997 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
1998 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
1999 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
2000 repositioning window to mac_handle_window_event.
2001 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
2002 saving window location to mac_handle_window_event
2003 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
2004 (install_menu_target_item_handler): Remove argument in extern.
2005 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
2006 Also accept command events.
2007 (do_keystroke): New function created from XTread_socket.
2008 (init_command_handler): Remove functions.
2009 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
2010 and save window location by kEventWindowShowing and kEventWindowHiding
2011 handlers here. Don't call next handler for window state change and
2012 focus events.
2013 (mac_handle_application_event, mac_handle_keyboard_event)
2014 [TARGET_API_MAC_CARBON]: New functions.
2015 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
2016 kEventWindowShowing and kEventWindowHiding events. Move installation
2017 of mouse, font, text input and menu target item handlers to
2018 install_application_handler.
2019 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
2020 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
2021 New function.
2022 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
2023 Register it.
2024 (XTread_socket) [TARGET_API_MAC_CARBON]:
2025 Consolidate SendEventToEventTarget calls.
2026 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
2027 Move application activation handler to mac_handle_application_event.
2028 Move keyboard handler to mac_handle_keyboard_event.
2029 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
2030 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
2031 init_command_handler. Call install_application_handler.
2032
2033 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
2034 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
2035
2036 2007-06-07 Glenn Morris <rgm@gnu.org>
2037
2038 * emacs.c (main): Use `emacs-copyright' in --version output.
2039
2040 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
2041
2042 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
2043
2044 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2045
2046 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
2047
2048 * macgui.h: Replace WindowPtr with WindowRef.
2049
2050 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
2051 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
2052 Replace ControlHandle with ControlRef.
2053 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
2054
2055 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
2056 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
2057 Replace ControlHandle with ControlRef.
2058 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
2059 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
2060
2061 * macterm.h (struct scroll_bar): Rename member control_handle_low
2062 and control_handle_high to control_ref_low and control_ref_high.
2063 All uses changed.
2064 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
2065 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
2066 respectively. All uses changed.
2067 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
2068 (install_window_handler, remove_window_handler): Replace WindowPtr
2069 with WindowRef in externs.
2070
2071 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
2072
2073 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
2074
2075 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
2076
2077 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
2078
2079 * frame.c (Fmouse_position, Fmouse_pixel_position):
2080 Condition on HAVE_GPM too.
2081
2082 * term.c (term_mouse_highlight): Remove unused variables.
2083 (Fterm_open_connection): Set gpm_zerobased to 1.
2084 (term_mouse_movement, term_mouse_click, handle_one_term_event):
2085 Use zero based co-ordinates.
2086 (handle_one_term_event): Report a drag as mouse movement too.
2087
2088 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
2089
2090 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
2091
2092 * image.c (search_image_cache): New function. Require background
2093 color match if background color is unspecified in the image spec.
2094 (uncache_image, lookup_image): Use it.
2095
2096 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
2097
2098 * window.c (Fshrink_window): Reflow docstring.
2099
2100 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
2101
2102 * Version 22.1 released.
2103
2104 2007-06-01 Richard Stallman <rms@gnu.org>
2105
2106 * xfns.c (x_encode_text): Add GCPRO.
2107
2108 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2109
2110 * xfns.c (x_set_name_internal): Save encoded name before
2111 x_encode_text in case string data is relocated.
2112
2113 2007-05-31 Richard Stallman <rms@gnu.org>
2114
2115 * buffer.c (syms_of_buffer): Doc fix.
2116
2117 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
2118
2119 * sysdep.c (init_sys_modes): Add rather than replace with
2120 O_NONBLOCK.
2121
2122 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
2123 term_mouse_moveto.
2124
2125 * termhooks.h (term_mouse_moveto): New extern.
2126
2127 * term.c (mouse_face_window): Rename...
2128 (Qmouse_face_window): ...to this.
2129 (term_show_mouse_face, term_clear_mouse_face)
2130 (term_mouse_highlight): Use Qmouse_face_window.
2131 (term_mouse_moveto): New function.
2132 (term_mouse_position): Make it work.
2133 (syms_of_term): Uncomment assignment to mouse_position_hook.
2134 Staticpro Qmouse_face_window.
2135
2136 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2137
2138 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
2139 around current_column call.
2140
2141 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
2142
2143 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
2144 * xdisp.c (next_element_from_buffer):
2145 * window.c (delete_window):
2146 * term.c (term_mouse_highlight):
2147 * msdos.c (getdefdir):
2148 * macterm.c (mac_create_bitmap_from_bitmap_data)
2149 (init_font_name_table):
2150 * fns.c (Fsxhash):
2151 * data.c (Fmake_local_variable):
2152 * ccl.c (ccl_driver): Likewise.
2153
2154 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2155
2156 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
2157 Call mac_wakeup_from_rne on window size change.
2158
2159 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
2160
2161 * image.c (uncache_image): Fix typo.
2162
2163 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
2164
2165 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
2166
2167 2007-05-22 Richard Stallman <rms@gnu.org>
2168
2169 * xterm.c (x_connection_closed): Remove NO_RETURN.
2170
2171 2007-05-22 Martin Rudalics <rudalics@gmx.at>
2172
2173 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
2174
2175 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
2176
2177 * image.c (uncache_image): New function.
2178 (Fimage_refresh): New function.
2179
2180 2007-05-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2181
2182 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
2183
2184 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
2185
2186 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
2187 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
2188
2189 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
2190
2191 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
2192 conditional on [HAVE_GPM_H].
2193
2194 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2195
2196 * syntax.c (skip_chars): Update syntax-table only after we checked that
2197 the new location is valid.
2198
2199 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2200
2201 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
2202 mac_get_window_bounds.
2203
2204 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
2205
2206 * Makefile.in (LIBGPM): Allow it to be set from configure.
2207 If set then link Emacs with it.
2208
2209 * config.in: Regenerate.
2210
2211 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
2212 New externs.
2213
2214 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
2215 Include gpm.h.
2216 (handle_one_term_event, term_gpm): New externs.
2217
2218 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
2219 and allow it to be interrupted by SIGIO.
2220
2221 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
2222 (wait_reading_process_output): Wait on gpm_fd too.
2223 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
2224 (add_gpm_wait_descriptor_called_flag): New variable.
2225 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
2226
2227 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
2228 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
2229 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
2230 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
2231 (make_lispy_event): Add case GPM_CLICK_EVENT.
2232 (read_avail_input): Handle mouse input.
2233
2234 * term.c (write_glyphs_with_face): New function.
2235 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
2236 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
2237 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
2238 (mouse_face_face_id, term_gpm, pos_x, pos_y)
2239 (last_mouse_x, last_mouse_y): New variables.
2240 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
2241 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
2242 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
2243 (Fterm_close_connection): New functions.
2244 (term_init): Initialise mouse_face_window.
2245
2246 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
2247
2248 * xdisp.c (redisplay_window): If first window line is a
2249 continuation line, recompute the new window start instead of
2250 recentering.
2251
2252 2007-05-18 Glenn Morris <rgm@gnu.org>
2253
2254 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
2255 Suggested by Alfred M. Szmidt <ams@gnu.org>.
2256
2257 2007-05-17 Glenn Morris <rgm@gnu.org>
2258
2259 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
2260
2261 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2262
2263 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
2264 dead key repeat and up events.
2265
2266 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
2267
2268 * image.c (pbm_load): Check image size for monochrome pbm.
2269
2270 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
2271
2272 * xterm.c (XTread_socket): Revert last change.
2273
2274 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
2275
2276 * image.c (pbm_load): Correctly check image size for greyscale pbm.
2277
2278 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
2279
2280 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
2281
2282 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
2283 mixup (YAILOM).
2284
2285 2007-05-07 Andreas Schwab <schwab@suse.de>
2286
2287 * keymap.c (Flookup_key): Fix typo in last change.
2288
2289 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
2290
2291 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
2292 mapping for unibyte strings.
2293
2294 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2295
2296 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
2297 (Fx_popup_dialog) [MAC_OSX]: Likewise.
2298
2299 2007-04-29 Richard Stallman <rms@gnu.org>
2300
2301 * insdel.c (replace_range): For undo, record insertion first.
2302
2303 2007-04-29 Andreas Schwab <schwab@suse.de>
2304
2305 * lisp.h (VECSIZE): Use OFFSETOF.
2306
2307 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2308
2309 * xdisp.c (try_window_reusing_current_matrix): Fix number of
2310 disabled lines.
2311
2312 2007-04-28 Richard Stallman <rms@gnu.org>
2313
2314 * lread.c (read_escape): In a string, \s is always space.
2315
2316 2007-04-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2317
2318 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
2319
2320 * gtkutil.c (xg_update_menubar, create_menus): Create empty
2321 submenu for menu bar items.
2322
2323 See ChangeLog.10 for earlier changes.
2324
2325 ;; Local Variables:
2326 ;; coding: iso-2022-7bit
2327 ;; add-log-time-zone-rule: t
2328 ;; End:
2329
2330 Copyright (C) 2007 Free Software Foundation, Inc.
2331
2332 This file is part of GNU Emacs.
2333
2334 GNU Emacs is free software; you can redistribute it and/or modify
2335 it under the terms of the GNU General Public License as published by
2336 the Free Software Foundation; either version 3, or (at your option)
2337 any later version.
2338
2339 GNU Emacs is distributed in the hope that it will be useful,
2340 but WITHOUT ANY WARRANTY; without even the implied warranty of
2341 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2342 GNU General Public License for more details.
2343
2344 You should have received a copy of the GNU General Public License
2345 along with GNU Emacs; see the file COPYING. If not, write to the
2346 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
2347 Boston, MA 02110-1301, USA.
2348
2349 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40