emacs-diffs
[Top][All Lists]
Advanced

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

master ac1d45c5ea 4/4: Merge branch 'master' of git.savannah.gnu.org:/sr


From: Eli Zaretskii
Subject: master ac1d45c5ea 4/4: Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Date: Fri, 10 Jun 2022 09:14:17 -0400 (EDT)

branch: master
commit ac1d45c5ea8041284021ebdd8cf4609c92b83608
Merge: 89e6305b17 f7307f6215
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
---
 src/xterm.c | 29 +++++++++++++----------------
 1 file changed, 13 insertions(+), 16 deletions(-)

diff --git a/src/xterm.c b/src/xterm.c
index 375b345a90..30322b0c09 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -3443,7 +3443,6 @@ x_dnd_do_unsupported_drop (struct x_display_info *dpyinfo,
   int dest_x, dest_y;
   Window child_return, child;
 
-  event.xbutton.type = ButtonPress;
   event.xbutton.serial = 0;
   event.xbutton.send_event = True;
   event.xbutton.display = dpyinfo->display;
@@ -3457,39 +3456,37 @@ x_dnd_do_unsupported_drop (struct x_display_info 
*dpyinfo,
   dest_x = root_x;
   dest_y = root_y;
 
-  while (XTranslateCoordinates (dpyinfo->display, child,
-                               child, root_x, root_y, &dest_x,
-                               &dest_y, &child_return)
-        && child_return != None
-        && XTranslateCoordinates (dpyinfo->display, child,
-                                  child_return, root_x, root_y,
-                                  &dest_x, &dest_y, &child))
-    {
-      child = child_return;
-      root_x = dest_x;
-      root_y = dest_y;
-    }
+  while (XTranslateCoordinates (dpyinfo->display, dpyinfo->root_window,
+                               child, root_x, root_y, &dest_x, &dest_y,
+                               &child_return)
+        && child_return != None)
+    child = child_return;
 
   if (CONSP (value))
     x_own_selection (QPRIMARY, Fnth (make_fixnum (1), value),
                     frame);
   else
-    x_own_selection (QPRIMARY, Qnil, frame);
+    error ("Lost ownership of XdndSelection");
 
   event.xbutton.window = child;
+  event.xbutton.subwindow = None;
   event.xbutton.x = dest_x;
   event.xbutton.y = dest_y;
   event.xbutton.state = 0;
   event.xbutton.button = 2;
   event.xbutton.same_screen = True;
-  event.xbutton.time = before + 1;
-  event.xbutton.time = before + 2;
 
   x_set_pending_dnd_time (before);
 
+  event.xbutton.type = ButtonPress;
+  event.xbutton.time = before + 1;
+
   XSendEvent (dpyinfo->display, child,
              True, ButtonPressMask, &event);
+
   event.xbutton.type = ButtonRelease;
+  event.xbutton.time = before + 2;
+
   XSendEvent (dpyinfo->display, child,
              True, ButtonReleaseMask, &event);
 



reply via email to

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