Mark Riedesel
f0dd693a08
free dbus errors when inhibiting freedesktop screensaver (prevents small memory leak)
2021-10-12 21:11:56 -04:00
Rémi Verschelde
88463c3eee
Merge pull request #53712 from CakHuri/nullptr
...
Replace NULL with nullptr
2021-10-12 22:30:43 +02:00
Hugo Locurcio
b1b14e5fd7
Build for 64-bit ARM by default when compiling or exporting for Android
...
All Android devices that support Vulkan support 64-bit ARM.
This also removes NEON opt-out code for ARMv7 as pretty much all
ARMv7 devices also support NEON.
2021-10-12 16:35:49 +02:00
M. Huri
033dc4dbef
Replaced NULL with nullptr
2021-10-12 20:20:19 +07:00
Aaron Franke
7e51e4cb84
Fix some LGTM errors of "Multiplication result converted to larger type"
2021-10-12 00:17:27 -05:00
ne0fhyk
431ccdb057
Pass the correct `export_format` argument to locate the assets directory when exporting.
2021-10-11 08:24:21 -07:00
Rémi Verschelde
ab9c1574d0
Merge pull request #53580 from RandomShaper/improve_cache_funcs
2021-10-09 13:40:53 +02:00
Pedro J. Estébanez
007cb5ccfb
Implement get_cache_path() for iOS, and improve it for Android and Windows
2021-10-09 11:13:26 +02:00
Rémi Verschelde
1f192c43b0
Merge pull request #51429 from omar-polo/fix-basename
2021-10-09 10:34:21 +02:00
Omar Polo
a3384b7461
use .get_file() instead of basename(3)
...
On OpenBSD the compiler complains that calling basename(3) would lose
const qualifier. basename(3) is defined as
char *basename(char *);
and can, accorgindly to the POSIX.1, modify the passed string.
This uses the .get_file() method. The check is necessary because
file_name could be a directory, in which case .get_file() would return
an empty string. The .get_base_dir().get_file() idiom is already used.
The usage of get_file() and the check were suggested by theraot, thanks!
2021-10-08 20:10:26 +02:00
kobewi
92a53f9bd6
Change dragging cursor on Windows
2021-10-06 13:13:42 +02:00
Rémi Verschelde
a7ba227631
Merge pull request #52711 from m4gr3d/provide_getter_for_project_data_dir_master
2021-10-05 21:02:27 +02:00
Fabio Alessandrelli
68616edcbc
[HTML5] Refactor JS library listeners to OS.
2021-10-05 14:15:07 +02:00
Fabio Alessandrelli
c494e442bc
[HTML5] Refactor display/input JS library code.
2021-10-05 14:15:07 +02:00
Fabio Alessandrelli
204822ed45
[HTML5] Implement Pointer Lock API in JS library.
...
Removes more emscripten HTML5 library dependencies.
2021-10-05 14:15:07 +02:00
Fabio Alessandrelli
7d6c1fdb32
[HTML5] Implement window blur in JS library.
...
Removes more emscripten HTML5 library dependencies.
2021-10-05 14:15:07 +02:00
Fabio Alessandrelli
b6315afc9a
[HTML5] Implement fullscreenchange in JS library.
...
Removes more emscripten HTML5 library dependencies.
2021-10-05 14:15:07 +02:00
Fabio Alessandrelli
b2d30c725d
[HTML5] Implement mouse/touch/key events in JS library.
...
This makes us more independent from emscripten libraries, giving us more
control on the application lifecycle.
2021-10-05 14:15:07 +02:00
Rémi Verschelde
b1c6826b9f
Merge pull request #52963 from Pineapple/WIN32_LEAN_AND_MEAN_master
2021-10-05 12:03:05 +02:00
Rémi Verschelde
3479aaa369
Merge pull request #53405 from winterpixelgames/PR-more-error-logging-release
2021-10-05 08:43:07 +02:00
Jordan Schidlowsky
b78d399f91
revert 0d7409a
so additional error information prints in release builds
2021-10-04 16:55:01 -06:00
bruvzg
0c0b5c84b0
Implement TextServer GDExtension interface, remove TextServer GDNative interface.
2021-10-01 15:13:29 +03:00
Rémi Verschelde
a7011fa294
Merge pull request #52684 from Frixuu/master
2021-10-01 11:53:01 +02:00
Lightning_A
c63b18507d
Use range iterators for `Map`
2021-09-30 15:09:12 -06:00
Rémi Verschelde
3a19400889
Merge pull request #48685 from bruvzg/bundle_icon_4
2021-09-30 14:55:04 +02:00
Fabio Alessandrelli
e2e1a5099c
Merge pull request #52809 from selgesel/patch1
...
Release pressed events when the window is blurred on HTML5 platform
2021-09-29 13:09:59 +02:00
Rémi Verschelde
23b51a1708
HTML5: Fix minification error with Emscripten 1.39.9
...
It used an old vendored version of acorn.js which seems to choke on this
trailing comma. This is not a problem for more recent Emscripten versions.
We disable the `comma-dangle` check in ESLint to prevent this issue.
2021-09-29 09:11:11 +02:00
bruvzg
911c276a1a
[macOS, sandbox] Add export option to embed and sign helper executables.
2021-09-27 11:02:56 +03:00
Hugo Locurcio
6def32d643
Replace `#pragma once` by traditional include guards for consistency
...
`#pragma once` was used in a few files, yet we settled on using
traditional include guards instead.
The PooledList template comment was also moved to allow editors
such as Visual Studio Code to display the comment when hovering
PooledList.
`app.h` was renamed to `app_uwp.h` to be less generic for the
include guard.
2021-09-24 02:33:15 +02:00
Selgesel
5d1d9f23de
Release pressed events when the window is blurred on HTML5 platform
2021-09-23 16:44:31 +03:00
Bartłomiej T. Listwon
425ed0ffe0
Add missing WIN32_LEAN_AND_MEAN
2021-09-23 10:35:00 +02:00
Rémi Verschelde
a412011be7
Merge pull request #52842 from Ev1lbl0w/fix_win_open_errcode
...
Fix shell_open not returning errors on Windows
2021-09-21 11:26:58 +02:00
Rémi Verschelde
bd75235b8a
Merge pull request #52649 from Faless/js/4.x_audioworklet_nothreads_pr
...
[HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads.
2021-09-21 10:44:08 +02:00
Frixuu
650e63a7ca
Allow for mapping keycodes to current layout
2021-09-21 00:03:02 +02:00
Dan
131f5dbb54
Fix Windows cursor with trails disappearing in fullscreen
...
Fixed by turning off mouse trails when going into fullscreen, then restoring trails when exiting fullscreen or game
2021-09-19 21:42:56 -07:00
Ricardo Subtil
c4787a8e6d
Fix shell_open not returning errors on Windows
2021-09-19 11:29:56 +01:00
Rémi Verschelde
ce0feeaf69
Merge pull request #52715 from Calinou/linuxbsd-vulkan-driver-reboot
...
Mention that rebooting is required after updating graphics driver on Linux
2021-09-16 10:26:39 +02:00
Rémi Verschelde
a507a50d16
Merge pull request #52720 from Faless/js/4.x_fix_wheel
...
[HTML5] Fix wheel/touch callback modifying event after parse.
2021-09-16 09:42:04 +02:00
ne0fhyk
69f890ff11
Provide a getter for the project data directory.
2021-09-15 12:52:03 -07:00
Fabio Alessandrelli
246334b836
[HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads.
...
Performances are not great in general, bad on Firefox, on Chrome, well,
it could be an improvement. Leave it as a fallback for now, but can be
forced via project settings if desired (or custom JavaScript logic via
the "args" option).
I'm actually surprised this works, it involves so many allocations, but
there's no way around it when SharedArrayBuffer is not available :(.
2021-09-15 20:48:49 +02:00
Fabio Alessandrelli
e902347a8c
Merge pull request #52695 from Faless/js/4.x_audio_mix_rate
...
[HTML5] Use browser mix rate by default on the Web.
2021-09-15 20:33:42 +02:00
Fabio Alessandrelli
c3f5194861
[HTML5] Fix wheel/touch callback modifying event after parse.
...
The events should be duplicated or reinstantiated without
assuming that parse_input will consume them immediately.
2021-09-15 20:07:28 +02:00
Hugo Locurcio
7486fa9b16
Mention that rebooting is required after updating graphics driver on Linux
2021-09-15 18:34:10 +02:00
ne0fhyk
5bbfe0b5a8
Add support for Play Asset Delivery.
...
This only adds support for a subset of Play Asset Delivery: this causes a single install-time asset pack to always be present, but doesn't add support for dynamically downloaded asset packs.
2021-09-15 06:06:11 -07:00
Rémi Verschelde
f18a6f2fd0
Merge pull request #52696 from Faless/js/4.x_worklet_rb_bug
2021-09-15 12:54:51 +02:00
Rémi Verschelde
13d2928490
Merge pull request #52282 from Calinou/scons-improve-linuxbsd-build-messages
...
Improve messages when compiling for Linux/*BSD
2021-09-15 12:50:39 +02:00
Fabio Alessandrelli
ba08f39e47
[HTML5] Fix bug in AudioWorklet when reading output buffer.
...
Would attempt an out of bounds read, causing an exception.
2021-09-15 11:58:52 +02:00
Fabio Alessandrelli
d187bb4e11
[HTML5] Use browser mix rate by default on the Web.
...
Browsers doesn't really like forcing the mix rate, e.g. Firefox does not
allow input (microphone) if the mix rate is not the default one, Chrom*
will exhibit worse performances, etc.
2021-09-15 11:56:21 +02:00
Hugo Locurcio
065c79f0df
Re-enable building position-independent executables on Linux/*BSD
...
This provides better security at the cost of having misleading
binary icons on some file managers.
Now that recent Linux distributions no longer allow executing
binaries by double-clicking them in a file manager (even if the
binary is set to be executable), the usability cost of PIE is lowered.
You have to use a terminal or install a `.desktop` file nowadays.
2021-09-15 01:05:27 +02:00
Fabio Alessandrelli
76a7ee88d2
Merge pull request #52604 from Faless/js/4.x_input_fix
...
[HTML5] Fix input not working when buffered.
2021-09-14 11:47:40 +02:00
Fabio Alessandrelli
4c6845c095
[HTML5] Fix input not working when buffered.
...
After input buffering was reworked, input accumulation is now handled
outside of OS, and the JavaScript plaform never implemented that.
Additionally, the JavaScript platform is quite obnoxious about calling
specific APIs outside specific user triggered events.
This commit adds event flushing during the main iteration, and forces it
during keydown/keyup/mousedown/mouseup/touchstart/touchend/touchcanel
events (effectively only accumulating only "move" events).
2021-09-12 19:07:44 +02:00
Fabio Alessandrelli
490511fcfe
[HTML5] Fix build error due to missing string cast.
2021-09-12 19:07:18 +02:00
Hugo Locurcio
1513aa9b26
Add logo attribution for Android, HTML5 and Linux platform icons
...
- Tweak the Android platform logo to remove the Android wordmark,
as it can't be used without explicit permission.
2021-09-11 19:34:10 +02:00
Max Hilbrunner
7ca6a0e849
Clean DisplayServerWindows and add missing guards
2021-09-10 15:56:46 +02:00
Marcel Admiraal
23311a6ed3
Use current androidx Fragment library instead of legacy libraries
2021-09-08 10:17:26 +01:00
Juan Linietsky
58388f8cec
Merge pull request #47391 from Calinou/platform-feature-tags-lowercase
...
Make platform feature tag names lowercase
2021-09-07 16:30:50 -03:00
Daniel Kariv
52b114bc78
fix fullscreen issue on macOS
...
adds a call for resize event.
2021-09-03 14:35:28 +03:00
Fredia Huya-Kouadio
ebac430445
Merge pull request #52159 from m4gr3d/addoculus_openxr_
...
Update the AndroidManifest to enable access to Oculus OpenXR runtime
2021-09-01 21:09:28 -07:00
PouleyKetchoupp
0b681d5834
Add support for adding plugin views behind the main view on Android
...
Doesn't change the default behavior, but allows plugins to add their
view behind the main view, which gives more control over what happens
with inputs and can be useful along with transparent rendering.
2021-09-01 10:01:55 -07:00
Hugo Locurcio
2daaf0fdc3
Make platform feature tag names lowercase
...
Feature tag names are still case-sensitive, but this makes built-in
feature tags more consistent.
- `Windows` -> `windows`
- `OSX` -> `osx`
- `LinuxBSD` -> `linuxbsd`
- `Android` -> `android`
- `iOS` -> `ios`
- `HTML5` -> `html5`
- `JavaScript` -> `javascript`
- `UWP` -> `uwp`
2021-08-31 20:34:44 +02:00
Hugo Locurcio
4c5deea83e
Improve messages when compiling for Linux/*BSD
...
- Don't display messages when enabling PulseAudio/ALSA/D-Bus/udev
as these become noisy in incremental builds.
- Improve warning and error messages to be more descriptive
and consistent.
2021-08-31 16:21:42 +02:00
Fabio Alessandrelli
7ab78c4cad
Merge pull request #49598 from Calinou/web-editor-improve-download-project-source-zip-name
...
Improve the generated ZIP archive name when using Download Project Source
2021-08-31 02:36:02 +02:00
Wilson E. Alvarez
d11c1afc04
Rename String::is_rel_path to String::is_relative_path
2021-08-29 20:41:29 -04:00
ne0fhyk
9f4aa1f5ad
Update the AndroidManifest to enable access to Oculus OpenXR runtime.
2021-08-27 11:12:25 -07:00
jmb462
59116e1995
Fix bad size after restoring a minimized window under Windows
2021-08-27 14:32:52 +02:00
Hugo Locurcio
3db8359324
Merge pull request #47829 from Calinou/improve-crash-handler-display
...
Improve crash handler message display
2021-08-25 08:03:10 +02:00
Max Hilbrunner
ca7f53dd25
Merge pull request #52001 from floppyhammer/fix-window-decor-size-on-windows
...
Fix window decoration size on Windows
2021-08-24 17:28:47 +02:00
floppyhammer
1a5d72bf16
Fix window decoration size on Windows
2021-08-23 10:43:34 +08:00
Aaron Franke
ae1702bee5
Replace HTTP links with HTTPS for sites with HTTPS versions
2021-08-22 20:13:11 -05:00
Michael Alexsander
b4cea10771
Merge pull request #49756 from Calinou/android-export-move-clear-previous-install-setting
...
Move the Android "clear previous install" setting to Editor Settings
2021-08-22 23:30:13 +00:00
Marcus Brummer
47f338fc12
Check if vibration duration is > 0 on Android
2021-08-21 17:33:25 +02:00
Rémi Verschelde
16f49d4b29
HTML5: Handle GODOT_VERSION_STATUS env var in @GODOT_VERSION@
...
Follow-up to #51002 .
2021-08-19 15:01:30 +02:00
Fredia Huya-Kouadio
f4222733ca
Delegate handling and implementation of the restart functionality to the Godot host.
2021-08-18 10:24:42 -07:00
Fabio Alessandrelli
71fb2429a0
[CI] Upgrade Emscripten to 2.0.27.
...
Update Godot Javascript FS library to manually depend on ERRNO_CODES.
2021-08-18 10:30:50 +01:00
Rémi Verschelde
be80d381d2
Merge pull request #50360 from m4gr3d/address_external_dir_access_master
...
Add support for Android scoped storage
2021-08-17 13:33:28 +02:00
ne0fhyk
3a00ff1cce
Add partial support for Android scoped storage.
...
This is done by providing API access to app specific directories which don't have any limitations and allows us to bump the target sdk version to 30.
In addition, we're also bumping the min sdk version to 19 as version 18 is no longer supported by Google Play Services and only account of 0.3% of Android devices.
2021-08-16 23:11:56 -07:00
ModProg
d9e24b72f7
[android] Fixed wrong button mask for right click
2021-08-16 18:49:12 +02:00
Hugo Locurcio
719ff68fdd
Improve the generated ZIP archive name when using Download Project Source
...
This makes for easier organization since downloading a project
several times (or several different projects) will result in more
meaningful file names.
2021-08-16 18:33:03 +02:00
Rémi Verschelde
1057a107e0
Merge pull request #51116 from Calinou/macos-fix-xbox-bluetooth-controllers
...
Fix Xbox controllers in Bluetooth mode on macOS
2021-08-16 17:50:10 +02:00
Hugo Locurcio
91a5ff9dc3
Fix Xbox controllers in Bluetooth mode on macOS
...
This prevents the D-pad up arrow from being registered as pressed
when it isn't, and pressing any direction from activating the next
arrow clockwise of it.
Co-authored-by: Scott Wadden <scott.wadden@gmail.com>
2021-08-16 17:06:05 +02:00
Hugo Locurcio
2cdace1749
Move the Android "clear previous install" setting to Editor Settings
...
This means the setting now applies to every project deployed from
the editor, rather than being per-export preset.
2021-08-16 05:59:48 +02:00
Rémi Verschelde
1833c8b233
Merge pull request #51587 from Calinou/use-unicode-multiplication-symbol
...
Use the Unicode multiplication symbol where relevant
2021-08-13 14:27:48 +02:00
Pedro J. Estébanez
e745088f1f
Switch to input buffering on Android
...
Key, touch and joystick events will be passed directly from the UI thread to Godot, so they can benefit from agile input flushing.
As another consequence of this new way of passing events, less Java object are created at runtime (`Runnable`), which is good since the garbage collector needs to run less.
`AndroidInputHandler` is introduced to have a smaller cross-thread surface. `main_loop_request_go_back()` is removed in favor just inline calling `send_window_event()` at the most caller's convenience (i.e., leveraging the new `p_deferred`` parameter as appropriate).
Lastly, `get_mouse_position()` and `get_mouse_button_state()` now just call through `Input` to avoid the need of sync of mouse data tracked on the UI thread.
2021-08-13 11:45:50 +02:00
Pedro J. Estébanez
dc187324be
Add input buffering framework
...
Input buffering is implicitly used by event accumulation, but this commit makes it more generic so it can be enabled for other uses.
For desktop OSs it's currently not feasible given main and UI threads are the same).
2021-08-13 11:19:19 +02:00
Pedro J. Estébanez
7c864d41c9
Improve input event accumulation
...
- API has been simplified: all events now go through `parse_input_event()`. Whether they are accumulated or not depends on the `use_accumulated_input` flag.
- Event accumulation is now thread-safe (it was not needed so far, but it prepares the ground for the following changes).
- Touch drag events now support accumulation.
2021-08-13 11:19:19 +02:00
Rémi Verschelde
af70288ee0
Merge pull request #51586 from m4gr3d/investigate_godot_resume_stalls_master
...
Resolve issue where the Godot app remains stuck when resuming.
2021-08-13 08:43:59 +02:00
Rémi Verschelde
4c53669d8a
Merge pull request #51524 from RandomShaper/faster_vma
...
Upgrade Vulkan Memory Allocator, use Volk on Android
2021-08-13 08:42:58 +02:00
Fredia Huya-Kouadio
e73e336e3b
Add support for prompting the user to retain app data on uninstall.
...
Supported on Android 10 and higher.
2021-08-12 22:16:14 -07:00
Fredia Huya-Kouadio
28a99e4cf6
Resolve issue where the Godot app remains stuck when resuming.
...
This was caused by the fact that a new instance of Godot was created at resume while a previous instance already existed.
The previous instance would then go through its cleanup lifecycle, and would thus attempt to close the entire app, leading to the system to restart the app, thus starting the cycle anew.
The fix involves reusing the previous instance of Godot if one is available instead of creating a new one, as well as giving control to the host activity for how the process should be terminated.
2021-08-12 21:05:18 -07:00
Pedro J. Estébanez
7b7e17a626
Upgrade Vulkan memory allocator
2021-08-13 00:05:41 +02:00
Rémi Verschelde
554312a3b2
Android: Use volk instead of NDK Vulkan headers
...
We no longer build the Vulkan loader, and volk lets us load it dynamically.
Roblox uses volk on Android so it should work well for us too.
2021-08-12 23:39:30 +02:00
Hugo Locurcio
7612cff432
Use the Unicode multiplication symbol where relevant
2021-08-12 21:45:33 +02:00
Rémi Verschelde
6f043f7a19
Merge pull request #50771 from naithar/feature/platform-export-refactoring-4.0
2021-08-12 17:22:43 +02:00
Sergey Minakov
253581f85c
Split uwp platform export template into multiple files
2021-08-12 17:18:37 +03:00
Sergey Minakov
9f49255bee
Split javascript export template into multiple files
2021-08-12 17:18:36 +03:00
Sergey Minakov
6627f18e0f
Split windows platform export template into multiple files
2021-08-12 17:18:36 +03:00
Sergey Minakov
d18dc7f41c
Split osx platform export template into multiple files
2021-08-12 17:18:34 +03:00
Sergey Minakov
ed49e038ec
Split android platform export template into multiple files
2021-08-12 17:15:02 +03:00
Sergey Minakov
968b712a97
Split iphone platform export template into multiple files
2021-08-12 16:56:17 +03:00
Marcus Brummer
20b3e2cc94
Properly finishes Godot's Android activity when destroyed by the system
2021-08-12 15:33:51 +02:00
bruvzg
133f678f85
Remove unnecessary iOS linker flags.
2021-08-12 14:25:16 +03:00
bruvzg
d7957a2a20
Use "volk" instead of statically linked Vulkan loader.
2021-08-12 14:25:15 +03:00
Aaron Franke
fa3a32a2d6
Use Key enum instead of plain integers
2021-08-10 16:26:55 -05:00
bruvzg
ae7dbb678c
[macOS] Move captured mouse cursor to the center when window gain focus.
2021-08-08 22:27:57 +03:00
Sergey Minakov
ae91e372d1
[iOS] Use platform generated api to initialize iOS plugins
2021-08-06 23:28:37 +03:00
Georg Wacker
63ba15a518
Fix vertical scroll/zoom for precision touchpad
...
Adds factor data for vertical mousewheel event, in line with horizontal mousewheel event
2021-08-06 15:06:11 +02:00
Haoyu Qiu
1d5332069b
Make progress and errors translatable when exporting to Android
2021-08-01 17:16:16 +08:00
Rémi Verschelde
c191cfbddf
Windows: Fix build with SCons 4.2.0
2021-08-01 10:08:20 +02:00
Fredia Huya-Kouadio
ace6df6947
Fix custom build export
2021-07-27 09:15:45 -07:00
vitika9
1add8b3172
Removed Redundant assignement of name inside configure_joypad function
2021-07-27 14:51:42 +05:30
Rémi Verschelde
438be4422f
Merge pull request #50878 from bruvzg/debug_entitlement
...
[macOS] Add "debugging" (`get-task-allow`) to the export options.
2021-07-26 10:52:09 +02:00
bruvzg
2dd6c3eb09
[macOS] Add "debugging" (`get-task-allow`) to the export options, to allow using native debugger.
2021-07-26 11:28:52 +03:00
luz paz
2e0044c93d
Remove unnecessary 'pass' statement
...
ref: https://lgtm.com/projects/g/godotengine/godot/?mode=tree&ruleFocus=910088
2021-07-25 11:56:24 -04:00
luz paz
3564c16cb8
Fix various typos with codespell
...
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25 11:21:51 +02:00
Aaron Franke
4e6efd1b07
Use C++ iterators for Lists in many situations
2021-07-23 17:38:28 -04:00
bruvzg
618eb27e8b
Move `alert` function from `DisplayServer` to `OS`.
2021-07-22 21:50:35 +03:00
bruvzg
53f84e39fd
Fix MoltenVK static linking on macOS (add missing include path, Vulkan SDK path option, use xcframework instead of static framework).
2021-07-22 16:29:24 +03:00
Rémi Verschelde
ab732fe3eb
Merge pull request #50712 from nekomatata/x11-popup-focus-fix
...
Fix popup closing immediately after showing on some Linux WMs
2021-07-22 09:27:48 +02:00
PouleyKetchoupp
e030360b88
Fix popup closing immediately after showing on some Linux WMs
...
When a popup is going to be closed, switch focus to the parent only if
the popup is still being focused.
Fixes some cases with specific WMs where due to the order of events, a
new popup could be immediately unfocused because a previously opened
and closed popup is switching focus to the parent.
2021-07-21 12:28:39 -07:00
ne0fhyk
fa587778d8
Disable resource optimizations for release builds as it breaks the legacy build system.
2021-07-20 16:44:04 -07:00
Rémi Verschelde
b4baec08cf
Merge pull request #50206 from groud/undoredo_increase_args_count
...
Increase the number of arguments accepted by UndoRedo methods
2021-07-20 09:50:01 +02:00
reduz
6631f66c2a
Optimize StringName usage
...
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
Hendrik Brucker
38578a8095
Modernize Display server to use override keyword
2021-07-16 21:39:13 +02:00
Rémi Verschelde
296b713ee8
Merge pull request #50481 from reduz/install-android-build-sources
...
Added ability to load Android build sources from file.
2021-07-15 18:22:26 +02:00
Fabio Alessandrelli
7431586286
[HTML5] Make threads build the default.
...
Non-threads build are broken anyway.
2021-07-15 15:33:39 +02:00
reduz
6639cc9853
Addes ability to load build sources from file.
...
* If not present, the dialog asks to load build sources from a file.
* The export templates check now also verifies that build sources are installed and skips the template check.
This makes Android development easier.
2021-07-15 10:14:08 -03:00
Fabio Alessandrelli
3d8acc7a54
[HTML5] Fix build (with module_webxr_enabled=no).
...
The XR API changed a bit, and it's not just a rename, though probably an
easy update for someone who is qualified :).
2021-07-15 14:37:21 +02:00
Rémi Verschelde
06568bbfdf
Misc cleanup of header includes
...
Was looking for misuse of module headers without checking that the module is
actually enabled and got carried away...
2021-07-15 00:46:43 +02:00
Rémi Verschelde
dcabc27337
Merge pull request #50409 from godot-joe/fix-ambiguous-variant-on-debian-10-build
...
Fixes ambiguous variant error for build on Debian 10 (Buster) using clang v7
2021-07-14 14:58:36 +02:00
Sergey Minakov
aa321f0a24
[iOS] Fix plugin configuration loading
...
Clear ConfigFile parameter before loading new file.
Ignore duplicate input plist keys
2021-07-13 21:30:19 +03:00
Rémi Verschelde
681b1bb306
Merge pull request #50422 from Faless/js/4.x_memory_initial_32
...
[HTML5] Raise default initial memory to 32 MiB.
2021-07-13 17:02:22 +02:00
Rémi Verschelde
a4af76077a
Merge pull request #50418 from Calinou/fix-to-stop-word-casing
...
Fix casing of the "to" stop word in editor strings
2021-07-13 16:26:21 +02:00
Fabio Alessandrelli
897c906ebf
[HTML5] Raise default initial memory to 32 MiB.
...
The memory was resized in any case during start.
Mitigate Chromium issue:
https://bugs.chromium.org/p/v8/issues/detail?id=11863
Also fix a warning about SAFE_HEAP being a linker only flag.
2021-07-13 15:51:00 +02:00
Hugo Locurcio
a3fbd68781
Fix casing of the "to" stop word in editor strings
...
This also fixes a C# documentation example that had one of its
strings incorrectly converted.
2021-07-13 15:29:06 +02:00
reduz
5ad4f26659
Implement the ability to disable classes
...
* This PR adds the ability to disable classes when building.
* For now it's only possible to do this via command like:
`scons disable_classes=RayCast2D,Area3D`
* Eventually, a proper UI will be implemented to create a build config file to do this at large scale, as well as detect what is used in the project.
2021-07-13 09:25:14 -03:00
joe
b627fcd2cd
Fix for ambiguous variant error during build on Debian 10(Buster) using clang v7
2021-07-13 03:44:03 +01:00
Hugo Locurcio
a2d5f191d8
Merge pull request #48622 from Geometror/reimplement-disableable-vsync
2021-07-10 01:02:23 +02:00
bruvzg
f37981b83f
[macOS, Mono] Automatically enable JIT entitlements for the Mono exports.
2021-07-09 22:47:43 +03:00
likeich
0314e04939
Fix linux use after free
...
Fixes #50032
2021-07-08 22:34:07 -04:00
Fabio Alessandrelli
d4e302a3a4
[HTML5] Fix JavaScript string parsing with new interface.
...
Strings are UTF-8 encoded and should be parsed as such, while it was
being parsed as a C string before.
2021-07-07 15:44:29 +02:00
Rémi Verschelde
5d7c23dcc6
Merge pull request #50220 from madmiraal/fix-50125
...
Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06 23:46:21 +02:00
Gilles Roudière
2f9a0268dd
Increase the number of arguments accepted by UndoRedo methods
2021-07-06 18:52:28 +02:00
Marcel Admiraal
57317ce7b8
Remove Android onKeyMultiple override
2021-07-06 17:39:42 +01:00
Marcel Admiraal
1856f16378
Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06 17:32:09 +01:00
Rémi Verschelde
c47b6f4b5c
Merge pull request #50107 from madmiraal/android-use-lambdas
...
Replace single method anonymous classes with lambdas in Godot Java code
2021-07-06 18:10:38 +02:00
Hendrik Brucker
043ae91560
Restructure and reimplement vsync options
...
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX
-Removed the V-Sync via Compositor option
2021-07-06 16:34:26 +02:00
Rémi Verschelde
7931ebb7bb
Merge pull request #39139 from ThakeeNathees/windows-err-to-stderr
...
Windows error logs directed to stderr
2021-07-06 12:14:29 +02:00
Rémi Verschelde
f2d8bad2d1
Merge pull request #50109 from madmiraal/android-static-inner-classes
...
Use static inner classes in Godot Java code
2021-07-05 14:18:26 +02:00
miere43
119a59f872
Replace backslash with forward slash in OS_Windows path methods
2021-07-04 09:04:21 +03:00
Marcel Admiraal
23e152040b
Use static inner classes in Godot Java code
2021-07-03 05:50:04 +01:00
Marcel Admiraal
a7825ca12a
Replace single method anonymous classes with lambdas in Godot Java code
2021-07-03 05:13:31 +01:00
Rémi Verschelde
f2229bb1ea
Merge pull request #50085 from madmiraal/android-replace-stringbuffer
...
Use StringBuilder instead StringBuffer in Godot Java code
2021-07-02 22:09:50 +02:00
Rémi Verschelde
aee59c3547
Merge pull request #50083 from madmiraal/android-fix-raw-use
...
Fix raw use of parameterized Class
2021-07-02 22:09:39 +02:00
Marcel Admiraal
3f95bbed73
Remove redundant explicit types in Godot Java code
2021-07-02 17:45:30 +01:00
Marcel Admiraal
61ee51d2bf
Use StringBuilder instead StringBuffer in Godot Java code
2021-07-02 16:57:12 +01:00
Rémi Verschelde
710effdaad
Merge pull request #50078 from madmiraal/android-remove-unused-imports
2021-07-02 17:45:29 +02:00
Marcel Admiraal
d237f7d33d
Fix raw use of parameterized Class
2021-07-02 16:35:52 +01:00
thebestnom
e200195564
Android: Initialize mouse mode
2021-07-02 18:00:33 +03:00
Marcel Admiraal
a38fd4a4c2
Remove unused imports from Android Java code
2021-07-02 12:57:55 +01:00
Rémi Verschelde
6ef0b8fcd3
Merge pull request #50074 from madmiraal/android-replace-c-array
...
Use Java array declarations not C-style declarations in Android Java code
2021-07-02 13:44:22 +02:00
Rémi Verschelde
42184dd6d5
Merge pull request #50072 from madmiraal/android-remove-interface-modifiers
...
Remove redundant interface modifiers from Android Java code
2021-07-02 12:35:14 +02:00
Marcel Admiraal
721b3d56c5
Use Java array declarations not C-style declarations in Android Java code
2021-07-02 11:09:09 +01:00
Marcel Admiraal
a74e803a4f
Remove redundant interface modifiers from Android Java code
2021-07-02 09:37:45 +01:00
Marcel Admiraal
360447001d
Remove unnecessary semicolons from Android Java code
2021-07-02 08:54:09 +01:00
Rémi Verschelde
40a594c6ea
Android: Add `isGame` application attribute, default to true
...
It can be turned off in the export preset with `package/classify_as_game`.
Upstream definition: https://developer.android.com/guide/topics/manifest/application-element#isGame
> `android:isGame`
>
> Whether or not the application is a game. The system may group together
> applications classifed as games or display them separately from other
> applications.
Also fixes replacing `android:allowBackup` in custom builds.
2021-07-01 11:00:23 +02:00
Marcel Admiraal
8270e101a7
Fix unchecked call to put() warning in GodotInputHandler.java
2021-06-30 12:13:05 +01:00
Rémi Verschelde
52e3f986ac
Merge pull request #49911 from madmiraal/fix-49878
...
Add GDNative libraries to Android custom Gradle builds
2021-06-29 14:58:23 +02:00
Rémi Verschelde
871a338376
Merge pull request #49910 from Faless/js/4.x_canvas_resize
...
[HTML5] Add option to focus canvas on start.
2021-06-29 12:40:25 +02:00
Marcel Admiraal
7b63f0a22d
Add GDNative libraries to Android custom Gradle builds
2021-06-29 09:26:28 +01:00
bruvzg
8f7c2ccefd
[Windows Export] Use temporary file for osslsigncode signing.
2021-06-29 10:38:28 +03:00
Rémi Verschelde
a738ddb9a4
Merge pull request #35536 from shroudedcode/keep-screen-on-linux
...
Make "Keep screen on" work on Linux
2021-06-27 19:33:23 +02:00
Fabio Alessandrelli
c12fca57f4
[HTML5] Add option to focus canvas on start.
...
Enabled by default.
2021-06-25 19:07:17 +02:00
Fabio Alessandrelli
fdccc0b219
Merge pull request #49889 from timothyqiu/url-path
...
Strip query string when parsing HTTP request line for path
2021-06-24 23:52:53 +02:00
Haoyu Qiu
91477cd4a9
Strip query string when parsing HTTP request line for path
2021-06-25 00:20:28 +08:00
ne0fhyk
d1a9363c4c
Update config versions and deprecate the use of the jcenter maven repo.
2021-06-24 08:58:56 -07:00
Rémi Verschelde
e55be041d8
Merge pull request #49833 from m4gr3d/add_support_for_custom_debug_keystore_master
...
Add support for custom debug keystore
2021-06-23 15:28:25 +02:00
Fabio Alessandrelli
b00c4a4360
[Net] Makes HTTPClient a custom instance class.
2021-06-23 14:10:45 +02:00
Fabio Alessandrelli
421e771012
[Net] Unify HTTPClient request and request_raw.
2021-06-23 13:53:43 +02:00
bruvzg
f7797bf1b3
[macOS] Fix custom mouse cursor not set after mouse mode change.
2021-06-23 10:51:01 +03:00
ne0fhyk
532b0e3462
Add support for custom debug keystore.
2021-06-22 10:05:55 -07:00
Rémi Verschelde
277db14b64
Merge pull request #49803 from naithar/feature/ios-plugin-multitype-plist-4.0
...
[4.0] [iOS] Support multiple `plist` types in plugin
2021-06-22 12:48:55 +02:00
Sergey Minakov
771e3aae1e
[iOS] Support multiple plist types
2021-06-21 18:17:41 +03:00
Niklas Higi
0c83a23ab5
Add "Keep screen on" feature to `DisplayServerX11`
2021-06-20 21:57:33 +02:00
Aaron Franke
0ce49800ac
Use mouse and joypad enums instead of plain integers
...
Also MIDIMessage
2021-06-20 11:54:24 -04:00
Aaron Franke
e919d894f8
Move many input enums to their own file
2021-06-20 11:53:01 -04:00
Lightning_A
e28fd07b2b
Rename `instance()`->`instantiate()` when it's a verb
2021-06-19 20:49:18 -06:00
Rémi Verschelde
d88be9b70c
Merge pull request #44806 from madmiraal/consolidate_json
...
Consolidate JSON, JSONParseResults and JSONParser into JSON
2021-06-19 21:45:34 +02:00
Marcel Admiraal
de2acbd495
Add adb output to error message when install fails
2021-06-19 17:46:57 +01:00
Marcel Admiraal
2bafcd3422
Consolidate JSON, JSONParseResults and JSONParser into JSON
...
Renames JSON.parse_string() to parse()
Renames JSON.decode_data() to stringify()
2021-06-19 08:01:40 +01:00
Fabio Alessandrelli
ad5bdaf5aa
[HTML5] JS callback functions now returns passed value.
...
JavaScript callbacks created via the `JavaScript.create_callback` method
used to always return void.
With this patch they return the value returned by the Godot function as
one would expect.
2021-06-18 17:47:48 +02:00
Hugo Locurcio
8556dd1bef
Improve crash handler message display
...
- State the Godot version and full hash in the backtrace.
- Add decoration around the crash backtrace, both to make it stand out
from other messages and help the user figure out what they should copy.
2021-06-17 20:05:16 +02:00
Gromph
c87e49d7bc
UWP: Keep upstream names for capabilities preset settings to avoid mismatch
...
The previous code used `camelcase_to_underscore` to prettify the names for
display in the export preset, but it leads to inconsistencies if we don't make
sure to do the reverse operation when writing to the `AppxManifest.xml`.
It's simpler to keep the same names as in the manifest, which is also what
users will see referenced in MS documentation.
Fixes #47900 .
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-06-17 12:59:17 +02:00
Rémi Verschelde
91d6382786
Merge pull request #49594 from bruvzg/macos_app_category
...
Add LSApplicationCategoryType to the template and export dialog.
2021-06-15 14:53:42 +02:00
Rémi Verschelde
88e671e0b7
Merge pull request #49592 from Faless/js/4.x_fix_sigs
...
[HTML5] Fix build without eval, library functions signatures.
2021-06-15 00:01:54 +02:00
Fabio Alessandrelli
a1cbb6daa6
[HTML5] Update eslint and jsdoc dependencies.
2021-06-14 13:42:03 +02:00
bruvzg
cb480376d8
Add LSApplicationCategoryType to the template and export dialog.
2021-06-14 14:28:34 +03:00
Fabio Alessandrelli
049b5159f1
[HTML5] Fix JS build without eval.
...
Also fix download_buffer return type.
2021-06-14 12:32:53 +02:00
Fabio Alessandrelli
9b7b0a28b9
[HTML5] Fix some JS library signature.
2021-06-14 12:32:32 +02:00
Rémi Verschelde
ac73059b56
Merge pull request #49123 from aaronfranke/it-is-time
...
Add a Time singleton
2021-06-12 22:55:25 +02:00
Pedro J. Estébanez
04688b92ff
Rename Reference to RefCounted
2021-06-11 18:48:42 +02:00
Rémi Verschelde
8d4046929c
Merge pull request #49511 from akien-mga/core-diraccess-fileaccess-io
...
Core: Move DirAccess and FileAccess to `core/io`
2021-06-11 16:51:10 +02:00
Rémi Verschelde
6b0183ec89
Merge pull request #49279 from Calinou/rename-string-is-abs-path-method
...
Rename `String.is_abs_path()` to `String.is_absolute_path()`
2021-06-11 15:58:16 +02:00
Aaron Franke
f64fea1b23
Add Time singleton
2021-06-11 09:32:39 -04:00
Rémi Verschelde
9e328bb5b7
Core: Move DirAccess and FileAccess to `core/io`
...
File handling APIs are typically considered part of I/O, and we did have most
`FileAccess` implementations in `core/io` already.
2021-06-11 14:52:39 +02:00
Rémi Verschelde
bc1fcb9c65
Merge pull request #49435 from madmiraal/add-android-external-dir
...
Add OS.get_external_data_dir() to get Android external directory
2021-06-10 22:11:02 +02:00
Marcel Admiraal
b3a962945e
Add OS.get_external_data_dir() to get Android external directory
2021-06-10 16:48:17 +01:00
Marcel Admiraal
4ba2ed332e
Remove unused AudioDriverAndroid from Android
2021-06-10 08:32:56 +01:00
Arthur Bikmullin
ee2bea7a86
Fixed missed IDHandler dependency in GodotFetch
2021-06-08 00:20:24 +02:00
Rémi Verschelde
d567abd714
Merge pull request #49382 from akien-mga/misc-cleanup
...
Style: Cleanup uses of double spaces between words
2021-06-07 11:57:47 +02:00
Rémi Verschelde
c1c76850cb
Style: Cleanup uses of double spaces between words
...
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.
2021-06-07 11:03:08 +02:00
Marcel Admiraal
78e791045c
Update Gradle archiveName and destinationDir properties
2021-06-07 06:41:10 +01:00
Marcel Admiraal
8acd13a456
Rename Quat to Quaternion
2021-06-04 18:14:32 +01:00
Rémi Verschelde
5d9cab3aeb
Merge pull request #38430 from aaronfranke/transform3d
2021-06-03 23:07:21 +02:00
Aaron Franke
98aa3b669e
Add MOUSE_MODE_CONFINED_HIDDEN
...
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-06-03 11:44:28 -04:00
Hugo Locurcio
5ea1c75d63
Rename `String.is_abs_path()` to `String.is_absolute_path()`
...
This is more consistent with `NodePath.is_absolute()`.
2021-06-03 16:00:06 +02:00
Aaron Franke
08a85352fb
Rename Variant TRANSFORM to TRANSFORM3D
...
Also _transform to _transform3d
2021-06-03 07:30:01 -04:00
Hendrik Brucker
6abd842a5a
Fixed window_can_draw of DisplayServerWindows
2021-06-02 12:51:36 +02:00
Fabio Alessandrelli
8cdef21d6c
Move remaining dummy drivers to servers.
2021-06-01 16:50:32 +02:00
Fabio Alessandrelli
8594613f94
LinuxBSD now compiles without vulkan/x11.
2021-06-01 16:27:54 +02:00
Fabio Alessandrelli
ae04dac2db
Remove server platform
2021-06-01 16:27:54 +02:00
Rémi Verschelde
af3ee1c860
Merge pull request #48963 from HaywardMorihara/export-android-keystore-debug-warnings
...
Exporting -> Android: Keystore Warnings
2021-06-01 15:22:05 +02:00
Rémi Verschelde
596eb783fe
Merge pull request #49050 from reduz/implement-spirv-cache
...
Implement shader caching
2021-05-31 11:02:19 +02:00
Rémi Verschelde
f7bcada709
Merge pull request #49137 from RandomShaper/ios_targeted_family
...
Add iOS export option for device family
2021-05-31 10:34:49 +02:00
reduz
0d2e02945b
Implement shader caching
...
* Shader compilation is now cached. Subsequent loads take less than a millisecond.
* Improved game, editor and project manager startup time.
* Editor uses .godot/shader_cache to store shaders.
* Game uses user://shader_cache
* Project manager uses $config_dir/shader_cache
* Options to tweak shader caching in project settings.
* Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled).
* Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated).
* Added shader compression with SMOLV: https://github.com/aras-p/smol-v
2021-05-31 10:13:09 +02:00
Pedro J. Estébanez
19ae8193ee
Add iOS export option for device family
2021-05-27 11:46:22 +02:00
Rémi Verschelde
ae5735af60
Merge pull request #49069 from RandomShaper/android_data_backup
...
Allow basic user data backup on Android
2021-05-25 18:06:46 +02:00
Rémi Verschelde
72a7ddaddc
Merge pull request #48422 from szymonm-google/android_orientation_fix
...
Fixed changing screen orientation on Android
2021-05-25 18:06:00 +02:00
Pedro J. Estébanez
1179421068
Allow basic user data backup on Android
2021-05-25 17:47:32 +02:00
Rémi Verschelde
6b6a351aa1
Merge pull request #49064 from RandomShaper/default_config_xcode
...
Set schemes' build config to debug/release in iOS Xcode export
2021-05-25 17:46:38 +02:00
Marcel Admiraal
da5d7db610
Rename File::get_len() get_length()
2021-05-25 11:54:28 +01:00
Rémi Verschelde
9bc2ba3b64
Merge pull request #48955 from Calinou/editor-tweak-property-hints
...
Tweak dozens of editor property hints for consistency
2021-05-25 11:44:43 +02:00
Pedro J. Estébanez
1534b4e65e
Set schemes' build config to debug/release in iOS Xcode export
2021-05-25 10:26:54 +02:00
Hugo Locurcio
87f503310b
Tweak dozens of editor property hints for consistency
...
- Update Viewport MSAA property hints to match the currently
exposed values.
- Add some performance hints to property hints.
2021-05-25 02:50:35 +02:00
Szymon Majewski
5634093703
Fixed screen orientation on Android
2021-05-24 16:58:35 -07:00
Nathaniel Morihara
2cf19293ba
Exporting: Android Debug Keystore Warnings
2021-05-24 19:48:29 -04:00
Rémi Verschelde
af03e9c830
Merge pull request #48939 from Calinou/screen-orientation-use-enum
...
Use an enum to represent screen orientation in the Project Settings
2021-05-24 19:53:19 +02:00
Hugo Locurcio
660952a857
Use an enum to represent screen orientation in the Project Settings
...
- Tweak the setting property hint to be more informative.
- Make the setting a "basic" setting so it appears when Advanced Settings
is disabled.
- Remove redundant orientation setting in the iOS export preset.
The project setting is now used (like on Android).
Projects upgrading from a previous version will have to set the
screen orientation again in the Project Settings if it wasn't set
to the default value ("landscape").
2021-05-24 18:53:10 +02:00
Rémi Verschelde
65eff1cfdd
Merge pull request #46866 from bruvzg/symlinks_and_macos_gdn_framework_export_4
2021-05-24 15:14:02 +02:00
bruvzg
a1cb6f07a1
Add GDNative Framework loading and export support.
2021-05-24 12:49:05 +03:00
bruvzg
d14eae141e
[macOS] Allow "on top" windows to enter full-screen mode.
2021-05-24 10:53:01 +03:00
Rémi Verschelde
43e843ac98
Merge pull request #48940 from omar-polo/add-openbsd
...
add OpenBSD to OS_LinuxBSD::get_name()
2021-05-22 18:35:42 +02:00
bruvzg
139a9d6370
Add symlink API to the DirAccess (on macOS and Linux).
2021-05-22 17:33:34 +03:00
bruvzg
494c54b98c
[UWP] Add missing `get_scansym` argument.
2021-05-22 16:39:31 +03:00
Omar Polo
3bff838cee
add OpenBSD to OS_LinuxBSD::get_name()
2021-05-21 21:35:31 +02:00
Rémi Verschelde
2687ac2720
Merge pull request #48922 from akien-mga/os-xdg-dedup-code
...
OS: Remove code duplicate in XDG paths handling
2021-05-21 19:04:48 +02:00
Rémi Verschelde
2362a59a11
Merge pull request #48928 from Faless/js/4.x_fix_build_after_rename
...
[HTML5] Fix build after KEY_CTRL rename.
2021-05-21 18:33:15 +02:00
Fabio Alessandrelli
923131ec28
[HTML5] Fix build after KEY_CTRL rename.
2021-05-21 15:53:23 +02:00
Fabio Alessandrelli
fdf66a21f1
[HTML5] Add easy to use download API.
...
New `JavaScript.download_buffer` method to create a prompt that let the
user download a file.
2021-05-21 15:31:23 +02:00
Rémi Verschelde
0e1d45b210
OS: Remove code duplicate in XDG paths handling
...
Follow-up to #48542 .
2021-05-21 12:49:09 +02:00
Hugo Locurcio
011a99316a
Only allow absolute paths in XDG environment variables
...
The XDG Base Directory specification does not allow using relative paths
(which broke things in Godot anyway). If a relative path is detected,
it should be ignored.
2021-05-20 18:37:28 +02:00