1. 14 Jul, 2016 5 commits
  2. 13 Jul, 2016 5 commits
  3. 12 Jul, 2016 9 commits
    • John Wiegley's avatar
      Revert "Cleanup tooltips" · 54b7eb0d
      John Wiegley authored
      This reverts commit 20038f8a.
      
      I am reverting this change because it was applied without prior discussion
      on emacs-devel, and has been found to break the NS port.  It needs more
      testing and review before it should be applied here.
      54b7eb0d
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/cl-macs.el (cl--prog): New function · 9c8c3a54
      Stefan Monnier authored
      (cl-prog, cl-prog*): New macros.
      9c8c3a54
    • Stefan Monnier's avatar
      * cl-generic.el (cl-defmethod): Make docstring dynamic · 3698c4e4
      Stefan Monnier authored
      * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic.
      (cl--generic-make-defmethod-docstring): New function for that.
      (cl-defmethod, cl-generic-generalizers): Tweak docstrings accordingly.
      (cl-generic-define-method, cl--generic-describe): Change `load-history'
      format of cl-defmethods, so as not to confused methods with equal
      specializers but different qualifiers.
      * lisp/emacs-lisp/eieio-core.el (cl-generic-generalizers): Provide docstrings.
      3698c4e4
    • Eli Zaretskii's avatar
    • Eli Zaretskii's avatar
      Don't install keyboard hook when debugged on MS-Windows · 1048151c
      Eli Zaretskii authored
      * src/w32fns.c (setup_w32_kbdhook): Don't install the keyboard
      hook if we are being debugged.  This avoids hosing the debugger,
      because the hook is global, and is called in the context of the
      thread which installed it, and that thread is stopped when GDB has
      control.  Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
      1048151c
    • Alan Mackenzie's avatar
      Amend CC Mode to handle big C++ raw strings correctly. · a1db933c
      Alan Mackenzie authored
      Problems were caused by such a string spanning jit-lock chunks, and by a flaw
      in the +-500 bytes boundaries imposed for macros.
      
      * lisp/progmodes/cc-mode.el (c-extend-region-for-CPP): Check the +-500 byte
      macro boundaries here.
      (c-extend-font-lock-region-for-macros): Remove the check on the +-500 byte
      lower boundary.  Fix the check on the upper boundary.
      
      * lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Handle the starting
      point already being within a raw string.
      
      * lisp/progmodes/cc-engine.el (c-raw-string-pos)
      (c-depropertize-raw-strings-in-region, c-after-change-re-mark-raw-strings):
      Modify regexp element "\\{,16\\}" to "\\{0,16\\}" for greater compatibility
      with other Emacsen.
      a1db933c
    • Stephen Berman's avatar
    • Dmitry Antipov's avatar
      Cleanup tooltips · 20038f8a
      Dmitry Antipov authored
      * src/dispextern.h (toplevel): Remove 'tip_frame' and 'tip_window' decls.
      * src/frame.h (struct frame): New bitfield to indicate tooltip frame.
      (FRAME_TOOLTIP_P): New macro.
      * src/frame.c (make_frame): Mark new frame as regular frame by default.
      (Fframe_list, delete_frame): Redesign to use FRAME_TOOLTIP_P.
      (syms_of_frame): Don't DEFSYM 'Qtooltip' but use 'Qtooltip_timer'
      and 'Qtooltip_parameters' instead.
      * src/gtkutil.h (toplevel): Add 'xg_hide_tip' decl.
      * src/gtkutil.c (xg_hide_tip): New function.
      (xg_hide_tooltip): Adjust to cancel GTK event loop timeout if needed.
      * src/menu.c (Fx_popup_menu): Adjust call to Fx_hide_tip.
      * src/nsfns.c (toplevel): Remove 'tip_frame' leftover.
      * src/w32fns.c (unwind_create_tip_frame): Remove.
      (w32_display_monitor_attributes_list)
      (w32_display_monitor_attributes_list_fallback): Use FRAME_TOOLTIP_P.
      (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
      (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
      as a tooltip frame and record it using appropriate display info.
      (x_hide_tooltip): Add frame arg.
      (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
      base frame parameters, store tooltip hide timer among tooltip frame
      parameters.
      (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
      (syms_of_w32fns): Don't DEFSYM 'Qtip_frame', don't initialize
      and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
      * src/w32term.c (w32_read_socket): Extract tooltip window id from
      per-display data.  Use FRAME_TOOLTIP_P where appropriate.
      (x_new_font): Use FRAME_TOOLTIP_P.
      (x_free_frame_resources): Reset pointer to tooltip frame.
      * src/w32term.h (struct w32_display_info): New member 'w32_tooltip_frame'.
      * src/xdisp.c (init_iterator, x_consider_frame_title, prepare_menu_bars):
      Use FRAME_TOOLTIP_P.
      * src/xfns.c (x_make_monitor_attribute_list)
      (Fx_display_monitor_attributes_list): Likewise.
      (unwind_create_tip_frame): Remove.
      (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
      (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
      as a tooltip frame and record it using appropriate display info.
      (x_hide_tooltip): Add frame arg.
      (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
      base frame parameters, store tooltip hide timer among tooltip frame
      parameters.  To hide GTK system tooltip, use timeout hooked into GTK
      event loop.
      (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
      (syms_of_xfns): Don't DEFSYM 'Qtip_frame', don't initialize
      and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
      * src/xterm.c (handle_one_xevent): Extract tooltip window id from
      per-display data.  Use FRAME_TOOLTIP_P where appropriate.
      (x_new_font, x_set_window_size): Use FRAME_TOOLTIP_P.
      (x_free_frame_resources): Reset pointer to tooltip frame.
      * src/xterm.h (struct x_display_info): New member 'x_tooltip_frame'.
      (struct x_output) [USE_GTK_TOOLTIP]: New member 'ttip_timeout'.
      20038f8a
    • Stefan Monnier's avatar
  4. 11 Jul, 2016 10 commits
  5. 10 Jul, 2016 3 commits
  6. 09 Jul, 2016 8 commits
    • Mario Lang's avatar
      An efficient built-in mapcan · 466ee1b3
      Mario Lang authored
      A built-in version of `mapcan' avoids consing up (and GC'ing) the
      intermediate list.
      
      * src/fns.c (Fmapcan): New built-in.
      (syms_of_fns): Define.
      
      * lisp/emacs-lisp/cl.el (mapcan): Remove defalias.
      
      * lisp/emacs-lisp/cl-extra.el (cl-mapcan): Use built-in `mapcan'
      if only one sequence is provided.
      
      * lisp/progmodes/hideif.el (hif-delimit):
      * lisp/dired-aux.el (dired-do-find-regexp):
      * lisp/woman.el (woman-parse-colon-path): Use `mapcan' instead of
      `cl-mapcan'.
      
      * lisp/woman.el (eval-when-compile): Require 'cl-lib only when
      compiling.
      
      * lisp/mouse.el (mouse-buffer-menu-map):
      * lisp/net/pop3.el (pop3-uidl-dele):
      * lisp/progmodes/gud.el (gud-jdb-build-source-files-list):
      * lisp/cedet/semantic/db-find.el (semanticdb-fast-strip-find-results):
      * lisp/cedet/semantic/symref/grep.el (semantic-symref-derive-find-filepatterns):
      * lisp/gnus/nnmail.el (nnmail-split-it):
      * lisp/gnus/gnus-sum.el (gnus-articles-in-thread):
      * lisp/gnus/gnus-registry.el (gnus-registry-sort-addresses):
      * lisp/gnus/gnus-util.el (gnus-mapcar): Use `mapcan'.
      466ee1b3
    • Tino Calancha's avatar
      Detect aliases to built-in functions · c3223dd5
      Tino Calancha authored
      * lisp/help-fns.el (describe-function-1): Check for aliases
      defined with (defalias alias (symbol-function built-in)) (Bug#23887).
      
      * test/lisp/help-fns-tests.el (help-fns-test-bug23887): Untag as
      failing this test.
      c3223dd5
    • Michael Albinus's avatar
      Avoid recursive detection of remote uid and gid in tramp-gvfs.el · bfc29a5b
      Michael Albinus authored
      * lisp/net/tramp-gvfs.el (tramp-gvfs-get-remote-uid-gid-in-progress):
      New variable.
      (tramp-gvfs-maybe-open-connection): Use it.
      
      * test/lisp/net/tramp-tests.el (tramp-test18-file-attributes):
      Reorder test.
      bfc29a5b
    • Jürgen Hötzel's avatar
      Wrap around error in coreutil's ls · e4adb6cd
      Jürgen Hötzel authored
      * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Add switch
      "--quoting-style=literal" if remote host supports quoting style.
      Recent versions of coreutils changed default quoting style to
      "--quoting=shell-escape".
      e4adb6cd
    • Eli Zaretskii's avatar
      Minor tweaks of copying text properties when padding strings · 0a2aedfe
      Eli Zaretskii authored
      * src/editfns.c (styled_format): Don't include padding on the left
      in the properties at the beginning of the string.  (Bug#23897)
      
      * test/src/editfns-tests.el (format-properties): Add tests for
      faces when the string is padded on the left or on the right.
      0a2aedfe
    • Mario Lang's avatar
      e52ad7fd
    • Mario Lang's avatar
      No need to require the same feature twice. · 47f6336e
      Mario Lang authored
      * lisp/dired-aux.el (require 'cl-lib): Remove.
      47f6336e
    • Mark Oteiza's avatar
      Turn on lexical binding · 316bbd95
      Mark Oteiza authored
      * lisp/net/secrets.el (secrets-collection-handler): Use cl-pushnew.
      (secrets-search-items, secrets-create-item): Use append.
      (secrets-show-secrets): Remove unused binding.
      (secrets-expand-item, secrets-tree-widget-after-toggle-function):
      Ignore unused arguments.
      316bbd95