Browse Source

Tree: Fix de-select when selection mode set to SELECT_ROW

It no longer de-selects an already selected row if the SELECT_MODE is
set to SELECT_ROW. Fixes #36047

Update scene/gui/tree.cpp

Co-authored-by: Michael Alexsander <[email protected]>
Christoph Nelles 3 years ago
parent
commit
72133365f4
1 changed files with 4 additions and 2 deletions
  1. 4 2
      scene/gui/tree.cpp

+ 4 - 2
scene/gui/tree.cpp

@@ -1526,8 +1526,10 @@ void Tree::select_single_item(TreeItem *p_selected, TreeItem *p_current, int p_c
 					*/
 
 			} else if (c.selected) {
-				c.selected = false;
-				//p_current->deselected_signal.call(p_col);
+				if (p_selected != p_current) {
+					// Deselect other rows.
+					c.selected = false;
+				}
 			}
 		} else if (select_mode == SELECT_SINGLE || select_mode == SELECT_MULTI) {
 			if (!r_in_range && &selected_cell == &c) {