瀏覽代碼

Fix regression when autocompleting subscript on get node

(cherry picked from commit 5f72254d4db824b50dc30548fd031874fc5a418c)
HolonProduction 1 年之前
父節點
當前提交
7c22d5444a
共有 1 個文件被更改,包括 5 次插入4 次删除
  1. 5 4
      modules/gdscript/gdscript_editor.cpp

+ 5 - 4
modules/gdscript/gdscript_editor.cpp

@@ -2676,10 +2676,6 @@ static bool _get_subscript_type(GDScriptParser::CompletionContext &p_context, co
 	if (p_context.base == nullptr) {
 	if (p_context.base == nullptr) {
 		return false;
 		return false;
 	}
 	}
-	if (p_subscript->base->datatype.type_source == GDScriptParser::DataType::ANNOTATED_EXPLICIT) {
-		// Annotated type takes precedence.
-		return false;
-	}
 
 
 	const GDScriptParser::GetNodeNode *get_node = nullptr;
 	const GDScriptParser::GetNodeNode *get_node = nullptr;
 
 
@@ -2689,6 +2685,11 @@ static bool _get_subscript_type(GDScriptParser::CompletionContext &p_context, co
 		} break;
 		} break;
 
 
 		case GDScriptParser::Node::IDENTIFIER: {
 		case GDScriptParser::Node::IDENTIFIER: {
+			if (p_subscript->base->datatype.type_source == GDScriptParser::DataType::ANNOTATED_EXPLICIT) {
+				// Annotated type takes precedence.
+				return false;
+			}
+
 			const GDScriptParser::IdentifierNode *identifier_node = static_cast<GDScriptParser::IdentifierNode *>(p_subscript->base);
 			const GDScriptParser::IdentifierNode *identifier_node = static_cast<GDScriptParser::IdentifierNode *>(p_subscript->base);
 
 
 			switch (identifier_node->source) {
 			switch (identifier_node->source) {