Commit graph

48263 commits

Author SHA1 Message Date
Rémi Verschelde
be126d42d4
Merge pull request #67588 from KoBeWi/if(!GDVIRTUAL_CALL)don't
Simplify GDVIRTUAL_CALL calls
2022-10-31 11:55:56 +01:00
Rémi Verschelde
33c7c8020a
Merge pull request #67489 from timothyqiu/auto-select-all
Allow selecting SpinBox & LineEdit text when focus enters
2022-10-31 11:55:06 +01:00
Rémi Verschelde
6946bc56ef
Merge pull request #67309 from groud/implement_gdnative_interface_h_dump
Implement a way to dump the gdnative_interface.h file from the executable
2022-10-31 11:54:38 +01:00
Yuri Rubinsky
099f127cc3
Make code generation for shader boolean uniform instances easier 2022-10-31 11:52:52 +01:00
Rémi Verschelde
90e337e081
CI: Update minimatch npm dependency to silence security report
No risk for us as this is only used for static checks on CI.
2022-10-31 11:52:52 +01:00
Danil Alexeev
7d15bb4064
Fix EditorInspector.property_changed signal connection 2022-10-31 11:52:52 +01:00
Rémi Verschelde
b6cbea5e58
Merge pull request #63590 from golfinq/fbg-padding
Add padding options in theme for fg/bgcolor tags in RichTextLabel
2022-10-31 11:14:55 +01:00
Rémi Verschelde
f4f98c4ecb
Merge pull request #67055 from GuilhermeGSousa/custom-node-export
Added custom node export
2022-10-31 11:11:07 +01:00
Rémi Verschelde
87545bf873
Merge pull request #67519 from BastiaanOlij/change_xr_pre_draw_viewport
Changing timing of call to xr_interface->pre_draw_viewport
2022-10-31 11:08:34 +01:00
Rémi Verschelde
1b3847bb74
Merge pull request #67560 from timothyqiu/mp-default
Fix `SceneTreeEditor::_update_tree()` binding
2022-10-31 11:08:15 +01:00
Rémi Verschelde
49c53027a9
Merge pull request #67786 from EricEzaM/67743-script-editor-shortcuts
Set the shortcut context for the edit/search/goto menus to the ScriptEditor so that shortcuts continue to work when FindReplaceBar is focused.
2022-10-31 11:07:48 +01:00
Rémi Verschelde
3312d0a87b
Merge pull request #67907 from clayjohn/RD-model-matrix
Correctly rename to read_model_matrix when using shader builtins that rely on model matrix
2022-10-31 11:07:24 +01:00
Rémi Verschelde
d6aa3078ab
Merge pull request #54309 from ibrahn/alsa-midi-fix
Fix MIDI input with ALSA
2022-10-31 11:07:05 +01:00
Rémi Verschelde
dcd86f9848
Merge pull request #67046 from Cykyrios/fix-invalid-tooltip-position
Fix invalid tooltip position
2022-10-31 11:05:19 +01:00
Rémi Verschelde
869c2bd6de
Merge pull request #68064 from kleonc/sprite-frames-editor-fix-frame-index-calculation
`SpriteFramesEditor` Fix calculating frame index from mouse position
2022-10-31 11:00:19 +01:00
Rémi Verschelde
51cd380167
Merge pull request #64659 from Streq/patch-1
add polygons property description in Polygon2D
2022-10-31 11:00:12 +01:00
Rémi Verschelde
213ba46672
Merge pull request #68065 from zCubed3/fix_min_max_crash
`GDScriptAnalyzer` Fix math utilities crashing when invalid args are passed
2022-10-31 10:59:27 +01:00
Rémi Verschelde
8b1a42cd47
Merge pull request #67888 from KoBeWi/overridead
Remove `override_selected_font_color` property
2022-10-31 10:59:07 +01:00
Rémi Verschelde
4845feb95d
Merge pull request #68003 from timothyqiu/camera-gizmo-select
Make Camera3D gizmo clickable
2022-10-31 10:56:39 +01:00
Rémi Verschelde
f0dcefe5f8
Merge pull request #66380 from aaronfranke/basis-euler-test
Simplify Euler order test code in test_basis.h
2022-10-31 10:55:37 +01:00
Rémi Verschelde
d147adc591
Merge pull request #67915 from RevoluPowered/fix-intel-macbook-crash-subgroups
Ensure vulkan subgroups are disabled for MoltenVK
2022-10-31 10:53:30 +01:00
Rémi Verschelde
420eb1aa34
Merge pull request #67445 from Zylann/rename_queue_delete
Rename queue_delete => queue_free
2022-10-31 10:51:18 +01:00
Rémi Verschelde
93df2b0f6d
Merge pull request #67805 from TokageItLab/fix-postimport-anim-arg
Fix passed dictionary to `internal_process()` in importer plugin for animation
2022-10-31 10:49:47 +01:00
Rémi Verschelde
e12043ae3a
Merge pull request #67729 from Riteo/workaround-extension-feature-bug
Check for a Vulkan extension before checking its features
2022-10-31 10:48:35 +01:00
Rémi Verschelde
62a778fdd6
Merge pull request #66929 from MladoniSzabi/save_jpeg_file
Fixed Image.save_jpg() does not write any file
2022-10-31 10:48:10 +01:00
Rémi Verschelde
fa73211754
Merge pull request #65118 from Mickeon/editor-remote-tree-buttons
Add a few buttons in Remote Scene Tree
2022-10-31 10:46:08 +01:00
Rémi Verschelde
b43cc96535
Merge pull request #62695 from Spartan322/relax-constant-asserts
Allow non-constant string message for assert
2022-10-31 10:44:56 +01:00
Rémi Verschelde
5a00568afb
Merge pull request #67032 from clayjohn/GLES3-gpu-profiling
Add OpenGL timer queries to OpenGL3 backend
2022-10-31 10:43:13 +01:00
Rémi Verschelde
40258bbbe8
Merge pull request #67577 from qarmin/fix_exporting_big_templates
Fix exporting with big export templates
2022-10-31 10:39:08 +01:00
Rémi Verschelde
d831ba1d6f
Merge pull request #67534 from KoBeWi/more_OK_in_OKHSL
Improve ColorPicker sliders in OKHSL mode
2022-10-31 10:37:27 +01:00
Rémi Verschelde
638dfe2528
Merge pull request #67581 from aaronfranke/android-float
Use proper types for converting Java float/double arrays in Android code
2022-10-31 10:36:11 +01:00
Rémi Verschelde
d0fbeec66a
Merge pull request #67580 from KoBeWi/little_things
Minor code improvements
2022-10-31 10:34:57 +01:00
Rémi Verschelde
32548f9608
Merge pull request #67467 from timothyqiu/who-ami-i
Fix get_path() error when calling get_node()
2022-10-31 10:33:51 +01:00
Rémi Verschelde
68623c75b3
Merge pull request #67496 from Paulb23/text-edit-crashes
Fix TextEdit action and CodeEdit completion crash
2022-10-31 10:32:41 +01:00
Rémi Verschelde
273410ba5a
Merge pull request #67139 from PucklaMotzer09/insert_caret_at_carets
Add Caret Insert Below and Above shortcuts to TextEdit
2022-10-31 10:32:07 +01:00
Rémi Verschelde
996f7e5142
Merge pull request #66352 from arkology/progressbar_atlastexture_radial
Support AtlasTexture in radial modes of TextureProgressBar
2022-10-31 10:31:07 +01:00
Ignacio Roldán Etcheverry
256c0079b0
Merge pull request #67987 from neikeq/dotnet-more-static-marshaling
C#: Reflection-less delegate callables and nested generic Godot collections
2022-10-31 04:21:13 +01:00
streq
de66acc624 clarify [member polygons] functionality in the Polygon2D class documentation 2022-10-30 20:32:36 -03:00
zCubed3
b7f0ab13a4
Fix math utility functions crashing when invalid args passed 2022-10-30 15:18:03 -07:00
kleonc
d135957987 SpriteFramesEditor Fix calculating frame index from mouse position 2022-10-30 21:26:58 +01:00
Max Hilbrunner
aaa931659e
Merge pull request #68050 from Anutrix/int-float-docs
Added missing docs to built-in types float and int
2022-10-30 18:48:23 +01:00
Anutrix
c9b467ac15 Added missing docs to built-in types float and int 2022-10-30 17:53:59 +05:30
Max Hilbrunner
ad3f2a2340
Merge pull request #67945 from Mickeon/doc-consistency-inspector
Doc consistency: tweak "inspector" Vs. "Inspector"
2022-10-30 12:09:47 +01:00
Max Hilbrunner
9fb481334a
Merge pull request #68039 from Anutrix/docs-fix-signal-syntax
Fixed signal connection examples to use new callable syntax in the docs
2022-10-30 12:03:37 +01:00
Anutrix
7984598e33 Fixed signal connection examples to use new callable syntax in the docs 2022-10-30 05:26:46 +05:30
Ignacio Roldán Etcheverry
f66a352c0f C#: Add Variant conversion callbacks for generic Godot collections
This allows using generic Godot collections as type arguments for other
generic Godot collections. This also allows generic Godot collections
as parameter or return type in dynamic Callable invocations.
2022-10-30 01:24:15 +02:00
Ignacio Roldán Etcheverry
282bd37e5c C#: Remove need for reflection to invoking callable delegates
We aim to make the C# API reflection-free, mainly for concerns about
performance, and to be able to target NativeAOT in refletion-free mode,
which reduces the binary size.

One of the main usages of reflection still left was the dynamic
invokation of callable delegates, and for some time I wasn't sure
I would find an alternative solution that I'd be happy with.

The new solution uses trampoline functions to invoke the delegates:

```
static void Trampoline(object delegateObj, NativeVariantPtrArgs args, out godot_variant ret)
{
    if (args.Count != 1)
        throw new ArgumentException($"Callable expected 1 arguments but received {args.Count}.");

    string res = ((Func<int, string>)delegateObj)(
        VariantConversionCallbacks.GetToManagedCallback<int>()(args[0])
    );

    ret = VariantConversionCallbacks.GetToVariantCallback<string>()(res);
}

Callable.CreateWithUnsafeTrampoline((int num) => "Foo" + num, &Trampoline);
```

Of course, this is too much boilerplate for user code. To improve this,
the `Callable.From` methods were added. These are overloads that take
`Action` and `Func` delegates, which covers the most common use cases:
lambdas and method groups:

```
// Lambda
Callable.From((int num) => "Foo" + num);

// Method group
string AppendNum(int num) => "Foo" + num;
Callable.From(AppendNum);
```

Unfortunately, due to limitations in the C# language, implicit
conversions from delegates to `Callable` are not supported.

`Callable.From` does not support custom delegates. These should be
uncommon, but the Godot C# API actually uses them for event signals.
As such, the bindings generator was updated to generate trampoline
functions for event signals. It was also optimized to use `Action`
instead of a custom delegate for parameterless signals, which removes
the need for the trampoline functions for those signals.

The change to reflection-free invokation removes one of the last needs
for `ConvertVariantToManagedObjectOfType`. The only remaining usage is
from calling script constructors with parameters from the engine
(`CreateManagedForGodotObjectScriptInstance`). Once that one is made
reflection-free, `ConvertVariantToManagedObjectOfType` can be removed.
2022-10-30 01:24:15 +02:00
Max Hilbrunner
f013315980
Merge pull request #67754 from kleonc/tilemap-fix-collision-shapes-debug-draw
Fix `TileMap` collision shapes debug draw
2022-10-30 00:15:42 +02:00
Max Hilbrunner
6ac7afe7a7
Merge pull request #67836 from stevecotton/particles_demo_link
doc: link GPUParticles2D to a more appropriate demo
2022-10-30 00:10:56 +02:00
Max Hilbrunner
a889c1d7a2
Merge pull request #67909 from Calinou/doc-enetpacketpeer
Document the ENetPacketPeer class
2022-10-30 00:09:24 +02:00