Bastiaan Olij
4946ae16fc
Use /Zi and /FS for including debugger symbols on Windows with MSVC
2021-02-09 00:20:42 +11:00
Rémi Verschelde
849c090343
SCons: Fix debug_symbols tests after switch to BoolVariable
...
Bug introduced in #45679 .
Fixes part of #45816 .
2021-02-08 08:53:16 +01:00
kobewi
b6e2ad0e7e
Cancel event dispatch on error
2021-02-07 21:50:12 +01:00
Rémi Verschelde
54857d7e81
Merge pull request #44949 from m4gr3d/specify_project_ndk_version
...
Improve the logic to compile for Android
2021-02-05 13:27:37 +01:00
Rémi Verschelde
5e0f3f1fe1
Merge pull request #45705 from Faless/js/4.x_editor_preload
...
[HTML5] Better editor persistent folders, automatically open zip import popup
2021-02-04 14:53:31 +01:00
Fabio Alessandrelli
95d2102565
[HTML5] Make home path persistent in editor.
...
We used to only persist specific sub-folder of /home/web_user/ when
running the Web Editor. This resulted in bad UX about default project
creation path etc.
This PR makes the whole folder persistent, move the zip preloading to a
different folder (to avoid persisting it), and automatically prompt the
user to import it if present.
2021-02-03 18:59:54 +01:00
Rémi Verschelde
43ab0edbd2
Merge pull request #45686 from naithar/feature/extend-plugin-params-4.0
...
[4.0] [iOS] Additional 'linker_flags' plugin parameter
2021-02-03 18:37:42 +01:00
Sergey Minakov
c575fb81cc
iOS: Use storyboard as loading screen
...
If 'Launch Screen' storyboard is present it will be used as loading screen.
2021-02-03 19:53:52 +03:00
Sergey Minakov
9f5265766d
[iOS] Additional 'linker_flags' plugin parameter
2021-02-03 18:27:26 +03:00
Sergey Minakov
4fda1ae6b8
[iOS] Remove remote notifications code
...
Using any remote notification method (even indirectly) causes App Store to trigger APNS warning email.
2021-02-03 15:00:43 +03:00
Rémi Verschelde
db26871210
SCons: Add production=yes
option to use production defaults
...
This is meant for users making custom builds to match the options used on
optimized, official builds.
This enables, on the platforms which support them:
- `use_static_cpp=yes` (portable binaries for Linux and Windows)
- `use_lto=yes` (link time optimizations - note: requires a lot of RAM!)
- `debug_symbols=no` (no debug symbols, smaller binaries)
Also abort when using MSVC with `production=yes`, as:
- It cannot optimize the GDScript VM like GCC or Clang do, leading to
significant performance drops.
- Its LTO support is unreliable, at least used to trigger crashes last
we tried it extensively.
All options can still be overridden if specified, and the `dev=yes` option
was changed to also support overrides.
2021-02-03 11:48:17 +01:00
Fabio Alessandrelli
97288f25f4
[HTML5] Fix mouse_mode and fullscreen detection.
...
The canvas_id is `#`-prefixed to work with emscripten as a CSS selector.
When comparing to an event target ID (e.g. when checking if the canvas
is fullscreen, or is locking the mouse) we need to skip the first char
(the hash).
2021-02-02 20:08:51 +01:00
Rémi Verschelde
9e0bdeb5de
Merge pull request #45665 from naithar/fix/ios-plugin-initialization-4.0
...
[4.0] [iOS] Earlier plugin initialization
2021-02-02 17:30:20 +01:00
Rémi Verschelde
74091a1974
Merge pull request #45579 from zaevi/add_scons_ext
...
add search extensions for Scons' path
2021-02-01 20:41:25 +01:00
Rémi Verschelde
0f4e2cd40c
Merge pull request #45630 from akien-mga/linux-enable-udev
...
Linux: Enable udev support by default
2021-02-01 16:00:34 +01:00
Rémi Verschelde
1ebd66daff
Linux: Build with use_static_cpp=yes by default for x86_64
...
This enables `-static-libgcc -static-libstdc++` which help make custom Linux
builds more portable (official builds have been using this option for years).
For some obscure reason Ubuntu 18.04 i386 crashes when using the option for
i386 builds, so let's play it safe and enable for x86_64 only for now.
2021-02-01 14:56:35 +01:00
Rémi Verschelde
e8b69fccbe
Linux: Enable udev support by default
...
This has been enabled for years in official binaries, and users making custom builds
may end up not enabling it unknowingly, so it's best if we default to the same as
what official builds do.
The original reason for having it opt-in was likely the addition of a dependency on
libudev, but that should be fairly ubiquitous by now.
2021-02-01 14:40:15 +01:00
Sergey Minakov
3db04b3bd4
[iOS] Initialize plugins earlier
...
Initialize iOS plugins before 'Main::setup' call to have access to them in script's '_init' function.
2021-02-01 15:27:10 +03:00
Rémi Verschelde
5525cd85c6
Merge pull request #45315 from RandomShaper/modernize_thread
...
Modernize Thread
2021-01-31 15:24:56 +01:00
zaevi
befbfecd4d
add search extensions for scons' path
2021-01-30 20:13:01 +08:00
Pedro J. Estébanez
99fe462452
Modernize Thread
...
- Based on C++11's `thread` and `thread_local`
- No more need to allocate-deallocate or check for null
- No pointer anymore, just a member variable
- Platform-specific implementations no longer needed (except for the few cases of non-portable functions)
- Simpler for `NO_THREADS`
- Thread ids are now the same across platforms (main is 1; others follow)
2021-01-29 12:02:13 +01:00
Marcel Admiraal
fad0cec272
Don't handle BaseException in JavaScript build script
2021-01-28 19:23:49 +00:00
Aaron Franke
e829b7aee4
Unify URI encoding/decoding and add to C#
...
http_escape and percent_encode have been unified into uri_encode, and http_unescape and percent_decode have been unified into uri_decode.
2021-01-28 07:45:01 -05:00
Rémi Verschelde
69f77e83bf
Merge pull request #45481 from ronchaine/joypad-detection
...
POSIX systems: go through all event devices, not just event[0-32]
2021-01-27 19:43:34 +01:00
Jari Ronkainen
01c030f9b7
Go through all event devices, not just event[0-32]
...
There are no guarantees that joypads are in event0-event32
range. Some devices, such as laptops with detachable keyboards
and wacom can reserve events all the way up to 32.
Some udev rules with e.g. custom controller firmwares may
load the device as /dev/input/eventX, where X is greater than
32.
This patch uses POSIX dirent to enumerate the event devices, so
entries outside 0-32 range are not skipped.
2021-01-27 20:05:31 +02:00
Sergey Minakov
366ce084f4
[iOS] Rework push notification methods usage
...
Moved AppDelegate push notifications methods implementation to 'GODOT_ENABLE_PUSH_NOTIFICATIONS'
which can be used in plugins to implement APNS plugins.
2021-01-26 18:39:45 +03:00
Rémi Verschelde
de9c9007c2
Merge pull request #45252 from naithar/feature/plugins-migration
...
[4.0] [iOS] iOS Plugins Migration
2021-01-26 14:53:06 +01:00
Rémi Verschelde
7086d72e13
Merge pull request #45277 from bruvzg/ios_arm64_sim
...
Add separate `simulator` flag for iOS build, change main library to `xcframework`.
2021-01-26 14:02:16 +01:00
Fabio Alessandrelli
6f64d93664
[HTML5] Builtin HTTP server disable browsers cache
...
We don't want browsers to cache our temporary exports (since they will
always differ).
2021-01-25 20:15:57 +01:00
Fabio Alessandrelli
4e09453407
[HTML5] Better editor HTML, small refactor.
...
Side and GDNative libraries are now added by engine.js , the dynlink pre
js had been deleted.
2021-01-25 20:15:57 +01:00
Fabio Alessandrelli
abb8d8e8ca
[HTML5] Fix "initial_memory" build option parsing
2021-01-25 17:47:52 +01:00
Rémi Verschelde
d39f6386ce
Merge pull request #45314 from RandomShaper/modernize_rwlock
...
Modernize RWLock
2021-01-22 14:51:05 +01:00
Pedro J. Estébanez
8ed259b792
Modernize RWLock
...
- Based on C++14's `shared_time_mutex`
- No more need to allocate-deallocate or check for null
- No pointer anymore, just a member variable
- Platform-specific implementations no longer needed
- Simpler for `NO_THREADS`
2021-01-19 11:53:10 +01:00
Marios Staikopoulos
2a2de2f684
BUGFIX: Fix unintialized cursor_shape on windows display server
2021-01-18 15:52:47 -08:00
Sergey Minakov
6d67827f4e
[iOS] Fix embedding of plugin libraries
2021-01-18 19:23:12 +03:00
Fabio Alessandrelli
bab20c6e09
[HTML5] Custom Gamepad library to allow remapping.
...
No longer use emscripten functions for gamepads, implement them as
library functions in library_godot_display.js instead.
This allows us to do a better job at "guessing" vendorId, productId, OS,
etc. thus allowing us to better find the remapping for the controller.
2021-01-18 12:30:38 +01:00
bruvzg
efd8f27790
[WIP] Add separate simulator
flag for iOS build, change main library to xcframework
format.
2021-01-18 10:36:14 +02:00
Sergey Minakov
13a6a83b44
[iOS] Remove plugins from modules.
2021-01-17 14:33:39 +03:00
Sergey Minakov
01d513f3ca
[iOS] Added support for '.xcframework' in plugins
2021-01-17 14:13:09 +03:00
Sergey Minakov
7990c2c5e8
[Plugins] Rename 'PluginConfig' struct to platform specific name
2021-01-15 17:54:35 +03:00
Rémi Verschelde
af878716f2
CI: Update to clang-format 11 and apply ternary operator changes
2021-01-12 19:32:53 +01:00
Rémi Verschelde
1218441b16
Merge pull request #44514 from madmiraal/split-os-execute
...
Split OS::execute into two methods
2021-01-12 16:17:04 +01:00
Fabio Alessandrelli
c327f42b0a
[HTML5] Reorganize build script.
...
Simplify helper functions, fix env/sys_env confusion and depends for
externs and pre-js.
2021-01-10 12:24:40 +01:00
Fabio Alessandrelli
33e914b1eb
Fix JavaScript platform after MainLoop methods rename.
2021-01-10 12:04:09 +01:00
Marcel Admiraal
2a74b388d0
Split OS::execute into two methods
...
1. execute(): Executes a command and returns the results.
2. create_process(): Creates a new process and returns the new process' id.
2021-01-09 10:03:23 +00:00
Yuri Roubinsky
785f84f1d1
Removes semicolon typo in display_server_windows
2021-01-06 15:08:51 +03:00
Yuri Roubinsky
d4939aa05f
Fix PopupMenu's which are not closed after a recent commit
2021-01-06 14:42:15 +03:00
Fredia Huya-Kouadio
eee213e01a
Improve the logic to compile for Android by automatically detecting and setting up the Android NDK if needed.
2021-01-05 15:07:17 -08:00
Rémi Verschelde
9d6df31b84
Merge pull request #44299 from Chaosus/fix_win32_warning
...
Fixed warning at window closing (WIN32)
2021-01-05 09:00:47 +01:00
Rémi Verschelde
c13bb0b541
Merge pull request #44154 from dsnopek/webxr-master
...
Add WebXR support (for Godot 4.0)
2021-01-05 00:19:50 +01:00
David Snopek
a54a2d65e1
Add support for WebXR
2021-01-04 17:02:37 -06:00
Rémi Verschelde
3433780c49
Merge pull request #44645 from m4gr3d/update_apk_signing_logic
...
Update the logic to sign prebuilt Godot Android apks
2021-01-01 22:58:11 +01:00
Fredia Huya-Kouadio
49969de221
Update the logic to sign prebuilt Godot Android apks.
...
The previously used tool, `jarsigner` has been deprecated in favor of `apksigner` which is bundled with the Android SDK.
The logic is refactored accordingly and a few editor settings have been deprecated in the process as they're no longer necessary.
Note: As a side effect, specifying the Android SDK path is now required. The docs will be updated to reflect that change.
2021-01-01 13:36:27 -08:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
...
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Yuri Roubinsky
41efbf8cae
Fixed warning at project startup (WIN32)
2021-01-01 18:09:34 +03:00
Yuri Roubinsky
8a2bc6bf58
Fix window restoring after fullscreen again
2020-12-31 16:07:05 +03:00
Rémi Verschelde
72c13c2631
Merge pull request #44638 from m4gr3d/export_format_util_method
...
Hardcode the export format for the editor 'run' feature
2020-12-30 09:11:31 +01:00
Fredia Huya-Kouadio
de64b783b4
Add utility method to export the project using a preset format and sign parameter.
2020-12-29 09:04:01 -08:00
Rémi Verschelde
09212fba1e
Fix missed renamings from empty() to is_empty()
...
Those were missed in #44401 or added by later PRs.
2020-12-29 09:55:07 +01:00
Rémi Verschelde
8886a6a45c
Merge pull request #44757 from andrew-softdev/my-bug-fix
...
Incorrect format specifiers used to display some type data in the Visual Studio debugger
2020-12-28 20:44:15 +01:00
andrew-softdev
679aabea26
Incorrect format specifiers used to display some String/StringName data
2020-12-28 18:46:32 +00:00
Rémi Verschelde
e4c0572385
Merge pull request #44593 from madmiraal/rename-mainloop-methods
...
Rename MainLoop methods to match Node methods
2020-12-28 14:44:28 +01:00
Marcel Admiraal
5b937d493f
Rename empty() to is_empty()
2020-12-28 10:39:56 +00:00
Rémi Verschelde
719e4b1156
Merge pull request #44619 from bruvzg/m1_dragdrop_4
...
[4.0] Fix file drag-drop on M1 Macs.
2020-12-23 17:37:42 +01:00
bruvzg
39bcc77d6a
[4.0] Fix file drag-drop on M1 Macs.
2020-12-23 18:00:50 +02:00
Fredia Huya-Kouadio
2d492ff8ba
Fix invalid invocation of get_class_loader
.
...
The call was made on a `Godot` instance instead of an `Activity` instance.
2020-12-23 02:08:27 -08:00
Marcel Admiraal
d9e9eb8d04
Rename MainLoop methods to match Node methods
2020-12-22 12:34:57 +00:00
Marcel Admiraal
2df9a8ccad
Rename Rect2 and Rect2i clip() to intersection()
2020-12-19 12:59:08 +00:00
Rémi Verschelde
214a22b98e
Merge pull request #44457 from akien-mga/scons-thirdparty-lib-depends
...
SCons: Add explicit dependencies on thirdparty code in cloned env
2020-12-18 13:40:33 +01:00
Marcel Admiraal
b56a2f34ce
Add missing override keywords in os_windows.h
2020-12-18 09:38:09 +00:00
Rémi Verschelde
c7b53c03ae
SCons: Add explicit dependencies on thirdparty code in cloned env
...
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.
So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).
This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
2020-12-18 10:29:34 +01:00
Rémi Verschelde
5332d212f9
Merge pull request #44467 from madmiraal/add-override-keywords
...
Add missing override keywords to core/os.h derived classes
2020-12-17 23:02:58 +01:00
Marcel Admiraal
fa435a550a
Add override keywords to core/os.h derived classes.
2020-12-17 18:02:31 +00:00
Marcel Admiraal
60ddca2545
Remove OS::can_draw() remnants
2020-12-17 16:35:48 +00:00
Rémi Verschelde
ae0399382a
Merge pull request #44433 from akien-mga/scons-fix-platform-opts
...
SCons: Add only selected platform's opts to env
2020-12-17 09:56:07 +01:00
Rémi Verschelde
fb2465b3c8
Merge pull request #44410 from KoBeWi/project--tools--thisPR
...
Make tool menu plugins use Callables for callback
2020-12-16 22:04:39 +01:00
kobewi
889f5e44ef
Make tool menu plugins use Callables for callback
2020-12-16 20:23:51 +01:00
Rémi Verschelde
0f84d8dc49
SCons: Add only selected platform's opts to env
...
Otherwise we can get situations where platform-specific opts with the same name
can override each other depending on the order at which platforms are parsed,
as was the case with `use_static_cpp` in Linux/Windows.
Fixes #44304 .
This also has the added benefit that the `scons --help` output will now only
include the options which are relevant for the selected (or detected) platform.
2020-12-16 16:31:19 +01:00
Marcel Admiraal
f9b83e90b2
Fix named anonymous struct warning
2020-12-16 07:42:16 +00:00
Rémi Verschelde
2760f5d0b4
Merge pull request #44315 from madmiraal/fix-handles-baseexception
...
Don't handle BaseException in build scripts
2020-12-12 12:23:07 +01:00
Marcel Admiraal
8ef5e3201c
Don't handle BaseException in build scripts
2020-12-12 10:05:42 +00:00
Rémi Verschelde
8020515717
HTML5: Code style cleanup for export code
2020-12-10 13:57:46 +01:00
Rémi Verschelde
37d0d757d6
Merge pull request #40708 from bruvzg/improve_os_locale
...
Improve `OS::get_locale()` and documentation.
2020-12-10 11:49:00 +01:00
Fabio Alessandrelli
eb2152538c
[HTML5] Fix errors when Mic is not allowed.
2020-12-09 17:54:50 +01:00
Fabio Alessandrelli
a28d5e2be7
[HTML5] Improve platform buildsystem.
...
Check emcc version requirements when building GDNative.
Add more build options (sanitizers, initial memory).
2020-12-09 17:54:50 +01:00
Fabio Alessandrelli
6bc07cf777
[HTML5] Add logo and favicon to editor html.
2020-12-09 17:54:50 +01:00
Rémi Verschelde
114f97ff11
Merge pull request #44128 from KoBeWi/ 🧹
...
Cleanup unused engine code
2020-12-09 13:01:50 +01:00
Tomasz Chabora
2c048ea164
Cleanup unused engine code
2020-12-09 12:12:36 +01:00
Fabio Alessandrelli
09a9712a6a
Remove unused FileAccessJAndroid.
2020-12-09 10:58:36 +01:00
Rémi Verschelde
e5e1277ecd
Merge pull request #44161 from Faless/fix/fa_buffered_remove
...
Remove unused FileAccessBuffered
2020-12-09 09:14:14 +01:00
thebestnom
d543917c03
Android: fix mouse capture relative wrong
2020-12-08 23:51:45 +02:00
thebestnom
e7f259c366
Android: Allow Mouse Capture
2020-12-08 22:14:08 +02:00
Rémi Verschelde
90bdba576a
Merge pull request #43742 from qarmin/editor_modules_default_values
...
Initialize class/struct variables with default values in platform/ and editor/
2020-12-08 15:53:42 +01:00
Rémi Verschelde
efc2104096
Merge pull request #44021 from dakennedyd/personal
...
Fix implementation of move_to_trash() on Linux
2020-12-07 21:06:10 +01:00
David Kennedy
8b68c6808d
Fixes move_to_trash() on Linux
...
Fixes #42840 OS move_to_trash() on Linux is not compliant with the Freedesktop specification
2020-12-07 16:40:56 -03:00
Rémi Verschelde
e20011b0da
Merge pull request #44076 from Faless/js/4.x_gdnative
...
[HTML5] Optional GDNative Support
2020-12-07 15:34:33 +01:00
Fabio Alessandrelli
781efc26e0
Remove now unused FileAccessBuffered.
2020-12-06 19:37:11 +01:00
Fabio Alessandrelli
1396c74734
[HTML5] Use regular unix FileAccess implementation.
2020-12-06 19:25:31 +01:00
Fabio Alessandrelli
dd9503dc19
[HTML5] Make GDNative support feature-based.
...
This is suboptimal as it requires adding an extra compile flag, but
rewriting how feature tags work is beyond the scope of this work.
2020-12-05 01:12:52 +01:00
Fabio Alessandrelli
1e7bd3d08b
[HTML5] Allow selecting the export type.
...
Available types:
- Regular
- GDNative (support dynamic linking and thus GDNative WASM files)
- Threads (uses WebAssembly Threads)
2020-12-05 00:55:11 +01:00
Fabio Alessandrelli
611c4998e8
[HTML5] EditorRunNative works with GDNative.
...
This "breaks" our loading bar logic (libraries are not counted).
Fixing it is non trivial and probably deserves investigating a different
strategy.
2020-12-05 00:55:07 +01:00
Fabio Alessandrelli
ca34b5e57a
[HTML5] GDNative support via SIDE_MODULE.
...
Working with emscripten >= 2.0.10
2020-12-05 00:52:43 +01:00
Fabio Alessandrelli
1167ab96e9
[HTML5] Add function signatures to JS libraries.
2020-12-04 23:21:33 +01:00
reduz
2787ad65be
RenderingServer reorganization
2020-12-04 18:39:46 -03:00
Rémi Verschelde
02d228554b
OSX: Fix tmp .app folder name after #44060
2020-12-04 14:16:49 +01:00
Bastiaan Olij
cf5737acbe
Added driving joystick type to windows joystick handling
2020-12-04 23:31:19 +11:00
Rémi Verschelde
328af1db75
Merge pull request #44074 from reduz/reorganize-3d
...
Reorganize rendering server.
2020-12-04 08:36:31 +01:00
Rémi Verschelde
586a20875d
Merge pull request #44018 from lyubomirv/mingw_use_static_cpp_option
...
Add 'use_static_cpp' option for MinGW builds
2020-12-03 23:58:57 +01:00
reduz
e93b2242c2
Reorganize rendering server.
...
-Made RenderingServerScene abstract, allowing reimplementation
-RenderingServerRaster -> RenderingServerDefault, but this class is going away soon.
2020-12-03 19:01:01 -03:00
Lyubomir Vasilev
e52c9c26fc
Add 'use_static_cpp' option for MinGW and MSVC builds
2020-12-03 23:46:16 +02:00
alan-w-255
7fa803fa2c
fix android wrong multi-touch pointerid
...
Fixes #43519 .
2020-12-03 13:34:04 +01:00
Rémi Verschelde
707a62783b
OSX: Remove tmp .app folder instead of moving to trash
...
Fixes #42232 .
And fixes memory leak with use of DirAccess, and harmonize the use of
the sanitized pkg name.
2020-12-03 10:07:40 +01:00
Rafał Mikrut
e1811b689b
Initialize class/struct variables with default values in platform/ and editor/
2020-12-02 16:09:11 +01:00
Rémi Verschelde
f1a9de9c59
X11: Include limits.h for LONG_MAX
...
Fixes #44030 .
2020-12-02 15:43:29 +01:00
Fabio Alessandrelli
178546ac3e
[HTML5] Fix broken layout on load in HiDPI screens
...
This was caused by the devicePixelRatio being applied twice, once by the
HTML code, once by the OS code.
More specifically, OS.get_window_size() would return the canvas element
size, while OS.set_window_size() would set the element size to the
specified value times the devicePixelRatio.
Calling OS.set_window_size(OS.get_window_size()) would reapply the
devicePixelRatio every time.
This commit changes the behaviour so that OS.set_window_size() do not
apply the devicePixelRatio to the canvas element size, by it divides the
CSS size instead.
2020-11-30 12:07:20 +01:00
Fabio Alessandrelli
742729ccfe
[HTML5] Remove file flags from writeFile in setup.
...
Flags where deprecated and partly in removed in emscripten 2.0.9.
2020-11-30 12:07:20 +01:00
Rémi Verschelde
a6751e6c58
Merge pull request #41100 from bruvzg/ctl_text_server_interface
...
[Complex Text Layouts] Implement TextServer interface.
2020-11-28 09:03:15 +01:00
PouleyKetchoupp
6b97901d4d
Implement INCR mechanism for Linux clipboard
...
Allows pasting from x11 clipboard to receive data incrementally, which
is required when handling data size > 256KB.
2020-11-27 10:00:09 -07:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
...
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
bruvzg
b9f441e81e
[Complex Text Layouts] Add third-party TextServer dependencies (ICU, HarfBuzz, Graphite).
2020-11-26 13:55:27 +02:00
Rémi Verschelde
a4e04cdd47
Merge pull request #42652 from nekomatata/x11-clipboard-save-targets
...
Implement SAVE_TARGETS mechanism for Linux clipboard
2020-11-26 09:34:18 +01:00
Rémi Verschelde
09f3053450
SCons: Do not define TYPED_METHOD_BIND on Linux/clang
...
It's now only needed for MSVC.
2020-11-25 19:27:30 +01:00
Rémi Verschelde
4159baff6c
Merge pull request #42648 from naithar/fix/native_video_view
...
[iOS] Native video fixes
2020-11-24 10:41:01 +01:00
Rémi Verschelde
617031434f
Merge pull request #43803 from m4gr3d/update_signing_and_zipalign_logic_master
...
Update gradle build files to automatically perform signing and zipalign tasks for custom builds
2020-11-24 08:39:06 +01:00
Fabio Alessandrelli
4617a7fa9c
[HTML5] Run eslint --fix.
...
Should I write a poem about this whole new world? ;)
2020-11-23 12:15:18 +01:00
Fabio Alessandrelli
c38984d286
[HTML5] Enforce JavaScript style with eslint.
...
Applies to javascript files inside the platform library folder, the
exposed Engine code, and any javascript files in modules.
Files ending with ".externs.js" will be ignored, you can create a
".eslintignore" file to specify extra files to be ignored.
2020-11-23 12:15:18 +01:00
Fredia Huya-Kouadio
918b218b55
Update gradle build files to automatically perform signing and zipalign tasks for custom builds.
2020-11-22 18:11:54 -08:00
Fabio Alessandrelli
a82f70ea9f
[HTML5] Libraries refactor for linting.
...
Initial work to make liniting easier.
This includes:
- Rename http_request.js to library_godot_http_request.js.
- Rename externs.js to engine.externs.js.
- New library_godot_runtime.js (GodotRuntime) wraps around emscripten
functions.
- Refactor of XMLHttpRequest handler in engine/preloader.js.
- Few fixes to bugs spotted by early stage linting.
2020-11-21 14:22:40 +01:00
Rémi Verschelde
504efc5f9b
Export: Reorder options for consistency across platforms
2020-11-20 11:17:50 +01:00
Rémi Verschelde
f69339c2c2
Merge pull request #43692 from akien-mga/scons-leave-link-alone
...
SCons: Remove unnecessary $LINK overrides
2020-11-19 20:43:25 +01:00
Rémi Verschelde
2e4bff1cfe
SCons: Remove unnecessary $LINK overrides
...
As of SCons 4.0.1, the default value for $LINK is $SMARTLINK, which itself
is a function that will use $CXX as linker for C++:
https://github.com/SCons/scons/blob/4.0.1/SCons/Tool/link.py#L327-L328
https://github.com/SCons/scons/blob/4.0.1/SCons/Tool/link.py#L54-L76
So we don't need to manually specify the same value as $CXX for $LINK.
2020-11-19 16:48:03 +01:00
Rémi Verschelde
dbbbb53927
OSX: Fix linking with osxcross for arm64
...
For some reason the `-target` option on the `LINKFLAGS` was causing a weird
issue where osxcross' clang wrapper would attempt using the system `/bin/ld`
instead of the osxcross version (which is Apple's `ld64`).
The error message would be:
```
/bin/ld: unrecognized option '-dynamic'
```
Also removed from `CCFLAGS` for consistency, it seems to work fine with only
`-mmacosx-version-min`.
2020-11-19 16:32:32 +01:00
Fredia Huya-Kouadio
c4f2d87747
Fix zipalign command name on Windows machines.
2020-11-18 23:30:45 -08:00
Marcel Admiraal
f42284ed07
Add missing javascript semi-colons.
2020-11-17 18:18:46 +00:00
Aaron Franke
02161aad5a
Remove empty lines around braces with the formatting script
2020-11-16 23:38:11 -05:00
Rémi Verschelde
900e5ffdd8
Merge pull request #43595 from mbrlabs/windows-execute-fix
...
Fixed exit code retrieval of spawned processes on Windows
2020-11-16 22:16:25 +01:00
Rémi Verschelde
484c3d5e27
Merge pull request #43248 from HEAVYPOLY/master
...
Change android orientations from sensor to user
2020-11-16 22:12:53 +01:00
Marcus Brummer
f0f4220b05
Fixed exit code retrieval of spawned processes on Windows
...
Use GetExitCodeProcess() on Windows to retrieve the exit code of a process in
OS:excute()
2020-11-16 18:30:33 +01:00
Rémi Verschelde
e5dfb9b25e
Merge pull request #43556 from naithar/feature/pluggable_app_delegates
...
[4.0] [iOS] Pluggable application delegate
2020-11-16 17:02:16 +01:00
Rémi Verschelde
7610945b4a
Merge pull request #43461 from ccl2of4/fix-linux-joypad-dpad-zeroing
...
Fix for linux joypad D-pad zeroing
2020-11-16 14:46:43 +01:00
Rémi Verschelde
8d92135091
Merge pull request #43545 from bruvzg/xchangeprop_atoms_check
...
Add XChangeProperty atoms validity checks.
2020-11-16 08:01:54 +01:00
bruvzg
319bc5ffda
Add XChangeProperty Atoms validity checks.
2020-11-15 22:20:14 +02:00
Sergey Minakov
2d8c311c01
iOS: fix keyboard display
2020-11-15 16:22:57 +03:00
Sergey Minakov
3f7ca1db70
iOS: Implement pluggable application delegate.
2020-11-15 14:26:44 +03:00
Fredia Huya-Kouadio
46cc3233d8
Update the logic to query for the 'scons' command executable path.
2020-11-14 14:36:53 -08:00
Rémi Verschelde
9e7348f788
Merge pull request #43526 from m4gr3d/address_new_custom_build_logic_issues
...
Address new custom build logic issues
2020-11-14 22:58:16 +01:00
Fredia Huya-Kouadio
5f6a44f0bb
Add missing zip alignment step for generated apks.
2020-11-14 13:10:38 -08:00
Fredia Huya-Kouadio
3de720c11d
Fix issue causing Export all
to fail.
2020-11-14 13:10:38 -08:00
Fredia Huya-Kouadio
3c1a1a760e
Clear unneeded assets when generating an apk expansion.
...
Clean up export wording to account for the different export formats.
2020-11-14 13:07:32 -08:00
bruvzg
f09a37a8d5
Fixes crash if Vulkan presentation surface is not available.
2020-11-14 13:41:13 +02:00