diff options
author | Campbell Barton <ideasman42@gmail.com> | 2020-04-24 10:41:34 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2020-04-24 10:41:34 +0300 |
commit | c2bf0c1d5462eabb8e2800c892532458bdfc0c9e (patch) | |
tree | cde85b507b0edf5694f59ea8db3c5ede488a1bd1 /source/blender | |
parent | a8e89db291fe37d29612efc4426b2cf460b017c4 (diff) | |
parent | e8d3996e6776029ce27e29d7e717b0f301a0fa55 (diff) |
Merge branch 'blender-v2.83-release'
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/mesh/editmesh_select.c | 2 | ||||
-rw-r--r-- | source/blender/editors/space_view3d/view3d_header.c | 41 |
2 files changed, 25 insertions, 18 deletions
diff --git a/source/blender/editors/mesh/editmesh_select.c b/source/blender/editors/mesh/editmesh_select.c index 3847f32b19a..a989ba2bb45 100644 --- a/source/blender/editors/mesh/editmesh_select.c +++ b/source/blender/editors/mesh/editmesh_select.c @@ -2335,6 +2335,8 @@ void EDBM_selectmode_convert(BMEditMesh *em, BM_edge_select_set(bm, eed, false); } } + /* Deselect faces without edges selected. */ + BM_mesh_deselect_flush(bm); } else if (selectmode_new == SCE_SELECT_VERTEX) { /* flush down (face -> vert) */ diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c index be0084d8869..119ba059a70 100644 --- a/source/blender/editors/space_view3d/view3d_header.c +++ b/source/blender/editors/space_view3d/view3d_header.c @@ -138,10 +138,11 @@ void uiTemplateEditModeSelection(uiLayout *layout, struct bContext *C) if (obedit && (obedit->type == OB_MESH)) { BMEditMesh *em = BKE_editmesh_from_object(obedit); uiLayout *row; + uiBut *but; row = uiLayoutRow(layout, true); block = uiLayoutGetBlock(row); - uiDefIconButBitS( + but = uiDefIconButBitS( block, UI_BTYPE_TOGGLE, SCE_SELECT_VERTEX, @@ -157,23 +158,26 @@ void uiTemplateEditModeSelection(uiLayout *layout, struct bContext *C) 0, 0, TIP_("Vertex select - Shift-Click for multiple modes, Ctrl-Click contracts selection")); - uiDefIconButBitS(block, - UI_BTYPE_TOGGLE, - SCE_SELECT_EDGE, - B_SEL_EDGE, - ICON_EDGESEL, - 0, - 0, - ceilf(UI_UNIT_X - U.pixelsize), - UI_UNIT_Y, - &em->selectmode, - 1.0, - 0.0, - 0, - 0, - TIP_("Edge select - Shift-Click for multiple modes, Ctrl-Click " - "expands/contracts selection")); - uiDefIconButBitS( + UI_but_flag_disable(but, UI_BUT_UNDO); + but = uiDefIconButBitS( + block, + UI_BTYPE_TOGGLE, + SCE_SELECT_EDGE, + B_SEL_EDGE, + ICON_EDGESEL, + 0, + 0, + ceilf(UI_UNIT_X - U.pixelsize), + UI_UNIT_Y, + &em->selectmode, + 1.0, + 0.0, + 0, + 0, + TIP_("Edge select - Shift-Click for multiple modes, " + "Ctrl-Click expands/contracts selection depending on the current mode")); + UI_but_flag_disable(but, UI_BUT_UNDO); + but = uiDefIconButBitS( block, UI_BTYPE_TOGGLE, SCE_SELECT_FACE, @@ -189,6 +193,7 @@ void uiTemplateEditModeSelection(uiLayout *layout, struct bContext *C) 0, 0, TIP_("Face select - Shift-Click for multiple modes, Ctrl-Click expands selection")); + UI_but_flag_disable(but, UI_BUT_UNDO); } } |