Yuan Fu
d5c52cb7f0
Cleaner logic on getting frame and window
2019-02-10 13:02:56 -05:00
Yuan Fu
6ce7402874
Fix point coordinate differences across OS’s.
2019-02-10 12:53:55 -05:00
Yuan Fu
5a9ceec283
Try to fix #11
2019-02-09 15:52:50 -05:00
Yuan Fu
6f18d01501
Revert "Simplify childframe creation"
...
Built-in function doesn't really reused the childframe,
change back to manually reuse.
This reverts commit 6ceeb22b68
.
2019-01-23 14:39:51 -05:00
Yuan Fu
18829272b8
make at-point minor mode a add-on of the other minor mode
...
This way there is no confusion.
2019-01-06 20:54:54 -05:00
Yuan Fu
a34e2e2e6e
Don't cleanup when clicking popup
2019-01-05 19:45:50 -05:00
Yuan Fu
ec9a4003de
Make sure point is at top when displaying childframe
2019-01-04 19:06:43 -05:00
Yuan Fu
4dc269bc1e
Add the hack into codebase
2019-01-04 19:06:34 -05:00
Yuan Fu
6ceeb22b68
Simplify childframe creation
...
display-buffer-in-childframe will automatically reuse childframe
2019-01-04 18:56:42 -05:00
Yuan Fu
ae1a4690a9
Comment out en local variable
...
We don't need it now
2019-01-04 18:56:16 -05:00
Yuan Fu
4f1d227d4d
Enable users to set font of the childframe
...
This step is before resizing.
2019-01-04 18:51:37 -05:00
Yuan Fu
0278b46f7e
Fix: meesed up minor modes
...
Because at-point mode uses hover mode, disabling each other
doesn't work.
2018-12-31 00:54:32 -05:00
Yuan Fu
f5e15dbf09
Fix "childframe" typos
2018-12-29 00:49:43 -05:00
Yuan Fu
03d075eda6
Fix: empty childframe when used with lsp-mode
...
lsp-mode returns empty string as documentation from time to time,
add a workaround to ignore that
2018-12-28 21:45:38 -05:00
Yuan Fu
2f5910325d
Move position of "at-point" popup to the left
...
This way the childframe is still under the point when
the cursor type is bar
2018-12-28 21:41:16 -05:00
Yuan Fu
7b2768a6c5
Merge branch 'master' of https://github.com/casouri/eldoc-box into pop-at-point
2018-12-26 16:38:39 -05:00
Yuan Fu
42c176375a
Remove eldoc pre command hook to eliminate flicker
2018-12-26 16:36:34 -05:00
Yuan Fu
1d9b0bb000
Disable the other minor mode before enabling either one
2018-12-26 16:35:27 -05:00
Yuan Fu
29cf6d7fb6
Merge branch 'master' into pop-at-point
2018-12-22 12:42:15 -05:00
Yuan Fu
291e5ac97c
Fix: tool-bar-mode mess up popup position
2018-12-21 02:16:02 -05:00
Yuan Fu
c7fea8278e
Update README
2018-12-20 22:19:58 -05:00
Yuan Fu
cf5ef5510c
Fix: local-variable eldoc-box-position-function doesn't work
2018-12-20 22:17:04 -05:00
Yuan Fu
28eb1d7f8a
Add convenient minor mode for at-point mode
2018-12-20 21:56:48 -05:00
Yuan Fu
bbc1139e95
Fix at-point position calculation
2018-12-20 21:56:36 -05:00
Yuan Fu
3ca3a304b6
Add contributro notice
2018-12-20 13:53:24 -05:00
Yuan Fu
f7b4806694
Tweak the pop at point position
2018-12-20 10:31:14 -05:00
Yuan Fu
1733e35085
Add eldoc-box-clear-with-C-g, update README
2018-12-20 10:26:03 -05:00
Yuan Fu
8f71b3c65e
Fix at point position function
2018-12-20 10:18:49 -05:00
Yuan Fu
c4af2c7e23
Support childframe at point
2018-12-20 09:57:30 -05:00
Yuan Fu
1738ccae4c
Support max width/height to be functions
2018-12-20 09:29:34 -05:00
Yuan Fu
112afa1137
Abstract timer interval as a variable
...
1 second is a bit too long, but old machines might want a longer
interval, I set it to 0.2 on my machine and CPU looks ok.
2018-12-18 12:34:48 -05:00
João Távora
c7a670d6b9
Delete two unused functions
...
* eldoc-box.el (eldoc-box-quit-hook)
(eldoc-box--inject-quit-func): Delete.
2018-12-18 12:26:08 -05:00
João Távora
44007aa67d
When quitting eldoc-box-hover-move, really delete the frame
...
This helps to reset the frame in case something has gone wrong.
* eldoc-box.el (eldoc-box-hover-mode): Delete frame and set
var to nil.
2018-12-18 12:26:08 -05:00
Yuan Fu
e02f496368
Fix: Flicker when move out and into a eldoc-able symbol quickly
...
- (eldox-box--eldoc-message-function): doesn't cleanup childframe
when passed with nil anymore
I finally figured out why the flicker occurs:
1. when eldoc asks for doc string, elgot returns nil immeditaly
2. when you move out of a eldoc-cable symbol and move back in
the childframe isn't cleaned up. Adn eldoc recieves nil from
eglot, passes that to message function (eldoc-message)
-> (eldoc-message-function), eldoc-box gets it and cleans up
childframe. Then eglot recieved doc string from server
and calls (eldoc-message), childframe is then redisplayed.
Since eldoc-box cleans up after itself and doesn't rely on eldoc
to cleanup. A quick fix is simply don't clean up when eldoc-box
(eldoc-box--eldoc-message-function) recieves nil from eldoc
(eldoc-message).
2018-12-17 11:44:47 -05:00
Yuan Fu
9108035c97
Fix #4 : CPU 100%
...
Also change version to 1.4
2018-12-16 15:47:49 -05:00
Yuan Fu
dd634c62ae
Bump version
2018-12-16 04:00:15 -05:00
Yuan Fu
d722255ebc
Make compiler happy and add autoload
2018-12-16 03:57:56 -05:00
Yuan Fu
4af83a852c
Bump version to 1.2
2018-12-14 18:06:13 -05:00
Yuan Fu
aec39b6bd4
Remove eldoc-box-help-at-point
...
This function doesn't play well when eldoc-document-function is async.
Plus this function is not in ElDoc spec anyway.
2018-12-14 18:03:51 -05:00
Yuan Fu
0a3b4a8c0e
Bump version
2018-12-13 20:25:18 -05:00
Yuan Fu
310e08a0d5
Update eldoc-box-max-pixel-height and README doc
...
- height max 1400 -> 700
- add doc in readme about them
2018-12-12 21:58:54 -05:00
Yuan Fu
614c318fdb
Hide eldoc doc buffer in buffer list
2018-12-12 21:54:18 -05:00
Yuan Fu
fe9483dd3c
Minor cleanup
2018-12-12 21:51:38 -05:00
Yuan Fu
f0b1bd23c5
Fix: scroll/click doc frame make it disappear after 1s
...
- Add eldoc-box--last-point
- eldoc-box--display sets eldoc-box-hover-mode to t in doc buffer
- eldoc-box--maybe-cleanup checks more things to decide whether to
clear frame
- eldoc-box--eldoc-message-function sets eldoc-box--last-point to
(point)
2018-12-12 21:49:20 -05:00
Yuan Fu
152d422aba
Minor fixup
...
eldoc-box--maybe-cleanup: Fix docstring typo
Add comment
eldoc-box--eldoc-message-function: Fix docstring
Add comment
minor code fix
2018-12-12 13:28:40 -05:00
João Távora
2d6b9c3765
Clean up file header a bit
...
* eldoc-box.el (Copyright): Clear up situation.
(Maintainer): New field.
(Commentary): Add very brief commentary.
2018-12-12 14:24:09 +00:00
João Távora
ff11ef9392
Shoosh compilation warnings
...
* eldoc-box.el (eldoc-box): New group.
(eldoc-box-hover-mode, eldoc-box--frame): Move up in file.
compilation warning.
2018-12-12 14:21:43 +00:00
João Távora
8232e5eb60
Simplify timer management
...
* eldoc-box.el (eldoc-box--maybe-cleanup): Set timer var to nil
unconditionally.
(eldoc-box--eldoc-message-function): Rescheduler timer here.
(eldoc-box-hover-mode): Simplify.
(eldoc-box--maybe-cancel-timer, eldoc-box--enabled-buffer-list):
Not needed.
2018-12-12 14:16:29 +00:00
João Távora
c9693eddb0
Play nice with further customizations of eldoc-message-function
...
Uses a :before-until advice on the local value of
eldoc-message-function instead of setting it directly. Thus, when we
give up because of eldoc-box-only-multi-line (or some other future
criteria), other :before-until handlers can kick in.
* eldoc-box.el (eldoc-box--eldoc-message-function): Control return of
t or nil.
(eldoc-box-hover-mode): Use add-function and
remove-function.
2018-12-12 13:53:33 +00:00
Yuan Fu
fcfd701f57
Manager the global timer gracefully
...
Don't cancel and create new timers naively.
Only cancel timer (and set to nil) when there is no live buffer
with eldoc-box-hover-mode enabled;
and only create new timer when none exists.
2018-12-12 01:58:56 -05:00