Commit Graph

6226 Commits

Author SHA1 Message Date
Juan Linietsky f8a79a97c7 Effective DisplayServer separation, rename X11 -> LinuxBSD 2020-03-26 15:49:34 +01:00
Juan Linietsky 4396e98834 Refactored Input, create DisplayServer and DisplayServerX11 2020-03-26 15:49:32 +01:00
Rémi Verschelde 24fa0d871d
Merge pull request #37294 from akien-mga/scons-drop-python2
SCons: Drop support for Python 2
2020-03-26 09:28:11 +01:00
Yuri Roubinsky 1358febfa1
Merge pull request #37287 from Chaosus/vs_sky
Added sky shader mode to visual shaders
2020-03-26 08:38:19 +03:00
Yuri Roubinsky 898b843718 Added sky shader mode to visual shaders 2020-03-25 19:04:42 +03:00
Rémi Verschelde 3d2dd79ecd SCons: Drop support for Python 2
We now require SCons 3.0+ (first version with Python 3 support),
and we set min required Python 3 version to 3.5 (3.4 and earlier are
EOL).
2020-03-25 15:25:37 +01:00
Rémi Verschelde 13a9bfbca7 Style: Harmonize header guards to style guide [Core] 2020-03-25 11:22:19 +01:00
Rémi Verschelde 5fede4a81c
Merge pull request #37272 from AndreaCatania/fix_ik_rot
Fixed IK rotation issue
2020-03-25 08:25:44 +01:00
Rémi Verschelde 0034c88c57 glTF: Fix tangent generation for non-blend shapes
PR #30877 was bogus as it made a blend shape-specific code block apply
to everything but blend shapes (as it seemed not to work properly *for*
blend shapes).

The proper fix should thus be to simply remove the problematic
block (and thus cleanup unnecessary logic).

Fixes #32712.
2020-03-24 11:25:06 +01:00
Andrea Catania 277696d6c5 Fixed IK rotation issue 2020-03-24 10:06:24 +01:00
Rémi Verschelde cfd84625f0 Move DocData and Collada out of their subfolders
Now that the unused DocDump was removed, the `editor/doc` subfolder is
redundant.

Similarly, there's no reason for Collada to have a subfolder for itself
when glTF or OBJ don't.
2020-03-24 09:56:04 +01:00
Rémi Verschelde 9d24541597 Remove unused classes and stray headers
Found by reviewing headers with 1 or less matching includes:
```
find -name thirdparty -prune -o -name "*.h" -exec basename {} \; | sort -u > headers
for header in $(cat headers); do echo "$header: "; rg -l "#include \"(.*/)?$header\"" | wc -l; done > list-includes
```
2020-03-24 09:50:51 +01:00
Rémi Verschelde ed9a0d0484
Merge pull request #37179 from clayjohn/VULKAN-sky-shader
Implement Sky Shaders
2020-03-22 20:03:35 +01:00
clayjohn 61a74739ca Working sky shader implementation 2020-03-21 20:43:44 -07:00
Rémi Verschelde 7ed9da0a54
Merge pull request #37161 from simpuid/positon-gizmo-fix
Fixes transform gizmo position when node has default transform
2020-03-21 15:31:47 +01:00
simpuid 19825436d4 Fixes transform gizmo position when node has default transform
Changes made:
* Added dirty bit for SpatialEditorSelectedItem's last_xform
* SpatialEditorViewport checks that dirt bit too before skipping the selection
2020-03-21 18:31:46 +05:30
Rémi Verschelde aca1971a12 i18n: Add header strings to translation catalog 2020-03-20 12:35:22 +01:00
Rémi Verschelde 4857648a16 i18n: Add support for translating the class reference
- Parse `.po` files from `doc/translations/*.po` like already done
  with `editor/translations/*.po`.
- Add logic to register a doc translation mapping in `TranslationServer`
  and `EditorSettings`.
- Add `DTR()` to lookup the doc translation mapping (similar to `TTR()`).
  Strings are automatically dedented and stripped of whitespace to ensure
  that they would match the translation catalog.
- Use `DTR()` to translate relevant strings in `EditorHelp`,
  `EditorInspector`, `CreateDialog`, `ConnectionsDialog`.
- Small simplification to `TranslationLoaderPO`, the path argument was
  not really meaningful.
2020-03-20 08:48:11 +01:00
Fabio Alessandrelli 10dd73c868
Merge pull request #37159 from ThakeeNathees/f8-stop-process-crash-fix
Fix editor crash when stopping game with F8.
2020-03-19 16:51:41 +01:00
Rémi Verschelde 500086587a
Merge pull request #35712 from KoBeWi/theheme_spy
Show theme property descriptions in the inspector
2020-03-19 14:50:59 +01:00
Thakee Nathees 76fd073f58 stop game process with KEY_F8 crash fixed
Fix: #37121
2020-03-19 19:13:19 +05:30
johan 1c02906a6f Editor 2D: Change pixel alignment strategy, fix jittering in high zoom
Alignment of scene pixels on screen pixel ensure a crisp rendering of small features (such as text). Unfortunately, alignment of top left pixel on screen adds a lot of jittering when zooming at high zoom factor.

This change allow to snap the top left scene pixel on the closest screen pixel (not only the top-left most), and we do so only when the scale factor is an integer.
2020-03-18 12:37:14 -04:00
Rémi Verschelde 194d2ccb72
Merge pull request #37116 from neikeq/issue-12917
Sync csproj when files are changed from the Godot FileSystem dock
2020-03-18 16:07:49 +01:00
Ignacio Etcheverry fe0b783e70 Expose FileSystemDock to the scripting API and fixed signals
Fixed FileSystemDock's `file_removed` and `folder_removed` signals not being
emitted because the emitted was using the wrong signal name.
2020-03-18 15:06:07 +01:00
Rémi Verschelde faca5bafe8
Merge pull request #36993 from van800/editor_metadata
For third-party tools - editor_path is stored in project's editor settings
2020-03-18 10:39:06 +01:00
Rémi Verschelde b8577ecce1
Merge pull request #37106 from akien-mga/clang-format-cpp11
Style: Set clang-format Standard to Cpp11
2020-03-17 08:42:39 +01:00
Rémi Verschelde cb282c6ef0 Style: Set clang-format Standard to Cpp11
For us, it practically only changes the fact that `A<A<int>>` is now
used instead of the C++03 compatible `A<A<int> >`.

Note: clang-format 10+ changed the `Standard` arguments to fully
specified `c++11`, `c++14`, etc. versions, but we can't use `c++17`
now if we want to preserve compatibility with clang-format 8 and 9.
`Cpp11` is still supported as deprecated alias for `Latest`.
2020-03-17 07:36:24 +01:00
alvaroHernandez e47d5691e4 prevent joypad button input dropdown going out of dialog 2020-03-16 21:44:50 -03:00
Rémi Verschelde 2aa832f415 i18n: Sync translations with Weblate
(cherry picked from commit 0e36b11f9d)
2020-03-16 10:49:03 +01:00
Rémi Verschelde 47eb28a919
Merge pull request #36184 from volzhs/plugins-checkbox
Use checkbox for plugin status instead of option list
2020-03-16 10:47:32 +01:00
Rémi Verschelde 2a49798c7b
Merge pull request #36970 from JFonS/fix_viewports_update
Update all editor viewports after settings changes
2020-03-14 23:46:58 +01:00
JFonS 55b478afd9 Update all editor viewports after settings changes 2020-03-14 20:47:12 +01:00
Hugo Locurcio e90beade15 Tweak the built-in script naming for resources with custom names
This makes the script name appear before the scene file name,
which ensures it's always visible even if the list of scripts is too
narrow to display the full name.

This only impacts built-in scripts with custom resource names.
Unnamed resources will still use `<scene_file>::<id>` naming
in the list of scripts.
2020-03-13 15:20:42 +01:00
Pedro J. Estébanez 98326d88bb Fix bad uses of mutex causing deadlocks 2020-03-13 11:13:58 +01:00
Rémi Verschelde 951ecc4f79
Merge pull request #36518 from Janglee123/no-underlined-keywords
Removed underlining of not clickable symbols
2020-03-12 22:24:43 +01:00
Rémi Verschelde 36a414eb03
Merge pull request #36994 from akien-mga/typedefs-cleanup
typedefs: Cleanup unused macros and unnecessary checks
2020-03-12 22:02:18 +01:00
Ivan.Shakhov 2f151068b5 for third-party tools - editor_path is stored in project's editor settings 2020-03-12 13:59:48 +01:00
Rémi Verschelde 676fcca988
Merge pull request #36963 from JFonS/fix_rotation_gizmo_update
Fix rotation gizmo for empty Spatials
2020-03-12 12:35:18 +01:00
Rémi Verschelde 1c2f2a805d typedefs: Cleanup unused macros and unnecessary checks
We now require a compiler with C++17 support, so we don't need to
check for features added to GCC 5 or Clang 3.2.

Clang builtin availability checks were unused anyway as Clang defines
`__GNUC__` as it's also a GNU C implementation.

Fixes #36986.
2020-03-11 21:44:56 +01:00
luz.paz 7bf6e5f773 Fix various typos
Found via `codespell`
2020-03-11 13:59:18 -04:00
janglee 50a570c9c1 Removed underlining for not clickable symbols 2020-03-11 08:57:21 +00:00
JFonS a0af3094b4 Fix rotation gizmo for empty Spatials
The AABB for an empty Spatial has 0 size, since the stored and
compared Transform was scaled by the AABB size, it would completely
destroy the rotation information. If there is no rotation
information, the gizmo doesn't update when the rotation changes.
2020-03-10 16:23:22 +01:00
Rémi Verschelde 1500e40ccf
Merge pull request #36887 from MCrafterzz/relativeSnap
Made snap relative work on rotation as well
2020-03-10 10:17:42 +01:00
Fabio Alessandrelli 95c4ba80c5 Fix "deploy with remote debug" editor option.
The line to update the option was missing (rendering it useless).
Of course the only one I didn't know how to test was broken.
2020-03-10 04:06:19 +01:00
Rémi Verschelde 478337c412
Merge pull request #36751 from Faless/debugger/threads_and_profilers
ScriptDebugger refactor, threading, profilers.
2020-03-09 19:08:07 +01:00
Marcus Elg 97a07bada7 Made snap relative work on rotation as well 2020-03-09 17:00:47 +01:00
Rémi Verschelde af015f79d3
Merge pull request #36917 from volzhs/cancel-snap-setting
Update snap setting only with OK
2020-03-09 12:19:56 +01:00
Rémi Verschelde 1f37c8e048
Merge pull request #36914 from guilhermefelipecgs/fix_check_view_information
Fix the VIEW_INFORMATION checkbox not being selected (visually)
2020-03-09 12:17:07 +01:00
Rémi Verschelde e162c07af9
Merge pull request #36920 from Faless/debugger/more_instances
Move Debug menu logic to DebuggerEditorPlugin, allow 4 debug instances
2020-03-09 12:01:14 +01:00
Rémi Verschelde a4318281d3
Merge pull request #36929 from timothyqiu/keep-filename
Keeps the filename when marking scene as unsaved
2020-03-09 11:43:11 +01:00
Rémi Verschelde 788765709d DocData: Fix serialization of Variant default values
Co-authored-by: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
2020-03-09 10:52:44 +01:00
Rémi Verschelde e629b4bc8a i18n: Sync translations with Weblate
(cherry picked from commit 18e021b7cd)
2020-03-09 10:13:45 +01:00
Fabio Alessandrelli bfc1b76803 Allow running/debugging up to 4 instances. 2020-03-09 09:43:54 +01:00
Haoyu Qiu 9ed61a70cc Keeps the filename when marking scene as unsaved 2020-03-09 10:26:57 +08:00
jfons 7055a926ff Add rotation widget to 3D viewport 2020-03-08 23:38:29 +01:00
Fabio Alessandrelli 4d623b70d7 Move Debug menu logic to DebuggerEditorPlugin 2020-03-08 22:57:48 +01:00
volzhs 667a981d4d Update snap setting only with OK
restore previous values with cancel
2020-03-09 04:31:11 +09:00
Guilherme Felipe 126cec41e6 Fix the VIEW_INFORMATION checkbox not being selected
Generated id of "Display Advanced..." was in conflict with "View Information"
2020-03-08 15:34:41 -03:00
Fabio Alessandrelli 3b47eb51e4 Update editor debugger to new remote debugger.
Shared RemoteDebuggerPeer code between client and server.
Move editor profilers inside editor/debugger folder.
2020-03-08 12:36:39 +01:00
Fabio Alessandrelli 540ca05a80 Threaded networking for editor debugger. 2020-03-08 12:16:09 +01:00
Mateo Miccino 86b48093eb Signals: filter_changed from ProjectListFilter now is emitted when it's on scene tree to avoid unexpected call 2020-03-07 18:34:10 -03:00
fhuya f097defba1 Re-architecture of the Godot Android plugin. 2020-03-05 10:00:19 -08:00
Rémi Verschelde 42595085a5
Merge pull request #36752 from RandomShaper/rework_semaphore
Drop old semaphore implementation
2020-03-05 16:33:45 +01:00
Rémi Verschelde fdda39a506 Signals: Don't pass default binds to EditorProperty property_changed
This was done by mistake in #36758, but it's not necessary and actual
causes a bug.

`property_changed` is only emitted via `emit_changed()`, which already
has default values for `p_field` and `p_changing`.

Also reverted to using `String` for now to be on the safe side, even if
it's inconsistent with `emit_changed()`. I had only changed it
partially in #36758 so it was inconsistent. It probably does make sense
to port `EditorInspector` and related property editors to use
`StringName` where relevant, but that's for a dedicated PR.

Fixes #36799.
2020-03-05 15:35:44 +01:00
Rémi Verschelde 54a8bad8fe
Merge pull request #36700 from ThakeeNathees/scene-tab-bug-fix
Fix possible EditorFolding crash when switching scenes
2020-03-05 14:23:43 +01:00
Thakee Nathees 3275e8488b Fix EditorFolding crash when switching scenes 2020-03-05 18:19:58 +05:30
Fabio Alessandrelli e5ec499a92 Fix some bugs spotted by asan in editor debugger.
EditorDebuggerInspector is in tree, so it gets automatically deleted,
when clearing errors the debugger should not fake a process
notification.
2020-03-05 12:28:22 +01:00
Rémi Verschelde 85ffc5ec97
Merge pull request #36746 from aaronfranke/plugin-icon-docs
Document EditorPlugin get_plugin_icon and get_plugin_name
2020-03-05 09:46:41 +01:00
Rémi Verschelde 0c53f1f7db
Merge pull request #36743 from Calinou/tweak-giprobe-gizmo
Tweak the GIProbe gizmo to be more subtle
2020-03-04 22:44:44 +01:00
Rémi Verschelde 7c9e15238e
Merge pull request #36739 from Calinou/improve-giprobe-editor-label
Improve the GIProbe editor contextual label
2020-03-04 22:41:25 +01:00
Aaron Franke 68d73ecf60
Document EditorPlugin get_plugin_icon and get_plugin_name
The return value's type hint is now accurate.
2020-03-04 15:49:20 -05:00
Rémi Verschelde f83f1d7c9b
Merge pull request #36069 from RandomShaper/imvu/improve_drives_ux
Improve UX of drive letters
2020-03-04 13:19:55 +01:00
Rémi Verschelde c90ec71bcd
Merge pull request #36699 from dreamsComeTrue/fix-extension-file-dialog
Take correct part of extension with File Dialog
2020-03-04 10:36:20 +01:00
Gil Arasa Verge e060e0992a Double click on a folder didn't open it (editor)
Same behavior as #36684.
Removed by mistake in #36426.

Fixes #36757.
2020-03-03 19:43:37 +01:00
Pedro J. Estébanez 9a3a2b03b8 Drop old semaphore implementation
- Removed platform-specific implementations.
- Now all semaphores are in-object, unless they need to be conditionally created.
- Similarly to `Mutex`, provided a dummy implementation for when `NO_THREADS` is defined.
- Similarly to `Mutex`, methods are made `const` for easy use in such contexts.
- Language bindings updated: `wait()` and `post()` are now `void`.
- Language bindings updated: `try_wait()` added.

Bonus:
- Rewritten the `#ifdef` in `mutex.h` to meet the code style.
2020-03-03 13:20:42 +01:00
Rémi Verschelde 48ed841dd0 Signals: Fix some regressions from #36426
- Fix `callable_mp` bindings to methods which used to have default
  arguments passed to `bind_method`. We now have to re-specify them
  manually when connecting.
- Re-add `GroupsEditor::update_tree` binding.
- Misc code quality changes along the way.
2020-03-03 11:44:06 +01:00
Pedro J. Estébanez aee586553a Improve UX of drive letters
Namely, move the drive dropdown to just the left of the path text box and don't include the former
in the latter.

This improves the UX on Windows.

In the UNIX case, since its concept of drives is (ab)used to provide shortcuts to useful paths, its
dropdown is kept at the original location.
2020-03-03 10:38:34 +01:00
Hugo Locurcio fda2558ff7
Tweak the GIProbe gizmo to be more subtle 2020-03-02 23:22:50 +01:00
Hugo Locurcio 46bc1a7c3f
Improve the GIProbe editor contextual label
- Change the label color depending on the estimated performance
  (green = fast, yellow = average, red = slow).
- Use the Unicode multiplication symbol.
- Make the label translatable.
2020-03-02 22:09:38 +01:00
fhuya 5b80dc9a2a Fix android template install validation. 2020-03-02 10:53:05 -05:00
Rémi Verschelde e2b66cacf7
Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodes
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-03-01 23:00:42 +01:00
Rémi Verschelde 55396d6e06
Merge pull request #36621 from WizardOhio24/fix-wrong-selection-on-line-clone-down
Fix wrong selection on cloning a line down in the editor
2020-03-01 15:53:55 +01:00
Dominik 'dreamsComeTrue' Jasiński 319840bad1 Take correct part of extension with File Dialog
Fixes #36697
2020-03-01 09:44:48 +01:00
Richard Menzies 28f74327be Fix wrong selection on cloning a line down in the editor 2020-02-29 16:29:48 +00:00
Rémi Verschelde 1399747532
Merge pull request #36667 from simpuid/paste-params-undo-feature
Implement undo-redo feature for Parameter Paste in the Inspector
2020-02-29 14:12:54 +01:00
simpuid f817ba8379 Implement undo-redo feature for Parameter Paste in the Inspector
EditorData::undo_redo.add_do_property and EditorData::undo_redo.add_undo_property is used in EditorData::paste_object_params to implement this feature. It's action name is set to "Paste Params"

Changes made
* Removed the call for clearing the history on paste params case.
* Instead of directly setting the properties value, EditorData::undo_redo is used.
2020-02-29 16:52:12 +05:30
Rémi Verschelde cb91f8d971
Merge pull request #36406 from nathanwfranke/revert-fix-signal-errors
Partial revert "Fix two signal errors"
2020-02-29 12:11:53 +01:00
Rémi Verschelde cafa4ae3bd
Merge pull request #36653 from YeldhamDev/icons_for_the_icon_god
Add more missing icons (and adjust a few)
2020-02-28 22:07:50 +01:00
Michael Alexsander 687f72ba28 Add more missing icons (and adjust a few) 2020-02-28 15:00:10 -03:00
Rémi Verschelde 32ccf306f9 ConnectionsDock: Fix error when parsing CustomCallable connections 2020-02-28 14:32:36 +01:00
Rémi Verschelde 09a6a2d8f8 Signals: Port more uses of connect_compat
Those were problematic as they call a method of their parent class,
but callable_mp does not allow that unless it's public.

To solve it, we declare a local class that calls the parent class'
method, which now needs to be protected to be accessible in the
derived class.
2020-02-28 14:24:09 +01:00
Mateo Dev .59 b8f08b42e7 Signals: Fix signals error prints for the new signal system 2020-02-28 14:24:09 +01:00
Rémi Verschelde f742dabafe Signals: Manually port most of remaining connect_compat uses
It's tedious work...

Some can't be ported as they depend on private or protected methods
of different classes, which is not supported by callable_mp (even if
it's a class inherited by the current one).
2020-02-28 14:24:09 +01:00
Rémi Verschelde 01afc442c7 Signals: Port connect calls to use callable_mp
Remove now unnecessary bindings of signal callbacks in the public API.
There might be some false positives that need rebinding if they were
meant to be public.

No regular expressions were harmed in the making of this commit.
(Nah, just kidding.)
2020-02-28 14:24:09 +01:00
Tomasz Chabora 225622e5e3 Add unique icon to Polygon2D 2020-02-28 12:01:39 +01:00
Rémi Verschelde 42ffcaa4f7
Merge pull request #36630 from YeldhamDev/import_dock_checking_preset
Fix import changing disabling checking on multiple files
2020-02-28 10:13:22 +01:00
Rémi Verschelde 4f64f3401a
Merge pull request #36388 from AndreaCatania/some_renames
Rename Navigation{Mesh,Polygon}Instance and PlaneShape for clarity
2020-02-28 09:15:38 +01:00
Andrea Catania 483994601d Renamed NavigationPolygonInstance to NavigationRegion2D 2020-02-28 08:28:53 +01:00
Michael Alexsander d35386263f Fix import changing disabling checking on multiple files 2020-02-28 00:03:55 -03:00
Rémi Verschelde b7b3978684
Merge pull request #36556 from RandomShaper/rework_mutex
Reimplement `Mutex` with C++'s `<mutex>` (plus more)
2020-02-28 00:26:01 +01:00
Rémi Verschelde 2d904d2f80
Merge pull request #36232 from Calinou/add-soft-line-length-guideline
Add a soft line length guideline to the script editor
2020-02-27 21:10:42 +01:00
Rémi Verschelde eaf909dcf9
Merge pull request #36490 from Calinou/assetlib-error-version-compatibility
Mention version compatibility when there are no results in the assetlib
2020-02-27 21:08:39 +01:00
Rémi Verschelde 38c78a9ab6
Merge pull request #36333 from Calinou/decrease-script-editor-split-width
Decrease the script editor's default split width to 70
2020-02-27 20:54:23 +01:00
Rémi Verschelde fec9a76aba
Merge pull request #36546 from YeldhamDev/inspector_tooltip_no_doubles
Don't show a copy of the property's name in the inspector's tooltip if there's no description
2020-02-27 20:53:51 +01:00
Rémi Verschelde eced623c57 Fix build after merge of #36077 2020-02-27 20:51:43 +01:00
Rémi Verschelde 7530824cc4
Merge pull request #36077 from pycbouh/repeat-search-in-files
Add a button to quickly repeat last search in files
2020-02-27 20:19:55 +01:00
Andrea Catania 2e0fb66c6f Renamed PlaneShape to WorldMarginShape 2020-02-27 17:45:16 +01:00
Andrea Catania 3b64ecbc4b Renamed NavigationMeshInstance to NavigationRegion 2020-02-27 17:42:53 +01:00
Rémi Verschelde ac446570d6
Merge pull request #36545 from nathanwfranke/syntax-highlight-int-types
Fix autocomplete and highlighting for new integer types
2020-02-27 14:20:10 +01:00
Rémi Verschelde e0e4610ace
Merge pull request #36591 from aaronfranke/key-order
Make internal editor key order consistent
2020-02-27 14:17:29 +01:00
Yuri Roubinsky 7aaad99afb Place paste after copy in new popup menu in visual shader
+ renamed _on_nodes_delete to _delete_nodes
2020-02-27 13:55:41 +03:00
Yuri Roubinsky 2d548b4d1a Added popup menu for some actions in visual shaders 2020-02-27 12:54:26 +03:00
Aaron Franke b8a79d7530
Make internal editor key order consistent
Godot already displays controls in the order Control+Shift+Alt, so the order used with the bitmask flags should be the same.
2020-02-27 03:32:58 -05:00
nathanwfranke 2dd498df70 Fix autocomplete and GDScript Highlighting for types
Types include new integer types and others
2020-02-26 16:13:28 -06:00
Hugo Locurcio 7348dfb5b7
Fix a typo in the "Create Single Convex Collision Sibling" option 2020-02-26 22:25:55 +01:00
Pedro J. Estébanez 18fbdbb456 Reimplement Mutex with C++'s <mutex>
Main:
- It's now implemented thanks to `<mutex>`. No more platform-specific implementations.
- `BinaryMutex` (non-recursive) is added, as an alternative for special cases.
- Doesn't need allocation/deallocation anymore. It can live in the stack and be part of other classes.
- Because of that, it's methods are now `const` and the inner mutex is `mutable` so it can be easily used in `const` contexts.
- A no-op implementation is provided if `NO_THREADS` is defined. No more need to add `#ifdef NO_THREADS` just for this.
- `MutexLock` now takes a reference. At this point the cases of null `Mutex`es are rare. If you ever need that, just don't use `MutexLock`.
- Thread-safe utilities are therefore simpler now.

Misc.:
- `ScopedMutexLock` is dropped and replaced by `MutexLock`, because they were pretty much the same.
- Every case of lock, do-something, unlock is replaced by `MutexLock` (complex cases where it's not straightfoward are kept as as explicit lock and unlock).
- `ShaderRD` contained an `std::mutex`, which has been replaced by `Mutex`.
2020-02-26 20:40:10 +01:00
Rémi Verschelde afa773f388
Merge pull request #36564 from dankan1890/quick_fix
Fixed TextureAtlas import size.
2020-02-26 19:07:43 +01:00
Rémi Verschelde fc850b956b
Merge pull request #36563 from Chaosus/fix_resizer_color
Fix resizer icon color in VisualScripts/Shaders when graph headers is on
2020-02-26 19:07:34 +01:00
Rémi Verschelde bd4497db75
Merge pull request #36562 from AndreaCatania/anim_crash_fix
Fixed editor crash when the animation player has no root assigned.
2020-02-26 19:07:05 +01:00
Yuri Roubinsky 9cfd2ed564 Fix resizer icon color in VisualScripts/Shaders when graph headers is on 2020-02-26 17:48:58 +03:00
Michael Alexsander 28d3f85e64 Don't show a copy of the property's name in the inspector's tooltip if there's no description 2020-02-26 11:03:42 -03:00
Andrea Catania c9b86d54bf Fixed editor crash when the animation player has no root assigned. 2020-02-26 14:50:22 +01:00
Yuri Roubinsky 1e8108310a Changed float type to int for INDEX visual shader input 2020-02-26 16:39:42 +03:00
Maurizio Petrarota 744c1fafff
Fixed TextureAtlas import. 2020-02-26 14:35:57 +01:00
Rémi Verschelde 1e57b558f2
Merge pull request #36536 from Chaosus/vs_int
Add support for integer type in visual shaders
2020-02-26 10:11:24 +01:00
Yuri Roubinsky 4a3d277623 Add support for integer type in visual shaders 2020-02-26 10:12:06 +03:00
Rémi Verschelde 0e724fc871
Merge pull request #36538 from YeldhamDev/packed_arrays_bits_icons
Update PackedInt/FloatArray icons for the new types
2020-02-25 20:10:10 +01:00
Michael Alexsander 19d7428db6 Update PackedIint/FloatArray icons for the new types 2020-02-25 14:46:40 -03:00
Rémi Verschelde 6c8f2ae53a Update docs and bindings for new integer vector types 2020-02-25 15:27:29 +01:00
Rémi Verschelde 2f237d181b
Merge pull request #36515 from reduz/packed-array-64-bits
Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.
2020-02-25 15:27:09 +01:00
Juan Linietsky 33b5c57199 Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.
- Renames PackedIntArray to PackedInt32Array.
- Renames PackedFloatArray to PackedFloat32Array.
- Adds PackedInt64Array and PackedFloat64Array.
- Renames Variant::REAL to Variant::FLOAT for consistency.

Packed arrays are for storing large amount of data and creating stuff like
meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of
memory. That said, many users requested the ability to have 64 bits packed
arrays for their games, so this is just an optional added type.

For Variant, the float datatype is always 64 bits, and exposed as `float`.

We still have `real_t` which is the datatype that can change from 32 to 64
bits depending on a compile flag (not entirely working right now, but that's
the idea). It affects math related datatypes and code only.

Neither Variant nor PackedArray make use of real_t, which is only intended
for math precision, so the term is removed from there to keep only float.
2020-02-25 12:55:53 +01:00
bruvzg 1af06d3d46
Rename `scancode` to `keycode`.
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00
Rémi Verschelde 376a8255a9
Merge pull request #36513 from Calinou/editor-icons-pascalcase-filenames
Use PascalCase file names for editor icons
2020-02-25 11:26:44 +01:00
Hugo Locurcio 1f8c82df32
Use PascalCase file names for editor icons
Using PascalCase file names without any conversion step is
less confusing to new contributors.
2020-02-24 18:53:05 +01:00
nathanwfranke e0bb28c624 Remove this signal call that was mistakenly added in #36244
The original change was in #36340
2020-02-24 02:38:27 -06:00
Rémi Verschelde 128a55a597
Merge pull request #36494 from akien-mga/callable-fixes
Fix some signals and non-debug branch for callable_mp
2020-02-24 08:00:23 +01:00
Rémi Verschelde 49118315ba
Merge pull request #36489 from YeldhamDev/more_icons
Add icons for some new variants
2020-02-24 00:19:58 +01:00
Rémi Verschelde b9757545ca
Merge pull request #36488 from Chaosus/capsule_y
Changed default capsule axis to vertical
2020-02-24 00:19:21 +01:00
Rémi Verschelde 15e6a82faf Signals: Fix invalid connections to missing callbacks
These bugs existed since those lines were added, so I assume that
their intended use is no longer relevant.
2020-02-23 23:48:44 +01:00
Rémi Verschelde 65429f11a6 Signals: Make callbacks non-const, callable_mp can't handle it 2020-02-23 23:48:44 +01:00
Hugo Locurcio 5dd851e849
Mention version compatibility when there are no results in the assetlib
This closes #36469.
2020-02-23 23:27:42 +01:00
nathanwfranke ad15edbc65 Partial revert "Fix two signal errors"
This partially reverts commit a31bc1b0ba.

Possible compatibility issues with #35864 that I am not sure about.

Do I need to change "connect" to "connect_compat"?
2020-02-23 15:04:45 -06:00
Yuri Roubinsky 3b0638fe1c Changed default capsule axis to vertical
Co-authored-by: Hugo Locurcio <https://hugo.pro>
2020-02-23 23:18:01 +03:00
Michael Alexsander f8c1bafc40 Add icons for some new variants 2020-02-23 16:48:19 -03:00
Fabio Alessandrelli f72905aa29 Fix Breakpoint compare in new Debugger.
Only used to keep the hashmap, but clearly bogus.
2020-02-23 14:15:22 +01:00
Rémi Verschelde bd10c70458
Merge pull request #36461 from akien-mga/c++17-fallthrough-attribute
Replace FALLTHROUGH macro by C++17 [[fallthrough]]
2020-02-23 08:43:18 +01:00
Rémi Verschelde 2cf6ac6c50 Replace FALLTHROUGH macro by C++17 [[fallthrough]]
This attribute is now part of the standard we target so we no longer
need compiler-specific hacks.

Also enables -Wimplicit-fallthrough for Clang now that we can properly
support it. It's already on by default for GCC's -Wextra.

Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
2020-02-23 00:52:50 +01:00
Michael Alexsander 5c5a2b7472 Remove extra margin in the top of the debugger 2020-02-22 18:41:22 -03:00
Michael Alexsander 8017a44098 Fix visuals of the new debugger editor 2020-02-22 12:39:44 -03:00
Yuri Roubinsky 7c1415b99b
Merge pull request #36421 from Chaosus/vs_sort_custom_nods
Refactor node processing in visual shader member dialog
2020-02-21 21:34:03 +03:00
PouleyKetchoupp 8f5ac3dbfc Fixed flipped scene preview thumbnail
No need to flip the image generated from the viewport texture anymore.
2020-02-21 17:58:05 +01:00
Rémi Verschelde a77c862b18
Merge pull request #36400 from reduz/variant-string-name
Added StringName as a variant type.
2020-02-21 16:48:29 +01:00
Yuri Roubinsky b78b37ed3f Refactor node processing in visual shader member dialog 2020-02-21 18:34:31 +03:00
Rémi Verschelde 0447d6fc8e
Merge pull request #36393 from reduz/callable-method-pointer
New callable_mp macro, for signals to call method pointers directly.
2020-02-21 14:53:24 +01:00
Juan Linietsky 3c0059650d Added StringName as a variant type.
Also changed all relevant properties defined manually to StringName.
2020-02-21 14:25:29 +01:00
Rémi Verschelde 7ac0973e9a
Merge pull request #36415 from reduz/skeleton-skin-named
Add support for named binds in Skin.
2020-02-21 14:12:19 +01:00
Juan Linietsky 04bb6a708a Created the callable_mp macro, for signals to call method pointers directly. 2020-02-21 13:46:45 +01:00
Juan Linietsky 9a34f39d32 Add support for named binds in Skin.
Helps better reutilization of skeletons from Maya exported files.
2020-02-21 09:40:29 -03:00
Fabio Alessandrelli cbc450c0e5 Huge Debugger/EditorDebugger refactor. 2020-02-21 11:12:03 +01:00
Juan Linietsky 69c95f4b4c Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
Rémi Verschelde 353e2071d0
Merge pull request #36340 from nathanwfranke/fix-signal-errors
Fix two signal errors, remove unused break_request signals in profilers
2020-02-20 07:13:54 +01:00
nathanwfranke a31bc1b0ba Fix two signal errors
Update
2020-02-19 15:22:34 -06:00
janglee d3c580f0bc Make orthogonal view mode persistent in new scene
Fixes #36339.
2020-02-19 21:33:43 +05:30
Rémi Verschelde 880a8fcb1c
Merge pull request #35784 from Calinou/remove-3d-camera-gizmo-icon
Remove the 3D camera gizmo icon
2020-02-19 12:52:27 +01:00
Rémi Verschelde c40bd6b775 i18n: Sync translations with Weblate
(cherry picked from commit 1c9132540f)
2020-02-19 10:16:45 +01:00
Hugo Locurcio ac3c93077c
Decrease the script editor's default split width to 70
This also makes its value change to match the editor scale.
2020-02-18 23:00:38 +01:00
Michael Alexsander 30dac10a0e Convert "Pool*Array" icons into "Packed*Array" 2020-02-18 13:54:02 -03:00
Rémi Verschelde b4d1882dc3 EditorProperty: Fix handling of PackedRealArray 2020-02-18 14:02:02 +01:00
Rémi Verschelde ef5891091b
Merge pull request #36311 from reduz/poolvector-deprecation
Convert all references and instances of PoolVector to Vector
2020-02-18 11:27:04 +01:00
Juan Linietsky 3205a92ad8 PoolVector is gone, replaced by Vector
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
2020-02-18 10:10:36 +01:00
follower 3cccbdf995
Fix typo/spelling: "exisiting" -> "existing"
Specifically: "exisiting_script_removable" -> "existing_script_removable"
2020-02-18 03:10:45 +13:00
Rémi Verschelde d5062f069e
Merge pull request #36248 from Calinou/connections-method-dialog-increase-width
Increase the width of the "Connections to method" dialog
2020-02-17 09:54:30 +01:00
Rémi Verschelde ae5233a7ec
Merge pull request #36284 from KoBeWi/scripting_bats
Allow for continuous deletion/duplication of lines
2020-02-17 09:53:05 +01:00
Tomasz Chabora b23f141ba4 Allow for continuous deletion/duplication of lines 2020-02-16 22:09:55 +01:00
Rémi Verschelde 1238d08d07
Merge pull request #36267 from timothyqiu/conn-enter-crash
Fixes crash when pressing enter in ConnectDialog with nothing selected
2020-02-16 14:20:00 +01:00
Haoyu Qiu cf8eedb2f5 Fixes crash when pressing enter in ConnectDialog with nothing selected 2020-02-16 20:45:10 +08:00
Hugo Locurcio 5c659dd399
Increase the width of the "Connections to method" dialog
This closes #36245.
2020-02-15 16:36:10 +01:00
Juan Linietsky 867d073b98 Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr. 2020-02-15 08:36:04 -03:00
Rémi Verschelde 53cf289f30
Merge pull request #36230 from SkyLucilfer/iconBug
Fix script creation icon not showing at startup bug
2020-02-15 12:10:23 +01:00
Hugo Locurcio 3e4b508c3b
Add a soft line length guideline to the script editor
The default value is 80. The hard line length guideline's
default column has been moved to 100 to account for the new
soft line length guideline.

It can be disabled by setting its value to the same column as the
hard line length guideline.

This closes https://github.com/godotengine/godot-proposals/issues/347.
2020-02-15 03:02:40 +01:00
Hugo Locurcio cc615fee5f
Add a margin to EditorSpinSlider to visually line up the edited number
This means clicking on an EditorSpinSlider to edit its value will
no longer cause the number to be visually offset while it's
being edited.
2020-02-15 02:38:51 +01:00
SkyJJ 032b0e5899 Fix script icon not showing at startup bug 2020-02-15 00:37:04 +01:00
Rémi Verschelde 710d829886
Merge pull request #36044 from dreamsComeTrue/fix-replace-all-shortcut
Added 'Replace in files' functionality to text editors
2020-02-14 20:30:53 +01:00
Rémi Verschelde ca87791688 i18n: Sync translation template with current source
(cherry picked from commit 3dfedc0b4c)
2020-02-14 20:20:50 +01:00
Rémi Verschelde 991ad66d28 i18n: Sync translations with Weblate
(cherry picked from commit 74738806f3)
2020-02-14 20:20:43 +01:00
Rémi Verschelde 705ad947e9
Merge pull request #36218 from akien-mga/doc-version-branch
doc: Only encode version branch (x.y) in class header
2020-02-14 18:40:24 +01:00
Rémi Verschelde dacfdd8f33 doc: Only encode version branch (x.y) in class header
This avoids a big diff on patch version updates.
2020-02-14 17:38:21 +01:00
Rémi Verschelde 282c8dda98
Merge pull request #36066 from timothyqiu/float-step-range
Fixes range hint for default_float_step
2020-02-14 16:17:31 +01:00
Rémi Verschelde 11ee97cbb2
Merge pull request #36201 from YeldhamDev/import_dock_fixes
Fix multiple issues with the "Import" dock
2020-02-14 15:48:14 +01:00
Rémi Verschelde 19d6d3d136
Merge pull request #36191 from drichardson/fix_36190
Disable video driver option in editor
2020-02-14 14:31:34 +01:00
Rémi Verschelde 79d42069a9
Merge pull request #36208 from akien-mga/warnings
Fix various GCC compilation warnings after Vulkan merge
2020-02-14 13:49:20 +01:00
Yuri Roubinsky b798e26e28 Restore cubemaps in visual shaders 2020-02-14 12:51:46 +03:00
Rémi Verschelde d2537407ef Fix various GCC compilation warnings after Vulkan merge
Part of #36132.
2020-02-14 10:02:31 +01:00
Rémi Verschelde ac9ec5336d
Merge pull request #36197 from Calinou/tweak-editor-help-comment-color
Tweak the editor help comment color for better readability
2020-02-14 07:26:35 +01:00
Rémi Verschelde 94bf1a8a9d
Merge pull request #36030 from dreamsComeTrue/fix-replace-text-entered
Allow using Enter key for replacing text in code editors
2020-02-14 07:23:49 +01:00
Michael Alexsander bdd4d28081 Fix multiple issues with the "Import" dock 2020-02-13 23:08:05 -03:00
Dominik 'dreamsComeTrue' Jasiński 4c80beab44 Added 'Replace in files' functionality to text editors
Fixes issue #31146
2020-02-13 23:45:05 +01:00
Hugo Locurcio 99bfaa6c60
Tweak the editor help comment color for better readability 2020-02-13 23:34:15 +01:00
Doug Richardson edf907213e
Disable video driver option in editor since switching to GLES2 would
currently cause a crash on restart.

Fixes #36190.
2020-02-13 12:30:10 -08:00
Marcin Zawiejski dc793bb816 fix Vulkan project description 2020-02-13 21:04:43 +01:00