emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] scratch/hyperbole-merge-7.0.2b e803881 01/23: Fixed a cyclic Lisp


From: Stefan Monnier
Subject: [elpa] scratch/hyperbole-merge-7.0.2b e803881 01/23: Fixed a cyclic Lisp library require; improved multi-frame hkey-throw
Date: Tue, 5 Feb 2019 16:11:17 -0500 (EST)

branch: scratch/hyperbole-merge-7.0.2b
commit e8038811c79ff76b6f188acf360a454a8ef7b753
Author: Bob Weiner <address@hidden>
Commit: Bob Weiner <address@hidden>

    Fixed a cyclic Lisp library require; improved multi-frame hkey-throw
    
    * hmouse-drv.el (hkey-throw): Partially solved temporary display of newly 
created frames (when not given focus
        initially with a '(no-focus-on-map . t) property), so hkey-throw to a 
new target frame now temporarily displays
        the target frame and then makes the start frame the uppermost frame.  
When on an item though, the item is
        not visible during the temporary display yet.
    
    * Makefile (texinfo): Added texinfo dependency target and added additional 
image dependencies in man/im.
    
    * hyperbole.el (require 'hmouse-drv): Changed from hmouse-key to prevent a 
require cycle during macro expansion.
        hmouse-key.el: Changed requires to just be during compile since 
hyperbole.el now includes these requires and
          will load hmouse-key.
---
 Changes           |  13 +++++++++++++
 Makefile          |   8 +++++---
 hmouse-drv.el     |  18 ++++++++++--------
 hmouse-key.el     |   2 +-
 hyperbole.el      |   5 ++---
 man/hyperbole.pdf | Bin 1263857 -> 1263857 bytes
 man/im/C-hh.png   | Bin 898836 -> 737355 bytes
 7 files changed, 31 insertions(+), 15 deletions(-)

diff --git a/Changes b/Changes
index 2911def..34d2859 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,16 @@
+2017-12-13  Bob Weiner  <address@hidden>
+
+* hmouse-drv.el (hkey-throw): Partially solved temporary display of newly 
created frames (when not given focus
+    initially with a '(no-focus-on-map . t) property), so hkey-throw to a new 
target frame now temporarily displays
+    the target frame and then makes the start frame the uppermost frame.  When 
on an item though, the item is
+    not visible during the temporary display yet.
+
+* Makefile (texinfo): Added texinfo dependency target and added additional 
image dependencies in man/im.
+
+* hyperbole.el (require 'hmouse-drv): Changed from hmouse-key to prevent a 
require cycle during macro expansion.
+    hmouse-key.el: Changed requires to just be during compile since 
hyperbole.el now includes these requires and
+      will load hmouse-key.
+
 2017-12-12  Bob Weiner  <address@hidden>
 
 * hversion.el: Pushed 7.0.2a test update.
diff --git a/Makefile b/Makefile
index 637283d..56640d2 100644
--- a/Makefile
+++ b/Makefile
@@ -256,16 +256,18 @@ version: doc
 # Build the Info, HTML and Postscript versions of the user manual and 
README.md.html.
 doc: info html pdf README.md.html
 
+texinfo: $(man_dir)/hyperbole.texi $(man_dir)/version.texi 
$(man_dir)/hkey-help.txt $(man_dir)/im/*.png
+
 info: $(man_dir)/hyperbole.info
-$(man_dir)/hyperbole.info: $(man_dir)/hyperbole.texi $(man_dir)/version.texi 
$(man_dir)/hkey-help.txt
+$(man_dir)/hyperbole.info: texinfo
        cd $(man_dir) && $(TEXI2INFO) hyperbole.texi
 
 html: $(man_dir)/hyperbole.html
-$(man_dir)/hyperbole.html: $(man_dir)/hyperbole.texi $(man_dir)/version.texi 
$(man_dir)/hkey-help.txt $(man_dir)/hyperbole.css
+$(man_dir)/hyperbole.html: texinfo $(man_dir)/hyperbole.css
        cd ${man_dir} && $(TEXI2HTML) hyperbole.texi
 
 pdf: $(man_dir)/hyperbole.pdf
-$(man_dir)/hyperbole.pdf: $(man_dir)/hyperbole.texi $(man_dir)/version.texi 
$(man_dir)/hkey-help.txt
+$(man_dir)/hyperbole.pdf: texinfo
        cd $(man_dir) && $(TEXI2PDF) hyperbole.texi
 
 # github-markdown is an npm, installed with: npm install markdown-to-html -g
diff --git a/hmouse-drv.el b/hmouse-drv.el
index 792f145..8cf1e90 100644
--- a/hmouse-drv.el
+++ b/hmouse-drv.el
@@ -469,23 +469,25 @@ The selected window does not change."
              (action-key-depress-args))
          (hypb:save-selected-window-and-input-focus
           (hmouse-item-to-window)
+          (sit-for 0) ;; Force display of release-window
           (unless (eq depress-frame (window-frame release-window))
-            (message "Buffer or item thrown to frame under this one")
             ;; Show the frame thrown to before it is covered when
             ;; input-focus is returned to the depress-frame.
-            ;;   (raise-frame (window-frame release-window))
-            ;;   (sit-for 1)
+            (raise-frame (window-frame release-window))
+            (switch-to-buffer (current-buffer) t t)
+            ;; Don't use sit-for here because it can be interrupted early.
+            (sleep-for 0.5)
             )))
       ;; Throw the current buffer
       (set-window-buffer release-window (current-buffer))
+      (sit-for 0) ;; Force display of release-window
       (unless (eq depress-frame (window-frame release-window))
-       (message "Buffer or item thrown to frame under this one")
        ;; Show the frame thrown to before it is covered when
        ;; input-focus is returned to the depress-frame.
-       ;;   (raise-frame (window-frame release-window))
-       ;;   (sit-for 1)
-       ;;   (select-frame-set-input-focus depress-frame)
-       ))))
+       (raise-frame (window-frame release-window))
+       ;; Don't use sit-for here because it can be interrupted early.
+       (sleep-for 0.5)
+       (select-frame-set-input-focus depress-frame)))))
 
 ;;;###autoload
 (defun hkey-buffer-to (from-window to-window)
diff --git a/hmouse-key.el b/hmouse-key.el
index 48a4ccc..20982a8 100644
--- a/hmouse-key.el
+++ b/hmouse-key.el
@@ -26,7 +26,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
-(eval-and-compile (mapc #'require '(hsettings hmouse-drv hmouse-sh)))
+(eval-when-compile (mapc #'require '(hsettings hmouse-drv hmouse-sh)))
 
 ;;; ************************************************************************
 ;;; Public variables
diff --git a/hyperbole.el b/hyperbole.el
index 71ced94..1128370 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -382,7 +382,8 @@ frame, those functions by default still return the prior 
frame."
            (if (consp frame-x-dot-y) (setcar frame-x-dot-y (selected-frame)))
            frame-x-dot-y)))
 
-(require 'hmouse-key)
+;; hmouse-drv will load hui-mouse and hmouse-key
+(mapc #'require '(hsettings hmouse-drv hmouse-sh))
 
 ;;; ************************************************************************
 ;;; You shouldn't need to modify anything below here.
@@ -681,8 +682,6 @@ If FLAG is nil then text is shown, while if FLAG is t the 
text is hidden."
 ;;; Load Site-specific Configurations and Initialize Hyperbole Package
 ;;; ************************************************************************
 
-(require 'hsettings)
-
 (defun hyperb:init ()
   "Standard configuration routine for Hyperbole."
   (interactive)
diff --git a/man/hyperbole.pdf b/man/hyperbole.pdf
index 314f65f..ac66dff 100644
Binary files a/man/hyperbole.pdf and b/man/hyperbole.pdf differ
diff --git a/man/im/C-hh.png b/man/im/C-hh.png
index c6e5bb3..10dde2e 100644
Binary files a/man/im/C-hh.png and b/man/im/C-hh.png differ



reply via email to

[Prev in Thread] Current Thread [Next in Thread]