evas_event: only frame object is operated in frame area. 44/287744/1
authorHosang Kim <hosang12.kim@samsung.com>
Fri, 3 Feb 2023 11:12:40 +0000 (20:12 +0900)
committerHosang Kim <hosang12.kim@samsung.com>
Fri, 3 Feb 2023 11:12:40 +0000 (20:12 +0900)
Change-Id: Ia61ef14e0c68d6203d6fb7034b6de0ab764872d0

src/lib/evas/canvas/evas_events.c

index b8c4206..024ef3f 100644 (file)
@@ -157,6 +157,15 @@ _evas_event_object_list_raw_in_get_single(Evas *eo_e, Evas_Object_Protected_Data
    if (evas_event_passes_through(eo_obj, obj)) return in;
    //
 
+   //TIZEN_ONLY(20230203):evas_event: only frame object is operated in frame area.
+   int vx = 0, vy = 0, vw = 0, vh = 0;
+   int fw = 0, fh = 0;
+   evas_output_viewport_get(eo_e, &vx, &vy, &vw, &vh);
+   evas_output_framespace_get(eo_e, NULL, NULL, &fw, &fh);
+
+   if ((!RECTS_INTERSECT(x, y, 1, 1, vx, vy, vw - fw, vh - fh)) && (!obj->is_frame)) return in;
+   //
+
    if ((!obj->cur->visible) && (!obj->is_event_parent)) return in;
    // XXX: this below DYNAMICALLY calculates the current clip rect
    // by walking clippers to each parent clipper until there are