diff options
author | Po Lu <luangruo@yahoo.com> | 2022-06-09 16:34:18 +0800 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-06-09 16:34:18 +0800 |
commit | e7ac2ac4e07d3fd6fee4a74a9cfc5bac9310fc18 (patch) | |
tree | 2cf1ab3a6a41efbeaba620441cb3ace30bd48a3e /src/nsterm.h | |
parent | 0ba43e15d9c9ffb3df8aeb3a7e446d9a4d62ccff (diff) | |
download | emacs-e7ac2ac4e07d3fd6fee4a74a9cfc5bac9310fc18.tar.gz |
Implement `follow-tooltip' on NS as well
* lisp/term/ns-win.el (x-begin-drag): Pass `follow-tooltip'.
* src/nsfns.m (Fx_show_tip): Record last dx and dy.
(syms_of_nsfns): New staticpros.
* src/nsmenu.m ([EmacsTooltip moveTo:]): New method.
* src/nsselect.m (Fns_begin_drag): New parameter
`follow-tooltip'.
* src/nsterm.h (@interface EmacsWindow):
(EmacsTooltip): Update prototypes.
* src/nsterm.m ([EmacsWindow draggedImage:movedTo:]): Move any
tooltip to the right location.
([EmacsWindow beginDrag:forPasteboard...]): New parameter
`followTooltip'.
Diffstat (limited to 'src/nsterm.h')
-rw-r--r-- | src/nsterm.h | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/src/nsterm.h b/src/nsterm.h index 37bff6260a0..c4fdc7054f7 100644 --- a/src/nsterm.h +++ b/src/nsterm.h @@ -426,6 +426,7 @@ enum ns_return_frame_mode struct frame *dnd_return_frame; enum ns_return_frame_mode dnd_mode; BOOL dnd_allow_same_frame; + BOOL dnd_move_tooltip_with_frame; } #ifdef NS_IMPL_GNUSTEP @@ -446,7 +447,8 @@ enum ns_return_frame_mode forPasteboard: (NSPasteboard *) pasteboard withMode: (enum ns_return_frame_mode) mode returnFrameTo: (struct frame **) frame_return - prohibitSame: (BOOL) prohibit_same_frame; + prohibitSame: (BOOL) prohibit_same_frame + followTooltip: (BOOL) follow_tooltip; - (BOOL) mustNotDropOn: (NSView *) receiver; @end @@ -630,19 +632,21 @@ enum ns_return_frame_mode #else @interface EmacsTooltip : NSObject #endif - { - NSWindow *win; - NSTextField *textField; - NSTimer *timer; - } +{ + NSWindow *win; + NSTextField *textField; + NSTimer *timer; +} + - (instancetype) init; -- (void) setText: (char *)text; -- (void) setBackgroundColor: (NSColor *)col; -- (void) setForegroundColor: (NSColor *)col; -- (void) showAtX: (int)x Y: (int)y for: (int)seconds; +- (void) setText: (char *) text; +- (void) setBackgroundColor: (NSColor *) col; +- (void) setForegroundColor: (NSColor *) col; +- (void) showAtX: (int) x Y: (int) y for: (int) seconds; - (void) hide; - (BOOL) isActive; - (NSRect) frame; +- (void) moveTo: (NSPoint) screen_point; @end @@ -1140,6 +1144,9 @@ extern const char *ns_get_pending_menu_title (void); #endif /* Implemented in nsfns, published in nsterm. */ +#ifdef __OBJC__ +extern void ns_move_tooltip_to_mouse_location (NSPoint); +#endif extern void ns_implicitly_set_name (struct frame *f, Lisp_Object arg, Lisp_Object oldval); extern void ns_set_scroll_bar_default_width (struct frame *f); |