Commit Graph

1133 Commits

Author SHA1 Message Date
Daniel Ting
91f7af48eb
Fix opening URLS with special characters in macOS
The Online Tutorials section of InputMap in the editor's built-in
documentation viewer contains this link:

docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html#inputmap

The macOS implementation for opening a link percent-encodes it before
sending it to the browser, resulting in a 404. This is to fix #13422
where filenames with special characters could not be opened in Finder.
However, this breaks URLS so I added a check to see if the resource
scheme is file:// and if so, only then is it escaped. This allows other
schemes like `http`, `ftp`, and `mailto` to be used.
2020-08-14 09:14:58 +03:00
bruvzg
31d84838ac
[macOS] Make move_window_to_foreground to take focus in addition to moving window to front. 2020-08-14 09:14:58 +03:00
bruvzg
0b118594f9
[macOS] Send resize event without actually resizing window on backing change.
Co-authored-by: Haoyu Qiu <timothyqiu32@gmail.com>
2020-08-14 09:14:57 +03:00
Rémi Verschelde
b97401f304 Update copyright statements to 2020
And apply clang-format 10 to the codebase.
2020-08-13 22:58:13 +02:00
Max
18484dd45e Fix crash on exit or resume on iOS 13
Fixes #7966.

(cherry picked from commit 29bde8cd74)
2020-05-28 14:09:23 +02:00
Rémi Verschelde
1d2aa22438 Windows: Appease capricious MSVC versions with moody headers
Fixes #37799.
Fixes #37986.

(cherry picked from commit 4d3a18d9ff)
2020-05-28 14:09:23 +02:00
bruvzg
7894c6176c Replace IOHIDDeviceRegisterRemovalCallback with IOHIDManagerRegisterDeviceRemovalCallback to fix gamepad disconnection callback on macOS Catalina.
(cherry picked from commit 6b23e36dbc)
2020-05-28 14:09:22 +02:00
Ibrahn Sahir
9344851b05 Fixed hang when segfaulting after OS object destroyed (OSX and X11)
The two POSIX style crash handlers (OSX and X11) now remove their signal
handlers when they are destroyed.
Additonally if they are called while no OS singleton is set, they will
simply abort(). This should not happen now that they remove themselves,
but if a future change seperates OS object and crash handler lifetimes,
this may be easier to report/debug than hanging on SIGSEGV.
2020-02-22 08:44:16 -05:00
Xavier Sellier
400e273eee Fallback to the dummy audio driver if no other driver works
Fix this issue https://github.com/godotengine/godot/issues/1684
2019-12-19 10:16:01 -05:00
Rémi Verschelde
32f64e5f99 HTML5: Explicitly link idbfs.js for IDBFS support
Upstream Emscripten changed this in 1.39.1+, so IDBFS is no longer
included by default and has to be linked manually.

The explicit linking doesn't seem to be problematic on earlier
versions (tested `1.38.47-upstream`).

Fixes #33724.

(cherry picked from commit e5dfcb5edd)
2019-11-29 16:04:14 +01:00
Rémi Verschelde
995eddf714 HTML5: Fix support for Emscripten 1.39.1+
A change in upstream Emscripten 1.39.1+ made our buildsystem error
out where it was previously only issuing a warning:
```
[  5%] Linking Static Library ==> main/libmain.javascript.opt.bc
shared:WARNING: Assuming object file output in the absence of `-c`, based on output filename. Please add with `-c` or `-r` to avoid this warning
Ranlib Library         ==> main/libmain.javascript.opt.bc
/opt/emsdk/upstream/bin/llvm-ranlib: error: unable to load 'main/libmain.javascript.opt.bc': file too small to be an archive
```

As advised on emscripten-core/emscripten#9806, we should be using
`emar` here to create the static library and not `emcc`.
This was apparently done to workaround Emscripten issues in the past,
but evidently this is no longer necessary.

The rest of the `env` redefinitions should probably be re-assessed
against the current state of Emscripten.

Fixes #33374.

(cherry picked from commit e9e2a4b044)
2019-11-29 16:01:19 +01:00
bruvzg
36eb43fff7 Fix non-HiDPI mode on HiDPI displays on macOS Catalina.
(cherry picked from commit 509afcea92)
2019-10-25 16:31:02 +02:00
Rémi Verschelde
01e65c4555 Android: Fix support for android_stl=no with NDK r20
Fixes #30688.
2019-07-30 15:11:36 +02:00
J Andrew Long
860365bef1 fix detecting ndk platform
python maps are not subscriptable, so we need to use a list
2019-07-22 13:38:53 -04:00
Wojciech Milkowski
8a95782e5a No need to link with libandroid_support in NDK 17
According to https://github.com/bytedeco/javacpp/pull/244 in NDK 17
libandroid_support library is not needed any more, and on armv8 is
already gone which breaks compilation.

(cherry picked from commit 3a3ea6d514)
2019-07-21 16:18:53 +02:00
J Andrew Long
5ac248264a fix string split() call 2019-07-18 11:37:07 -04:00
Rémi Verschelde
7249992b62 Android: Target SDK 28, required by Google from Aug 2019 2019-07-08 14:01:42 +02:00
Rémi Verschelde
717d79e540 SCons: Default to builtin libpng/freetype on Linux (+ openssl)
The rationale for keeping those shared by default is that they're typical
dependencies found on any Linux system, and it saves compilation time and
binary size to link their dynamically.

But since official builds default to all-builtin, and Debian/Ubuntu still
don't have libpng16 (which we now require) readily available on all their
supported releases, it's simpler to bundle all the things.

This does not change the fact that those dependencies *can* be unbundled
on Linux, it's only the default option changing.

(cherry picked from commit 1769cbc0e2)

For 2.1, also building by default against bundled openssl.
2019-07-02 15:03:16 +02:00
Juan Linietsky
9e8dc70240 HiDPI support on Windows.. yes this is all it took. 2019-06-06 11:58:56 -04:00
Rémi Verschelde
9ef833ec6d HTML5: Do not error on undefined symbols
Emscripten used not to error out on those warnings, but this behaviour changed
recently, so we revert it to be able to compile as we used to for previous 2.1.x
releases. It would be good to fix those undefined symbols though.
2019-06-04 13:35:24 +02:00
Rémi Verschelde
7562ce053a Update copyright statements to 2019 2019-06-04 11:41:49 +02:00
Rémi Verschelde
24d516c50f iOS: Link against SDK 12.1 as required by Apple Store
Fixes #26593.
2019-06-04 09:42:08 +02:00
Rémi Verschelde
04ea848116 SCons: Fix Python 3 support in GCC version check 2019-06-03 16:26:13 +02:00
Pedro J. Estébanez
5f795e6261 Upgrade & fix Android build scripts 2019-03-19 21:53:54 +01:00
Rémi Verschelde
e898b0a3a8 Android: Enable arm64-v8a export by default
From August 1, 2019, Google Play requires that all new apps and app updates
include 64-bit versions, so we enable ARM64 by default.

IINM support for x86 and x86_64 is still be optional, so not enabling them
out of the box.

Part of #25030.

(cherry picked from commit 9e820cdf20)
2019-01-16 14:02:54 +01:00
Rémi Verschelde
b768381998 Android: Add support for x86_64 architecture
Like arm64v8, this is only supported by API 21 and later,
so we enforce 21 as min API for x86_64.

Part of #25030.

(cherry picked from commit 7f4ee36469)
2019-01-16 13:28:04 +01:00
allkhor
7bdd22312f Fixed built templates for android 2018-11-15 21:09:34 +06:00
allkhor
52c63f7cfd Don't copying libc++_shared.so when module android_stl is disabled 2018-10-26 23:53:44 +06:00
Leon Krause
723c14cdfc Enable Theora module for HTML5 platform
(cherry picked from commit b4b816c122)
2018-09-18 11:48:52 +02:00
Guilherme Felipe
72d4fd8f0d Fix Input::set_custom_mouse_cursor showing cursor when it's invisible 2018-09-17 12:24:44 -03:00
Ridwan Abdul Hafidh
6e62a1e4de add support libc++_shared on android 2018-09-17 15:13:40 +02:00
Rémi Verschelde
bb13fa896e Style: Format code with clang-format 6.0.1 2018-07-18 17:56:12 +02:00
Hein-Pieter van Braam
a2cdc82b78 Write new permissions to the AndroidManifest.xml
Instead of editing the placeholder permissions actually write new ones.
This should solve the privacy statement problems for the Play store.
This means we also no longer need to placeholder permissions in the
template.
2018-07-10 14:24:12 +02:00
Rémi Verschelde
e3339862f2 iphone: Link against SDK version 11.4
Fixes #18995.
2018-06-28 11:31:02 +02:00
Leon Krause
aff7a92efa Explicitly disable WebAssembly in HTML5 builds
Emscripten enables WebAssembly by default since version 1.38.1
2018-06-27 20:06:11 +02:00
Guilherme Felipe
dda8937ef3 Fix memory leak in set_custom_mouse_cursor 2018-05-26 15:55:57 -03:00
Rémi Verschelde
2f56eb9bb8
Merge pull request #19155 from dlnsk/version_code_range
Increase versionCode range
2018-05-25 17:52:11 +02:00
Rémi Verschelde
363497a30d iOS: Change min version to 9.0 as required by Apple
Should fix #18995.
2018-05-25 12:20:12 +02:00
Rémi Verschelde
2ea63bc581
Merge pull request #19083 from xsellier/bugfix/print-error-less-hardcore
Allow users to catch errors for android platforms and prevent exception throwing
2018-05-25 10:19:40 +02:00
Dmitry Pupinin
0f0b968d5d Increase versionCode range 2018-05-25 10:01:03 +07:00
Xavier Sellier
6fc89d0ce3 Allow users to catch errors for android platforms and prevent exception throwing 2018-05-21 11:39:40 -04:00
Xavier Sellier
ac49392627 Querying sku might lead to crash if 'mService' is null 2018-05-17 14:06:50 -04:00
Rémi Verschelde
4fade6fa00 Android: Bump ndk platform to android-18 as in manifest 2018-05-16 20:19:03 +02:00
Rémi Verschelde
1bf7242bb2
Merge pull request #18718 from guilhermefelipecgs/fix_crash_for_invalid_reference
[2.1] Prevent crash for invalid reference
2018-05-11 14:23:49 +02:00
volzhs
ede27690c3 Remove android compatibility under API 16 2018-05-09 05:43:53 +09:00
volzhs
b21872cba7 Update min API version to 18 to match 4ad02579 2018-05-09 05:06:40 +09:00
Guilherme Felipe
2f823eb6a7 Prevent crash for invalid reference 2018-05-08 15:13:32 +00:00
Rémi Verschelde
326fd3503a
Merge pull request #18626 from RameshRavone/2.1
Fix: JAR files signed with the MD5 algorithm as unsigned (godot 2)
2018-05-08 15:26:02 +02:00
RameshRavone
4ad02579e6
Android: Raise min API version to 18 2018-05-08 16:18:52 +05:30
Rémi Verschelde
2f0d502919
Merge pull request #18696 from xsellier/bugfix/purchase-check-is-connected
Add a check to the PurchaseTask.purchase method to prevent NullPointe…
2018-05-08 11:17:12 +02:00