+2003-01-29 Jason Rumney <jasonr@gnu.org>
+
+ * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
+ an alternative name for jpeg.dll.
+
+2003-01-29 Kenichi Handa <handa@m17n.org>
+
+ * xdisp.c (set_cursor_from_row): Pay attention to string display
+ properties.
+
+2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
+
+ * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
+ <escape>.
+ (keycode_to_xkeysym_table): Reformat and add more comments.
+ (XTread_socket): Drop special case for backspace.
+
+2003-01-28 Andrew Choi <akochoi@shaw.ca>
+
+ * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
+ values in old-style RGB specs.
+
+2003-01-27 Juanma Barranquero <lektu@terra.es>
+
+ * w32fns.c (init_external_image_libraries): Try alternate names for the
+ jpeg dll.
+
+2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (create_dialog, xg_separator_p)
+ (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
+ before calling strcmp or strlen.
+
+2003-01-26 Jan D. <jan.h.d@swipnet.se>
+
+ * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
+ and handle image load failure.
+
+2003-01-26 Jason Rumney <jasonr@gnu.org>
+
+ * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
+ New functions.
+ (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
+ Disable color table lookups. Call jpeg library functions
+ through pointers determined at runtime.
+ (init_external_image_libraries): Try to load jpeg.dll.
+
+2003-01-25 Richard M. Stallman <rms@gnu.org>
+
+ * lisp.h: Declare format2 instead of format1.
+
+ * fileio.c (barf_or_query_if_file_exists):
+ Call format2 instead of format1.
+
+ * editfns.c (format2): New function, replaces format1
+ but takes exactly two Lisp Objects as format args.
+
+ * buffer.c (Fkill_buffer): Call format2 instead of format1.
+
+2003-01-25 Jan D. <jan.h.d@swipnet.se>
+
+ * xterm.h: Change to return value of x_dispatch_event to int.
+
+ * xterm.c (x_filter_event): New function.
+ (event_handler_gdk, XTread_socket): Call x_filter_event.
+ (x_dispatch_event): Change to return value of finish.
+ (event_handler_gdk): Use return value from x_dispatch_event.
+
+ * xfns.c (x_window): Call create_frame_xic for GTK version to
+ initialize input methods.
+
+ * gtkutil.h: Add (void) prototypes.
+
+ * gtkutil.c (create_menus): Remove code that puts the help menu to
+ the right.
+
+2003-01-25 Jason Rumney <jasonr@gnu.org>
+
+ * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
+ [HAVE_PNG]: Sync with xfns.c version.
+ (png_load): Adjust colors for Windows. Use Windows
+ bitmaps. Disable color table lookups.
+ (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
+ (init_png_functions): New function.
+ (png_read_from_memory, png_load): Call png library functions
+ through pointers determined at runtime.
+ (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
+ (init_external_image_libraries): New function.
+ (init_xfns): Call it.
+
+2003-01-24 Andreas Schwab <schwab@suse.de>
+
+ * minibuf.c (Fminibuffer_message): Verify type of parameter.
+
+2003-01-24 Jan D. <jan.h.d@swipnet.se>
+
+ * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
+ of static initializer.
+
+2003-01-24 Dave Love <fx@gnu.org>
+
+ * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
+ architectures.
+
+ * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
+ Use __alignof__.
+
+2003-01-24 Kenichi Handa <handa@m17n.org>
+
+ * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
+ It it is nonzero, don't pretend that an invisible area doesn't
+ exist.
+ (command_loop_1): Call adjust_point_for_property with proper
+ second arg.
+
+2003-01-22 Jason Rumney <jasonr@gnu.org>
+
+ Sync changes with xterm.c and xfns.c.
+
+ * w32term.c (x_draw_glyph_string_foreground)
+ (x_draw_composite_glyph_string_foreground): Implement overstriking.
+
+ * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
+ phys_cursor's hpos is overwritten. This is still not completely
+ correct, as it doesn't really make sense to use hpos at all to
+ get the cursor glyph (as that is relative to the width of the
+ characters on the line, which may have changed during the update).
+
+ * w32term.c (notice_overwritten_cursor): Handle the special case
+ of the cursor being in the first blank non-text line at the
+ end of a window.
+
+ * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
+ (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
+ Compute from the x position returned by x_draw_glyphs.
+
+ (x_display_and_set_cursor): Don't set phys_cursor_width here,
+ except for NO_CURSOR and system caret, to make phys_cursor_width
+ contain what its name suggests.
+ (notice_overwritten_cursor): Consider the cursor image erased if
+ the output area intersects the cursor image in y-direction.
+
+ * w32term.c (note_mode_line_or_margin_highlight): Renamed from
+ note_mode_line_highlight and extended.
+
+ * w32term.c (last_window): New variable.
+ (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
+ (note_mouse_movement): Remove reimplemented code in #if 0.
+
+ * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
+ not update_mode_lines, and always set it to 1.
+
+2003-01-21 Jason Rumney <jasonr@gnu.org>
+
+ * w32fns.c (IDC_HAND): Define it if system headers don't.
+
+2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
+
+ * w32term.h (struct w32_output): New member hand_cursor.
+ (WM_EMACS_SETCURSOR): New message definition.
+
+ * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
+ function w32_define_cursor.
+ (note_mouse_highlight): Initialize, setup cursor accoding to mouse
+ position, change member name output_data.x to output_data.w32 and
+ add function w32_define_cursor.
+ (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
+ and change member name output_data.x to output_data.w32.
+ (w32_initialize_display_info): Setup
+ dpyinfo->vertical_scroll_bar_cursor.
+
+ * w32fns.c (Vx_hand_shape): New variable.
+ (w32_wnd_proc): Add message entries for WM_SETCURSOR and
+ WM_EMACS_SETCURSOR.
+ (x-create-frame): Setup Cursor types.
+
+2003-01-21 David Ponce <david@dponce.com>
+
+ * w32term.c (w32_encode_char): For DIM=1 charset, set
+ ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
+ x_encode_char change by Kenichi Handa <handa@m17n.org> on
+ 2002-09-30.)
+ (w32_draw_relief_rect): Declare all args.
+ (w32_define_cursor): New.
+
+ * w32fns.c (w32_load_cursor): New function.
+ (w32_init_class): Use it.
+ (x_put_x_image): Declare all args.
+
+2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
+
+ * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
+
+2003-01-21 Jan D. <jan.h.d@swipnet.se>
+
+ * gtkutil.c: Must include stdio.h before termhooks.h
+
+2003-01-21 Dave Love <fx@gnu.org>
+
+ * alloc.c (Fgc_status): Print zombie list.
+ (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
+ Fix assignment of zombies.
+ (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
+ Don't take car of non-cons.
+
+ * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
+
+ * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
+
+2003-01-20 David Ponce <david@dponce.com>
+
+ * w32menu.c (digest_single_submenu): Declare all args.
+
+ Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
+ changes in xmenu.c:
+
+ (parse_single_submenu): Use individual keymap's prompt
+ string as pane name, if there is one.
+ (set_frame_menubar): Save menu_items_n_panes from each call to
+ parse_single_submenu and use it when calling digest_single_submenu.
+
+2003-01-20 Steven Tamm <steventamm@mac.com>
+
+ * macterm.c (XTread_socket): Checks for valid, visible window
+ before sending a scroll-wheel event.
+
+2003-01-20 Richard M. Stallman <rms@gnu.org>
+
+ * xdisp.c (redisplay_window): If mini window's buffer is not
+ a minibuffer, then redisplay it like other windows.
+
+2003-01-20 Jan D. <jan.h.d@swipnet.se>
+
+ * gtkutil.c (xg_create_frame_widgets): Check if there is an
+ external tool bar before setting tool bar height.
+
+2003-01-19 Jan D. <jan.h.d@swipnet.se>
+
+ * xterm.c (handle_one_xevent): Surround popup_activated
+ with #ifdef:s for non-toolkit version.
+
+ * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
+ (gtkutil.o): New file.
+ (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
+ (LIBW): Set to @GTK_LIBS@ if USE_GTK.
+
+ * gtkutil.c: New file for GTK version.
+
+ * gtkutil.h: New file for GTK version.
+
+ * xterm.h: Add xt_or_gtk_widget.
+ Include gtk files for USE_GTK.
+ (struct x_output): Add toolbar_height.
+ (struct x_output): Add GTK widgets and Gdk size_hints.
+ (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
+ (FRAME_OUTER_WINDOW): New macros for USE_GTK.
+ (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
+
+ * xterm.c: Include gtkutil.h for USE_GTK.
+ Declare extern void free_frame_menubar for USE_GTK.
+ (note_mouse_highlight): Check popup_activated for USE_GTK.
+ (xt_action_hook): Don't compile if USE_GTK.
+ (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
+ (xg_scroll_callback): New function.
+ (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
+ (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
+ for USE_GTK.
+ (x_scroll_bar_create): Call xg_update_scrollbar_pos and
+ xg_show_scroll_bar for USE_GTK.
+ (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
+ (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
+ (event_handler_gdk): New function for USE_GTK.
+ (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
+ (handle_one_xevent): Make sure widget is mapped before
+ calling x_real_positions for USE_GTK.
+ (XTread_socket): Add GTK event loop for USE_GTK.
+ (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
+ (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
+ (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
+ (x_iconify_frame): Add code for USE_GTK.
+ (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
+ (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
+ is in gtkutil.c.
+ (x_term_init): Add initialization for GTK.
+ (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
+
+ * xmenu.c: Include gtkutil.h for USE_GTK.
+ (Fx_popup_menu): Use current position if x and y is NIL.
+ (single_menu_item, single_menu_item, Fx_popup_dialog): Check
+ for USE_GTK.
+ (popup_widget_loop): New function for USE_GTK.
+ (x_activate_menubar): Add code for USE_GTK.
+ (popup_activate_callback, popup_deactivate_callback)
+ (menu_highlight_callback, menubar_selection_callback): USE_GTK versions
+ added.
+ (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
+ (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
+ (free_frame_menubar): Only compile if not USE_GTK. GTK version
+ is in gtkutil.c.
+ (popup_selection_callback): New version for USE_GTK.
+ (create_and_show_popup_menu): New fuction, one USE_GTK version and
+ one USE_X_TOOLKIT version.
+ (xmenu_show): Call create_and_show_popup_menu.
+ (dialog_selection_callback): New version for USE_GTK.
+ (create_and_show_dialog): New fuction, one USE_GTK version and
+ one USE_X_TOOLKIT version.
+ (xdialog_show): Call create_and_show_dialog.
+
+ * xfns.c: Include gtkutil for USE_GTK.
+ (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): Add code for USE_GTK.
+ (x_set_background_color): Call xg_set_background_color for GTK.
+ (x_set_menu_bar_lines): Check for USE_GTK.
+ (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
+ (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
+ (x_window): Call xg_create_frame_widgets for USE_GTK.
+ (Fx_create_frame): Check for USE_GTK
+ (Fx_file_dialog): New implementation for USE_GTK.
+
+ * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
+ (update_menu_bar): Add check for USE_GTK.
+ (update_tool_bar): Add check for USE_GTK and external tool bar.
+ (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
+ (redisplay_internal): Add check for USE_GTK and popup_activated.
+ (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
+ (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
+ (display_menu_bar): Add check for USE_GTK
+
+ * lisp.h: Declare Vx_resource_name extern.
+
+ * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
+ for USE_GTK.
+ (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
+
+ * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
+ (FRAME_EXTERNAL_TOOL_BAR): New macro.
+ (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
+
+ * fileio.c (Fread_file_name): Add check for USE_GTK.
+
+ * dispnew.c (adjust_frame_glyphs_for_window_redisplay): Add
+ check for USE_GTK.
+
+ * config.in: Added HAVE_GTK
+
+ * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
+
+2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
+
+ * charset.h (Funibyte_char_to_multibyte): Export.
+
+2003-01-18 Jan D. <jan.h.d@swipnet.se>
+
+ * xmenu.c (mouse_position_for_popup): New function.
+ (Fx_popup_menu): Call mouse_position_for_popup for X and
+ mouse_position_hook for others.
+
+2003-01-17 Kim F. Storm <storm@cua.dk>
+
+ * editfns.c (Finsert): Mention `string-make-multibyte' and
+ `string-as-multibyte' in doc string.
+
2003-01-17 Kenichi Handa <handa@m17n.org>
+ * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
+
* editfns.c (Fformat): Convert an unibyte char argument that is
formatted by "%c" to multibyte if the total result must be a
multibyte string.
2003-01-10 Dave Love <fx@gnu.org>
- * composite.c (syms_of_composite): Make composition_hash_table
- weak.
+ * composite.c (syms_of_composite): Make composition_hash_table weak.
2003-01-09 Kim F. Storm <storm@cua.dk>
* xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
instead of XtAppProcessEvent.
- * xterm.c (handle_one_xevent): New function
- (x_dispatch_event): New function
+ * xterm.c (handle_one_xevent): New function.
+ (x_dispatch_event): New function.
(XTread_socket): Call handle_one_xevent.
- * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): Added
+ * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
* xmenu.c (Fx_popup_menu): If popping up at mouse position,
call XQueryPointer to get coordinates.
Call x_dispatch_event instead of XtDispatchEvent.
(xmenu_show): Calculate root coordinate from frame top/left position.
-
2003-01-08 Kim F. Storm <storm@cua.dk>
* process.c (server_accept_connection): Fixed recording of new
scroll_conservatively case. If scrolling that much doesn't change
STARTP, move it down one line.
- * xdisp.c (redisplay_window): Pass last_line_misfit arg to try_scrolling.
- Make it 1 after make_cursor_line_fully_visible fails.
+ * xdisp.c (redisplay_window): Pass last_line_misfit arg to
+ try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
- * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no selected frame.
+ * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
+ selected frame.
* keymap.c (apropos_predicate, apropos_accumulate): Make them static.
(syms_of_keymap): staticpro them.
* data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
(Fsetq_default, Fmake_local_variable, Fkill_local_variable)
- (Fmake_variable_frame_local, Faset, Fnumber_to_string)
- (Fstring_to_number, Fminus): Mention the returned value in the doc
- strings.
+ (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
+ (Fstring_to_number): Mention the returned value in the doc strings.
2002-12-23 Richard M. Stallman <rms@gnu.org>
2002-12-22 Steven Tamm <steventamm@mac.com>
- * macmenu.c (MIN_POPUP_SUBMENU_ID): Added
- (mac_menu_show): Added support for hierarchical popup menus
- (add_menu_item): Removed indentation support
- (fill_submenu, fill_menu): Now creates hierarchical menus
- instead of using indentation
+ * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
+ (mac_menu_show): Add support for hierarchical popup menus.
+ (add_menu_item): Remove indentation support.
+ (fill_submenu, fill_menu): Create hierarchical menus
+ instead of using indentation.
2002-12-22 Richard M. Stallman <rms@gnu.org>
(Fload): Handle errors in Fsubstitute_in_file_name.
Don't expect Fsignal to return.
- * Errors and throws work right with interrupt blocking.
- * eval.c (struct catchtag): New elt interrupt_input_blocked.
+ * eval.c: Errors and throws work right with interrupt blocking.
+ (struct catchtag): New elt interrupt_input_blocked.
(unwind_to_catch): Restore interrupt_input_blocked from saved value.
(internal_catch, Fcondition_case, internal_condition_case)
(internal_condition_case_1, internal_condition_case_2): Save it.
* window.c (Fset_window_configuration): Set old_point to correct
value when new_current_buffer == current_buffer.
-2002-12-17 Ben Key <bkey1@tampabay.rr.com>
+2002-12-17 Ben Key <bkey1@tampabay.rr.com>
- * Revisited my earlier fix for the following entry in
- etc/PROBLEMS:
+ Revisited my earlier fix for the following entry in etc/PROBLEMS:
"Emacs built on Windows 9x/ME crashes at startup on Windows XP,
or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
purpose at this time is to set the global variables
g_b_init_is_windows_9x, g_b_init_open_process_token,
g_b_init_get_token_information, g_b_init_lookup_account_sid, and
- g_b_init_get_sid_identifier_authority to 0 on startup. Called
- from main.
+ g_b_init_get_sid_identifier_authority to 0 on startup.
+ Called from main.
* w32.c (is_windows_9x): Perform initialization only if
g_b_init_is_windows_9x is equal to 0. On initialization set
set g_b_init_lookup_account_sid equal to 1.
* w32.c (get_sid_identifier_authority): Perform initialization
- only if g_b_init_get_sid_identifier_authority is equal to 0. On
- initialization set g_b_init_get_sid_identifier_authority equal to
- 1.
+ only if g_b_init_get_sid_identifier_authority is equal to 0.
+ On initialization set g_b_init_get_sid_identifier_authority equal to 1.
* w32fns.c (globals_of_w32fns): New function. Used to initialize
those global variables that must always be initialized on startup
- even when the global variable initialized is non zero. Its
- primary purpose at this time is to initialize the global variable
+ even when the global variable initialized is non zero.
+ Its primary purpose at this time is to initialize the global variable
track_mouse_event_fn.
* w32fns.c (w32_wnd_proc): Remove initialization of
- track_mouse_event_fn from the handler for the WM_SETFOCUS
- message.
+ track_mouse_event_fn from the handler for the WM_SETFOCUS message.
* w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
2002-12-09 Dave Love <fx@gnu.org>
- * s/sol2-8: Removed. (Not necessary.)
+ * s/sol2-8.h: Removed. (Not necessary.)
2002-12-09 Matthew Swift <swift@alum.mit.edu>
for this face/font combo.
(set_font_frame_param: Pass new argument to choose_face_font.
-2002-11-17 Ben Key <BKey1@tampabay.rr.com>
+2002-11-17 Ben Key <BKey1@tampabay.rr.com>
This change is my fix for the following entry in etc/PROBLEMS:
"Emacs built on Windows 9x/ME crashes at startup on Windows XP,
reinitialize the function pointers set_menu_item_info and
get_menu_item_info.
-2002-11-17 Ben Key <BKey1@tampabay.rr.com>
+2002-11-17 Ben Key <BKey1@tampabay.rr.com>
* sound.c: Added a partial implementation of play-sound-internal
for Microsoft Windows. Added various #ifdef / #else / #endif