diff options
author | Campbell Barton <ideasman42@gmail.com> | 2021-01-25 05:26:43 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2021-01-25 05:30:02 +0300 |
commit | d1c6704413b5bd45283ef8ad25111597e6278105 (patch) | |
tree | f57268cfaaaad68b93ef7993d1fff5888f5dbfbb /source/blender/editors/uvedit | |
parent | d3506c86daa47987871d83ca1c2c79004d20290b (diff) |
UV: tweak island select behavior
Selecting inside an island no longer de-selects
when it's too far from an edge.
When edge select fails fall back to inside-face test.
This follows 908b383b7d2199c0c614d085ff65a03eb7852274
which made this change for face-select.
Apply to island selection since it doesn't make sense
for island select to behave differently.
Diffstat (limited to 'source/blender/editors/uvedit')
-rw-r--r-- | source/blender/editors/uvedit/uvedit_select.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/editors/uvedit/uvedit_select.c b/source/blender/editors/uvedit/uvedit_select.c index 32e77ef7347..0bc1943802a 100644 --- a/source/blender/editors/uvedit/uvedit_select.c +++ b/source/blender/editors/uvedit/uvedit_select.c @@ -1982,6 +1982,13 @@ static int uv_mouse_select_multi(bContext *C, } else if (selectmode == UV_SELECT_ISLAND) { found_item = uv_find_nearest_edge_multi(scene, objects, objects_len, co, &hit); + + if (!found_item) { + /* Without this, we can be within the face of an island but too far from an edge, + * see face selection comment for details. */ + hit.dist_sq = FLT_MAX; + found_item = uv_find_nearest_face_multi_ex(scene, objects, objects_len, co, &hit, true); + } } if (!found_item) { |