Commit Graph

6403 Commits

Author SHA1 Message Date
Pedro J. Estébanez
817ffc01e1
Make all file access 64-bit (uint64_t)
This changes the types of a big number of variables.

General rules:
- Using `uint64_t` in general. We also considered `int64_t` but eventually
  settled on keeping it unsigned, which is also closer to what one would expect
  with `size_t`/`off_t`.
- We only keep `int64_t` for `seek_end` (takes a negative offset from the end)
  and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means
  we only need to guard against passing negative values in `core_bind.cpp`.
- Using `uint32_t` integers for concepts not needing such a huge range, like
  pages, blocks, etc.

In addition:
- Improve usage of integer types in some related places; namely, `DirAccess`,
  core binds.

Note:
- On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with
  version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for
  big files on 32-bit Windows builds made with that toolchain. We might add a
  workaround.

Fixes #44363.
Fixes godotengine/godot-proposals#400.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-05-16 17:52:31 +02:00
Rémi Verschelde
50f4c90205
i18n: Sync translations with Weblate
(cherry picked from commit f6c29d1cf5)
2021-05-14 13:23:57 +02:00
Yuri Sizov
fc67ff3d0a
Keep custom editor theme when changing editor settings
(cherry picked from commit 56aedcee17)
2021-05-14 10:34:48 +02:00
Daniel Lungaro
ede0d47ccd
Remove plugin from enabled if there's an error
inform user in warning message

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>

Refactor remove plugin from enabled

(cherry picked from commit 2bae31a4df)
2021-05-14 10:34:05 +02:00
llschuster
2a18909210
text-editor: fix Clicking warning doesn't center around line
(cherry picked from commit 6b55ec2ca9)
2021-05-13 23:22:54 +02:00
Yuri Sizov
01524c0430
Fix EditorPropertyEasing capturing drag events originated outside of it
(cherry picked from commit 31db95b048)
2021-05-13 23:22:06 +02:00
davidh
ae2bc66eae Check for valid DynamicFontData before duplicate 2021-05-13 11:32:57 -05:00
Rémi Verschelde
6e920d0c14
TileSet: Fix signal disconnect error in some situation
Fixes second issue in #45938.

Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>
2021-05-10 15:07:27 +02:00
Hugo Locurcio
c318cf6ed2
Save the current script when pressing Ctrl + S if no scene is open
- Tweak the dialog messages to be more informative.
  - The "Saved N modified resources" dialog is not a warning per se,
    so make it more explicit.

(cherry picked from commit 39f9b92f54)
2021-05-09 17:47:38 +02:00
Kyle
b47cd82f76
Add ctrl+shift+a to instance scene in scenetree dock
Adds another key shortcut to instance a scene in the scentree dock. Complements ctrl+a to add a node.

(cherry picked from commit ea5445655c)
2021-05-09 17:47:38 +02:00
Hugo Locurcio
8b06085249
Implement the %command% placeholder in the Main Run Args setting
This can be used to tell Godot to run an executable that will run Godot
rather than running Godot directly. This is useful to make Godot start
on the dedicated GPU when using a NVIDIA Optimus setup on Linux:
`prime-run %command%`

The `editor/run/main_run_args` setting declaration was moved to make it
visible in the ProjectSettings documentation.

(cherry picked from commit ce4aa07276)
2021-05-09 17:47:38 +02:00
Hugo Locurcio
dc42ef2df9
Save the current script when adding a new method via signal connection
This makes it possible for external editors to pick up the changes.
Most modern editors should reload the file automatically,
but some older/lightweight editors may ask the user instead
(or only warn after trying to save in the external editor).

This closes #41283.

(cherry picked from commit 0ade686601)
2021-05-09 17:41:10 +02:00
Hugo Locurcio
f4e653d88f
Improve the editor audio preview inspector appearance and functionality
- Make the timeline indicator thicker and with an indicator triangle,
  similar to the animation editor timeline.
- Add Space bar shortcut to play/pause the audio preview.
- Only seek when clicking or dragging with the left mouse button,
  not other mouse buttons.

(cherry picked from commit a50a81b703)
2021-05-09 17:41:09 +02:00
Hugo Locurcio
9f31877e15
Fix EditorPropertyResource focus outline being drawn behind the preview
(cherry picked from commit 0b47f1be8c)
2021-05-09 17:14:36 +02:00
Hugo Locurcio
30ec3870c9
Tweak the setting hint for the custom editor theme setting
The custom editor theme is only visible after restarting the editor.

(cherry picked from commit 027301fec7)
2021-05-09 17:14:36 +02:00
Kyle
629c3e2a0a
Remove extra separator
Removes an extra separator when Scene Tree Editing is disabled. Discussed in #48518

(cherry picked from commit e168baf433)
2021-05-09 17:14:36 +02:00
Kyle
f711464030
Fixed cut/copy/paste visibility
Fixes #48514 by moving the visibility of these buttons into their own if statement that depends on if scene tree editing is allowed. Previously it was under the script editing setting which is unexpected as it works with nodes and the scene tree.

(cherry picked from commit 10d5d4d3cd)
2021-05-09 17:14:36 +02:00
Rémi Verschelde
c8c8bcee50
Merge pull request #48540 from Calinou/editor-theme-allow-negative-contrast-3.x
Allow negative contrast values in the editor theme settings (3.x)
2021-05-09 16:38:02 +02:00
Pedro J. Estébanez
4da9a501f6 Add animation reset track feature
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
2021-05-09 09:40:16 +02:00
Hugo Locurcio
e7e2ef0767
Allow negative contrast values in the editor theme settings
When using a negative contrast value, the base color will be lightened
to create the derivative colors instead of being darkened.

This can lead to better-looking themes, especially for light themes.
2021-05-07 18:14:52 +02:00
bruvzg
dab4cf3ed6
Add physical_scancode (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2021-05-06 23:19:45 +03:00
Hugo Locurcio
42a4bd1ca2
Tweak the built-ins color highlighting in the shader editor
This makes built-ins easier to distinguish from keywords at a
quick glance.
2021-05-06 17:51:36 +02:00
Rémi Verschelde
f34a8c7f0e
Merge pull request #47527 from Calinou/editor-translations-allow-multiple-selection-3.x
Allow selecting multiple files in the editor translation/remap dialogs (3.x)
2021-05-06 08:49:24 +02:00
Hugo Locurcio
35887a2afe
Allow selecting multiple files in the editor translation/remap dialogs
This makes it faster to add several translations.

The undo/redo messages were also tweaked to give better context.
2021-05-06 03:02:15 +02:00
Aaron Franke
e82f56e3a9
Update size when updating ScriptCreateDialog 2021-05-05 18:10:17 -04:00
CaptainProton42
76f3f6949e
Fix 3D scene preview generation.
File system dock previews will now be generated for 3D scenes when no
editor feature profile is set.

(cherry picked from commit 16304aaa3b)
2021-05-05 15:28:12 +02:00
Rémi Verschelde
140350d767
Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde
0bf06c25a3
Merge pull request #48450 from Calinou/version-click-to-copy-3.x
Make it possible to copy the Godot version identifier by clicking it (3.x)
2021-05-04 17:55:43 +02:00
Rémi Verschelde
b4af1eba0a
Style: Enforce use of bool literals instead of integers
Using clang-tidy's `modernize-use-bool-literals`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2021-05-04 16:39:13 +02:00
Hugo Locurcio
1ceb603de8
Make it possible to copy the Godot version identifier by clicking it
This closes #24317.
2021-05-04 16:38:17 +02:00
Rémi Verschelde
a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
Rémi Verschelde
b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
Rémi Verschelde
64a63e0861
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde
3d15f04668
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde
6e600cb3f0
Style: Set clang-format Standard to c++14 2021-05-04 14:45:15 +02:00
Michael Alexsander
ae99339e9f
Add comment highlighting to script thumbnails
(cherry picked from commit 46e0161737)
2021-05-03 21:39:44 +02:00
Mateo Kuruk Miccino
71a9932f38
FileSystem: Force update when we delete a folder from the editor and searching changes only if we change the directory successfully in the scan_fs_changes
(cherry picked from commit dc76938679)
2021-05-03 21:39:44 +02:00
kleonc
93cb416423
TileMapEditor Modulate autotile previews
(cherry picked from commit 3f1b95cfb1)
2021-05-03 21:39:44 +02:00
kleonc
bf63878141
TileMapEditor::_bucket_fill Check autotile coordinates only if autotile is selected
(cherry picked from commit a1b903066e)
2021-05-03 21:39:44 +02:00
Hugo Locurcio
81ca8e4e7e
Add the About dialog to the project manager
The About button is located in the bottom-right corner of the
project manager.

This allows removing the copyright notice from the window title
(which looked a bit ugly in comparison to other applications).
2021-05-02 00:01:23 +02:00
Rémi Verschelde
48cc756f88
Merge pull request #37067 from zaksnet/multiple-editor-instances
Automatic remote debugger port assignment.
2021-05-01 12:57:35 +02:00
Zak
c3cfb87548 Allow multiple editor instances to use different ports
Previously if more than one Godot editor was running then the debugger of one editor would not work because both editors were trying to connect on the same port.
This commit attempts to fix this by allowing the debugger to change the port at runtime in such cases.
2021-05-01 11:32:10 +02:00
bruvzg
301bedd5d4
Duplicate DynamicFontData resources in the editor preview generation thread to avoid race condition. 2021-04-29 23:27:52 +03:00
Rémi Verschelde
0c14d10522
Merge pull request #48296 from akien-mga/3.x-cherrypicks 2021-04-29 13:48:49 +02:00
Rémi Verschelde
880b830ca8
Merge pull request #46292 from hilfazer/nested_scene_instances_duplication 2021-04-29 13:31:27 +02:00
Rémi Verschelde
70ae90e0e8
Core: Drop custom copymem/zeromem defines
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f6639.

There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.

Backport of #48239.
2021-04-29 12:34:11 +02:00
Aaron Franke
d304187357
Warn when creating a script with the same name as the parent class
(cherry picked from commit 5a9037f828)
2021-04-29 12:23:33 +02:00
Michael Alexsander
917630107c
Select non-perfect matches if necessary in the Search Help dialog
(cherry picked from commit 77597ea47c)
2021-04-29 11:41:51 +02:00
Michael Alexsander
b406e904ec
Fix EditorInspector not updating its theme on rare occasions
(cherry picked from commit efa3927b49)
2021-04-29 11:40:13 +02:00
lupoDharkael
a5842a8362
Save resource: implement extension priority
give .res less priority and .tres more priority as preferred
extensions.

(cherry picked from commit f2e906496b)
2021-04-29 11:27:56 +02:00