Commit graph

28415 commits

Author SHA1 Message Date
bruvzg
74eecd1d6b
GDNative add new core types. 2020-05-18 15:52:20 +03:00
Eric Rybicki
e460456e60
Fix certain characters being recognized as special keys in Windows when using the us international layout 2020-05-18 14:47:54 +02:00
Pedro J. Estébanez
abe03ff1f0 Remove no longer needed patches to jpgd.cpp 2020-05-18 14:38:28 +02:00
Rémi Verschelde
d0cc9a749f
Merge pull request #38827 from RandomShaper/fix_oa_hash_map
Fix leaks and crashes in OAHashMap
2020-05-18 14:37:40 +02:00
Rémi Verschelde
22c718ab17 SCons: Improve registration of compilation_db tool, check version
There's a builtin `toolpath` option we can use for that, so no need to hack
around a custom `scons_site` path.

The script requires SCons 3.1.1 or later, so we enable it conditionally.

Follow-up to #32848.
2020-05-18 14:11:19 +02:00
Pedro J. Estébanez
b720a01849 Fix leaks and crashes in OAHashMap
This changes the way the lifespan of items is managed to be consistent.

Bonus: Simplify cases of destroy-then-emplace.
2020-05-18 14:02:52 +02:00
Rémi Verschelde
37efaad8fb
Merge pull request #38816 from Faless/js/fix_audio_driver_4.0
AudioDriverJavaScript buffer size calculation.
2020-05-18 13:43:24 +02:00
Rémi Verschelde
b5d0f2a884
Merge pull request #38825 from akien-mga/glsl-clang-format-fixes
GLSL: Change shader type specifier from [vertex] to #[vertex]
2020-05-18 13:38:30 +02:00
Fabio Alessandrelli
90c7102b51 Move mix_rate, ouput_latency to AudioDriverManager
Each driver used to define the (same) project settings values
`audio/mix_rate` and `audio/output_latency`, but the setting names are
not driver specific.
Overriding is still possible via platform tags.
2020-05-18 13:02:06 +02:00
Fabio Alessandrelli
245c179bd3 AudioDriverJavaScript now compute buffer size.
Based on mix rate and expected latency.
2020-05-18 13:02:06 +02:00
Rémi Verschelde
c74d65cec8 GLSL: Change shader type specifier from [vertex] to #[vertex]
The added `#` prevents clang-format from misinterpreting the meaning
of this statement and thus messing up the formatting of the next
lines up until the first `layout` statement.

Similarly, a semicolon is now enforced on `versions` defines to
prevent clang-format from messing up formatting and putting them
all on a single line. Note: In its current state the code will
ignore chained statements on a single line separated by a semicolon.

Also removed some extraneous lines missed in previous style changes
or added by mistake with said changes (e.g. after uniform definitions
that clang-format messes up somewhat too, but we live with it).
2020-05-18 10:58:14 +02:00
Rémi Verschelde
0187cdae9a
Merge pull request #38800 from YeldhamDev/icons_complete
Add more missing node icons
2020-05-18 10:02:02 +02:00
Rémi Verschelde
cf9f7bc1c1
Merge pull request #38821 from Xrayez/custom-gitignore
Add `custom.py` to .gitignore
2020-05-18 10:01:07 +02:00
Andrii Doroshenko (Xrayez)
a712e14038 Add custom.py to .gitignore
The default `custom.py` can be created at the root of the Godot
repository to initialize any SCons build options via file which are
specific to user.
2020-05-18 10:28:43 +03:00
Rémi Verschelde
840c8f1cff
Merge pull request #38811 from Calinou/popupmenu-default-allow-search
Allow searching with keyboard input by default in PopupMenu
2020-05-18 09:19:13 +02:00
Remi Rampin
55bad66447 Update description of Object.free() method
Clarify that variables pointing to an object don't become `null` when that object is freed, it just makes them invalid.

(cherry picked from commit ccf5703568)
2020-05-18 09:11:22 +02:00
Hugo Locurcio
c9abc63108
Allow searching with keyboard input by default in PopupMenu
See discussion in https://github.com/godotengine/godot-proposals/issues/43.
2020-05-17 23:28:24 +02:00
Rémi Verschelde
d4599fff68
Merge pull request #38804 from m4gr3d/android_plugin_config_master
Implementation of the Godot Android Plugin configuration file
2020-05-17 22:38:47 +02:00
Max Hilbrunner
ea8d9c5288
Merge pull request #38795 from Calinou/doc-array-dictionary-reference
Document that Dictionary is always passed as reference
2020-05-17 20:30:42 +02:00
Fredia Huya-Kouadio
14e6696c8e Implementation of the Godot Android Plugin configuration file 2020-05-17 11:11:26 -07:00
Michael Alexsander
50585e2cfa Add more missing node icons 2020-05-17 12:51:49 -03:00
Rémi Verschelde
4c8832701b
Merge pull request #38695 from dreamsComeTrue/node-swap-order-arguments
Replace 'add_child_below_node' with 'add_sibling' in Node
2020-05-17 11:36:05 +02:00
Rémi Verschelde
72608e571a
Merge pull request #38793 from Anutrix/window-popup-centered-rect2-fix
Fix popup window size calculation in popup_centered_ratio by using Rect2
2020-05-17 11:20:35 +02:00
Hugo Locurcio
675fea1648
Document that Dictionary is always passed as reference
See #38792.
2020-05-16 23:52:40 +02:00
PouleyKetchoupp
242b94af1a TextEdit search returns a dictionary instead of Vector
Easier to use than accessing elements in a Vector using indices given by an enum.
Breaks compatibility on existing scripts using this functionality.
2020-05-16 23:46:14 +02:00
unknown
634e9460b9 Fix popup window size calculation in popup_centered_ratio by using Rect2 2020-05-17 03:06:42 +05:30
clayjohn
4408efade3 Add night sky to PhysicalSkyMaterial 2020-05-16 12:59:55 -07:00
Rémi Verschelde
163687d17a
Merge pull request #38782 from mbrlabs/text-editor-fix
Fixed text editor drawing if smooth scrolling is disabled.
2020-05-16 19:26:55 +02:00
Rémi Verschelde
1702fb7ad2
Merge pull request #37519 from HaSa1002/fix-duplicate-inputs-win
Fix input event being dispatched multiple times on Windows
2020-05-16 18:51:37 +02:00
Rémi Verschelde
e669aa302b
Merge pull request #38779 from bruvzg/gdnative_sizes_fix
Fix GDNative wrapper type sizes (RID, Variant, Packed*Array), add size checks.
2020-05-16 18:50:43 +02:00
PouleyKetchoupp
3ad694018f Fix Container sorting not working when overriding _sort_children in gdscript
Remove _sort_children from script bindings:
_sort_children is an internal method which shouldn't be exposed to scripts.

Added support for non-bound methods in MessageQueue:
So we can use deferred calls without exposing internal methods to scripts.

Added debug checks in CallableCustomMethodPointer:
Adding method pointer callables to the message queue was causing crashes
in case an object was destroyed and the same memory was allocated for
another one. The new object had a valid object id but the call was erroneous.
Release will be fixed later, along with Variant which has the same problem and
is also fixed for debug only.
2020-05-16 18:13:25 +02:00
SkyJJ
cc473b948f Fix Android LineEdit editing bugs 2020-05-16 17:55:27 +02:00
Ignacio Etcheverry
9fa4b402a7 Added tests for ClassDB 2020-05-16 17:32:58 +02:00
Rémi Verschelde
2fa795dea9
Merge pull request #29587 from Calinou/remove-hq2x
Remove HQ2X and the `Image.expand_2x_hq2x()` method
2020-05-16 16:51:08 +02:00
Marcus Brummer
b048eb05ad Fixed text editor drawing if smooth scrolling is disabled.
Fixes #38778
2020-05-16 16:31:43 +02:00
HaSa1002
434bf0572c Fix input event being dispatched multiple times on Windows 2020-05-16 16:17:50 +02:00
Hugo Locurcio
d935a4348d
Remove HQ2X and the Image.expand_2x_hq2x() method
As of Godot 3.0, HQ2X is no longer used to upscale the editor theme
and icons on hiDPI displays, which limited its effective uses.
HQ2X was also used to upscale the project theme when the "Use Hidpi"
project setting was enabled, but results were often less than ideal.
The new StyleBoxFlat and SVG support also make HQ2X less important
to have as a core feature.

This decreases binary sizes slightly (-150 KB on most platforms,
-212 KB on WebAssembly release).

This partially addresses #12419.
2020-05-16 16:10:50 +02:00
Tan Wang Leng
7b1423a61e gdscript_parser: Fix "unreachable code" false positive for loops
Depending on the conditional statements of the 'for' and 'while' loops,
their body may not even execute once. For example:

    func a():
        var arr = []
        for i in arr:
            return i
        # can be reached, but analysis says cannot
        return -1

    func b():
        var should_loop = false
        while should_loop:
           return 1
        # can be reached, but analysis says cannot
        return 0

The parser will complain that the statements after the comment cannot
be reached, but it is clearly possible for our scenario. This is
because the parser falsely assumes that the loop body will always
execute at least once.

Fix the code to remove this assumption for both of those loops.
2020-05-16 20:02:55 +08:00
Rémi Verschelde
ac58372db8
Merge pull request #38463 from smartin015/3.2-fixgedit
Remove get_local_mouse_position() hack in GraphEdit
2020-05-16 13:52:20 +02:00
Rémi Verschelde
cd16836392
Merge pull request #37430 from bruvzg/fix_non_hidpi_popup_pos
[macOS] Fix popup positions on multiple screens.
2020-05-16 13:44:51 +02:00
Rémi Verschelde
1a43d3b396
Merge pull request #38451 from eduardonunesp/feature/command-comma-preferences
Using command + comma on macOS as default shortcut for editor settings
2020-05-16 13:24:15 +02:00
smartin015
00457c68bc Remove get_local_mouse_position() hack in GraphEdit 2020-05-16 13:22:52 +02:00
bruvzg
08e80ccd99
Fix popup positions on multiple screens (with same scaling only). 2020-05-16 14:11:43 +03:00
bruvzg
48d133a5fd
Fix GDNative wrapper type sizes (RID, Variant, Packed*Array), add size checking static asserts. 2020-05-16 13:58:42 +03:00
Rémi Verschelde
988dd09047
Merge pull request #38777 from madmiraal/update-r128
Update r128.h to include latest fixes for mingw-64 32 bit builds.
2020-05-16 11:56:40 +02:00
Marcel Admiraal
8efd1ca9f7 Update r128.h to include latest fix for mingw-64 32 bit builds. 2020-05-16 10:30:51 +01:00
Rémi Verschelde
d999071edf
Merge pull request #37924 from thebestnom/migrate-to-androidX
Android: Migrate deprecated support library to AndroidX
2020-05-16 09:03:17 +02:00
Rémi Verschelde
5b2c0c342a
Merge pull request #38772 from neikeq/issue-38729
websocket: Fix crash at exit when not running the editor
2020-05-16 08:50:47 +02:00
Ignacio Etcheverry
18332a0094 websocket: Fix crash at exit when not running the editor
EditorDebuggerServer::register_protocol_handler must not be called before
editor initialization. Otherwise, if the editor is never initialized,
the added StringName will not be released until static destructors are
called (instead of being release during editor deinitialization).
2020-05-16 04:30:12 +02:00
Oliver Frank
6815bf42b3 Fix incorrect capabilities notification in LSP
(cherry picked from commit 2173d041af)
2020-05-15 23:55:49 +02:00