1. 23 May, 2015 1 commit
    • Jan D's avatar
      Fixes to compile cairo branch without cairo. · ee14727c
      Jan D authored
      * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
      first argument.
      
      * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
      USE_CAIRO.
      ee14727c
  2. 17 May, 2015 3 commits
  3. 14 May, 2015 1 commit
    • Jan D's avatar
      Don't access display after i/o error (Bug#19147). · 9341956c
      Jan D authored
      * xterm.c (x_connection_closed): Add third arg ioerror.
      If ioerror, set display to 0 (Bug#19147).
      (x_error_quitter): Call x_connection_closed with third arg false.
      (x_io_error_quitter): Call x_connection_closed with third arg true.
      9341956c
  4. 25 Apr, 2015 1 commit
    • Paul Eggert's avatar
      Port --enable-gcc-warnings to GCC 5.1 x86-64 · 52ba851d
      Paul Eggert authored
      * lib-src/ebrowse.c (dump_sym):
      * lib-src/hexl.c (main):
      * src/ccl.c (ccl_driver):
      * src/character.c (string_escape_byte8):
      * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
      * src/gnutls.c (Fgnutls_boot):
      * src/gtkutil.c (xg_check_special_colors):
      * src/image.c (x_build_heuristic_mask):
      * src/print.c (safe_debug_print, print_object):
      * src/term.c (produce_glyphless_glyph):
      * src/xdisp.c (get_next_display_element)
      (produce_glyphless_glyph):
      * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
      Don't use a signed format to print an unsigned integer, or vice
      versa.  GCC 5.1's new -Wformat-signedness option warns about this.
      * src/image.c (png_load_body, jpeg_load_body):
      Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
      52ba851d
  5. 14 Apr, 2015 1 commit
  6. 12 Apr, 2015 2 commits
    • Jan D's avatar
      x_free_cr_resources: Renamed from x_prepare_for_xlibdraw. · a3f1b3d5
      Jan D authored
      * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
      (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
      (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
      x_free_cr_resources.
      a3f1b3d5
    • Jan D's avatar
      Handle specified bg in images. Use generic libpng code for PNG:s. · c744c8a8
      Jan D authored
      * src/image.c (get_spec_bg_or_alpha_as_argb)
      (create_cairo_image_surface): New functions when USE_CAIRO.
      (xpm_load): Call the above functions.  Handle XPM without mask
      when USE_CAIRO.
      (png_load_body): Handle USE_CAIRO case.
      (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
      instead.
      (jpeg_load_body): Call create_cairo_image_surface.
      (gif_load, svg_load_image): Handle specified background, call
      create_cairo_image_surface.
      
      * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
      c744c8a8
  7. 03 Apr, 2015 2 commits
  8. 29 Mar, 2015 1 commit
    • Jan D's avatar
      Fixes: debbugs:19175 · 4d2e7e17
      Jan D authored
      * gtkutil.c (xg_display_open):
      * xterm.c (x_display_ok, x_term_init): Block SIGIO when opening
      a display.
      4d2e7e17
  9. 17 Feb, 2015 1 commit
  10. 16 Feb, 2015 7 commits
  11. 14 Feb, 2015 2 commits
  12. 11 Feb, 2015 2 commits
    • Jan D's avatar
      Add cairo drawing. · dddcc0e7
      Jan D authored
      * configure.ac (with-cairo): New option.
      (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
      set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
      Output "Does Emacs use cairo?".
      
      * lisp/version.el (emacs-version): Add cairo version.
      
      * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
      (FONT_OBJ): Add comment about ftcrfont.
      (ALL_CFLAGS): Add CAIRO_CFLAGS.
      (LIBES): Add CAIRO_LIBS.
      
      * src/dispextern.h (struct image): Add cr_data for cairo.
      (x_cr_init_fringe): Declare.
      
      * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
      
      * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
      
      * src/fringe.c (x_cr_init_fringe): New function name that shares code
      with w32_init_fringe.
      
      * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
      
      * src/ftfont.c (ftfont_info_size); New global variable.
      (ftfont_open2): New extern function almost the same as old ftfont_open,
      but takes the font_object as argument.
      (ftfont_open): Build font object and call ftfont_open2.
      
      * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
      
      * src/gtkutil.c (xg_clear_under_internal_border)
      (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
      queue_draw if not cairo.  Change args to x_clear_area.
      (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
      (xg_page_setup_dialog, xg_get_page_setup, draw_page)
      (xg_print_frames_dialog): New functions for printing.
      
      * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
      (xg_print_frames_dialog): Declare.
      
      * src/image.c: Add defined (USE_CAIRO) for PNG.
      Add !defined USE_CAIRO for W32 PNG code.
      (x_clear_image): If cairo, destroy the surface in cr_data.
      (png_load): Add new cairo compatible implementation.
      (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
      
      * src/xfns.c: New section Printing.
      (x-export-frames, x-page-setup-dialog, x-get-page-setup)
      (x-print-frames-dialog): New printing functions.
      (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
      cairo.
      (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
      Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
      (syms_of_xfns): Provide cairo and defvar cairo-version-string.
      defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
      
      * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
      (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
      (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
      (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
      Declare.
      (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
      (max_fringe_bmp, fringe_bmp): New variables.
      (x_gc_get_ext_data, x_extension_initialize)
      (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
      (x_set_cr_source_with_gc_foreground)
      (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
      (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
      (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
      (x_prepare_for_xlibdraw, x_set_clip_rectangles)
      (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
      (x_clear_window, x_fill_trapezoid_for_relief): New functions.
      (x_update_begin): Create cairo surface if needed.
      (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
      (x_update_end): Paint cairo drawing surface to xlib surface.
      (x_clear_under_internal_border, x_after_update_window_line): Adjust
      arguments to x_clear_area.
      (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
      call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
      of XSetClipMask.
      (x_set_glyph_string_clipping)
      (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
      instead of XSetClipRectangles.
      (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
      x_fill_rectangle instead of XFillRectangle.
      (x_draw_glyph_string_foreground)
      (x_draw_composite_glyph_string_foreground)
      (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
      of XDrawRectangle.
      (x_draw_relief_rect): Add code for USE_CAIRO.
      Call x_reset_clip_rectangles instead of XSetClipMask.
      (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
      x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
      instead of XSetClipMask.
      (x_draw_image_foreground, x_draw_image_foreground_1):
      x_draw_rectangle instead of XDrawRectangle.
      (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
      XFillRectangle.
      (x_draw_image_glyph_string): If img has cr_data, use it as
      a cairo surface.
      (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
      XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
      (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
      x_reset_clip_rectangles instead of XSetClipMask.
      (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
      (x_clear_area1): New function that calls XClearArea.
      (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
      non-cairo.
      (x_clear_frame): x_clear_window instead of XClearWindow.
      (x_scroll_run): Set frame garbaged if cairo.
      (XTmouse_position): Initialize *part to 0.
      (x_scroll_bar_create): Adjust arguments to x_clear_area.
      (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
      x_fill_rectangle instead of XFillRectangle.
      (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
      arguments to x_clear_area.
      (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
      (handle_one_xevent): Adjust arguments to x_clear_area.
      Destroy cairo surface for frame if ConfigureNotify.
      (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
      (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
      x_reset_clip_rectangles instead of XSetClipMask.
      (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
      x_reset_clip_rectangles instead of XSetClipMask.
      (x_clear_frame_area): Adjust arguments to x_clear_area.
      (x_free_frame_resources): Call x_prepare_for_xlibdraw.
      (x_term_init): Call x_extension_initialize if cairo.
      (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
      x_cr_destroy_fringe_bitmap for cairo.
      (x_initialize): Call x_cr_init_fringe for cairo.
      
      * src/xterm.h: Add include of cairo header files.
      (x_bitmap_record): Add img if cairo.
      (x_gc_ext_data): New struct for cairo.
      (x_display_info): Add ext_codes for cairo.
      (x_output): Add cr_context and cr_surface for cairo.
      (x_clear_area): Change arguments from Display*/Window to frame pointer.
      (x_query_color, x_begin_cr_clip, x_end_cr_clip)
      (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
      (x_cr_draw_frame, x_cr_export_frames): Declare.
      dddcc0e7
    • Martin Rudalics's avatar
      Improve toggling fullscreen state of frames. · 02138cb0
      Martin Rudalics authored
      * frame.el (toggle-frame-maximized, toggle-frame-fullscreen):
      Rename frame parameter `maximized' to `fullscreen-restore'.
      Restore fullwidth/-height after fullboth state.  Update
      doc-strings.
      * w32term.c (w32_read_socket): In SIZE_MAXIMIZED and
      SIZE_RESTORED cases correctly handle `maximized' value for the
      `fullscreen' parameter.  Don't use the 'maximized' parameter any
      more.
      (w32fullscreen_hook): Include menu bar height when calculating
      new text height in FULLSCREEN_BOTH case.
      * xterm.c (do_ewmh_fullscreen): Handle transition from
      FULLSCREEN_BOTH to FULLSCREEN_MAXIMIZED when
      x_frame_normalize_before_maximize is set.
      * frames.texi (Size Parameters): Update description of
      fullscreen frame parameter.
      02138cb0
  13. 07 Feb, 2015 1 commit
    • Martin Rudalics's avatar
      Try to improve handling of fullwidth/-height frames. · d1655783
      Martin Rudalics authored
      * frame.el (frame-notice-user-settings): Update
      `frame-size-history'.
      (make-frame): Update `frame-size-history'.  Call
      `frame-after-make-frame'.
      * faces.el (face-set-after-frame-default): Remove call to
      frame-can-run-window-configuration-change-hook.
      * frame.c (frame_size_history_add): New function.
      (frame_inhibit_resize): Consider frame_inhibit_implied_resize
      only after frame's after_make_frame slot is true.  Inhibit
      resizing fullwidth-/height frames in one direction only.  Update
      frame_size_history.
      (adjust_frame_size): Call frame_size_history_add.
      (make_frame): Initalize after_make_frame slot.
      (Fmake_terminal_frame): Adjust adjust_frame_size call.
      (Fcan_run_window_configuration_change_hook): Rename to
      Fframe_after_make_frame.  Set after_make_frame slot.  Return
      second argument.
      (x_set_frame_parameters): Postpone handling fullscreen parameter
      until after width and height parameters have been set.  Apply
      width and height changes only if can_x_set_window_size is true.
      Update frame_size_history.
      (Qadjust_frame_size_1, Qadjust_frame_size_2)
      (Qadjust_frame_size_3, QEmacsFrameResize, Qframe_inhibit_resize)
      (Qx_set_fullscreen, Qx_check_fullscreen, Qx_set_window_size_1)
      (Qxg_frame_resized, Qxg_frame_set_char_size_1)
      (Qxg_frame_set_char_size_2, Qxg_frame_set_char_size_3)
      (Qxg_change_toolbar_position, Qx_net_wm_state)
      (Qx_handle_net_wm_state, Qtb_size_cb, Qupdate_frame_tool_bar)
      (Qfree_frame_tool_bar): New symbol for updating
      frame_size_history.
      (Qtip_frame, Qterminal_frame): New symbols.
      (Vframe_adjust_size_history): Rename to frame_size_history.
      * frame.h (struct frame): Rename
      can_run_window_configuration_change_hook slot to
      after_make_frame.
      (frame_size_history_add): Extern.
      * gtkutil.c (xg_frame_resized): Call frame_size_history_add.
      Don't set FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT here.
      (xg_frame_set_char_size): Try to preserve the status of
      fullwidth/-height frames.  Call frame_size_history_add.
      (tb_size_cb, update_frame_tool_bar, free_frame_tool_bar)
      (xg_change_toolbar_position): Call frame_size_history_add.
      * w32fns.c (x_change_tool_bar_height): Handle frame's fullscreen
      status.
      (Fx_create_frame): Process fullscreen parameter after frame has
      been resized.
      (x_create_tip_frame): Pass Qtip_frame to adjust_frame_size.
      (Fx_frame_geometry): Don't pollute pure storage.
      * w32term.c (w32_read_socket): For WM_WINDOWPOSCHANGED,
      WM_ACTIVATE and WM_ACTIVATEAPP set frame's visibility before
      calling w32fullscreen_hook.  For WM_DISPLAYCHANGE call
      w32fullscreen_hook immediately.
      (x_fullscreen_adjust, x_check_fullscreen): Remove.
      (w32fullscreen_hook): Call change_frame_size just as with a
      "normal" frame resize operation.  Call do_pending_window_change.
      (x_set_window_size): Try to handle fullwidth and fullheight more
      accurately.  Don't rely on w32_enable_frame_resize_hack.
      (w32_enable_frame_resize_hack): Remove variable.
      * widget.c (EmacsFrameResize): Remove dead code.  Call
      frame_size_history_add
      * window.c (run_window_configuration_change_hook): Check
      f->after_make_frame instead of
      f->can_run_window_configuration_change_hook.
      * xfns.c (x_change_tool_bar_height): Handle frame's fullscreen status.
      (Fx_create_frame): Process fullscreen parameter after frame has
      been resized.
      (Fx_frame_geometry): Don't pollute pure storage.
      * xterm.c (x_net_wm_state, x_handle_net_wm_state): Call
      frame_size_history_add.
      (do_ewmh_fullscreen): Handle x_frame_normalize_before_maximize.
      (x_check_fullscreen): Count in menubar when calling
      XResizeWindow.  Wait for ConfigureNotify event.  Call
      frame_size_history_add.
      (x_set_window_size_1): Remove PIXELWISE argument.  Try to handle
      changing a fullheight frame's width or a fullwidth frame's
      height.  Call frame_size_history_add.
      (x_set_window_size): Simplify xg_frame_set_char_size and
      x_set_window_size_1 calls.
      (x_frame_normalize_before_maximize): New variable.
      d1655783
  14. 01 Feb, 2015 1 commit
  15. 21 Jan, 2015 1 commit
  16. 14 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Use bool for boolean in xmenu.c, xml.c · 3ef29501
      Paul Eggert authored
      * xmenu.c (x_menu_set_in_use, popup_get_selection)
      (Fx_menu_bar_open_internal, popup_widget_loop)
      (x_activate_menubar, xg_crazy_callback_abort)
      (update_frame_menubar, set_frame_menubar)
      (initialize_frame_menubar, free_frame_menubar)
      (create_and_show_popup_menu, x_menu_show)
      (create_and_show_dialog, x_dialog_show):
      * xml.c (libxml2_loaded_p, init_libxml2_functions, parse_region)
      (Flibxml_parse_html_region, Flibxml_parse_xml_region):
      * xrdb.c (main) [TESTRM]:
      * xsettings.c (init_gsettings):
      * xterm.c (XFillRectangle, xg_scroll_callback)
      (xg_end_scroll_callback):
      * xterm.h (x_menu_set_in_use) [USE_GTK || USE_MOTIF]:
      Use bool for boolean.
      * xmenu.c (TRUE): Remove; no longer used.
      (show_help_event): Remove long-unused code.
      (set_frame_menubar): Remove "#if 1" and corresponding "#endif" lines.
      3ef29501
  17. 05 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Compute C decls for DEFSYMs automatically · 58f2d6ef
      Paul Eggert authored
      Fixes Bug#15880.
      This patch also makes Q constants (e.g., Qnil) constant addresses
      from the C point of view.
      * make-docfile.c: Revamp to generate table of symbols, too.
      Include <stdbool.h>.
      (xstrdup): New function.
      (main): Don't process the same file twice.
      (SYMBOL): New constant in enum global_type.
      (struct symbol): Turn 'value' member into a union, either v.value
      for int or v.svalue for string.  All uses changed.
      (add_global): New arg svalue, which overrides value, so that globals
      can have a string value.
      (close_emacs_global): New arg num_symbols; all uses changed.
      Output lispsym decl.
      (write_globals): Output symbol globals too.  Output more
      ATTRIBUTE_CONST, now that Qnil etc. are C constants.
      Output defsym_name table.
      (scan_c_file): Move most of guts into ...
      (scan_c_stream): ... new function.  Scan for DEFSYMs and
      record symbols found.  Don't read past EOF if file doesn't
      end in newline.
      * alloc.c, bidi.c, buffer.c, bytecode.c, callint.c, casefiddle:
      * casetab.c, category.c, ccl.c, charset.c, chartab.c, cmds.c, coding.c:
      * composite.c, data.c, dbusbind.c, decompress.c, dired.c, dispnew.c:
      * doc.c, editfns.c, emacs.c, eval.c, fileio.c, fns.c, font.c, fontset.c:
      * frame.c, fringe.c, ftfont.c, ftxfont.c, gfilenotify.c, gnutls.c:
      * image.c, inotify.c, insdel.c, keyboard.c, keymap.c, lread.c:
      * macfont.m, macros.c, minibuf.c, nsfns.m, nsfont.m, nsimage.m:
      * nsmenu.m, nsselect.m, nsterm.m, print.c, process.c, profiler.c:
      * search.c, sound.c, syntax.c, term.c, terminal.c, textprop.c, undo.c:
      * window.c, xdisp.c, xfaces.c, xfns.c, xftfont.c, xmenu.c, xml.c:
      * xselect.c, xsettings.c, xterm.c:
      Remove Q vars that represent symbols (e.g., Qnil, Qt, Qemacs).
      These names are now defined automatically by make-docfile.
      * alloc.c (init_symbol): New function.
      (Fmake_symbol): Use it.
      (c_symbol_p): New function.
      (valid_lisp_object_p, purecopy): Use it.
      * alloc.c (marked_pinned_symbols):
      Use make_lisp_symbol instead of make_lisp_ptr.
      (garbage_collect_1): Mark lispsym symbols.
      (CHECK_ALLOCATED_AND_LIVE_SYMBOL): New macro.
      (mark_object): Use it.
      (sweep_symbols): Sweep lispsym symbols.
      (symbol_uses_obj): New function.
      (which_symbols): Use it.  Work for lispsym symbols, too.
      (init_alloc_once): Initialize Vpurify_flag here; no need to wait,
      since Qt's address is already known now.
      (syms_of_alloc): Add lispsym count to symbols_consed.
      * buffer.c (init_buffer_once): Compare to Qnil, not to make_number (0),
      when testing whether storage is all bits zero.
      * dispextern (struct image_type):
      * font.c (font_property_table):
      * frame.c (struct frame_parm_table, frame_parms):
      * keyboard.c (scroll_bar_parts, struct event_head):
      * xdisp.c (struct props):
      Use XSYMBOL_INIT (Qfoo) and struct Lisp_Symbol * rather than &Qfoo and
      Lisp_Object *, since Qfoo is no longer an object whose address can be
      taken.  All uses changed.
      * eval.c (run_hook): New function.  Most uses of Frun_hooks changed to
      use it, so that they no longer need to take the address of a Lisp sym.
      (syms_of_eval): Don't use DEFSYM on Vrun_hooks, as it's a variable.
      * frame.c (syms_of_frame): Add defsyms for the frame_parms table.
      * keyboard.c (syms_of_keyboard): Don't DEFSYM Qmenu_bar here.
      DEFSYM Qdeactivate_mark before the corresponding var.
      * keymap.c (syms_of_keymap): Use DEFSYM for Qmenu_bar and Qmode_line
      instead of interning their symbols; this avoids duplicates.
      (LISP_INITIALLY, TAG_PTR)
      (DEFINE_LISP_SYMBOL_BEGIN, DEFINE_LISP_SYMBOL_END, XSYMBOL_INIT):
      New macros.
      (LISP_INITIALLY_ZERO): Use it.
      (enum symbol_interned, enum symbol_redirect, struct Lisp_Symbol)
      (EXFUN, DEFUN_ARGS_MANY, DEFUN_ARGS_UNEVALLED, DEFUN_ARGS_*):
      Move decls up, to avoid forward uses.  Include globals.h earlier, too.
      (make_lisp_symbol): New function.
      (XSETSYMBOL): Use it.
      (DEFSYM): Now just a placeholder for make-docfile.
      * lread.c (DEFINE_SYMBOLS): Define, for globals.h.
      (intern_sym): New function, with body taken from old intern_driver.
      (intern_driver): Use it.  Last arg is now Lisp integer, not ptrdiff_t.
      All uses changed.
      (define_symbol): New function.
      (init_obarray): Define the C symbols taken from lispsym.
      Use plain DEFSYM for Qt and Qnil.
      * syntax.c (init_syntax_once): No need to worry about
      Qchar_table_extra_slots.
      58f2d6ef
  18. 04 Jan, 2015 1 commit
  19. 03 Jan, 2015 1 commit
  20. 01 Jan, 2015 2 commits
  21. 29 Dec, 2014 1 commit
    • Paul Eggert's avatar
      system-name's returned value can vary · f9acac75
      Paul Eggert authored
      Also, the system-name variable is now obsolete.
      Fixes Bug#19438.
      * doc/lispref/os.texi (System Environment):
      * etc/NEWS: Document this.
      * doc/misc/efaq.texi:
      (Displaying the current file name in the titlebar):
      * lisp/desktop.el (desktop-save-frameset):
      * lisp/dnd.el (dnd-get-local-file-uri):
      * lisp/gnus/message.el (message-make-fqdn):
      * lisp/gnus/nnvirtual.el (nnvirtual-retrieve-headers)
      (nnvirtual-update-xref-header):
      * lisp/nxml/rng-uri.el (rng-uri-file-name-1):
      * lisp/org/org-clock.el (org-clock-save):
      * src/filelock.c (current_lock_owner):
      * src/xrdb.c (get_environ_db):
      * src/xterm.c (same_x_server):
      * src/xterm.c (x_term_init):
      Prefer (system-name) to system-name, and avoid naming
      locals 'system-name'.
      * doc/misc/smtpmail.texi (Server workarounds): Fix grammar.
      * lisp/startup.el (system-name): Now an obsolete variable.
      * src/editfns.c (cached_system_name): New static var.
      (init_and_cache_system_name): New function.
      (init_editfns, Fsystem_name): Use it.
      (syms_of_editfns): Initialize it and Vsystem_name to the same value.
      * src/sysdep.c [HAVE_SOCKETS]: Don't include <sys/socket.h>, <netdb.h>.
      (h_errno) [TRY_AGAIN && !HAVE_H_ERRNO]: Remove decl.
      (init_system_name) [HAVE_SOCKETS]: Don't canonicalize the name.
      Don't create a new string if the current value is already correct.
      f9acac75
  22. 22 Dec, 2014 3 commits
    • Jan D's avatar
      Keep maximized when going fullscreen. · 8e818d17
      Jan D authored
      Author:
      Fixes: Bug#19427
      
      * xterm.c (do_ewmh_fullscreen): Don't remove maximized_horz/vert
      when going to fullscreen (Bug#19427).
      8e818d17
    • Jan D's avatar
      Fix setting icon for Gtk+ on non-initial frame. · 6f3f6050
      Jan D authored
      Fixes: debbugs:19403
      
      * xterm.c (x_bitmap_icon): Partly revert change from 2014-03-21 which
      breaks icon setting for Gtk+ except for initial frame.
      6f3f6050
    • Paul Eggert's avatar
      Use bool for boolean in xterm.c · 455e5469
      Paul Eggert authored
      * frame.h, nsterm.m, w32term.c, w32term.h, xterm.c:
      (x_set_window_size, x_bitmap_icon):
      * nsterm.m (ns_frame_raise_lower, x_new_font):
      * termhooks.h (struct terminal.toggle_invisible_pointer_hook)
      (struct terminal.frame_raise_lower_hook):
      * w32term.c (w32_frame_raise_lower):
      * xterm.c, xterm.h (x_text_icon):
      * xterm.c (x_update_window_begin, x_update_window_end)
      (x_update_end, x_after_update_window_line)
      (x_set_glyph_string_gc, x_draw_glyph_string_background)
      (x_draw_glyph_string_foreground)
      (x_draw_composite_glyph_string_foreground)
      (x_alloc_lighter_color, x_draw_relief_rect)
      (x_draw_glyph_string_box, x_draw_image_relief)
      (x_draw_image_glyph_string, x_draw_stretch_glyph_string)
      (x_draw_underwave, x_draw_glyph_string, x_show_hourglass)
      (x_hide_hourglass):
      (XFillRectangle) [HAVE_GTK3]:
      (XTtoggle_invisible_pointer, frame_highlight, frame_unhighlight)
      (x_focus_changed, x_find_modifier_meanings, note_mouse_movement)
      (XTmouse_position, xt_action_hook, xt_horizontal_action_hook)
      (x_send_scroll_bar_event, xm_scroll_callback)
      (xg_scroll_callback, xaw_jump_callback, xaw_scroll_callback)
      (x_create_toolkit_scroll_bar)
      (x_create_horizontal_toolkit_scroll_bar)
      (x_set_toolkit_horizontal_scroll_bar_thumb, x_scroll_bar_create)
      (x_scroll_bar_set_handle, XTset_vertical_scroll_bar)
      (XTset_horizontal_scroll_bar, x_scroll_bar_expose)
      (x_scroll_bar_handle_click, x_scroll_bar_note_movement)
      (x_scroll_bar_report_motion)
      (x_horizontal_scroll_bar_report_motion, x_net_wm_state)
      (handle_one_xevent, XTread_socket, x_draw_bar_cursor)
      (x_draw_window_cursor, x_clear_errors)
      (x_trace_wire, x_new_font, x_set_offset, wm_supports)
      (set_wm_state, x_set_sticky, get_current_wm_state)
      (do_ewmh_fullscreen, x_handle_net_wm_state)
      (x_check_expected_move, x_sync_with_move, x_wait_for_event)
      (x_set_window_size_1, XTframe_raise_lower)
      (x_make_frame_visible, x_iconify_frame)
      (x_timeout_atimer_activated_flag, same_x_server, x_display_ok)
      (x_term_init, x_process_timeouts, x_activate_timeout_atimer)
      (x_delete_terminal, x_initialize, syms_of_xterm):
      Use bool for boolean.
      455e5469
  23. 11 Dec, 2014 1 commit
  24. 07 Nov, 2014 1 commit
    • Martin Rudalics's avatar
      Improve inhibiting of implied frame resizes. · 1c50b3ad
      Martin Rudalics authored
      * frames.texi (Size and Position): Rewrite description of
      `frame-inhibit-implied-resize'.
      * cus-start.el (frame-resize-pixelwise): Fix group.
      (frame-inhibit-implied-resize): Add entry.
      * dispnew.c (change_frame_size_1): Fix call of
      adjust_frame_size.
      * frame.c (Qsize, Qframe_position, Qframe_outer_size)
      (Qframe_inner_size, Qexternal_border_size, Qtitle_height)
      (Qmenu_bar_external, Qmenu_bar_size, Qtool_bar_external)
      (Qtool_bar_size): New constants.
      (frame_inhibit_resize, adjust_frame_size): New argument to
      handle case where frame_inhibit_implied_resize is a list.
      (Fmake_terminal_frame, Fset_frame_height, Fset_frame_width)
      (Fset_frame_size, x_set_left_fringe, x_set_right_fringe)
      (x_set_right_divider_width, x_set_bottom_divider_width)
      (x_set_vertical_scroll_bars, x_set_horizontal_scroll_bars)
      (x_set_scroll_bar_width, x_set_scroll_bar_height): Update
      callers.
      (frame-inhibit-implied-resize): Rewrite doc-string.
      * frame.h (frame_inhibit_resize, adjust_frame_size): Fix
      external declarations.
      (Qframe_position, Qframe_outer_size)
      (Qframe_inner_size, Qexternal_border_size, Qtitle_height)
      (Qmenu_bar_external, Qmenu_bar_size, Qtool_bar_external)
      (Qtool_bar_size): Extern them.
      * gtkutil.c (FRAME_TOTAL_PIXEL_HEIGHT, FRAME_TOTAL_PIXEL_WIDTH)
      (xg_height_or_width_changed): Remove.
      (xg_frame_set_char_size): Adjust adjust_frame_size calls.
      (menubar_map_cb, xg_update_frame_menubar, free_frame_menubar)
      (tb_size_cb, update_frame_tool_bar, free_frame_tool_bar)
      (xg_change_toolbar_position): Call adjust_frame_size directly.
      * nsfns.m (x_set_internal_border_width, Fx_create_frame): Fix
      calls of adjust_frame_size.
      * w32fns.c (x_set_internal_border_width, x_set_menu_bar_lines)
      (Fx_create_frame, x_create_tip_frame): Adjust adjust_frame_size
      calls.
      (x_set_tool_bar_lines, x_change_tool_bar_height): Make sure that
      frame can get resized when tool-bar-lines parameter changes from
      or to zero.
      (Fw32_frame_menu_bar_size): Return fourth value.
      (Fw32_frame_rect): Block input around system calls
      (Fx_frame_geometry): New function.
      * w32menu.c (set_frame_menubar): Adjust adjust_frame_size call.
      * w32term.c (x_new_font): Adjust adjust_frame_size call.
      * widget.c (EmacsFrameSetCharSize): Adjust frame_inhibit_resize
      call.
      * window.c (Fset_window_configuration): Adjust adjust_frame_size
      call.
      * xfns.c (x_set_menu_bar_lines, x_set_internal_border_width)
      (Fx_create_frame): Adjust adjust_frame_size calls.
      (x_set_tool_bar_lines, x_change_tool_bar_height): Make sure that
      frame can get resized when tool-bar-lines parameter changes from
      or to zero.
      (Fx_frame_geometry): New function.
      * xmenu.c (update_frame_menubar): On Lucid call
      adjust_frame_size with one pixel less height to avoid that
      repeatedly adding/removing the menu bar grows the frame.
      (free_frame_menubar): On Motif arrange to optionally preserve
      the old frame height when removing the menu bar.
      * xterm.c (x_new_font): Adjust adjust_frame_size call.
      1c50b3ad
  25. 19 Oct, 2014 1 commit