Aaron Franke
10a56981dc
Rename String plus_file
to path_join
2022-08-29 19:38:13 -05:00
Fabio Alessandrelli
d20b32186f
[Web] Rename JavaScript platform to Web.
...
Also rename export name from "HTML5" to "Web".
2022-08-29 11:52:00 +02:00
Rémi Verschelde
c08e84af0d
Merge pull request #64943 from MatthewZelriche/FixUnMappedAncestor
2022-08-29 08:19:50 +02:00
Rémi Verschelde
35af2b0edd
Merge pull request #64921 from bruvzg/win_arm
...
[Windows] Improve build environment detection, add support for Windows on ARM.
2022-08-27 18:46:54 +02:00
Rémi Verschelde
67e731d450
Merge pull request #64507 from RandomShaper/remove_unused
...
Remove unused `force_quit` variable from many OS abstractions
2022-08-27 18:42:20 +02:00
MatthewZelriche
93af2993f0
Fix X11 menu window bug.
...
Fixes an issue where XSetInputFocus fails due to the window not
being viewable.
Fixes #62635
Fixes #60690
2022-08-27 07:38:09 -06:00
bruvzg
8dab4a2aa3
[Windows] Improve build environment detection, add support for Windows on ARM.
2022-08-27 16:10:53 +03:00
Pedro J. Estébanez
6e647dea24
Remove unused force_quit variable from many OS abstractions
2022-08-27 13:41:53 +02:00
Rémi Verschelde
046c69b2a5
Merge pull request #64923 from akien-mga/scons-linux-gnu-ld-detection
...
Linux: Fix GNU ld detection for `pck_embed` linker script
2022-08-26 23:09:01 +02:00
Rémi Verschelde
4f60fd0480
Merge pull request #64777 from bruvzg/extend_to_title
...
[macOS] Extend editor contents to the window title bar for better space usage.
2022-08-26 23:03:31 +02:00
bruvzg
bc4ba6cb78
[macOS] Extend editor contents to the window titlebar for better space usage.
2022-08-26 15:12:43 +03:00
Rémi Verschelde
fce3602a1e
Linux: Fix GNU ld detection for pck_embed linker script
2022-08-26 14:06:56 +02:00
bruvzg
d91cb1d5d5
[macOS export] Simplify code signing options, add support for rcodesign tool for signing and notarization.
2022-08-26 14:23:31 +03:00
Rémi Verschelde
ca26c78e7e
Merge pull request #64562 from bruvzg/fix_dup_locales
...
[macOS / iOS Export] Fix generation of duplicate locale property list files.
2022-08-26 10:47:28 +02:00
Rémi Verschelde
1b8f2e20bf
Merge pull request #64912 from m4gr3d/fix_android_arch_mapping_main
...
Revert the architecture values update made to the Android export logic
2022-08-26 07:45:02 +02:00
Fredia Huya-Kouadio
ba9e2cf512
Revert the architecture values update made to the Android export logic
2022-08-25 20:06:48 -07:00
Hugo Locurcio
ce56743aa1
Improve platform-specific READMEs to add useful links
...
This also adds READMEs for all platforms.
2022-08-25 17:50:53 +02:00
Aaron Franke
27b0f18275
Unify bits, arch, and android_arch into env["arch"]
...
Fully removes the `bits` option and adapts the code that relied on it.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-08-25 11:19:20 +02:00
Rémi Verschelde
8c1dc0c7ea
Merge pull request #64630 from nathanfranke/ios-opaque
...
(4.x) iOS: Force app store icon to be opaque, use proper errors
2022-08-25 08:43:39 +02:00
Rémi Verschelde
9085409492
Merge pull request #64414 from m4gr3d/fix_get_current_dir_main
2022-08-23 16:15:02 +02:00
kobewi
8be27dc59e
Replace Array return types with TypedArray
2022-08-22 22:42:36 +02:00
Rémi Verschelde
7c85c4a27e
Merge pull request #64374 from RandomShaper/inheritable_cl_args
2022-08-22 21:48:28 +02:00
Fabio Alessandrelli
1e044da15c
Merge pull request #64481 from jamie-pate/master
...
Improve performance of screen_get_dpi() in Javascript
2022-08-20 13:36:04 +02:00
Fredia Huya-Kouadio
a356e49803
Fix issue with get_current_dir()
returning the wrong path on Android
2022-08-19 20:08:19 -07:00
Nathan Franke
d769ff184f
ios: force app store icon to be opaque, use proper errors
2022-08-19 13:19:13 -05:00
Pedro J. Estébanez
e886d662ec
Overhaul CLI argument forwarding to processes started by the editor
2022-08-19 11:15:56 +02:00
bruvzg
8c56a7416b
Implement MenuBar
control to wrap PopupMenu
s or native menu, use native menu for editor.
2022-08-18 22:25:44 +03:00
bruvzg
16b45ee542
[macOS / iOS Export] Fix generation of duplicate locale property list files.
2022-08-18 09:44:43 +03:00
Jamie Pate
c2e3971013
Improve performance of screen_get_dpi() in Javascript
...
Replace a bisect with a single multiplication when calling
screen_get_dpi() in Javascript
Tested the value of
window.matchMedia(`(resolution:${(window.devicePixelRatio*96).toFixed(100)}dpi)`).matches
which is true except for values that cause a lot of rounding errors
(e.g. dpr : 0.3 => resolution: 28.799999999999997dpi)
Even in these cases the value matches the result of the previous
`findDPI()` method.
See also:
6cff589b5b (r81273660)
2022-08-15 21:12:19 -07:00
Fredia Huya-Kouadio
44dc24ec38
Disable threads used to check on plugins to load
...
The functionality is unavailable on Android (requires export capability) and unnecessarily consumes resources
2022-08-15 02:30:43 -07:00
Fredia Huya-Kouadio
b3117b6369
Fix issue preventing the Android Editor from displaying the project content
...
The issue was causing by a bug within the logic for `FileAccessFilesystemJAndroid#eof_reached()` causing that value to remain false after the eof was reached.
This in turn caused an infinite loop in the file scanner preventing the project's content from showing up.
2022-08-15 02:22:10 -07:00
Fredia Huya-Kouadio
45c7377556
Refactor the export checking logic to improve separation of concerns
2022-08-14 09:12:04 -07:00
Pedro J. Estébanez
8c2a577350
Clean iOS platform config of long gone macro
2022-08-10 21:42:49 +02:00
Rémi Verschelde
1b06b668c9
Merge pull request #49829 from naithar/feature/ios-plugins-swift-4.0
2022-08-10 14:09:58 +02:00
Hugo Locurcio
debfc7c38b
Enable ANSI escape code processing on Windows 10 and later
...
This lets the engine and projects use the same color codes
in the terminal on all platforms. This includes support for
`print_rich()` (GDScript) and `print_line_rich()` (C++).
2022-08-10 00:53:11 +02:00
Sergey Minakov
c99e8aeac3
[iOS] Extend iOS plugins to support Swift runtime
2022-08-09 20:20:54 +03:00
bruvzg
6510e11ae9
Fix memory leak when accessing/listing system fonts.
2022-08-09 12:57:53 +03:00
Rémi Verschelde
557c16bb88
Merge pull request #62885 from madmiraal/fix-59931
2022-08-08 15:53:48 +02:00
Rémi Verschelde
5df8eae862
Merge pull request #64014 from RedMser/keep-screen-on-singledef
2022-08-08 12:04:04 +02:00
RedMser
c939f336d6
Only define keep_screen_on
project setting once
2022-08-06 22:10:24 +02:00
Larry Tran
2ea4baae0a
Merge branch 'master' into bugfix-ios-export
2022-08-05 18:47:20 -05:00
Larry Tran
e029e66454
Remove unnecessary string replacement
2022-08-05 18:15:57 -05:00
Rémi Verschelde
04a66e1bab
Merge pull request #63882 from RedMser/keep-screen-on-windows
...
Implement `keep_screen_on` for Windows
2022-08-05 23:47:20 +02:00
bruvzg
944779a132
Implement screen_is_kept_on
for macOS.
2022-08-05 13:14:13 +03:00
RedMser
00e788e611
Implement keep_screen_on
for Windows
2022-08-05 11:58:50 +02:00
Brian Semrau
103c0fa6e6
Add support for multiple virtual keyboard types
2022-08-04 10:41:33 -04:00
bruvzg
2f9be29c73
Implement screen_set_keep_on
for macOS
2022-08-04 10:38:26 +03:00
Rémi Verschelde
9daffa12be
Merge pull request #49058 from madmiraal/add-override-fileaccess
...
Add override keywords to FileAccess and DirAccess derived classes
2022-08-02 20:03:24 +02:00
Marcel Admiraal
c06025fa13
Add override keywords to DirAccess derived classes
2022-08-02 16:39:44 +01:00
Marcel Admiraal
cafb19e608
Add override keywords to FileAccess derived classes
2022-08-02 16:35:15 +01:00
Rémi Verschelde
33258d850c
Merge pull request #61315 from lawnjelly/variant_bucket_pools
...
Variant memory pools
2022-08-02 15:54:18 +02:00
Rémi Verschelde
1418f97c70
File: Re-add support to skip CR (\r
) in File::get_as_text
...
This was removed in #63481 , and we confirmed that it's better like this,
but we add back the possibility to strip CR as an option, to optionally
restore the previous behavior.
For performance this is done directly in `String::parse_utf8`.
Also fixes Android `FileAccess::get_line()` as this one _should_ strip CR.
Supersedes #63717 .
2022-08-01 00:40:35 +02:00
Yuri Sizov
9f55bd971e
Extract EditorResourceConversionPlugin into its own source files and clean up editor includes
2022-07-31 21:14:15 +03:00
derammo
77b31ea365
Visual Studio Natvis file works for Variant again
2022-07-31 07:59:19 -04:00
Rémi Verschelde
3e5ad8213f
Merge pull request #63563 from aaronfranke/export-arch
2022-07-30 11:22:25 +02:00
Rémi Verschelde
f4f8b18ebe
Merge pull request #63647 from bruvzg/exp_msg_imp
...
Improve some export error messages.
2022-07-30 09:21:11 +02:00
Rémi Verschelde
15a02c49be
Merge pull request #61647 from KoBeWi/SaverResource
2022-07-29 22:30:51 +02:00
bruvzg
ea00cf7270
Improve some export error messages.
2022-07-29 22:44:59 +03:00
bruvzg
d6a9384a32
[Linux] Fix build with missing DBUS.
2022-07-29 22:16:21 +03:00
kobewi
c3606cb5f3
Swap arguments of ResourceSaver.save()
2022-07-29 19:53:09 +02:00
Rémi Verschelde
7199314eb3
Merge pull request #63595 from reduz/remove-signal-connect-binds
...
Remove Signal connect binds
2022-07-29 18:10:39 +02:00
Aaron Franke
17c4cd6412
Update export dialog to handle many architectures
2022-07-29 10:24:58 -05:00
Aaron Franke
a0072ba39f
Make some editor export methods const
2022-07-29 10:24:13 -05:00
Juan Linietsky
d4433ae6d3
Remove Signal connect binds
...
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
bruvzg
f973069afb
[Linux] Load dbus libraries dynamically.
2022-07-29 11:19:19 +03:00
bruvzg
51c5ba9da7
[Linux] Replace fontconfig wrapper with a one generated from the older library version (2.12.6, Ubuntu 18.04 LTS).
2022-07-29 08:55:19 +03:00
Rémi Verschelde
0dcf679bdc
Merge pull request #63548 from pattlebass/master-html5-vibrate
2022-07-27 22:19:37 +02:00
pattlebass
130e715ab9
HTML5: Add support for Input.vibrate_handheld()
2022-07-27 22:54:41 +03:00
bruvzg
9ced8bcca3
Load fontconfig libraries dynamically.
2022-07-27 21:07:21 +03:00
bruvzg
f86448520a
Fix Linux build without fontconfig.
2022-07-27 17:21:04 +03:00
Rémi Verschelde
cc5135959b
Merge pull request #62973 from bruvzg/sysfont_support
2022-07-27 13:38:30 +02:00
Rémi Verschelde
f3fbb157ca
Merge pull request #63121 from aaronfranke/editor-export-split
2022-07-27 11:19:40 +02:00
Rémi Verschelde
835da447da
Merge pull request #63481 from m4gr3d/fix_remaining_scoped_storage_regressions_main
...
Address remaining scoped storage regressions
2022-07-26 18:17:03 +02:00
Fredia Huya-Kouadio
9679c67904
Address remaining scoped storage regressions
...
- Accelerate common path used to check the storage scope for a given path
- Update the logic for the `get_as_text()` method - previous logic loads the content of a text file one byte at a time
2022-07-26 07:44:08 -07:00
Aaron Franke
e53ae13178
Split up editor export code into multiple files
2022-07-26 08:28:19 -05:00
Rémi Verschelde
ba2cffc575
Merge pull request #63096 from aaronfranke/exp-template-names
2022-07-26 10:28:25 +02:00
bruvzg
36ef8f29dc
Implement support for loading system fonts on Linux, macOS / iOS and Windows.
2022-07-26 08:38:05 +03:00
Rémi Verschelde
3e0e84a54c
Merge pull request #63459 from Kev/bigobj-for-msvc-release
2022-07-25 23:08:26 +02:00
Kevin Smith
d8900e0020
Use bigobj for release MSVC builds
...
Previously it was used only on debug builds, but recent
additions to variant_call.cpp have made that unit too
large even in release_debug.
It was originally set to debug only because using it
breaks mingw, so this only reinstates it for MSVC where
it shouldn't have any drawbacks (famous last words).
Test-Information:
Builds for me with
scons -j 40 platform=windows target=release_debug
and my game then runs from it.
2022-07-25 20:10:20 +01:00
Rémi Verschelde
90019676b0
Code quality: Fix header guards consistency
...
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 11:17:40 +02:00
Rémi Verschelde
3084a48ace
Merge pull request #63219 from reduz/implement-vector4-projection
2022-07-25 11:13:27 +02:00
MaxIsJoe
f3979527de
Fixes OS.get_unique_id()
string not getting printed properly
...
Fixes #61023
Changing it back to how it's done on the 3.x branch fixed the text not being written properly.
2022-07-24 11:05:36 +02:00
reduz
455c06ecd4
Implement Vector4, Vector4i, Projection
...
Implement built-in classes Vector4, Vector4i and Projection.
* Two versions of Vector4 (float and integer).
* A Projection class, which is a 4x4 matrix specialized in projection types.
These types have been requested for a long time, but given they were very corner case they were not added before.
Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity.
**Q**: Why Projection and not Matrix4?
**A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23 14:00:01 +02:00
Rémi Verschelde
667cef39b4
Merge pull request #63341 from RandomShaper/fix_uwp_accum_input
...
Flush buffered input events on UWP
2022-07-23 13:50:00 +02:00
Pedro J. Estébanez
b53d032fb8
Flush buffered input events on UWP
2022-07-23 12:06:22 +02:00
Aaron Franke
8b5c744f95
Update export template names for Windows, Mac, and Linux
2022-07-22 18:40:59 -05:00
Rémi Verschelde
f37990ed77
Merge pull request #63278 from akien-mga/scons-linux-refactor-linker
2022-07-22 11:40:10 +02:00
Rémi Verschelde
ed926c4ec1
Merge pull request #63303 from hansemro/x11-eraser-case-insensitive
...
[X11] Do case-insensitive search for pen inversion detection
2022-07-22 09:17:04 +02:00
Hansem Ro
0f5436098b
[X11] Do case-insensitive search for pen inversion detection
2022-07-21 19:25:22 -07:00
Rémi Verschelde
c8479c0d4d
SCons: Refactor Linux linker options with linker=<bfd|gold|lld|mold>
...
The new option is `linker` and lets the user specify the argument to
the`-fuse_ld=` linker flag directly. The supported options are:
- `default`: No change, typically uses GNU ld (bfd) unless the user or
distro picked a different default `/usr/bin/ld`.
- `bfd`: GNU ld from binutils
- `gold`: GNU gold from binutils
- `lld`: lld from LLVM
- `mold`: mold, an extremely fast modern linker, not (yet) intended for
use in production but great for development speed. Provided by distro
`mold` package or needs to be compiled from source and installed to
`/usr` otherwise.
Removes the `use_lld=yes` option, and make lld actually usable with GCC
too.
Not all the above are compatible or recommend for LTO, we recommend
using GNU ld with GCC LTO, or lld with LLVM ThinLTO.
2022-07-22 01:00:35 +02:00
bruvzg
3833165d85
[Export] Update generated CLI helper script to work on clean macOS Monterey installation.
2022-07-21 13:50:37 +03:00
bruvzg
8823eae328
Rename OSX to macOS and iPhoneOS to iOS.
2022-07-21 09:37:52 +03:00
Riteo
a21f8b7c13
Improve linuxbsd
headless building, cleanup build scripts
...
Now the `linuxbsd` platform can be built headlessly (e.g. without X11
development libraries).
I also cleaned up some weird (old?) usages of the `env` variable which
seem to make no difference and are used nowhere else.
2022-07-20 19:48:35 +02:00
Riteo
f035e7844f
Remove -pipe
from LINKFLAGS
...
For some reason this fixes the CI from going OOM.
2022-07-20 19:04:31 +02:00
bruvzg
680b5f1afb
[Windows] Set fullscreen flags on window creation.
2022-07-19 13:36:39 +03:00
bruvzg
7c005ba723
Improve DisplayServer.window_set_current_screen
...
Prevent unnecessary fullscreen toggle animation on macOS, when screen is not changed
Fix window position on Linux/X11
2022-07-19 12:26:11 +03:00
pattlebass
d57a76c809
HTML5: Make OS.get_locale()
match other platforms
...
Fixes #63029 .
2022-07-15 22:11:39 +03:00
Marcel Admiraal
6661141c21
Fix incorrect Android scancodes
2022-07-13 16:24:01 +01:00
Rémi Verschelde
19b10e2784
Merge pull request #62824 from MinusKube/haunted-editor-bug
...
Fix haunted editor bug causing weird issues with mouse behaviour
2022-07-13 14:13:16 +02:00
Rémi Verschelde
9b3972ad48
Merge pull request #62843 from RandomShaper/fix_iphone_input
...
Flush accumulated input events on iOS
2022-07-11 18:28:36 +02:00