summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2021-08-02Implemented initial DAP supportEv1lbl0w
Implemented "output" event Refactored "seq" field generation Prevent debugging when editor and client are in different projects Removed unneeded references to peer on the parser Refactored way to detect project path Implemented "setBreakpoints" request Fix double events when terminating from client Refactored "stopped" event Implemented "stopped" with breakpoint event Implemented "stackTrace", "scopes" and "variables" request Report incoming number of stack dump variables Implemented proper reporting of scopes and variables from stack frames Prevent editor from grabbing focus when a DAP session is active Implemented "next" and "stepIn" requests Implemented "Source" checksum computing Switched expected errors from macros to silent guards Refactored message_id Respect client settings regarding lines/columns behavior Refactored nested DAP fields Implement reporting of "Members" and "Globals" scopes as well Fix error messages not being shown, and improved wrong path message
2021-07-18Optimize StringName usagereduz
* Added a new macro SNAME() that constructs and caches a local stringname. * Subsequent usages use the cached version. * Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time. * Replaced all theme usages by this new macro. * Replace all signal emission usages by this new macro. * Replace all call_deferred usages by this new macro. This is part of ongoing work to optimize GUI and the editor.
2021-07-17[HTML5] Add 2 controllers to the godot database.Fabio Alessandrelli
Sony PlayStation DualShock 4 (054c:05c4 first gen). Unofficial Switch controller.
2021-07-16Merge pull request #46554 from likeich/is_server_quiet_failureFabio Alessandrelli
MultiplayerAPI is_network_server Fails Silently
2021-07-16Merge pull request #47395 from sygi/shape_idx_collisionHugo Locurcio
Add shape_idx to CollisionObject2D mouse_entered signal
2021-07-15Add ability to set object instance binding on creationreduz
* Required by binding generators * Makes it easier to create the bindings on construction.
2021-07-15Fix equality operators in List's ConstIteratorJoan Fons
2021-07-15Misc cleanup of header includesRémi Verschelde
Was looking for misuse of module headers without checking that the module is actually enabled and got carried away...
2021-07-13Merge pull request #50056 from Blackiris/fix-in-operatorGeorge Marques
Fix 'in' operator to check if an object member exists
2021-07-13Merge pull request #50381 from reduz/implement-disable-classesRémi Verschelde
Implement the ability to disable classes
2021-07-13Merge pull request #50169 from pycbouh/theme-type-variationsRémi Verschelde
2021-07-13Implement the ability to disable classesreduz
* This PR adds the ability to disable classes when building. * For now it's only possible to do this via command like: `scons disable_classes=RayCast2D,Area3D` * Eventually, a proper UI will be implemented to create a build config file to do this at large scale, as well as detect what is used in the project.
2021-07-13Merge pull request #50412 from timothyqiu/fastlz-decompressRémi Verschelde
2021-07-13Let thread func have optional parameterFaymoon
Fixes #38042.
2021-07-13Fix decompression with FastLZ when buffer size is less than 16 bytesHaoyu Qiu
2021-07-13Merge pull request #49291 from NoFr1ends/fix-49262Rémi Verschelde
String::format leave passed values untouched
2021-07-13Merge pull request #50304 from timothyqiu/memfree-paramRémi Verschelde
Fix memfree parameter name
2021-07-13Add type variations to ThemeYuri Sizov
2021-07-12[Net] Rename NetworkedMultiplayerPeer to MultiplayerPeer.Fabio Alessandrelli
2021-07-12Change VSync mode project setting enum type from string to integerHendrik Brucker
2021-07-11[Net] Fix crash when receiving RPC on node without a script.Fabio Alessandrelli
2021-07-11Merge pull request #50362 from timothyqiu/http-eofRémi Verschelde
Fix unicode invalid skip error in AssetLib
2021-07-11Fix unicode invalid skip error in AssetLibHaoyu Qiu
2021-07-11Handle Z_BUF_ERROR in decompress_dynamicHaoyu Qiu
2021-07-10Merge pull request #48622 from Geometror/reimplement-disableable-vsyncHugo Locurcio
2021-07-09Merge pull request #50290 from reduz/redo-instance-bindingsRémi Verschelde
Redo how instance bindings work
2021-07-09Fix memfree parameter nameHaoyu Qiu
2021-07-08Implement Range Iteratorsreduz
This PR implements range iterators in the base containers (Vector, Map, List, Pair Set). Given several of these data structures will be replaced by more efficient versions, having a common iterator API will make this simpler. Iterating can be done as follows (examples): ```C++ //Vector<String> for(const String& I: vector) { } //List<String> for(const String& I: list) { } //Map<String,int> for(const KeyValue<String,int>&I : map) { print_line("key: "+I.key+" value: "+itos(I.value)); } //if intending to write the elements, reference can be used //Map<String,int> for(KeyValue<String,int>& I: map) { I.value = 25; //this will fail because key is always const //I.key = "hello" } ``` The containers are (for now) not STL compatible, since this would mean changing how they work internally (STL uses a special head/tail allocation for end(), while Godot Map/Set/List do not). The idea is to change the Godot versions to be more compatible with STL, but this will happen after conversion to new iterators have taken place.
2021-07-08Redo how instance bindings workreduz
* The harcoded 8 slots are no more and impose limits in the new extension system. * New system is limitless, although it will impose small performance hit with a mutex. * Use a token to request the instance binding. **Warning**: Mono will most likely break as a result of this, will need to be modified to use the new system.
2021-07-06Unify material parameter updatereduz
* Unifies how material parameters are updated. * Single function, easier to maintain. * Updates materials properly when textures change.
2021-07-06Restructure and reimplement vsync optionsHendrik Brucker
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX -Removed the V-Sync via Compositor option
2021-07-06Added EditorInspectorPlugin to aid in editing InputEvents in resources and ↵Eric M
shortcuts
2021-07-05Fix Variant tags parsing.bruvzg
2021-07-03[Crypto] Delete mbedtls ctx in deconstructor.Fabio Alessandrelli
Would cause memory leak when the context was `start`ed but not `finish`ed.
2021-07-02Add mouse_shape_entered and mouse_shape_exited signals to CollisionObject2D.sygi
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-07-02Add `get_dead_zone()` method to `InputMap`Nick H
This commit adds a new method to the `InputMap`, allowing the user to get the value of an action's dead zone as a float.
2021-07-01Merge pull request #50057 from reduz/force-string-in-dictionaryRémi Verschelde
Force String as Dictionary key instead of StringName
2021-07-01Force String as Dictionary key instead of StringNamereduz
* Lua table syntax uses named indexing: `{ mykey = myvalue }` * Python style syntax uses string indexing: `{ "mykey" : myvalue }` * Both are incompatible since a StringName key wont fetch a String key, hence confusing. * This PR proposes always using String for indexing at a very minimal performance cost. Always indexing with StringNames will be faster, but they are considerably more expensive to create.
2021-07-01Fix 'in' operator to check if an object member existsJulien Nguyen
2021-07-01Use PROPERTY_USAGE_NONE instead of 0 for no property usageAaron Franke
Also use const more often.
2021-07-01Merge pull request #50044 from akien-mga/localvector-find-noerrorRémi Verschelde
LocalVector: Don't error if `from` >= `count`
2021-07-01Merge pull request #50026 from lyuma/callable_is_validRémi Verschelde
Add Callable.is_valid() analogous to FuncRef.is_valid() from 3.x
2021-07-01LocalVector: Don't error if `from` >= `count`Rémi Verschelde
Vector handles this silently by returning -1, and we should do the same here. Otherwise we get errors when calling `find()` on e.g. a LocalVector of size 0, while `find()` is expected to always work (if the parameters are invalid then it doesn't find anything, so -1). Fixup to #49925.
2021-07-01Add Callable.is_valid() analogous to FuncRef.is_valid() from 3.xLyuma
2021-07-01Merge pull request #50018 from fire/port-falseRémi Verschelde
Network port comparison is always false
2021-06-30Fix editor suffixes and degrees conversionreduz
* Functions to convert to/from degrees are all gone. Conversion is done by the editor. * Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees. * Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m" * In general, can add suffixes for EditorSpinSlider Not covered by this PR, will have to be addressed by future ones: * Ability to switch radians/degrees in the inspector for angle properties (if actually wanted). * Animations previously made will most likely break, need to add a way to make old ones compatible. * Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes. * Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
2021-06-30Network port comparison is always falseK. S. Ernest (iFire) Lee
error: comparison is always false due to limited range of data type [-Werror=type-limits] ERR_FAIL_COND_V_MSG(p_port < 0 || p_port > 65535, ERR_INVALID_PARAMETER, "The local port number must be between 0 and 65535 (inclusive).");
2021-06-29Improve RID_Owner memory usagereduz
* Ability to allocate empty objects in RID_Owner, so RID_PtrOwner is not needed in most cases. * Improves cache usage, as objects are now allocated together * Should improve performance in 2D rendering
2021-06-29Merge pull request #49925 from RicardRC/FindFromNopRémi Verschelde
Make use of variable "from" in local_vector find() function.
2021-06-29Use unused from in local vector find function.Ricard Rovira