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