* frame.c (x_mouse_grabbed): New function.
[bpt/emacs.git] / src / ChangeLog
index 88aa22b..b5bdf1d 100644 (file)
@@ -1,3 +1,274 @@
+2013-09-18  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * frame.c (x_mouse_grabbed): New function.
+       * dispextern.h (x_mouse_grabbed): Add prototype.
+       (last_mouse_frame): Remove declaration.
+       * xterm.h (struct x_display_info):
+       * w32term.h (struct w32_display_info):
+       * nsterm.h (struct ns_display_info): New member
+       last_mouse_frame, going to replace...
+       * xdisp.c (last_mouse_frame): ...global variable.
+       (note_tool_bar_highlight):
+       * w32term.c (w32_mouse_position, w32_read_socket):
+       * xterm.c (XTmouse_position, handle_one_xevent):
+       Use x_mouse_grabbed.
+       * nsterm.m (ns_mouse_position, mouseDown): Adjust user.
+
+2013-09-17  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * w32term.c (w32_read_socket): Avoid temporary
+       variables in a call to x_real_positions.
+       * xterm.c (handle_one_xevent): Likewise.
+
+2013-09-17  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * frame.h (x_set_bitmap_icon) [!HAVE_NS]: New function.
+       (x_icon_type): Remove prototype.
+       (x_bitmap_icon) [!HAVE_NS]: Declare as such.
+       * frame.c (x_icon_type): Remove.
+       * w32term.c (x_make_frame_visible, x_iconify_frame):
+       * xterm.c (x_make_frame_visible, x_iconify_frame):
+       Use x_set_bitmap_icon to factor out common code.
+
+2013-09-17  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * dispextern.h (check_x_display_info, x_get_string_resource):
+       Declare here just once and unify the latter.
+       * frame.c (check_x_display_info, x_get_string_resource):
+       * nsterm.h (check_x_display_info):
+       * xrdb.c (x_get_string_resource):
+       * xterm.h (check_x_display_info): Remove prototypes.
+       * nsfns.m (x_get_string_resource): Likewise.  Adjust definition.
+       * w32reg.c (x_get_string_resource): Likewise.
+       (w32_get_rdb_resource): Adjust user.
+
+2013-09-17  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * xterm.h (struct x_display_info): New member
+       x_pending_autoraise_frame, going to replace...
+       * xterm.c (pending_autoraise_frame): ...static variable.
+       (x_new_focus_frame, XTread_socket): Adjust users.
+       * w32term.h (struct w32_display_info): New member
+       w32_pending_autoraise_frame, going to replace...
+       * w32term.c (pending_autoraise_frame): ...global variable.
+       (x_new_focus_frame, w32_read_socket): Adjust users.
+
+2013-09-17  Glenn Morris  <rgm@gnu.org>
+
+       * xdisp.c (message_dolog): If we create *Messages*,
+       switch it to messages-buffer-mode.
+
+2013-09-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't overuse 'const' in types of locals.
+       * bidi.c (bidi_count_bytes):
+       * gtkutil.c, gtkutil.h (xg_event_is_for_menubar)
+       (xg_event_is_for_scrollbar):
+       * xselect.c (x_handle_property_notify)
+       (x_handle_selection_notify, x_handle_dnd_message):
+       * xsettings.c, xsettings.h (xft_settings_event):
+       * xterm.c (x_handle_net_wm_state, handle_one_event)
+       (x_menubar_window_to_frame, x_detect_focus_change)
+       (construct_mouse_click, note_mouse_movement)
+       (x_scroll_bar_to_input_event, x_scroll_bar_expose)
+       (x_scroll_bar_handle_click, x_scroll_bar_note_movement)
+       (handle_one_xevent, x_handle_net_wm_state):
+       * xterm.h (x_handle_property_notify, x_handle_selection_notify)
+       (x_handle_dnd_message):
+       Avoid unnecessary 'const', typically the second 'const' in
+       'const foo * const arg', a 'const' that does not affect the API
+       and doesn't significantly help the human reader.
+
+2013-09-17  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * image.c (fn_g_type_init) [WINDOWSNT]: Define and load
+       only if Glib < 2.36.0.
+       (fn_g_type_init) [!WINDOWSNT]: Define only if Glib < 2.36.0.
+       * xsettings.c (init_gconf, init_gsettings): Do not check
+       for g_type_init.
+       * xterm.c (handle_one_xevent): Do not call to x_clear_area
+       if GTK >= 2.7.0.
+       (toplevel) [USE_MOTIF]: Include xlwmenu.h to pacify GCC.
+
+2013-09-16  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * xsettings.c (init_gconf, init_gsettings): Check for Glib 2.36.0
+       before calling g_type_init.
+
+       * font.c (syms_of_font): Move call to syms_of_(ns|mac)font ...
+
+       * nsterm.m (syms_of_nsterm): ... to here.
+
+2013-09-16  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * xterm.c (toolkit_scroll_bar_interaction): Use bool for boolean.
+       (ignore_next_mouse_click_timeout): Use Time as X does.
+       (handle_one_xevent): Avoid cast and use unsigned comparison.
+
+2013-09-16  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Do not copy X event in handle_one_xevent except KeyPress case.
+       Wnen XEvent is processed, it is unlikely to be changed except
+       KeyPress case, so we can avoid copying and use const pointer to
+       const data to make sure that an event is not changed elsewhere.
+       * xterm.c (handle_one_xevent): Change 2nd arg to 'const XEvent *
+       const' and do not create local copy except for the KeyPress event.
+       Use casts to avoid a few glitches.  Adjust formatting.  Add comments.
+       (SET_SAVED_BUTTON_EVENT): Remove and move the code to the only user.
+       (x_handle_net_wm_state, x_menubar_window_to_frame)
+       (x_detect_focus_change, construct_mouse_click, note_mouse_movement)
+       (x_scroll_bar_to_input_event, x_scroll_bar_expose)
+       (x_scroll_bar_handle_click, x_scroll_bar_note_movement):
+       * gtkutil.c (xg_event_is_for_menubar, xg_event_is_for_scrollbar):
+       * xselect.c (x_handle_property_notify, x_handle_selection_notify)
+       (x_handle_dnd_message):
+       * xsettings.c (xft_settings_event):
+       Use 'const XEvent * const' where appropriate.
+       * xterm.h, gtkutil.h, xsettngs.h: Adjust related prototypes.
+
+2013-09-16  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Fix X event waiting to handle multiple frames.
+       * frame.h (struct frame) [HAVE_X_WINDOWS]: New member wait_event_type.
+       * xterm.c (pending_event_wait): Remove.  Adjust users.
+       (x_detect_focus_change): Pass frame arg.
+       (handle_one_xevent): Find related frame early and clear per-frame
+       wait_event_type only if this is an event for the relevant frame.
+       (x_wait_for_event): Use per-frame wait_event_type.
+
+2013-09-15  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * nsfns.m (Fx_create_frame): Fix font driver registration for
+       GNUStep.
+
+       * font.c (syms_of_font): Check MAC_OS_X_VERSION_MAX_ALLOWED >= 1050
+       for syms_of_macfont.
+
+       * nsterm.m: Include macfont.h.
+       (ns_tmp_flags, ns_tmp_font): Remove.
+       (ns_compute_glyph_string_overhangs): Check for driver Qns.
+       (ns_draw_glyph_string): Use local variables instead of ns_tmp_flags,
+       ns_tmp_font.  Call ns_draw_text_decoration here instead of nsfont.m.
+       (changeFont:): Fix code style.  Check for font driver type when
+       getiing font.
+
+       * nsterm.h (FONT_DESCENT, FONT_ASCENT): Define to (f)->ascent and
+       (f)->descent.
+
+       * nsfont.m (ns_tmp_flags, ns_tmp_font): Remove.
+       (nsfont_open): Set font driver type.
+       Set font->ascent and font->descent.  Figure out font instead of
+       ns_tmp_font, and flags instead of ns_tmp_flags.
+       Fix indentation. Remove call to ns_draw_text_decoration,
+       moved to nsterm.
+
+       * nsfns.m: Include macfont.h.
+       (Fx_create_frame): Register macfont driver, make a better default font.
+       (Fns_popup_font_panel): Get font from macfont driver, if used.
+
+       * macfont.m, macfont.h, maccuvs.h: New files.
+
+       * font.h: Declare syms_of_macfont.
+
+       * font.c (syms_of_font): Call syms_of_macfont.
+
+       * Makefile.in (NS_OBJ, SOME_MACHINE_OBJECTS): Add macfont.o.
+
+2013-09-15  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Drop VERTICAL_SCROLL_BAR_WIDTH_TRIM.  For X, it is zero since 1999,
+       and it is always zero for others, so I assume that this is an ancient
+       leftover which nobody will want to change any more.
+       * xterm.h, w32term.h, nsterm.h (VERTICAL_SCROLL_BAR_WIDTH_TRIM): Remove.
+       (VERTICAL_SCROLL_BAR_INSIDE_WIDTH):
+       * frame.c (x_set_scroll_bar_width):
+       * w32fns.c (w32_createscrollbar):
+       * w32term.c (w32_set_vertical_scroll_bar):
+       * xfns.c (x_set_scroll_bar_default_width):
+       * xterm.c (XTflash, x_scroll_bar_create, XTset_vertical_scroll_bar)
+       (x_scroll_bar_expose): Related users changed.
+
+2013-09-15  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * xterm.h (FRAME_X_SCREEN_NUMBER): Add comment.
+       (BLACK_PIX_DEFAULT, WHITE_PIX_DEFAULT): Use FRAME_X_SCREEN_NUMBER.
+       (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET) [USE_X_TOOLKIT]:
+       Define as such.
+       * frame.h (FRAME_SMALLEST_CHAR_WIDTH, FRAME_SMALLEST_FONT_HEIGHT):
+       Define once here...
+       * nsterm.h, w32term.h, xterm.h: ...and not here.
+       * w32term.h (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
+       Remove unused Xisms.
+       * xterm.c, xfns.c (toplevel): Remove #ifdef HAVE_X_WINDOWS because
+       these modules are never compiled otherwise.
+
+2013-09-14  Eli Zaretskii  <eliz@gnu.org>
+
+       * buffer.c (syms_of_buffer) <left-margin-width, right-margin-width>:
+       Doc fix.  (Bug#15375)
+
+2013-09-13  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Unify Fx_focus_frame between all ports.
+       * frame.h (x_focus_frame): New prototype.
+       * xfns.c (Fx_focus_frame): Remove.
+       (syms_of_xfns): Do not defsubr it.
+       (x_focus_frame): X implementation.
+       * nsfns.m (Fx_focus_frame): Remove.
+       (syms_of_nsfns): Do not defsubr it.
+       (x_focus_frame): NS implementation.
+       * w32term.c (Fx_focus_frame): Remove.
+       (x_focus_on_frame): Rename to...
+       (x_focus_frame): W32 implementation.
+       * w32term.h (x_focus_on_frame): Remove prototype.
+       * w32fns.c (Fx_focus_frame): Remove.
+       (syms_of_w32fns): Do not defsubr it.
+       * frame.c (Fx_focus_frame): Define here.
+       (syms_of_frame): Defsubr here.
+       * gtkutil.c (xg_tool_bar_callback): Use x_focus_frame.
+
+2013-09-13  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Unify FRAME_window_system_DISPLAY_INFO macros between all ports.
+       All of them are replaced with FRAME_DISPLAY_INFO, defined in
+       each port to reference the port-specific window system data.
+       * msdos.h (FRAME_X_DISPLAY_INFO): Remove.
+       (FRAME_DISPLAY_INFO): Define.
+       * w32term.h (FRAME_W32_DISPLAY_INFO, FRAME_X_DISPLAY_INFO): Remove.
+       (FRAME_DISPLAY_INFO): Define.  Adjust users.
+       * xterm.h (FRAME_X_DISPLAY_INFO): Remove.
+       (FRAME_DISPLAY_INFO): Define.  Adjust users.
+       * frame.h (FRAME_RES_X, FRAME_RES_Y): Unify.
+       * font.c, frame.c, gtkutil.c, image.c, menu.c, msdos.c, nsfns.m:
+       * nsfont.m, nsterm.m, w32fns.c, w32font.c, w32menu.c, w32term.c:
+       * w32xfns.c, widget.c, xdisp.c, xfaces.c, xfns.c, xfont.c, xmenu.c:
+       * xselect.c, xterm.c: All related users changed.
+
+2013-09-13  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * xterm.h (x_window_to_frame, x_any_window_to_frame)
+       (x_menubar_window_to_frame): Remove prototypes.
+       * xfns.c (x_window_to_frame, x_any_window_to_frame)
+       (x_menubar_window_to_frame, x_top_window_to_frame):
+       Move from here...
+       * xterm.c (x_window_to_frame, x_any_window_to_frame)
+       (x_menubar_window_to_frame, x_top_window_to_frame):
+       ...to here and convert all but the last to static.
+
+2013-09-12  Eli Zaretskii  <eliz@gnu.org>
+
+       * lisp.mk (lisp): Add w32-common-fns.elc.
+
+2013-09-12  Xue Fuqiao  <xfq.free@gmail.com>
+
+       * charset.c (char_charset): Document an exception for char-charset.
+
+2013-09-12  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * xterm.h (x_display_info): New field last_user_time...
+       * xterm.c (toplevel): ...to replace static last_user_time.
+       (handle_one_xevent, x_ewmh_activate_frame): Adjust users.
+
 2013-09-12  Dmitry Antipov  <dmantipov@yandex.ru>
 
        * xterm.c (x_set_scroll_bar_thumb) [USE_LUCID && !HAVE_XAW3D]: Clip