@@ -1057,6 +1057,14 @@ static void _find_identifiers_in_base(const GDScriptCompletionIdentifier &p_base
1057
1057
r_result.insert (option.display , option);
1058
1058
}
1059
1059
1060
+ List<MethodInfo> signals;
1061
+ ClassDB::get_signal_list (type, &signals);
1062
+ for (const MethodInfo &E : signals) {
1063
+ int location = p_recursion_depth + _get_signal_location (type, StringName (E.name ));
1064
+ ScriptLanguage::CodeCompletionOption option (E.name , ScriptLanguage::CODE_COMPLETION_KIND_SIGNAL, location);
1065
+ r_result.insert (option.display , option);
1066
+ }
1067
+
1060
1068
if (!_static || Engine::get_singleton ()->has_singleton (type)) {
1061
1069
List<PropertyInfo> pinfo;
1062
1070
ClassDB::get_property_list (type, &pinfo);
@@ -3058,6 +3066,13 @@ static Error _lookup_symbol_from_base(const GDScriptParser::DataType &p_base, co
3058
3066
}
3059
3067
}
3060
3068
3069
+ if (ClassDB::has_signal (class_name, p_symbol, true )) {
3070
+ r_result.type = ScriptLanguage::LOOKUP_RESULT_CLASS_SIGNAL;
3071
+ r_result.class_name = base_type.native_type ;
3072
+ r_result.class_member = p_symbol;
3073
+ return OK;
3074
+ }
3075
+
3061
3076
StringName enum_name = ClassDB::get_integer_constant_enum (class_name, p_symbol, true );
3062
3077
if (enum_name != StringName ()) {
3063
3078
r_result.type = ScriptLanguage::LOOKUP_RESULT_CLASS_ENUM;
0 commit comments