442 Commits

Author SHA1 Message Date
97b1bc6bda Autocompletion: Don't call const functions 2025-08-05 09:03:10 +02:00
8acc596bcf Merge pull request #108944 from vnen/gdscript-fix-static-call-fail-when-shadowing
Properly detect native class on static call optimization
2025-07-25 11:08:14 -05:00
38f8643b00 GDScript: Properly detect native class on static call optimization 2025-07-25 09:17:39 -03:00
81c7cae567 GDScript: Don't get invalid dictionary key during completion
We try to get the value out of a dictionary in order to establish its
type for completion purposes. However, if the dictionary or the key
is not a constant, we cannot safely get the actual value, so we skip
this and just try to infer from static typing.

Getting the value directly with `Variant::get()` generate errors if the
base is a Dictionary and the key is of an invalid type. So before trying
to get it we use the Dictionary validator to make sure it we can safely
try to get the key.
2025-07-24 15:02:40 -03:00
25dcf7d2a0 Merge pull request #108306 from Chaosus/gds_fix_super_completion
Fix lookup symbol for `super()`
2025-07-17 10:34:48 -05:00
c977b597b8 Merge pull request #107872 from Thought-Weaver/users/loganapple/editor-caret-fix
[Autocomplete] Avoid prepending literals when the character has already been typed
2025-07-10 11:39:30 -05:00
c232b7c717 Fix lookup symbol for super() 2025-07-08 16:21:39 +03:00
d4abc211f1 GDScript: Fix autocompletion issues with nested types 2025-07-08 14:48:21 +02:00
216c462277 Initial fix for double caret inserting in NodePath
Additional cases where prepending doubles up

Moved code to helper function

Added unit tests

Lookup caret character instead of passing position

Switched to using the parsed type

Adding safety checks and various cleanup
2025-07-07 09:23:32 -07:00
f11aff3841 Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
77b680244d Merge pull request #102186 from HolonProduction/completion-builtin-enum
Improve GDScript editor support for global enums
2025-07-03 12:21:19 -05:00
bad29ef0c7 Merge pull request #107636 from HolonProduction/completion-dont-use-next
Autocompletion: Don't use `next` for `GET_NODE` inference
2025-07-01 17:57:59 -05:00
ee5859b7ae Merge pull request #92584 from HolonProduction/autocompletion-assign-variant
Autocompletion: Fix type resolution when assigning variant
2025-07-01 17:57:51 -05:00
a095c5e3fa GDScript call stack as reverse linked list with fixed coroutines
* GDScript call stack as reverse linked list with issues fixed
(originally proposed in 91006).
* Fix coroutine issues with call stack by resuming async call chain
inside `GDScriptFunction::call()`.
* This fixes corrupted line numbers for coroutines in the debugger and
backtrace (106489).

Co-authored-by: Juan Linietsky <reduzio@gmail.com>
2025-06-30 11:37:42 +02:00
c8bb21e68b GDScript: Fix GDScriptLanguage::make_function() 2025-06-28 13:39:59 +03:00
ebc36a7225 Merge pull request #107717 from aaronfranke/abstract-annotation
GDScript: Replace `abstract` keyword with `@abstract` annotation
2025-06-27 17:12:56 +02:00
4a90220fc9 Merge pull request #107852 from HolonProduction/completion-filter-current-impl
Autocompletion: Don't filter overrides when the existing function is the current one
2025-06-27 09:39:52 -05:00
6277e9d02b Merge pull request #93429 from dalexeev/fix-method-signature-appearance
GDScript: Fix call hint appearance for complex callees
2025-06-24 09:58:49 -05:00
1085200f51 GDScript: Replace abstract keyword with @abstract annotation
Co-authored-by: Danil Alexeev <dalexeev12@yandex.ru>
2025-06-23 12:24:45 -07:00
a59587c308 GDScript: Fix double spaces for type hints when connecting signal 2025-06-23 21:46:03 +03:00
fbede89573 GDScript: Fix call hint appearance for complex callees 2025-06-23 19:28:48 +03:00
991c1a85a9 Autocompletion: Don't filter overrides when the existing function is the current one 2025-06-22 16:25:36 +02:00
49e8d3ff98 Autocompletion: Don't use next for GET_NODE inference 2025-06-17 17:03:59 +02:00
242b5efd9d Autocompletion: Fix type resolution when assigning variant 2025-06-15 20:17:19 +02:00
af54b13603 Autocompletion: Add support for global enums 2025-06-15 19:41:13 +02:00
ee121ef80e GDScript: Add support for variadic functions 2025-06-09 21:53:05 +03:00
3b963ab8b6 Merge pull request #105081 from dalexeev/gds-add-export-tool-button-autocompletion
GDScript: Add autocompletion for `@export_tool_button`
2025-06-09 12:31:43 -05:00
fb59a99244 Merge pull request #106198 from SatLess/User-Func-Autocomplete
Add code completion for user-defined methods when overriding in GDScript
2025-06-09 00:44:22 +02:00
Sat
fc4df4b17d Added working version for user-defined function autocompletion 2025-06-08 07:01:35 -03:00
0518bd5fee Merge pull request #106683 from dalexeev/gds-remove-leftmost-rightmost-column
GDScript: Remove `leftmost_column` and `rightmost_column` fields
2025-06-05 13:12:02 +02:00
7aafa6ef18 GDScript: Remove leftmost_column and rightmost_column fields 2025-05-21 18:16:20 +03:00
1384e82c2c Improve ScriptLanguage get keyword API. 2025-05-17 18:43:19 +08:00
b59d6bea4f Merge pull request #67777 from aaronfranke/virtually-annotated
Add a keyword for abstract classes in GDScript
2025-05-13 16:22:16 -05:00
9e0203a58a Don't synchronize scripts with errors 2025-05-08 17:29:15 +02:00
067704f1cd Add a keyword for abstract classes in GDScript
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2025-05-02 00:03:04 -07:00
3f0ff0417c Autocompletion: Remove additional brace from utility function options 2025-04-15 13:25:28 +02:00
e989d7bd89 Change StringName.operator const void * to explicit operator bool. 2025-04-11 18:34:01 +02:00
717df3ee88 Merge pull request #105249 from Repiteo/core/math-defs-namespace
Core: Use `Math` namespace for constants
2025-04-11 09:51:04 -05:00
94282d88f9 Core: Use Math namespace for constants 2025-04-10 16:29:30 -05:00
e7487263ad Autocompletion: Don't add parenthesis if Callable is expected 2025-04-10 18:40:32 +02:00
4b9bcda113 GDScript: Add autocompletion for @export_tool_button 2025-04-06 08:21:43 +03:00
4029051bb1 Change ClassDB::get_inheriters_from_class. 2025-04-04 23:47:19 +08:00
22b5ec17fb Using iterator pattern instead of List::Element *.
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
2025-03-28 13:29:15 +08:00
d9721954e6 [Core] Use Vector for MethodInfo::arguments 2025-03-10 13:57:53 +01:00
466590d0ec Use get_slicec instead of get_slice for single character splitters 2025-03-08 20:36:37 +01:00
5113022dfe Clean up some uses of String::substr
Cases where the end position is either equvalent to the default or past
the end of the string.
2025-03-07 14:50:38 +01:00
c00518eec7 Autocompletion: Override context for preload 2025-02-13 22:56:06 +01:00
62eebf1266 Autocompletion: Account for invalid annotations when making arghint 2025-02-11 09:17:22 +01:00
d616ea5462 Fix enum value lookup jump 2025-02-06 10:04:01 +01:00
0b6a717ac1 Merge pull request #101127 from dalexeev/gds-edit-fix-enum-value-ctrl-click
Editor: Fix `Ctrl+Click` on enum values ​​does nothing
2025-02-04 09:04:17 -06:00