]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix tty-frame-at for nested tty child frames
authorGerd Möllmann <gerd@gnu.org>
Sat, 25 Jan 2025 05:43:49 +0000 (06:43 +0100)
committerEshel Yaron <me@eshelyaron.com>
Sat, 25 Jan 2025 17:46:24 +0000 (18:46 +0100)
* src/term.c (tty_frame_at): Translate child frame origin to absolute
coordinates.

(cherry picked from commit 9693f2a95ad14bf0caa34e60d72722d4dd4d85c9)

src/term.c

index 00bc94e6e31ebc73bdee0c7c8117dcc0f3e436e0..7397ee68347cfeb374cd5642010a7f404715c600 100644 (file)
@@ -2603,9 +2603,11 @@ tty_frame_at (int x, int y)
     {
       Lisp_Object frame = Fcar (frames);
       struct frame *f = XFRAME (frame);
+      int fx, fy;
+      root_xy (f, 0, 0, &fx, &fy);
 
-      if (f->left_pos <= x && x < f->left_pos + f->pixel_width &&
-         f->top_pos <= y && y < f->top_pos + f->pixel_height)
+      if (fx <= x && x < fx + f->pixel_width
+         && fy <= y && y < fy + f->pixel_height)
        return frame;
     }