Browse Source

Fixed favorites and recent nodes selecting wrong node

Fixed favorites and recent nodes selecting wrong node and fixed a typo.

Fixes #6535
DualMatrix 7 years ago
parent
commit
6ec28de584
1 changed files with 5 additions and 5 deletions
  1. 5 5
      editor/create_dialog.cpp

+ 5 - 5
editor/create_dialog.cpp

@@ -244,17 +244,17 @@ void CreateDialog::add_type(const String &p_type, HashMap<String, TreeItem *> &p
 		bool is_search_subsequence = search_box->get_text().is_subsequence_ofi(p_type);
 		bool is_search_subsequence = search_box->get_text().is_subsequence_ofi(p_type);
 		String to_select_type = *to_select ? (*to_select)->get_text(0) : "";
 		String to_select_type = *to_select ? (*to_select)->get_text(0) : "";
 		to_select_type = to_select_type.split(" ")[0];
 		to_select_type = to_select_type.split(" ")[0];
-		bool current_item_is_preffered;
+		bool current_item_is_preferred;
 		if (cpp_type) {
 		if (cpp_type) {
-			current_item_is_preffered = ClassDB::is_parent_class(p_type, preferred_search_result_type) && !ClassDB::is_parent_class(to_select_type, preferred_search_result_type);
+			current_item_is_preferred = ClassDB::is_parent_class(p_type, preferred_search_result_type) && !ClassDB::is_parent_class(to_select_type, preferred_search_result_type) && search_box->get_text() != to_select_type;
 		} else {
 		} else {
-			current_item_is_preffered = ed.script_class_is_parent(p_type, preferred_search_result_type) && !ed.script_class_is_parent(to_select_type, preferred_search_result_type);
+			current_item_is_preferred = ed.script_class_is_parent(p_type, preferred_search_result_type) && !ed.script_class_is_parent(to_select_type, preferred_search_result_type) && search_box->get_text() != to_select_type;
 		}
 		}
 		if (*to_select && p_type.length() < (*to_select)->get_text(0).length()) {
 		if (*to_select && p_type.length() < (*to_select)->get_text(0).length()) {
-			current_item_is_preffered = true;
+			current_item_is_preferred = true;
 		}
 		}
 
 
-		if (((!*to_select || current_item_is_preffered) && is_search_subsequence) || search_box->get_text() == p_type) {
+		if (((!*to_select || current_item_is_preferred) && is_search_subsequence) || search_box->get_text() == p_type) {
 			*to_select = item;
 			*to_select = item;
 		}
 		}
 	}
 	}