aboutsummaryrefslogtreecommitdiffstats
path: root/doc/lispref/frames.texi
diff options
context:
space:
mode:
authorPo Lu2022-06-09 13:11:08 +0800
committerPo Lu2022-06-09 13:11:08 +0800
commit2f31dbeadff0abc38ded5dd072df1ec179c49945 (patch)
tree5e3a0da965fa681348bb48d045d9d94f8edbaea0 /doc/lispref/frames.texi
parent7e41b4aa231ed094613fe0ea12e7ec37a396240f (diff)
downloademacs-2f31dbeadff0abc38ded5dd072df1ec179c49945.tar.gz
emacs-2f31dbeadff0abc38ded5dd072df1ec179c49945.zip
Also show mouse DND tooltip contents during interprogram drag-and-drop
* doc/lispref/frames.texi (Drag and Drop): Document new parameter to `x-begin-drag'. * lisp/mouse.el (mouse-drag-and-drop-region): Don't hide tooltip when initiating interprogram drag-and-drop. * lisp/term/haiku-win.el (x-begin-drag): * lisp/term/ns-win.el (x-begin-drag): Add stubs for new parameter. * src/xfns.c (Fx_begin_drag): New parameter `follow-tooltip'. (Fx_show_tip, syms_of_xfns): Add records of the last dx and dy given to `x-show-tip'. * src/xterm.c (x_clear_dnd_monitors): New function. (x_dnd_begin_drag_and_drop): Save monitor attributes list if appropriate. (x_dnd_compute_tip_xy, x_dnd_update_tooltip_position): New function. (x_dnd_update_state, handle_one_xevent): Update tooltip position during DND mouse movement. (syms_of_xterm): Update staticpros. * src/xterm.h: Update prototypes.
Diffstat (limited to 'doc/lispref/frames.texi')
-rw-r--r--doc/lispref/frames.texi8
1 files changed, 7 insertions, 1 deletions
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index 9f7666ac63c..16f7ad312a4 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -4194,7 +4194,7 @@ instead. However, using it will require detailed knowledge of the
4194data types and actions used by the programs to transfer content via 4194data types and actions used by the programs to transfer content via
4195drag-and-drop on each platform you want to support. 4195drag-and-drop on each platform you want to support.
4196 4196
4197@defun x-begin-drag targets &optional action frame return-frame allow-current-frame 4197@defun x-begin-drag targets &optional action frame return-frame allow-current-frame follow-tooltip
4198This function begins a drag from @var{frame}, and returns when the 4198This function begins a drag from @var{frame}, and returns when the
4199drag-and-drop operation ends, either because the drop was successful, 4199drag-and-drop operation ends, either because the drop was successful,
4200or because the drop was rejected. The drop occurs when all mouse 4200or because the drop was rejected. The drop occurs when all mouse
@@ -4231,6 +4231,12 @@ want to treat dragging content from one frame to another specially,
4231while also being able to drag content to other programs, but it is not 4231while also being able to drag content to other programs, but it is not
4232guaranteed to work on all systems and with all window managers. 4232guaranteed to work on all systems and with all window managers.
4233 4233
4234If @var{follow-tooltip} is non-@code{nil}, the position of any tooltip
4235(such as one shown by @code{tooltip-show}) will follow the location of
4236the mouse pointer whenever it moves during the drag-and-drop
4237operation. The tooltip will be hidden once all mouse buttons are
4238released.
4239
4234If the drop was rejected or no drop target was found, this function 4240If the drop was rejected or no drop target was found, this function
4235returns @code{nil}. Otherwise, it returns a symbol describing the 4241returns @code{nil}. Otherwise, it returns a symbol describing the
4236action the target chose to perform, which can differ from @var{action} 4242action the target chose to perform, which can differ from @var{action}