Changes for automatic remapping of X colors on terminal frames:
[bpt/emacs.git] / src / ChangeLog
index a34fc85..01a5e27 100644 (file)
@@ -1,3 +1,346 @@
+1999-12-06  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       Changes for automatic remapping of X colors on terminal frames:
+
+       * xfaces.c (XColor) [!HAVE_X_WINDOWS]: Provide a typedef for non-X
+       frames.
+       (Vface_tty_color_alist): Remove.
+       (tty_defined_color): New function.
+       (defined_color): Rewrite to support any type of frame.
+       (tty_color_name): New function.
+       (face_color_supported_p, Fface_color_gray_p,
+       Fface_color_supported_p): Support non-X frames.
+       (load_color): Enclose the color name in quotes, in the log
+       messages.  Remove DOS-specific version of load_color.
+       (realize_tty_face): Take the supported colors from
+       tty-color-alist.  Support translation of X colors to the closest
+       tty color, for both MSDOS and tty frames.
+       [MSDOS]: Don't invert face colors if they were taken from the
+       frame colors.
+       (Fface_register_tty_color, Fface_clear_tty_colors): Remove.
+
+       * frame.h (struct x_output) [!MSDOS, !WINDOWSNT, !HAVE_X_WINDOWS]:
+       Define a mostly empty surrogate.
+       (tty_display): Declare.
+
+       * frame.c (make_terminal_frame) [!macintosh]: Don't use
+       tty_display.
+       (Fframe_parameters): Don't invert colors of non-FRAME_WINDOW_P
+       frames when the frame's param_alist includes 'reverse.
+       (tty_display): Define.
+       (make_terminal_frame) [!MSDOS]: Assign &tty_display to the
+       output_data.x member.
+       (Fframe_parameters): Return foreground and background color names
+       on tty frames as well, in addition to MSDOS frames.
+
+       * msdos.h (DisplayWidth, DisplayHeight): Changes for Lisp_Object
+       selected_frame.
+       (struct x_output): Remove unused members; document who uses each
+       member.
+       (FRAME_PARAM_FACES, FRAME_N_PARAM_FACES, FRAME_DEFAULT_PARAM_FACE,
+       FRAME_MODE_LINE_PARAM_FACE, FRAME_COMPUTED_FACES,
+       FRAME_N_COMPUTED_FACES, FRAME_SIZE_COMPUTED_FACES,
+       FRAME_DEFAULT_FACE, FRAME_MODE_LINE_FACE, unload_color): Remove
+       unused macro definintions.
+
+       * msdos.c (IT_set_frame_parameters): Don't call
+       recompute_basic_faces, the next redisplay will, anyway.
+       (x_current_display): Remove unused variable.
+       Many functions: changes for Lisp_object selected_frame.
+       (IT_set_face): If the tty_reverse_p flag is set for the face,
+       reverse the foreground and background colors.
+       (Fmsdos_remember_default_colors): New function.
+       (syms_of_msdos): Defsubr it.
+       (IT_set_frame_parameters): Use initial_screen_colors[] when
+       creating a new frame.  If the frame parameters include 'reverse,
+       swap the foreground and background colors.
+       (internal_terminal_init): Initialize initial_screen_colors to -1.
+       (syms_of_msdos): Add DEFVAR_BOOL for x-stretch-cursor, to shut up
+       cus-start.el.
+
+       * Makefile.in (lisp, shortlisp): Add lisp/term/tty-colors.elc.
+
+       * xfns.c (x_defined_color): Rename from defined_color.  All
+       callers changed.
+       (Fxw_color_defined_p): Renamed from Fx_color_defined_p;
+       all callers changed.
+       (Fxw_color_values): Renamed from Fx_color_values; all callers
+       changed.
+       (Fxw_display_color_p): Renamed from Fx_display_color_p; all
+       callers changed.
+       (x_window_to_frame, x_any_window_to_frame,
+       x_non_menubar_window_to_frame, x_menubar_window_to_frame,
+       x_top_window_to_frame): Use !FRAME_X_P instead of
+       f->output_data.nothing.
+       * xterm.h (x_defined_color): Rename from defined_color.
+
+       * w32fns.c (x_window_to_frame): Use FRAME_W32_P instead of
+       f->output_data.nothing.
+       (Fxw_color_defined_p): Renamed from Fx_color_defined_p;
+       all callers changed.
+       (Fxw_color_values): Renamed from Fx_color_values; all callers
+       changed.
+       (Fxw_display_color_p): Renamed from Fx_display_color_p; all
+       callers changed.
+
+       * dispextern.h (tty_color_name): Add prototype.
+
+       * xmenu.c (menubar_id_to_frame): Use FRAME_WINDOW_P instead of
+       f->output_data.nothing.
+       * w32menu.c (menubar_id_to_frame): Likewise.
+       * w32term.h (w32_output): Declare.
+
+       * dosfns.c (Qmsdos_color_translate): Remove.
+       (msdos_stdcolor_name): Now returns a Lisp_Object.
+       * dosfns.h (Qmsdos_color_translate): Remove.
+
+       * s/msdos.h (INTERNAL_TERMINAL): Add entries for color support.
+
+1999-12-06  Kenichi Handa  <handa@etl.go.jp>
+
+       * fileio.c (decide_coding_unwind): Renamed from
+       set_auto_coding_unwind.
+       (Finsert_file_contents): Make single unwind protect to call both
+       Vset_auto_coding_function and Ffind_operation_coding_system.
+
+       * insdel.c (adjust_markers_for_delete): Make it non-static.
+
+1999-12-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * regex.c (regex_compile): Recognize *?, +? and ?? as non-greedy
+       operators and handle them properly.
+       * regex.h (RE_ALL_GREEDY): New option.
+       (RE_UNMATCHED_RIGHT_PAREN_ORD): Moved to the end where alphabetic
+       sorting would put it.
+       (RE_SYNTAX_AWK, RE_SYNTAX_GREP, RE_SYNTAX_EGREP)
+       (_RE_SYNTAX_POSIX_COMMON): Use the new option to keep old behavior.
+
+1999-12-04  Dave Love  <d.love@dl.ac.uk>
+
+       * m/arm.h: New file.
+
+1999-12-03  Dave Love  <fx@gnu.org>
+
+       * editfns.c (Fmessage_or_box): Use use_dialog_box.
+
+1999-12-02  Gerd Moellmann  <gerd@gnu.org>
+
+       * s/usg5-4.h (LIBS_SYSTEM): Add -lgen because that's needed
+       for building with Motif.
+
+       * m/iris4d.h (UNEXEC) [USG5_4]: Use unexsgi.o instead of
+       unexelf.o.
+       
+       * m/iris5d.h (UNEXEC): Use unexsgi.o instead of unexelf.o.
+
+1999-12-01  Dave Love  <fx@gnu.org>
+
+       * emacs.c (main): Set LANG=C iff AX3_2 defined.
+
+1999-11-28  Gerd Moellmann  <gerd@gnu.org>
+
+       * systime.h (EMACS_TIME_CMP, EMACS_TIME_EQ, EMACS_TIME_NE)
+       (EMACS_TIME_GT, EMACS_TIME_GE, EMACS_TIME_LT,EMACS_TIME_LE): New
+       macros.
+
+       * config.in (HAVE_SETITIMER, HAVE_UALARM): New.
+
+1999-11-28  eliz  <eliz@dlpx1>
+
+       * emacs.c (synchronize_locale): Avoid compiler warnings about
+       pointer type mismatch.
+
+1999-11-28  Gerd Moellmann  <gerd@gnu.org>
+
+       * window.c (Fwindow_end): Don't call temp_set_pt_both with
+       out of range position.
+
+       * xterm.c (XTread_socket) <ClientMessage, Xatom_Scrollbar>: 
+       Switch off busy-cursor by setting inhibit_busy_cursor to 2.
+
+1999-11-28  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * charset.c (Fmake_char_internal): Print the charset ID when
+       signalling an error.
+
+       * emacs.c (synchronize_locale): Avoid compiler warnings about
+       pointer type mismatch.
+
+1999-11-26  Richard M. Stallman  <rms@caffeine.ai.mit.edu>
+
+       * editfns.c (Fdelete_field): Make it noninteractive.  Return nil.
+
+1999-11-26  Gerd Moellmann  <gerd@gnu.org>
+
+       * puresize.h (BASE_PURESIZE): Increase to 550000.
+
+       * textprop.c (set_text_properties): New function.  Like
+       Fset_text_properties, but with additional parameter
+       SIGNAL_AFTER_CHANGE_P.  If that is nil, don't signal after
+       changes.
+       (Fset_text_properties): Use it.
+
+       * insdel.c (insert_1_both): Call set_text_properties with last
+       parameter nil so that no after changes will be signaled.
+
+       * lisp.h: Add prototype for set_text_properties.
+
+       * xfaces.c (set_lface_from_font_name): Fix previous change.
+       (recompute_basic_faces): Change assert to abort.
+
+1999-11-25  Dave Love  <fx@gnu.org>
+
+       * fns.c (Fnthcdr, Fnreverse): Inline cdr.
+       (Fmember, Fdelq, Fdelete): Inline car.
+       (Fy_or_n_p): Doc fix.
+
+1999-11-25  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfaces.c (set_lface_from_font_name): New parameter may_fail_p.
+       Callers changed.  If specified font name is bogus, and may_fail_p
+       is not set, try to use a reasonable default.
+
+       * dispnew.c (direct_output_for_insert): Set glyph row's
+       displays_text_p flag.  Correct window's window_end_vpos if
+       necessary.
+
+1999-11-25  Paul Eggert  <eggert@twinsun.com>
+
+       * emacs.c (fixup_locale): Don't bother to record initial locale.
+       (synchronize_locale): If the desired locale is nil,
+       treat it as if it were the empty string,
+       so that we set the locale from the environment.
+
+1999-11-25  Kenichi Handa  <handa@etl.go.jp>
+
+       * fileio.c (Finsert_file_contents): Set buffer-file-coding-system
+       of the current buffer via Fset.
+
+1999-11-24  Dave Love  <fx@gnu.org>
+
+       * xfns.c: Don't duplicate Qdisplay definition done elsewhere.
+
+       * xfaces.c: Don't duplicate Qmode_line definition done elsewhere.
+
+       * xfns.c: Don't duplicate Qdisplay definition done elsewhere.
+
+1999-11-24  Gerd Moellmann  <gerd@gnu.org>
+
+       * lisp.h (enum pvec_type): Put PVEC_FLAG in #if 0.
+
+       * emacs.c (PVEC_FLAG): New variable.
+
+1999-11-23  Gerd Moellmann  <gerd@gnu.org>
+
+       * unexaix.c (unexec): Use unsigned instead of uintptr_t because
+       that fails on IBM PowerPC, AIX 4.2.
+       
+1999-11-22  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * buffer.c (syms_of_buffer): Add %z, %Z, %m and %& to the doc
+       string of mode-line-format.  Remove the obsolete %t.
+
+1999-11-22  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (direct_output_for_insert): Increment glyph positions
+       for glyphs from buffer text only.
+
+       * emacs.c (gdb_valbits, gdb_gctypebits, gdb_emacs_intbits)
+       (gdb_data_seg_bits): New variables.
+       
+       * lisp.h (enum gdb_lisp_params): Put in #if 0, since it doesn't
+       work on systems not allowing enumerators > INT_MAX, and it
+       won't work if EMACS_INT is long long.
+
+1999-11-22  Paul Eggert  <eggert@twinsun.com>
+
+       Port to SunOS 4.1.x again.  Help out with Alpha port.
+       Rename messages-locale to system-messages-locale,
+       and likewise for time-locale.
+       
+       * callproc.c (strerror): Remove decl.
+       * fileio.c (strerror): Likewise.
+       * process.c (strerror): Likewise.
+       * emacs.c (strerror): Likewise.
+       (Vsystem_messages_locale): Renamed from Vmessages_locale.
+       All uses changed.
+       (Vprevious_system_messages_locale): Likewise, from
+       Vprevious_messages_locale.
+       (Vsystem_time_locale): Likewise, from Vtime_locale.
+       (Vprevious_system_time_locale): Likewise, from Vprevious_time_locale.
+       (ABORT_RETURN_TYPE): New macro.
+       (abort): Return type is now ABORT_RETURN_TYPE.
+       (main): Always invoke init_signals, even if POSIX_SIGNALS is not
+       defined.
+       (syms_of_emacs): messages-locale -> system-messages-locale,
+       previous-messages-locale -> previous-system-messages-locale,
+       time-locale -> system-time-locale,
+       previous-time-locale -> previous-system-time-locale.
+
+       * gmalloc.c (PP, __ptr_t): Assume ANSI C if STDC_HEADERS is defined.
+       (const): Do not define; that's config.h's job.
+       (<limits.h>): Include if HAVE_LIMITS_H is defined.
+       (CHAR_BIT): Move test for definedness outside of limits.h condition.
+       (<stddef.h>): Include if STDC_HEADERS is defined.
+       (FREE_RETURN_TYPE): New macro.
+       (free): Return type is now FREE_RETURN_TYPE.
+
+       * lisp.h (synchronize_system_time_locale): Renamed from
+       synchronize_time_locale.  All uses changed.
+       (synchronize_system_messages_locale): Likewise, from
+       synchronize_messages_locale.
+
+       * m/alpha.h (malloc, realloc, calloc): Remove decls;
+       stdlib.h now does this.
+
+       * process.c (sys_siglist): Remove.
+
+       * s/sunos4-0.h (ABORT_RETURN_TYPE, FREE_RETURN_TYPE):
+       New macros.
+
+       * syntax.c (scan_sexps_forward): Use abort, not assert.
+
+       * sysdep.c (my_sys_siglist): New var.
+       (sys_siglist): New macro.  Remove old initialized vars of same name.
+       (init_signals): Initialize sys_siglist.
+
+       * xfns.c (abort): Remove decl; stdlib.h now does this.
+
+1999-11-18  Dave Love  <fx@gnu.org>
+
+       * filelock.c: Add forward declaration for get_boot_time_1.
+
+       * dispnew.c (Finternal_show_cursor_p): Fix doc string.
+
+1999-11-18  Gerd Moellmann  <gerd@gnu.org>
+
+       * buffer.h (struct buffer_text): Add comment about moving
+       buffer text if REL_ALLOC is defined.
+
+1999-11-18  Kenichi Handa  <handa@etl.go.jp>
+
+       * lisp.h (KEY_DESCRIPTION_SIZE): New macro.
+
+       * keyboard.c (echo_char): Use KEY_DESCRIPTION_SIZE to check free
+       memory for push_key_description.
+
+       * keymap.c (Fsingle_key_description): Use KEY_DESCRIPTION_SIZE to
+       allocate memory for push_key_description.
+       (describe_buffer_bindings): Likewise.
+
+1999-11-17  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (Fx_show_busy_cursor): Doc-fix.
+       (Fx_hide_busy_cursor): Ditto.
+
+1999-11-17  Marco Walther <walther@siemens-pyramid.com>
+
+       * unexsni.c (unexec): Handle .rel.dyn section.
+
+1999-11-16  Dave Love  <fx@gnu.org>
+
+       * doc.c (Fdocumentation): Remove gcpro here too.
+
 1999-11-16  Gerd Moellmann  <gerd@gnu.org>
 
        * keyboard.c (command_loop_1): Remove no_redisplay.
        (shrink_mini_window): Restore old window sizes only if old
        size information is valid in all windows in a window tree.
        
->>>>>>> 1.44
 1999-10-15  Gerd Moellmann  <gerd@gnu.org>
 
        * xmenu.c (set_frame_menubar): Don't call