1. 31 Oct, 2010 1 commit
  2. 25 Oct, 2010 1 commit
  3. 24 Oct, 2010 1 commit
  4. 12 Sep, 2010 1 commit
    • Jan D's avatar
      Fix bug 7013, only do send event if wanted state != current state. · 5f61a25c
      Jan D authored
      * xterm.c (get_current_vm_state): New function.
      (do_ewmh_fullscreen): Call get_current_vm_state and compare with
      want_fullscreen so set_wm_state calls are few (Bug#7013).
      (x_handle_net_wm_state): Move code to get_current_vm_state and
      call that function.
  5. 14 Jul, 2010 1 commit
    • Jan D's avatar
      Fix menus as per bug 6499 and 6608. · b78f9767
      Jan D authored
      * gtkutil.c (xg_event_is_for_menubar): New function (Bug#6499).
      * gtkutil.h (xg_event_is_for_menubar): Declare.
      * xfns.c (x_menubar_window_to_frame): Take XEvent as second parameter
      instead of Window.  Call xg_event_is_for_menubar when
      USE_GTK (Bug#6499).
      * xmenu.c (x_activate_menubar): Revert previous fix for Bug#6499,
      i.e. don't put back ButtonRelease (Bug#6608).
      * xterm.c (handle_one_xevent): Pass event to x_menubar_window_to_frame.
      * xterm.h (x_menubar_window_to_frame): Second parameter is XEvent*.
  6. 05 Jul, 2010 1 commit
    • YAMAMOTO Mitsuharu's avatar
      Fix ghost buffer boundary indicators in fringes (Bug#5634, Bug#6325). · 5a874e95
      YAMAMOTO Mitsuharu authored
      * dispextern.h (FRINGE_HEIGHT_BITS): New define.
      (struct glyph_row): New members left_fringe_offset and
      * xterm.c (x_draw_fringe_bitmap): Don't clip bottom aligned bitmap
      * w32term.c (w32_draw_fringe_bitmap): Likewise.
      * nsterm.m (ns_draw_fringe_bitmap): Likewise.
      * fringe.c (draw_fringe_bitmap_1): Don't clip bitmap here.
      Take account of	bitmap offset.
      (draw_window_fringes): Take account of window vscroll.
      (update_window_fringes): Likewise.  Extend top-aligned top indicator
      or bottom-aligned bottom indicator to adjacent rows if it doesn't fit
      in one row.  Don't set redraw_fringe_bitmaps_p outside row comparison.
      Set left_fringe_offset and right_fringe_offset (Bug#5634, Bug#6325).
  7. 07 Apr, 2010 1 commit
  8. 24 Feb, 2010 1 commit
    • Jan Djärv's avatar
      Move declarations before statements. · 32e737d7
      Jan Djärv authored
      * xterm.c (XTflash): Move declarations before statements.
      * gtkutil.c (xg_get_gdk_display): Remove (unused).
      (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
      (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
      (xg_create_tool_bar): Remove unused variables.
      (x_wm_set_size_hint): Move declarations before statements.
      (xg_create_frame_widgets): Remove variable grav,
  9. 13 Feb, 2010 2 commits
  10. 16 Jan, 2010 2 commits
  11. 13 Jan, 2010 3 commits
  12. 09 Jan, 2010 1 commit
    • YAMAMOTO Mitsuharu's avatar
      Make line<->pixel_y conversion macros aware of native menu/tool bars. · 4b00d3b1
      YAMAMOTO Mitsuharu authored
      They are placed above the internal border.  This supersedes special
      treatment of native tool bars in the display code.
      This fixes wrong display position of native menu bars and bogus mouse
      highlighting of native tool bars, both of which can be found when
      internal border width is large.  Also it fixes wrong flashed part on
      visible bell with native menu bars.
      * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
      (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
      windows above internal border.
      * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
      (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
      windows above internal border.
      * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
      tool bar windows specially.
      * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
      * xterm.c (x_after_update_window_line): Don't treat tool bar windows
      (XTflash): Take account of menu bar height.
      * w32term.c (x_after_update_window_line): Don't treat tool bar windows
  13. 06 Jan, 2010 1 commit
  14. 05 Jan, 2010 2 commits
    • Jan Djärv's avatar
      Remove fprintf · 451f23ab
      Jan Djärv authored
    • Jan Djärv's avatar
      Handle change of internal-border width when maximized. · 7c583cd8
      Jan Djärv authored
      * xterm.c (x_new_font): Move code for setting rows/cols before
      resizing ...
      (x_set_window_size): ... to here. bug #2568.
      * gtkutil.c (xg_clear_under_internal_border): New function.
      (xg_frame_resized, xg_frame_set_char_size): Call
      (xg_update_scrollbar_pos): Clear under old scroll bar position.
  15. 13 Dec, 2009 3 commits
    • Jan Djärv's avatar
      Set the extended window manager hint for tooltip windows. · 36acb2a7
      Jan Djärv authored
      * xfns.c (x_create_tip_frame): Set the extended window manager hint for
      tooltip windows.
      * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
      * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
    • Jan Djärv's avatar
      Work around warning about g_set_prgname() called multiple times. · b8f00677
      Jan Djärv authored
      * xterm.c (my_log_handler): New function.
      (x_term_init): Set my_log_handler as log handler during gtk_init
      so we can filter out buggy messages. (bug #5120).
    • Jan Djärv's avatar
      Bug 5177: Scroll bar thumb did not move when scrolling with mouse wheel. · e5f0bc9a
      Jan Djärv authored
      * xterm.c (xg_scroll_callback): Parameter list changed,
      use parameter GtkScrollType to determine scroll/line/page.
      Only allow dragging if a button < 4 is grabbed (bug #5177).
      (xg_end_scroll_callback): New function.
      (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
      * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
      (scroll_end_callback): Remove.
      (xg_create_scroll_bar): Add parameter end_callback, bind it to
      button-release-event.  Replace value-changed event with change-value,
      bug #5177,
      (xg_event_is_for_scrollbar): Only return true if button is less than 4,
      bug #5177.
      * gtkutil.h (XG_LAST_SB_DATA): Remove.
      (xg_create_scroll_bar): Add GCallback end_callback.
  16. 27 Nov, 2009 1 commit
    • Jan Djärv's avatar
      Don't crash if an X terminal is deleted with force == t. · ece2d4ed
      Jan Djärv authored
      * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
      is NULL.
      * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
      * frame.c (frame_make_pointer_invisible)
      (frame_make_pointer_visible): Just return if there isn't any selected
  17. 24 Nov, 2009 1 commit
  18. 21 Nov, 2009 3 commits
    • Jan Djärv's avatar
      Use a select wrapper around the GLib event loop, thus taking into account GLib · 872870b2
      Jan Djärv authored
      timeouts and event sources.  This simplifies Gtk+-code a lot, and is needed
      for handling GConf death/restart.
      * xterm.c: #include xgselect.h.
      (x_initialize): Call xgselect_initialize.
      * xsettings.c (something_changedCB): C++ comments => C comments.
      (init_gconf): Do not deal with any GLib file descriptors, xg_select
      does that now.
      * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
      (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
      (scroll_bar_button_cb): Remove.
      (create_menus): C++ comments => C comments. Don't bind grab-notify
      (xg_create_scroll_bar): Don't bind button-press-event and
      * process.c: Include xgselect.h if defined (USE_GTK) ||
      defined (HAVE_GCONF).
      (wait_reading_process_output): Call xg_select for the same condition.
      * xgselect.c (xg_select): New function to better integrate with
      GLib/Gtk event handling.  Needed if GConf daemon dies/restarts.
      * xgselect.h: New file, declare xg_select, xgselect_initialize.
      * Makefile.in (XOBJ): Add xgselect.o.
    • Andreas Schwab's avatar
      * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove · 62a6e103
      Andreas Schwab authored
      ignored second argument.  All callers changed.
      (RE_STRING_CHAR_AND_LENGTH): Likewise.
      * xdisp.c (string_char_and_length): Likewise.
    • Dan Nicolaescu's avatar
      * xterm.c (x_new_font): · b0ca0f33
      Dan Nicolaescu authored
      * print.c (print_object):
      * cmds.c (Fself_insert_command): Move declarations before statements.
  19. 17 Nov, 2009 1 commit
    • Jan Djärv's avatar
      Handle system default font and changing font parameters. · 637fa988
      Jan Djärv authored
      * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
      * xterm.c (handle_one_xevent): Call xft_settings_event for
      ClientMessage, PropertyNotify and DestroyNotify.
      (x_term_init): If we have XFT, get DPI from Xft.dpi.
      Call xsettings_initialize.
      * xftfont.c (xftfont_fix_match): New function.
      (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
      Call xftfont_fix_match after XftFontMatch.
      * xfont.c (xfont_driver): Initialize all members.
      * xfns.c (x_default_font_parameter): Try font from Ffont_get_system_font.
      Do not get font from x_default_parameter if we got one from
      (Fx_select_font): Get the defaut font name from :name of FRAME_FONT (f).
      * w32font.c (w32font_driver): Initialize all members.
      * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
      * lisp.h: Declare syms_of_xsettings.
      * keyboard.c (kbd_buffer_get_event, make_lispy_event): Handle
      * ftfont.c (ftfont_filter_properties): New function.
      * frame.c (x_set_font): Remove unused variable lval.
      * font.h (struct font_driver): filter_properties is new.
      * font.c (font_put_extra): Don't return if val is nil, it means
      boolean option is off.
      (font_parse_fcname): Collect all extra properties in extra_props
      and call filter_properties for all drivers with extra_props and
      font as parameter.
      (font_open_entity): Do not use cache, it does not pick up new fontconfig
      settings like hinting.
      (font_load_for_lface): If spec had a name in it, store it in entity.
      * emacs.c (main): Call syms_of_xsettings
      * config.in: HAVE_GCONF is new.
      * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
      xsettings.o is new.
      * menu-bar.el: Put "Use system font" in Option-menu.
      * loadup.el: If feature system-font-setting or font-render-setting is
      there, load font-setting.
      * Makefile.in (ELCFILES): font-settings.el is new.
      * font-setting.el: New file.
      * NEWS: Mention dynamic font changes (font-use-system-font).
      * configure.in: New option: --with(out)-gconf.
      Set HAVE_GCONF if we find gconf.
  20. 11 Nov, 2009 1 commit
  21. 06 Nov, 2009 2 commits
    • Jan Djärv's avatar
      Fix bug #4870, issues 3 and 4. · e511451f
      Jan Djärv authored
      * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
      * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
      * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
      ButtonPressRelease and MotionNotify (bug#4870).
    • Dan Nicolaescu's avatar
      * xterm.c (syms_of_xterm): · d67b4f80
      Dan Nicolaescu authored
      * xselect.c (syms_of_xselect):
      * xmenu.c (syms_of_xmenu):
      * xfns.c (syms_of_xfns):
      * xfaces.c (syms_of_xfaces):
      * xdisp.c (syms_of_xdisp):
      * window.c (syms_of_window):
      * w32fns.c (syms_of_w32fns):
      * undo.c (syms_of_undo):
      * textprop.c (syms_of_textprop):
      * terminal.c (syms_of_terminal):
      * syntax.c (syms_of_syntax):
      * sound.c (syms_of_sound):
      * search.c (syms_of_search):
      * print.c (syms_of_print):
      * minibuf.c (syms_of_minibuf):
      * macros.c (syms_of_macros):
      * keymap.c (syms_of_keymap, initial_define_key)
      * keyboard.c (syms_of_keyboard):
      * insdel.c (syms_of_insdel):
      * image.c (syms_of_image):
      * fringe.c (syms_of_fringe):
      * frame.c (syms_of_frame):
      * fontset.c (syms_of_fontset):
      * fns.c (syms_of_fns):
      * fns.c (syms_of_fns):
      * fileio.c (syms_of_fileio):
      * fileio.c (syms_of_fileio):
      * eval.c (syms_of_eval):
      * doc.c (syms_of_doc):
      * dispnew.c (syms_of_display):
      * dired.c (syms_of_dired):
      * dbusbind.c (syms_of_dbusbind):
      * data.c (syms_of_data):
      * composite.c (syms_of_composite):
      * coding.c (syms_of_coding):
      * cmds.c (syms_of_cmds):
      * charset.c (define_charset_internal, syms_of_character):
      * ccl.c (syms_of_ccl):
      * category.c (syms_of_category, init_category_once):
      * casetab.c (syms_of_casetab):
      * casefiddle.c (syms_of_casefiddle):
      * callint.c (syms_of_callint):
      * bytecode.c (syms_of_bytecode):
      * buffer.c (keys_of_buffer, syms_of_buffer):
      * alloc.c (syms_of_alloc):
      * process.c (syms_of_process, init_process):
      * lread.c (syms_of_lread, init_obarray):
      * font.c (build_style_table):
      * emacs.c (syms_of_emacs, main): Replace calls to intern with
      intern_c_string, calls to make_pure_string with
      make_pure_c_string.  Use pure_cons instead of Fcons.
      * process.c (socket_options): Make it const.
      (set_socket_option, init_process): Use a const pointer.
      * lread.c (intern_c_string): New function.
      (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
      (defvar_int): Uset it.  Make the name const char*.
      * font.c (struct table_entry): Remove unused member.  Make NAMES
      (weight_table, slant_table, width_table): Make constant.
      * emacs.c (struct standard_args): Make name and longname constant.
  22. 21 Oct, 2009 2 commits
    • Jan Djärv's avatar
    • Jan Djärv's avatar
      Fix resize due to font change on a maximized/xmonad-controlled frame. · 5c646d5a
      Jan Djärv authored
      * xterm.h (x_wait_for_event): Declare it.
      * xterm.c (pending_event_wait): New variable.
      (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
      see pending_event_wait.eventtype.
      (handle_one_xevent): Don't change gravity when parent changes.
      (x_new_font): Call change_frame_size with new rows/columns before we try
      to resize the frame.
      (x_wait_for_event): New function.
      (x_set_window_size_1): Don't change gravity unless change_gravity is set.
      Call XResizeWindow with FRAME_OUTER_WINDOW.  If we are visible,
      don't change frame size, instead wait for the ConfigureNotify.
      (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
      (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
      (x_initialize): Initialize pending_event_wait.
      * xmenu.c (set_frame_menubar): Add internal border width to menu bar
      * widget.c (EmacsFrameSetValues): Add comment.
      (EmacsFrameSetCharSize): Just call x_set_window_size.
      * gtkutil.c (xg_frame_set_char_size): Flush events and call
      (flush_and_sync): Removed again.
      (xg_get_font_name): Suggest monospace if no previous font is known.
  23. 20 Oct, 2009 1 commit
  24. 19 Oct, 2009 3 commits
    • Jan Djärv's avatar
      (x_create_toolkit_scroll_bar): Don't allocate color for · 9685cef2
      Jan Djärv authored
      pixel -1 (bug #4742).
    • Dan Nicolaescu's avatar
      * xterm.c: · ee6bacd4
      Dan Nicolaescu authored
      * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
    • Dan Nicolaescu's avatar
      * alloc.c: Do not define struct catchtag. · d7306fe6
      Dan Nicolaescu authored
      * eval.c: Move struct catchtag definition ...
      * lisp.h: ... here.
      * image.c: Move png.h #include earlier to avoid warnings.
      * xterm.c:
      * xsmfns.c:
      * xselect.c:
      * xrdb.c:
      * xmenu.c:
      * xftfont.c:
      * xfont.c:
      * xfns.c:
      * xfaces.c:
      * xdisp.c:
      * window.c:
      * widget.c:
      * w32xfns.c:
      * w32uniscribe.c:
      * w32term.c:
      * w32select.c:
      * w32reg.c:
      * w32proc.c:
      * w32menu.c:
      * w32inevt.c:
      * w32heap.c:
      * w32font.c:
      * w32fns.c:
      * w32console.c:
      * w32.c:
      * w16select.c:
      * vm-limit.c:
      * unexsol.c:
      * unexec.c:
      * unexcw.c:
      * unexaix.c:
      * undo.c:
      * tparam.c:
      * textprop.c:
      * terminfo.c:
      * terminal.c:
      * termcap.c:
      * term.c:
      * syntax.c:
      * sound.c:
      * sheap.c:
      * search.c:
      * scroll.c:
      * region-cache.c:
      * regex.c:
      * ralloc.c:
      * process.c:
      * print.c:
      * msdos.c:
      * minibuf.c:
      * menu.c:
      * marker.c:
      * macros.c:
      * keymap.c:
      * keyboard.c:
      * intervals.c:
      * insdel.c:
      * indent.c:
      * gtkutil.c:
      * ftxfont.c:
      * ftfont.c:
      * fringe.c:
      * frame.c:
      * fontset.c:
      * font.c:
      * fns.c:
      * floatfns.c:
      * filelock.c:
      * fileio.c:
      * emacs.c:
      * editfns.c:
      * dosfns.c:
      * doprnt.c:
      * doc.c:
      * dispnew.c:
      * dired.c:
      * dbusbind.c:
      * data.c:
      * composite.c:
      * coding.c:
      * cmds.c:
      * cm.c:
      * chartab.c:
      * charset.c:
      * character.c:
      * ccl.c:
      * category.c:
      * casetab.c:
      * casefiddle.c:
      * callproc.c:
      * callint.c:
      * bytecode.c:
      * buffer.c:
      * atimer.c: Include setjmp.h.  (Bug#4643)
      * xlwmenu.c:
      * lwlib.c:
      * lwlib-utils.c:
      * lwlib-Xm.c:
      * lwlib-Xlw.c:
      * lwlib-Xaw.c: Include setjmp.h.
  25. 15 Sep, 2009 1 commit
  26. 04 Sep, 2009 1 commit
  27. 02 Sep, 2009 1 commit
    • Jan Djärv's avatar
      * xterm.h: Rename x_non_menubar_window_to_frame to · a54fa5b7
      Jan Djärv authored
      * xterm.c: Remove declarations also in xterm.h
      (XTmouse_position): Do not return valid positions
      for clicks in the menubar and the toolbar for Gtk+.
      * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
      if the widget for the event has the same top level as a frame,
      return the frame.
      (x_menubar_window_to_frame): Detect menu bar even with Gtk+
      internal windows, bug #4122.
      (x_non_menubar_window_to_frame): Remove.