Commit Graph

35891 Commits

Author SHA1 Message Date
reduz 6631f66c2a Optimize StringName usage
* 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-18 21:20:02 -03:00
Rémi Verschelde b76dfde329
Merge pull request #50573 from KoBeWi/editor_spin_crasher
Fix crash in EditorSpinSlider
2021-07-18 09:58:19 +02:00
Yuri Roubinsky 35dc0db296
Merge pull request #50562 from Chaosus/vs_fix_funcs
Prevents function generation in visual shader if no connections to output are provided
2021-07-18 10:17:35 +03:00
Fabio Alessandrelli 5ee0d16565
Merge pull request #50575 from dsnopek/webrtc-idhandler-get-prop
Fix "IDHandler.get_prop is not a function" error when calling some methods on WebRTCDataChannel
2021-07-18 03:27:37 +02:00
David Snopek 756ed308ee Fix "IDHandler.get_prop is not a function" error when calling some methods on WebRTCDataChannel 2021-07-17 20:03:37 -05:00
kobewi 110236f761 Fix crash in EditorSpinSlider 2021-07-18 01:04:27 +02:00
Fabio Alessandrelli afc59ae84b
Merge pull request #50567 from Faless/js/4.x_joy_psff_snes
[HTML5] Add 2 controllers to the godot database.
2021-07-18 01:02:32 +02:00
Fabio Alessandrelli 5717118bcc [HTML5] Add 2 controllers to the godot database.
Sony PlayStation DualShock 4 (054c:05c4 first gen).
Unofficial Switch controller.
2021-07-17 23:51:48 +02:00
Yuri Roubinsky d63a284dff Prevent function gen in visual shader if no out connection is provided 2021-07-17 22:51:22 +03:00
Juan Linietsky 6263f58d69
Merge pull request #50559 from reduz/fix-scene-tree-duplicate-selection
Fix duplicate selection in SceneTree
2021-07-17 15:58:41 -03:00
Rémi Verschelde 51a10feb9d
Merge pull request #50509 from Calinou/editor-tweak-select-mode-drag-threshold
Tweak editor select mode drag threshold for better usability
2021-07-17 19:37:11 +02:00
reduz 7d20d78847 Fix duplicate selection in SceneTree
* It seems both cell_selected and multi_selected were being triggered,
* This caused inspector updating twice.
* cell_selected connection and callback were removed.

This may be a bug in Godot 3.x too, recommend checking.
2021-07-17 13:35:28 -03:00
Juan Linietsky deeec8894a
Merge pull request #50530 from reduz/create-popups-on-demand
Create many types of popups on demand
2021-07-17 12:28:41 -03:00
reduz a3fb76cd45 Create many types of popups on demand
* LineEdit popups created on demand.
* TextEdit popups created on demand.
* SpinSlider popups created on demand.
* ResourcePicker popups created on demand.

Improves editor responsiveness.
2021-07-17 10:57:14 -03:00
Rémi Verschelde 7537875d86
Merge pull request #50547 from pycbouh/editor-theme-eagerly-grab-focus-on-popup-and-never-let-go
Fix focus behavior in the Add Item Type dialog of the Theme editor
2021-07-17 14:39:13 +02:00
Yuri Sizov 4bcdbf1280 Fix focus behavior in the Add Item Type dialog of the Theme editor 2021-07-17 13:20:10 +03:00
Fabio Alessandrelli 76b0030821
Merge pull request #39610 from Meriipu/master_resourcename
WebSocketServer: Expose the resource name the client used
2021-07-17 10:55:11 +02:00
Rémi Verschelde b079715563
Merge pull request #50520 from pycbouh/editor-theme-fixup
Fix control picker in the Theme editor
2021-07-17 09:29:56 +02:00
Rémi Verschelde dfe2630b41
Merge pull request #50513 from Geometror/displayserver-add-override
Modernize display_server_... headers and make style consistent (use override keyword)
2021-07-17 07:54:18 +02:00
Meriipu 1475f617a3 Expose the resource name the client used to the websocket server
This information is exposed to the websocket server through the
client_connected-signal.

example.com/chat?id=10 gives the resource name "/chat?id=10"
2021-07-17 07:48:18 +02:00
Fabio Alessandrelli de83ee57e5
Merge pull request #38313 from Calinou/hlm-default-enable-compression
Enable range coder compression by default in NetworkedMultiplayerENet
2021-07-16 22:26:34 +02:00
Hugo Locurcio 97d8608c7d
Enable range coder compression by default in NetworkedMultiplayerENet
From empirical testing, this seems to provide the best compression
compared to other compression algorithms when used in the
Multiplayer Bomber demo.

Other algorithms may provide better compression ratios for more
complex games, but some compression is probably better than
no compression.

Zstandard was also not very efficient in my testing, so I added
a note in the documentation.
2021-07-16 21:49:02 +02:00
Hendrik Brucker 38578a8095 Modernize Display server to use override keyword 2021-07-16 21:39:13 +02:00
Yuri Sizov d82ec336d9 Fix control picker in the Theme editor 2021-07-16 21:32:58 +03:00
Fabio Alessandrelli 0e265b047e
Merge pull request #46554 from likeich/is_server_quiet_failure
MultiplayerAPI is_network_server Fails Silently
2021-07-16 20:04:41 +02:00
Hugo Locurcio 523d6b2ae8
Merge pull request #47395 from sygi/shape_idx_collision
Add shape_idx to CollisionObject2D mouse_entered signal
2021-07-16 19:05:08 +02:00
Hugo Locurcio ac52178850
Tweak editor select mode drag threshold for better usability
- Use a smaller drag threshold (8 pixels instead of 10 pixels).
- Scale the 2D editor drag threshold with the zoom to make it
  work the same regardless of the current zoom level.
2021-07-16 06:17:40 +02:00
Rémi Verschelde 60add98a4c
Merge pull request #49328 from nekomatata/sync-to-physics-3d
Support for 3D sync to physics
2021-07-15 23:18:59 +02:00
Rémi Verschelde 7aa44bef1e
Merge pull request #49327 from nekomatata/sync-to-physics-2d
Move sync to physics to StaticBody2D
2021-07-15 23:18:08 +02:00
PouleyKetchoupp 7f92127959 Support for 3D sync to physics
Same implementation as in 2D.
2021-07-15 10:15:13 -07:00
PouleyKetchoupp d12b44ca13 Move sync to physics to StaticBody2D
Now static body is used for moving platforms through kinematic motion
property, so sync to physics needs to be in StaticBody2D instead of
CharacterBody2D.

Constant kinematic motion is also supported in combination with sync to
physics for smoother movements.
2021-07-15 10:13:27 -07:00
Rémi Verschelde 008a3f23ff
Merge pull request #41788 from EricEzaM/PR/proj-settings-fix
Improve UI for creating and editing plugins.
2021-07-15 19:11:06 +02:00
Juan Linietsky 28ee24b971
Merge pull request #50484 from reduz/fix-instance-set-binding-on-create
Add ability to set object instance binding on creation
2021-07-15 14:04:04 -03:00
Rémi Verschelde 296b713ee8
Merge pull request #50481 from reduz/install-android-build-sources
Added ability to load Android build sources from file.
2021-07-15 18:22:26 +02:00
reduz b5d5d13f56 Add ability to set object instance binding on creation
* Required by binding generators
* Makes it easier to create the bindings on construction.
2021-07-15 11:41:57 -03:00
Rémi Verschelde 9427bf3842
Merge pull request #50480 from Faless/js/4.x_ci 2021-07-15 16:20:17 +02:00
Rémi Verschelde 64fb4fac89
Merge pull request #49996 from Chaosus/shader_localvar_warning
Added a shader warning about unused local variable
2021-07-15 16:19:22 +02:00
Fabio Alessandrelli 9a044d95fc Re-enable JavaScript CI (with no WebXR until fixed). 2021-07-15 15:34:13 +02:00
Fabio Alessandrelli 7431586286 [HTML5] Make threads build the default.
Non-threads build are broken anyway.
2021-07-15 15:33:39 +02:00
Juan Linietsky 3f12765a7e
Merge pull request #49678 from BastiaanOlij/mobile_renderer_select_color_format
Use 32bit instead of 64bit 3D render buffer on mobile renderer
2021-07-15 10:16:39 -03:00
reduz 6639cc9853 Addes ability to load build sources from file.
* If not present, the dialog asks to load build sources from a file.
* The export templates check now also verifies that build sources are installed and skips the template check.

This makes Android development easier.
2021-07-15 10:14:08 -03:00
Rémi Verschelde f79e79d479
Merge pull request #38819 from EricEzaM/improve-to_string-for-nodes
Added Node name to print() of all Nodes by making to_string() in Object virtual, so it can be overriden in C++.
2021-07-15 15:11:21 +02:00
Fabio Alessandrelli 3d8acc7a54 [HTML5] Fix build (with module_webxr_enabled=no).
The XR API changed a bit, and it's not just a rename, though probably an
easy update for someone who is qualified :).
2021-07-15 14:37:21 +02:00
Rémi Verschelde 912792cfe6
Merge pull request #47825 from nathanfranke/fix-super-annoying-bug-lol
Do not change scene on save when debugging
2021-07-15 14:24:55 +02:00
Rémi Verschelde aedde03424
Merge pull request #50476 from akien-mga/mono-remove-info-dialog
Mono: Remove info dialog discouraging use in production
2021-07-15 14:23:54 +02:00
Rémi Verschelde 6ddaebc091
Merge pull request #47538 from LightningAA/inspector-reorder-array-4.0
Add the ability to reorder array elements from the inspector
2021-07-15 14:01:31 +02:00
Eric M 3ca25ffe8a Added Node name to print() when printing Nodes. 2021-07-15 21:48:58 +10:00
Rémi Verschelde eb23e52542
Merge pull request #50314 from fabriceci/fix-2d-moving-platform-4
Fixing 2D moving platform logic
2021-07-15 13:32:34 +02:00
Nathan Franke 022a061571
Do not update scene tree dock when node edited outside of it 2021-07-15 05:42:34 -05:00
Rémi Verschelde 47d460f2b7
Merge pull request #50474 from JFonS/fix_range_const_iterator
Fix equality operators in List's ConstIterator
2021-07-15 11:57:32 +02:00