Fix incorrect keyword completion after period in shader editor

This commit is contained in:
Yuri Rubinsky
2022-05-20 18:38:06 +03:00
parent 29708f79a8
commit 29ff04acf2
2 changed files with 11 additions and 2 deletions

View File

@ -5379,6 +5379,11 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons
if (tk.type == TK_CURSOR) {
//do nothing
} else if (tk.type == TK_PERIOD) {
#ifdef DEBUG_ENABLED
uint32_t prev_keyword_completion_context = keyword_completion_context;
keyword_completion_context = CF_UNSPECIFIED;
#endif
DataType dt = expr->get_datatype();
String st = expr->get_datatype_name();
@ -5734,6 +5739,10 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons
}
expr = mn;
#ifdef DEBUG_ENABLED
keyword_completion_context = prev_keyword_completion_context;
#endif
//todo
//member (period) has priority over any operator
//creates a subindexing expression in place