summaryrefslogtreecommitdiff
path: root/platform
AgeCommit message (Collapse)Author
2021-02-03Merge pull request #45686 from naithar/feature/extend-plugin-params-4.0Rémi Verschelde
[4.0] [iOS] Additional 'linker_flags' plugin parameter
2021-02-03iOS: Use storyboard as loading screenSergey Minakov
If 'Launch Screen' storyboard is present it will be used as loading screen.
2021-02-03[iOS] Additional 'linker_flags' plugin parameterSergey Minakov
2021-02-03[iOS] Remove remote notifications codeSergey Minakov
Using any remote notification method (even indirectly) causes App Store to trigger APNS warning email.
2021-02-03SCons: Add `production=yes` option to use production defaultsRémi Verschelde
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-02[HTML5] Fix mouse_mode and fullscreen detection.Fabio Alessandrelli
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-02Merge pull request #45665 from naithar/fix/ios-plugin-initialization-4.0Rémi Verschelde
[4.0] [iOS] Earlier plugin initialization
2021-02-01Merge pull request #45579 from zaevi/add_scons_extRémi Verschelde
add search extensions for Scons' path
2021-02-01Merge pull request #45630 from akien-mga/linux-enable-udevRémi Verschelde
Linux: Enable udev support by default
2021-02-01Linux: Build with use_static_cpp=yes by default for x86_64Rémi Verschelde
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-01Linux: Enable udev support by defaultRémi Verschelde
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[iOS] Initialize plugins earlierSergey Minakov
Initialize iOS plugins before 'Main::setup' call to have access to them in script's '_init' function.
2021-01-31Merge pull request #45315 from RandomShaper/modernize_threadRémi Verschelde
Modernize Thread
2021-01-30add search extensions for scons' pathzaevi
2021-01-29Modernize ThreadPedro J. Estébanez
- 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-28Don't handle BaseException in JavaScript build scriptMarcel Admiraal
2021-01-28Unify URI encoding/decoding and add to C#Aaron Franke
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-27Merge pull request #45481 from ronchaine/joypad-detectionRémi Verschelde
POSIX systems: go through all event devices, not just event[0-32]
2021-01-27Go through all event devices, not just event[0-32]Jari Ronkainen
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-26[iOS] Rework push notification methods usageSergey Minakov
Moved AppDelegate push notifications methods implementation to 'GODOT_ENABLE_PUSH_NOTIFICATIONS' which can be used in plugins to implement APNS plugins.
2021-01-26Merge pull request #45252 from naithar/feature/plugins-migrationRémi Verschelde
[4.0] [iOS] iOS Plugins Migration
2021-01-26Merge pull request #45277 from bruvzg/ios_arm64_simRémi Verschelde
Add separate `simulator` flag for iOS build, change main library to `xcframework`.
2021-01-25[HTML5] Builtin HTTP server disable browsers cacheFabio Alessandrelli
We don't want browsers to cache our temporary exports (since they will always differ).
2021-01-25[HTML5] Better editor HTML, small refactor.Fabio Alessandrelli
Side and GDNative libraries are now added by engine.js , the dynlink pre js had been deleted.
2021-01-25[HTML5] Fix "initial_memory" build option parsingFabio Alessandrelli
2021-01-22Merge pull request #45314 from RandomShaper/modernize_rwlockRémi Verschelde
Modernize RWLock
2021-01-19Modernize RWLockPedro J. Estébanez
- 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-18BUGFIX: Fix unintialized cursor_shape on windows display serverMarios Staikopoulos
2021-01-18[iOS] Fix embedding of plugin librariesSergey Minakov
2021-01-18[HTML5] Custom Gamepad library to allow remapping.Fabio Alessandrelli
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[WIP] Add separate `simulator` flag for iOS build, change main library to ↵bruvzg
`xcframework` format.
2021-01-17[iOS] Remove plugins from modules.Sergey Minakov
2021-01-17[iOS] Added support for '.xcframework' in pluginsSergey Minakov
2021-01-15[Plugins] Rename 'PluginConfig' struct to platform specific nameSergey Minakov
2021-01-12CI: Update to clang-format 11 and apply ternary operator changesRémi Verschelde
2021-01-12Merge pull request #44514 from madmiraal/split-os-executeRémi Verschelde
Split OS::execute into two methods
2021-01-10[HTML5] Reorganize build script.Fabio Alessandrelli
Simplify helper functions, fix env/sys_env confusion and depends for externs and pre-js.
2021-01-10Fix JavaScript platform after MainLoop methods rename.Fabio Alessandrelli
2021-01-09Split OS::execute into two methodsMarcel Admiraal
1. execute(): Executes a command and returns the results. 2. create_process(): Creates a new process and returns the new process' id.
2021-01-06Removes semicolon typo in display_server_windowsYuri Roubinsky
2021-01-06Fix PopupMenu's which are not closed after a recent commitYuri Roubinsky
2021-01-05Merge pull request #44299 from Chaosus/fix_win32_warningRémi Verschelde
Fixed warning at window closing (WIN32)
2021-01-05Merge pull request #44154 from dsnopek/webxr-masterRémi Verschelde
Add WebXR support (for Godot 4.0)
2021-01-04Add support for WebXRDavid Snopek
2021-01-01Merge pull request #44645 from m4gr3d/update_apk_signing_logicRémi Verschelde
Update the logic to sign prebuilt Godot Android apks
2021-01-01Update the logic to sign prebuilt Godot Android apks.Fredia Huya-Kouadio
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-01Update copyright statements to 2021Rémi Verschelde
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-01Fixed warning at project startup (WIN32)Yuri Roubinsky
2020-12-31Fix window restoring after fullscreen againYuri Roubinsky
2020-12-30Merge pull request #44638 from m4gr3d/export_format_util_methodRémi Verschelde
Hardcode the export format for the editor 'run' feature