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