]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix compilation on builds with native rectangle structures
authorPo Lu <luangruo@yahoo.com>
Sat, 20 Jul 2024 04:39:33 +0000 (12:39 +0800)
committerEshel Yaron <me@eshelyaron.com>
Mon, 22 Jul 2024 10:34:48 +0000 (12:34 +0200)
* src/androidgui.h (CONVERT_TO_NATIVE_RECT)
(CONVERT_FROM_EMACS_RECT): Delete redundant macro definitions.

* src/xdisp.c (Fremember_mouse_glyph) [CONVERT_TO_EMACS_RECT]:
Expand CONVERT_TO_EMACS_RECT to convert native rectangles into
a readable format if required.  Reported by Stefan Kangas
<stefankangas@gmail.com>.

(cherry picked from commit 358dbbb723b735eddd3f821ffeaf5382778433bd)

src/androidgui.h
src/xdisp.c

index 79e42c7947c9ccc4833d6a8a0621e3b437b35ba6..2bd9d3741dacfa6c542a6cfa8e71118b01b2c588 100644 (file)
@@ -216,8 +216,6 @@ struct android_swap_info
 };
 
 #define NativeRectangle                        Emacs_Rectangle
-#define CONVERT_TO_NATIVE_RECT(xr, nr) ((xr) = (nr))
-#define CONVERT_FROM_EMACS_RECT(xr, nr) ((nr) = (xr))
 
 #define STORE_NATIVE_RECT(nr, rx, ry, rwidth, rheight) \
   ((nr).x = (rx), (nr).y = (ry),                       \
index 74ccfd9e74554a5085c7c8bcd916aa1d4c217910..4185e368c96dfa48be76c9a7c86c77d381228248 100644 (file)
@@ -3017,12 +3017,20 @@ point of FRAME.  */)
   (Lisp_Object frame, Lisp_Object x, Lisp_Object y)
 {
   struct frame *f = decode_window_system_frame (frame);
-  NativeRectangle r;
+  NativeRectangle rect;
+#ifdef CONVERT_TO_EMACS_RECT
+  Emacs_Rectangle xrect;
+#endif /* CONVERT_TO_EMACS_RECT */
 
   CHECK_FIXNUM (x);
   CHECK_FIXNUM (y);
-  remember_mouse_glyph (f, XFIXNUM (x), XFIXNUM (y), &r);
-  return list4i (r.x, r.y, r.width, r.height);
+  remember_mouse_glyph (f, XFIXNUM (x), XFIXNUM (y), &rect);
+#ifdef CONVERT_TO_EMACS_RECT
+  CONVERT_TO_EMACS_RECT (xrect, rect);
+  return list4i (xrect.x, xrect.y, xrect.width, xrect.height);
+#else /* !defined CONVERT_TO_EMACS_RECT */
+  return list4i (rect.x, rect.y, rect.width, rect.height);
+#endif /* !defined CONVERT_TO_EMACS_RECT */
 }
 
 #endif /* HAVE_WINDOW_SYSTEM */