UI: Improvement to screen_find_area_xy #104680
|
@ -956,7 +956,9 @@ ScrArea *BKE_screen_area_map_find_area_xy(const ScrAreaMap *areamap,
|
|||
const int xy[2])
|
||||
{
|
||||
LISTBASE_FOREACH (ScrArea *, area, &areamap->areabase) {
|
||||
if (BLI_rcti_isect_pt_v(&area->totrct, xy)) {
|
||||
/* Test area's outer screen verts, not inner totrct. */
|
||||
if (xy[0] >= area->v1->vec.x && xy[0] <= area->v4->vec.x && xy[1] >= area->v1->vec.y &&
|
||||
xy[1] <= area->v2->vec.y) {
|
||||
if (ELEM(spacetype, SPACE_TYPE_ANY, area->spacetype)) {
|
||||
return area;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue