Commit graph

4026 commits

Author SHA1 Message Date
Marcel Admiraal
806e7d18d1 Ensure joystick has been added or not already removed when processing input 2022-06-16 18:15:25 +01:00
Jiri Suchan
8d94d26caf refactoring: simplify compiler version check 2022-06-14 22:23:20 +07:00
Fabio Alessandrelli
3a2fbd6fae [HTML5] Add GDNative+Threads build. 2022-06-14 14:09:06 +02:00
Fredia Huya-Kouadio
6b9a81900e Migrate the Godot Editor java source file to Kotlin. 2022-06-09 13:26:24 -07:00
bruvzg
e00571b194
Add readable export errors. 2022-06-08 17:55:46 +03:00
bruvzg
40b3be7912
Remove mouse events that closed the popup from queue, to fix pop-up reopening. 2022-06-02 08:35:27 +03:00
Rémi Verschelde
cd7871867f
Merge pull request #61579 from madmiraal/android-kotlin-java-version
Ensure Android Java and Kotlin compile to the same version
2022-06-01 18:31:09 +02:00
Marcel Admiraal
b19bbadcf0 Ensure Android Java and Kotlin compile to the same version 2022-06-01 16:23:44 +01:00
Fredia Huya-Kouadio
6f7ec7f723 Misc editor tweaks and polishes:
- Using a bucketized approach to select the editor scale in order to avoid too high values
- Add default app dimensions: used on Android devices with free floating app windows to set the default app frame
- Add ability to launch the Game window in an adjacent frame when in multi window mode
2022-05-31 23:49:40 -07:00
Rémi Verschelde
b777454097
Merge pull request #61573 from madmiraal/android-cleanup
Cleanup Android C++ code
2022-05-31 23:48:16 +02:00
Marcel Admiraal
2afef001e7 Cleanup Android C++ code 2022-05-31 17:11:05 +01:00
Marcel Admiraal
d0cb299f04 Only use Android fullscreen theme for splash screen 2022-05-27 16:54:44 +02:00
Rémi Verschelde
6aa7449d60 HTML5: Run npm audit fix
And re-add `node_modules` to `.gitignore` which I mistakenly removed
with an earlier cleanup.
2022-05-25 14:56:43 +02:00
Rémi Verschelde
3ff6d794c0 HTML5: Enable mbedTLS module for Crypto object
Increases the size of the wasm by around 3% (~300-350 KiB).

This enables using the Crypto object for hashing, signing and encryption,
and therefore reduces the gap between the features of the HTML5 platform
and other platforms.

Closes https://github.com/godotengine/godot-proposals/issues/3574.
2022-05-25 14:19:49 +02:00
Rémi Verschelde
360119ffbf
Merge pull request #61352 from Faless/ext/linux_export
[Editor] Fix GDExtension GNU/Linux export.
2022-05-25 01:17:59 +02:00
Fabio Alessandrelli
9c2b5ae5ce [Editor] LinuxBSD export reports Linux as OS name.
This is in line with what's reported by the `OS` class on GNU/Linux, and
is required by the extension exporter to identify the correct library.

For BSD, we should either finish splitting the platform (into
platform/bsd) or register a separate exporter with OS name BSD and
proper templates detection.
2022-05-24 12:01:34 +02:00
Rémi Verschelde
3bee0689bc
Merge pull request #61333 from m4gr3d/fix_restart_logic_main 2022-05-23 23:11:53 +02:00
Fredia Huya-Kouadio
d38ffda2c3 Fix the logic to restart the Godot application 2022-05-23 13:15:48 -07:00
Rémi Verschelde
9b3dd5e8c5
Merge pull request #61330 from madmiraal/android-duplicate-register
Remove duplicate Android sensor listener registrations
2022-05-23 21:58:50 +02:00
Rémi Verschelde
9923851370 Fix typos with codespell
Using codespell 2.2-dev from current git.
2022-05-23 21:32:19 +02:00
Marcel Admiraal
cf0f967e6d Remove duplicate Android sensor listener registrations 2022-05-23 20:33:13 +02:00
reduz
45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
Rémi Verschelde
3aa83a0235
Merge pull request #61020 from timothyqiu/wait-busy 2022-05-19 15:41:41 +02:00
Aaron Record
900c676b02 Use range iterators for RBSet in most cases 2022-05-19 12:09:16 +02:00
Haoyu Qiu
fc3b845c07 Add dedicated macros for property name extraction
* Replace case-by-case extraction with PNAME & GNAME
* Fix group handling when group hint begins with property name
* Exclude properties that are PROPERTY_USAGE_NO_EDITOR
* Extract missing ADD_ARRAY*, ADD_SUBGROUP* macros
2022-05-19 14:08:47 +08:00
Rémi Verschelde
ccdd85d8e7
Merge pull request #61001 from derammo/derammo_popup_conditional_hide 2022-05-17 12:56:53 +02:00
Rémi Verschelde
d6e7dcbea9
Merge pull request #61074 from timoschwarzer/fix-ios-vibration-duration 2022-05-16 12:00:26 +02:00
reduz
746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Timo Schwarzer
05d524b624
Fix vibration duration on iOS
Fixes #61063
2022-05-16 10:34:49 +02:00
Haoyu Qiu
ffd5362187 Swap the meaning of CURSOR_WAIT and CURSOR_BUSY 2022-05-14 10:13:42 +08:00
derammo
47d0dc8a41 popup deferred hide suppressed if reopened
popup no longer tries to close itself a second time
popup no longer closes after having been reopened
fixed bug in RenameDialog not calling base (by inspection)
fixes #59181
fixes #60921
reverts #59287
2022-05-13 09:30:00 -04:00
Rémi Verschelde
349aa9c884
Merge pull request #60894 from derammo/derammo_opengl3_windows 2022-05-13 15:07:13 +02:00
Hugo Locurcio
78b4ec2d4d
Increase compiler optimization when using target=release on iOS/Android 2022-05-13 01:12:20 +02:00
Rémi Verschelde
ff30a09993
Merge pull request #60643 from clayjohn/GLES3-3D 2022-05-12 21:08:02 +02:00
clayjohn
652adcd5bf Basic 3D rendering 2022-05-12 10:37:27 -07:00
reduz
8b7c7f5a75 Add a new HashMap implementation
Adds a new, cleaned up, HashMap implementation.

* Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing).
* Keeps elements in a double linked list for simpler, ordered, iteration.
* Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much
  for performance vs keeping the key, but helps replace old code).
* Uses a more modern C++ iterator API, deprecates the old one.
* Supports custom allocator (in case there is a wish to use a paged one).

This class aims to unify all the associative template usage and replace it by this one:
* Map<> (whereas key order does not matter, which is 99% of cases)
* HashMap<>
* OrderedHashMap<>
* OAHashMap<>
2022-05-12 11:21:29 +02:00
derammo
96c21bc749 opengl3 driver now works on windows including multi window
fixed and simplified gl_manager_windows
swap buffers now called for all windows
fixed missing pixel format setting in additional windows
    this makes them work in OpenGL contexts
changed verbose error printing to write once
    this error message happens very frequently while opengl3 is not finished
removed dead code no longer needed after changes
fixed comments that were misinformation
window messages during window creation now handled
    these were previously discarded
    messages now tunnel the required context
changed failure to create opengl3 window on windows to be more fatal
marked a problem with pen code
conditional compilation of vulkan and opengl3 on windows fixed
windows debug builds now show messages on debug console also
rendering driver selection box now shows only compiled drivers
marked some problematic code
thanks to akien-mga for patiently rewriting my style mistakes
2022-05-11 16:12:40 -04:00
bruvzg
d36c5514d3
Fix ZipIO crash when reused (and possible leaks). 2022-05-11 16:08:17 +03:00
Fabio Alessandrelli
9bdb853eec [HTML5] Limit the returned OS cpu count to 2.
Temporarily workaround issues due to godot spawning too many threads.
2022-05-11 00:26:02 +02:00
Fabio Alessandrelli
39d9a5540c [HTML5] Fix JS "tools" editor plugin.
Needed update after file/dir access refactoring.
2022-05-10 23:56:32 +02:00
Fabio Alessandrelli
e8110474b6 [HTML5] Add "webgl/webgl2.h" as OpenGL include.
Requires emscripten versions > 2.0.17 .
2022-05-10 23:56:21 +02:00
bruvzg
ffe61e0895
[macOS / iOS] Fix text-to-speech build with older macOS / iOS SDK.
Add __has_include check for AVFAudio include.
Add some explicit casts to avoid conflicts.
Change all `include`s to `import`s for consistency.
2022-05-10 21:11:34 +03:00
Haoyu Qiu
a71e808112 Try to convert OS::execute() output to Unicode on Windows 2022-05-10 20:54:48 +08:00
bruvzg
b268c4b4bc [Windows] Save and re-apply window icon when changing window style. 2022-05-10 11:12:04 +03:00
Rémi Verschelde
c366f8d2d4 Crash handler: Use print_error to include backtrace in logs 2022-05-05 12:22:56 +02:00
Marcel Admiraal
c893302ca1 Read and store joypad events in a separate thread on x11 platform 2022-05-05 07:51:54 +02:00
bruvzg
800a68837f Fix export plugins after embedded PCK loading changes. 2022-05-04 12:57:21 +03:00
Rémi Verschelde
5022efef02
Merge pull request #51682 from mdavisprog/os-is-process-running
OS::is_process_running function.
2022-05-04 09:02:33 +02:00
mdavisprog
f3c1232c59 Add OS::is_process_running function.
Adds the is_process_running function to the native OS class and exposes it to script.

This is implemented on Windows and Unix platforms. A stub is provided for other platforms that do not support this function.

Documentation is updated to reflect new API function.
2022-05-03 17:27:17 -07:00
Fabio Alessandrelli
070bd87aaa [JS] Add flag to disable weak symbols in ZSTD.
Weak symbols are currently broken in upstream emscripten.
2022-05-03 21:52:55 +02:00