1. 23 Oct, 2014 2 commits
    • Paul Eggert's avatar
      Fix race in 'make info/dir', and speed it up. · 78b215ff
      Paul Eggert authored
      * Makefile.in (AWK, srcdir_doc_info_dir_inputs, info_dir_inputs):
      New macros.
      (clean): Remove info-dir.*.
      (info_dir_deps): Depend on make-info-dir too.
      Fix bug with wildcards that weren't expanded.
      (${srcdir}/info/dir): Make sure info directory exists.
      Don't call pwd; just redirect make-info-dir's stdout to temp file.
      * build-aux/make-info-dir: Send output to stdout.
      Take input file names from args.
      Fix a "FIXME inefficient looping" by using awk's associative arrays.
      Basically, this rewrites the script from scratch, and speeds up
      'make info/dir' from 2.6s to 0.07s on my platform.
      78b215ff
    • Stefan Monnier's avatar
      * lisp/select.el: Use lexical-binding. · d361bcfb
      Stefan Monnier authored
      (gui-set-selection): Provide an implementation for non-GUI frames.
      * lisp/term/x-win.el: Use lexical-binding.
      (x-clipboard-yank): Fix up missed renamings.
      * lisp/term/w32-win.el (libgif-version, libjpeg-version): Silence compiler.
      (w32--set-selection): Fix up var names.
      * lisp/term/pc-win.el: Use lexical-binding.
      (w16-selection-exists-p): Silence compiler warning.
      (w16-selection-owner-p): Fix up missed renamings.
      
      * lisp/emacs-lisp/bytecomp.el (byte-compile-form): Remove left-over debug.
      
      * lisp/frame.el (frame-notice-user-settings): Fix excessive quoting.
      
      Fixes: debbugs:18791
      d361bcfb
  2. 22 Oct, 2014 4 commits
    • Eli Zaretskii's avatar
      Fix bug #18778 with slow redisplay of bracketed L2R text with long lines. · 6a7884ca
      Eli Zaretskii authored
       src/bidi.c (bidi_cache_reset_to): New function.
       (bidi_cache_reset): Call it.
       (bidi_init_it, bidi_line_init): Initialize the bracket_pairing_pos
       member to -1.
       (bidi_resolve_explicit): Reset bracket_pairing_pos and
       bracket_enclosed_type only if bracket_pairing_pos's value is not
       ZV.
       (MAX_BPA_STACK): Make sure the value is signed.
       (PUSH_BPA_STACK): If the BPA stack overflows, don't bail out, but
       stop pushing values onto the stack.
       (bidi_find_bracket_pairs): If the bracketed text is only on the
       base embedding level, remove all the states cached by this
       function from the cache, and return zero, so that the brackets in
       this segment of text are processed as normal neutrals.
       (bidi_resolve_brackets): Detect the brackets that are to be
       processed as neutrals, and don't call bidi_find_bracket_pairs on
       them.
      6a7884ca
    • Tassilo Horn's avatar
      Improve viewing plain text contents of document · 36749d80
      Tassilo Horn authored
      * doc/emacs/misc.texi (Document View): Adapt to latest doc-view changes wrt
      viewing the document's plain text contents.
      
      * lisp/doc-view.el (doc-view-open-text): View the document's plain text
      in the current buffer instead of a new one.
      (doc-view-toggle-display): Handle the case where the current
      buffer contains the plain text contents of the document.
      (doc-view-initiate-display): Don't switch to fallback mode if the
      user wants to view the doc's plain text.
      (doc-view-set-doc-type): Use assoc-string instead of
      assoc-ignore-case.
      36749d80
    • Martin Rudalics's avatar
      Add two "+++"s to frame section of NEWS. · 8ae9147a
      Martin Rudalics authored
      8ae9147a
    • Martin Rudalics's avatar
      Rewrite "Size and Position" section in frames.texi. · 4b63c18a
      Martin Rudalics authored
      * frames.texi (Size Parameters): Replace "frame contents" by
      "frame's text area".  Add reference to Size and Position
      section.
      (Size and Position): Major rewrite.  Add explanations for
      frame's default font, text and display areas.  Add descriptions
      for `set-frame-font', `frame-text-height', `frame-text-width'
      and `frame-inhibit-implied-resize'.
      4b63c18a
  3. 21 Oct, 2014 7 commits
    • Stefan Monnier's avatar
      * lisp/mouse.el (mouse-drag-line): Use set-transient-map. · 18b8557f
      Stefan Monnier authored
      (mouse--down-1-maybe-follows-link): Remove unused var `this-event'.
      (mouse-yank-secondary): Use gui-get-selection.
      (mouse--down-1-maybe-follows-link): Use read-key.
      
      * lisp/subr.el (read-key): Fix clicks on the mode-line.
      (set-transient-map): Return exit function.
      
      * lisp/xt-mouse.el: Add `event-kind' property on the fly from
      xterm-mouse-translate-1 rather than statically at the outset.
      
      Fixes: debbugs:18015
      18b8557f
    • Daniel Colascione's avatar
      Stop vc from burying buffers sometimes · be5722e9
      Daniel Colascione authored
      * vc/vc-dispatcher.el (vc-resynch-window): Tell view-mode not to
      change window configuration when we turn it off.
      be5722e9
    • Stefan Monnier's avatar
      Get rid of backend-dependent selection-handling functions for kill/yank · a046b8dd
      Stefan Monnier authored
      and make it generic instead by relying on the lower-level selection
      management functions.
      
      * select.el (select-enable-clipboard): Rename from
      gui-select-enable-clipboard.
      (select-enable-primary): Move from x-win.el and rename from
      x-select-enable-primary.
      (gui-last-selected-text): Remove.
      (gui--last-selected-text-clipboard, gui--last-selected-text-primary):
      New vars.
      (gui-select-text): Rewrite, based on x-win.el's old x-select-text.
      (gui-select-text-alist, gui-selection-value-alist): Remove.
      (x-select-request-type): Move from x-win.el.
      (gui--selection-value-internal): New function, taken from x-win's
      x-selection-value-internal.
      (gui-selection-value): Rewrite, based on x-win.el's old x-selection-value.
      (gui-set-selection-alist): Rename from gui-own-selection-alist and
      extend it to handle a nil value as a "disown" request.
      (gui-disown-selection-alist): Remove.
      (xselect-convert-to-delete): Adjust accordingly.
      (gui-set-selection): Simplify accordingly as well.  Use dotimes.
      
      * lisp/frame.el (gui-method): Use window-system rather than framep.
      (gui-method-declare): The tty case is now nil rather than t.
      (make-frame): Adjust accordingly.
      
      * lisp/term/x-win.el (x-last-selected-text-primary)
      (x-select-enable-primary): Remove (moved to select.el).
      (x-select-request-type): Move to select.el.
      (x-selection-value-internal, x--selection-value): Remove functions.
      (gui-selection-value, gui-select-text): Remove moethods.
      (gui-set-selection): Merge own and disown methods.
      
      * lisp/startup.el (command-line): Adjust now that `gui-method' expects nil
      for ttys.
      
      * lisp/term/ns-win.el (ns-get-pasteboard, ns-set-pasteboard)
      (ns-selection-value): Remove functions.
      (gui-select-text, gui-selection-value): Don't define method any more.
      (gui-set-selection): Merge the old own and disown methods.
      (gui-selection-exists-p, gui-get-selection): Adjust to new name of
      underlying C primitive.
      
      * lisp/term/pc-win.el (w16-get-selection-value): Add dummy argument and drop
      test of gui-select-enable-clipboard, to make it usable as
      a gui-get-selection method.
      (gui-selection-exists-p): Adjust to new name of C primitive.
      (gui-set-selection): Merge own and disown methods.
      (gui-select-text, gui-selection-value): Delete methods.
      (w16--select-text): Delete function.
      
      * lisp/term/w32-win.el (w32--select-text, w32--get-selection-value):
      Delete function (move functionality into w32--set-selection and
      w32--get-selection).
      (gui-select-text, gui-selection-value): Don't define methods.
      (w32--set-selection, w32--get-selection, w32--selection-owner-p):
      New functions.
      (gui-get-selection, gui-selection-owner-p, gui-selection-exists-p):
      Use them.
      (gui-selection-exists-p): Adjust to new name of C primitive.
      
      * src/nsselect.m (ns_get_local_selection): Signal error rather than `quit'.
      (Fns_own_selection_internal): Tighten scoping.
      (Fns_selection_exists_p): Rename from Fx_selection_exists_p.
      (Fns_get_selection): Rename from Fx_get_selection_internal.
      (Fns_get_selection_internal, Fns_store_selection_internal):
      Remove functions.
      (syms_of_nsselect): Adjust accordingly.
      
      * src/w16select.c (Fw16_selection_exists_p): Rename from
      Fx_selection_exists_p.
      (syms_of_win16select): Adjust accordingly.
      
      * src/w32select.c (Fw32_selection_exists_p): Rename from
      Fx_selection_exists_p.
      (syms_of_w32select): Adjust accordingly.
      a046b8dd
    • Martin Rudalics's avatar
      Handle wrapped menu bar lines when resizing frames with Windows API. · e5b3b7d3
      Martin Rudalics authored
      * w32fns.c (Fw32_frame_menu_bar_size): New function.
      * w32term.c (x_set_window_size): Account for wrapped menu bar
      lines when setting up frame height (Bug#15174 and Bug#18720).
      (w32_add_wrapped_menu_bar_lines): New variable.
      e5b3b7d3
    • Stefan Monnier's avatar
      * lisp/net/newst-reader.el (newsticker--image-read): Simplify. · 80aabe42
      Stefan Monnier authored
      (newsticker--icon-read): Use dolist and fix free var error.
      80aabe42
    • Stefan Monnier's avatar
      * lisp/imenu.el (imenu--menubar-keymap): New var. · e538605e
      Stefan Monnier authored
      (imenu-add-to-menubar): Set it to remember the keymap we used.
      (imenu-update-menubar): Use it instead of asking lookup-key.
      e538605e
    • Stefan Monnier's avatar
      Merge from emacs-24 · eed18bf1
      Stefan Monnier authored
      eed18bf1
  4. 20 Oct, 2014 13 commits
  5. 19 Oct, 2014 9 commits
    • Jan Djärv's avatar
      Fix spelling error. · d4107b0a
      Jan Djärv authored
      * NEWS: Teroffs and detachable tool bar for Gtk+ is gone.
      d4107b0a
    • Eli Zaretskii's avatar
      a7bbb82d
    • Jan Djärv's avatar
      * gtkutil.c (create_dialog): Don't use gtk_dialog_get_action_area on · b9bdab7a
      Jan Djärv authored
      Gt+ >= 3.12, or gtk_misc_set_alignment on Gtk+ >= 3.14.
      (make_widget_for_menu_item): Don't use gtk_misc_set_alignment on
      Gtk+ >= 3.14 (Bug#18674).
      (update_frame_tool_bar): Don't use  gtk_misc_set_padding on
      Gtk+ >= 3.14 (Bug#18674).
      
      * gtkutil.c (xg_update_menubar, xg_update_menu_item): Only call
      g_object_notify for label if Gtk+ >= 2.16 (Bug#16522).
      b9bdab7a
    • Jan Djärv's avatar
      * src/xterm.c (handle_one_xevent): Check return value from · 5e334468
      Jan Djärv authored
      x_handle_net_wm_state, remove net_wm_state_hidden_seen.
      (get_current_wm_state): Remove net_wm_state_hidden_seen setting.
      
      * src/xterm.h (x_output): Remove net_wm_state_hidden_seen.
      
      Fixes: debbugs:18722
      5e334468
    • Jan Djärv's avatar
      99329665
    • Ulf Jasper's avatar
      Newsticker: Show feedicons in treeview. Small fix in opml export. · 8259e90e
      Ulf Jasper authored
      * etc/images/newsticker/README: Add rss-feed.png, rss-feed.svg.
      
      * etc/images/newsticker/rss-feed.png: New.
      
      * etc/images/newsticker/rss-feed.svg: New.
      
      * lisp/net/newst-backend.el: Require url-parse.
      (newsticker--get-news-by-wget): Store feed name as process property.
      (newsticker--sentinel): Read feed name from process property.
      (newsticker--sentinel-work): Rename argument name to feed-name.
      Rename variable imageurl to image-url.  Pick icon url from Atom
      1.0 data.  Launch download of feed icon.
      (newsticker--get-icon-url-atom-1.0): New.
      (newsticker--unxml)
      (newsticker--unxml-node)
      (newsticker--unxml-attribute): Documentation.
      (newsticker--icons-dir): New.
      (newsticker--image-get): New arguments FILENAME and DIRECTORY.
      Use `url-retrieve' if `newsticker-retrieval-method' is 'intern.
      (newsticker--image-download-by-wget): New.  Use process properties
      for storing informations.
      (newsticker--image-sentinel): Read informations from process properties.
      (newsticker--image-save)
      (newsticker--image-remove)
      (newsticker--image-download-by-url)
      (newsticker--image-download-by-url-callback): New.
      (newsticker-opml-export): Handle url list entries containing a
      function instead of an url string.
      
      * lisp/net/newst-reader.el (newsticker-html-renderer): Whitespace.
      (newsticker--print-extra-elements)
      (newsticker--do-print-extra-element): Documentation
      (newsticker--image-read): Optionally limit image height.  Use
      imagemagick if possible.
      (newsticker--icon-read): New.
      
      * lisp/net/newst-treeview.el (newsticker--treeview-item-show): Limit height of feed logo.
      (newsticker--treeview-tree-expand): Use feed icons in treeview.
      (newsticker--tree-widget-icon-create): New.  Set the tree widget icon.
      (newsticker--tree-widget-leaf-icon): Use feed icon.
      8259e90e
    • Jan Djärv's avatar
      * gtkutil.c (create_dialog): Don't use gtk_dialog_get_action_area on · 58af643d
      Jan Djärv authored
      Gt+ >= 3.12, or gtk_misc_set_alignment on Gtk+ >= 3.14.
      (make_widget_for_menu_item): Don't use gtk_misc_set_alignment on
      Gtk+ >= 3.14 (Bug#18674).
      (update_frame_tool_bar): Don't use  gtk_misc_set_padding on
      Gtk+ >= 3.14 (Bug#18674).
      58af643d
    • Paul Eggert's avatar
      Merge from gnulib. · 821339c9
      Paul Eggert authored
      This incorporates:
      2014-10-18 readlinkat: port to AIX 7.1
      2014-10-07 fcntl: fix error reporting by dupfd
      * lib/fcntl.c, lib/readlinkat.c, lib/unistd.in.h, m4/readlinkat.m4:
      * m4/unistd_h.m4: Update from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      821339c9
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/eieio: A bit more cleanup, removing compat code. · 26533185
      Stefan Monnier authored
      * lisp/emacs-lisp/eieio-core.el (eieio-compiled-function-arglist): Remove.
      (eieio--with-scoped-class): Use `declare'.
      (eieio-defclass): Remove compatibility code.
      (no-method-definition, no-next-method, inconsistent-class-hierarchy)
      (invalid-slot-type, unbound-slot, invalid-slot-name): Use define-error.
      * lisp/emacs-lisp/eieio-opt.el (eieio-lambda-arglist): Remove.
      Use help-function-arglist instead.
      26533185
  6. 18 Oct, 2014 5 commits
    • Paul Eggert's avatar
      * gtkutil.c: Remove no-longer-used code. · 4e946894
      Paul Eggert authored
      (xg_update_menubar): Remove unused local and unnecessary call to
      gtk_menu_item_get_submenu.
      (XG_TOOL_BAR_PROXY_BUTTON, xg_tool_bar_proxy_callback)
      (xg_get_tool_bar_widgets, xg_tool_bar_proxy_help_callback)
      (TOOLBAR_TOP_WIDGET): Remove; no longer used.
      4e946894
    • Jan Djärv's avatar
      6e5ff616
    • Jan Djärv's avatar
    • Jan Djärv's avatar
      Handle deprecated Gtk+ stuff for version <= 3.10 · 3f4c6d52
      Jan Djärv authored
      * lisp/term/x-win.el (x-gtk-stock-map): Add icon names suggested as
      replacements to stock names before stock names in a list.
      Cdr may be a list, each name is tried in turn until one is found.
      
      * src/gtkutil.c (XG_TEXT_CANCEL, XG_TEXT_OPEN, XG_TEXT_OK): New defines
      to handle Gtk versions.
      (xg_get_file_with_chooser): Use them.
      (xg_have_tear_offs, tearoff_remove, tearoff_activate): Remove
      (create_menus): Remove teroff argument and code.
      Remove call to gtk_menu_set_title.
      (xg_update_menubar, xg_update_submenu): Remove tearoff code.  Adjust
      args to create_menus.
      (xg_tool_bar_menu_proxy, xg_tool_bar_detach_callback)
      (xg_tool_bar_attach_callback, TOOLBAR_TOP_WIDGET): Remove.
      (xg_pack_tool_bar): Replace TOOLBAR_TOP_WIDGET, remove detach code.
      (xg_make_tool_item): Remove detach code.
      (xg_update_tool_bar_sizes): Replace TOOLBAR_TOP_WIDGET.
      (find_icon_from_name): New function.
      (update_frame_tool_bar): Remove GtkStockItem code, move to
      find_icon_from_name.  Let stock be a list of icon names to try.
      Only use gtk_image_new_from_stock on Gtk+ < 3.10.
      Replace TOOLBAR_TOP_WIDGET.
      (free_frame_tool_bar, xg_change_toolbar_position ): Replace
      TOOLBAR_TOP_WIDGET.
      (xg_initialize): Remove tearoff code.
      
      * src/gtkutil.h (xg_have_tear_offs): Remove declaration.
      
      * src/xmenu.c (set_frame_menubar): Remove GTK block that calls
      xg_have_tear_offs.
      
      * src/xterm.h (handlebox_widget): Remove.
      3f4c6d52
    • Eli Zaretskii's avatar
      A better fix for drawing hollow cursor on X on 1-pixel thin space characters. · a4c80e35
      Eli Zaretskii authored
       src/xterm.c (x_draw_bar_cursor, x_draw_hollow_cursor): Subtract 1
       pixel from the window's cursor glyph width, since X renders hollow
       blocks 1 pixel wider than the 'width' parameter.
       src/xdisp.c (get_phys_cursor_geometry): Don't subtract 1 pixel from
       glyph->pixel_width; this is now done in xterm.c.
      a4c80e35