Robert Bragg
d2d18154d9
GameActivity PATCH: Support InputAvailable events
...
This makes a small change to the C glue code for GameActivity to send
looper wake ups when new input is received (only sending a single wake
up, until the application next handles input).
This makes it possible to recognise that new input is available and send
an `InputAvailable` event to the application - consistent with how
NativeActivity can deliver `InputAvailable` events.
This addresses a significant feature disparity between GameActivity and
NativeActivity that meant GameActivity was not practically usable for
GUI applications that wouldn't want to render continuously like a game.
2023-07-30 20:38:19 +01:00
Robert Bragg
3e3fb84c03
GameActivity PATCH: remove unused variable
2023-07-30 20:38:19 +01:00
Robert Bragg
202ab4c1e9
GameActivity PATCH: Rename android_main _rust_glue_entry
...
The real `android_main` is going to be written in Rust and
android-activity needs to handle its own initialization before calling
the application's `android_main` and so the C/C++ code
calls an intermediate `_rust_glue_entry` function.
2023-07-30 20:38:19 +01:00
Robert Bragg
d6345abb2a
GameActivity PATCH: rename C symbols that need export
...
Give C symbols that need to be exported a `_C` suffix so that they can
be linked into a Rust symbol with the correct name (Since we can't
directly export from C/C++ with Rust+Cargo)
See: https://github.com/rust-lang/rfcs/issues/2771
2023-07-30 20:38:18 +01:00
Alexis
c471fdf903
Import unmodified GameActivity 2.0.2 Source
...
See: https://developer.android.com/jetpack/androidx/releases/games#games-activity_version_20_2
2023-07-30 20:38:14 +01:00
Robert Bragg
1a8a92b3fb
Merge pull request #99 from rust-mobile/release-0.4.3
...
Release 0.4.3
v0.4.3
2023-07-30 20:19:32 +01:00
Robert Bragg
bb97af154f
Release 0.4.3
2023-07-30 20:07:43 +01:00
Robert Bragg
8a21219695
Merge pull request #98 from rust-mobile/rib/pr/fix-game-activity-deadlock
...
GameActivity PATH: fix deadlocks in java callbacks after app destroyed
2023-07-30 19:51:23 +01:00
Robert Bragg
c10a2fb67a
GameActivity PATH: fix deadlocks in java callbacks after app destroyed
...
This ensures that any java Activity callbacks take into account the
possibility that the `android_app` may have already been marked
destroyed if `android_main` has returned - and so they mustn't block
and wait for a thread that is no longer running.
2023-07-30 19:38:50 +01:00
Robert Bragg
ab2606a73d
build.rs: emit rerun-if-changed lines for compiled C/C++ code
2023-07-30 19:38:50 +01:00
Robert Bragg
a84a7b54cd
Merge pull request #94 from sagebind/fix-deadlock-on-ondestroy
...
Fix deadlock on activity onDestroy
2023-07-30 16:01:31 +01:00
Stephen M. Coakley
a9e91f4308
Fix deadlock on activity onDestroy
...
Fix a deadlock that occurs when an activity is destroyed without process
termination, such as when an activity is destroyed and recreated due to
a configuration change.
The deadlock occurs because `notify_destroyed` blocks until `destroyed`
is set to `true`. This only occurs when `WaitableNativeActivityState` is
dropped, but the `WaitableNativeActivityState` instance is the very
thing being used to await for destruction, resulting in a deadlock.
Instead of waiting for the `WaitableNativeActivityState` to be dropped
we now wait until the native `android_main` thread has stopped.
So we can tell the difference between the thread not running because it
hasn't started or because it has finished (in case `android_main`
returns immediately) this replaces the `running` boolean with a
tri-state enum.
Co-authored-by: Robert Bragg <robert@sixbynine.org >
2023-07-21 20:02:13 +01:00
Robert Bragg
0f00a58a41
Merge pull request #90 from rust-mobile/release-0.4.2
...
Release 0.4.2
v0.4.2
2023-06-27 17:39:52 +01:00
Robert Bragg
9a713c823d
Release 0.4.2
2023-06-27 17:19:52 +01:00
Robert Bragg
230035526b
Update na-mainloop
2023-06-26 00:08:48 +01:00
Robert Bragg
cd81420638
Update agdk-mainloop
2023-06-26 00:08:42 +01:00
Robert Bragg
1ad3abd934
Merge pull request #87 from rust-mobile/rust-version
...
cargo: Fix `rust_version` -> `rust-version` property typo
2023-06-25 21:38:48 +01:00
Marijn Suijten
ca0d2eb3aa
cargo: Fix rust_version -> rust-version property typo
...
Cargo complains:
warning: android-activity/Cargo.toml: unused manifest key: package.rust_version
Solve this by replacing the underscore with a hyphen.
2023-06-24 00:43:14 +02:00
Robert Bragg
79e03e08fb
Merge pull request #81 from rib/finish-activity
...
Call Activity.finish() when android_main returns
2023-06-19 21:05:41 +01:00
Robert Bragg
120d2f66c7
Merge pull request #86 from rust-mobile/readme-badges
...
README: Add badges to CI, crates.io, docs.rs and show the MSRV
2023-06-16 19:34:51 +01:00
Marijn Suijten
4a4efd871a
README: Add badges to CI, crates.io, docs.rs and show the MSRV
...
I was trying to quickly get to the documentation of this crate and had
the GitHub page open... but there was no link on the front-page: let's
fix that.
2023-06-16 17:37:41 +02:00
Robert Bragg
3843a7cfaa
Call Activity.finish() when android_main returns
...
Calling Activity.finish() is what ensures the Activity will get
gracefully destroyed, including calling the Activity's onDestroy
method.
Fixes : #67
2023-05-24 23:10:29 +01:00
Robert Bragg
924e5405c2
Merge pull request #84 from yunsash/pointer_index_fix
...
game_activity: Fix `pointer_index()` always returning `0`
2023-05-24 22:39:49 +01:00
kukie
049e660219
fix: pointer_index always returns 0
2023-05-23 15:43:03 +03:00
Robert Bragg
6559dc8133
Merge pull request #68 from notgull/abort-guards
...
Add panic guards to extern "C" functions
2023-04-27 20:55:55 +01:00
jtnunley
d6ccefaf77
Add catch unwind wrappers to extern "C" functions
...
Co-authored-by: Robert Bragg <robert@sixbynine.org >
2023-04-27 20:42:45 +01:00
Robert Bragg
9229bb20c1
Merge pull request #77 from rib/rust-version-0-64-typo
...
Fix rust_version typo s/0.64/1.64/
2023-04-24 16:12:08 +01:00
Robert Bragg
4976cbad44
Fix rust_version typo s/0.64/1.64/
...
Also removes a stale comment about MSVR policy in ci.yml
2023-04-24 11:42:17 +01:00
jtnunley
e0c96ad6b4
Dedup android_log
2023-04-24 11:36:27 +01:00
Robert Bragg
c70e5d852f
Merge pull request #73 from rust-mobile/dependabot/github_actions/actions/checkout-3
...
build(deps): bump actions/checkout from 2 to 3
2023-04-23 20:00:03 +01:00
Robert Bragg
f28d6adc55
Merge pull request #74 from rust-mobile/dependabot/cargo/num_enum-0.6
...
build(deps): update num_enum requirement from 0.5 to 0.6
2023-04-23 19:59:50 +01:00
dependabot[bot]
0fa6888484
build(deps): update num_enum requirement from 0.5 to 0.6
...
Updates the requirements on [num_enum](https://github.com/illicitonion/num_enum ) to permit the latest version.
- [Release notes](https://github.com/illicitonion/num_enum/releases )
- [Commits](https://github.com/illicitonion/num_enum/compare/0.5.0...0.6.1 )
---
updated-dependencies:
- dependency-name: num_enum
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-04-23 15:14:30 +00:00
dependabot[bot]
d4a3d5845d
build(deps): bump actions/checkout from 2 to 3
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-04-23 15:11:09 +00:00
Robert Bragg
c91745a39d
Merge pull request #76 from rib/cargo-ndk-2-for-ci
...
Add MSRV policy to README and bump `rust_version` to 0.64, due to `ndk` -> `raw_window_handle` dependency
2023-04-23 16:10:34 +01:00
Robert Bragg
1b44d38822
Bump MSRV to 0.64 and and MSRV policy to README
2023-04-23 15:57:07 +01:00
Robert Bragg
9ac7891664
CI: test with cargo-ndk 2, which compiles with rustc 1.60
2023-04-22 17:37:55 +01:00
Robert Bragg
03b06b8c5e
Merge pull request #70 from MarijnS95/na-resize
...
native-activity: Propagate `NativeWindow` redraw/resize and `ContentRectChanged` callbacks to main loop
2023-04-19 13:44:52 +01:00
Robert Bragg
caf2a624b2
Merge pull request #72 from notgull/dependabot
...
Add dependabot support
2023-04-19 13:41:41 +01:00
Marijn Suijten
fe9d68c99e
Clean up partial module imports
...
Some items were imported in scope while most of the code uses fully
qualified names.
2023-04-19 14:09:39 +02:00
Marijn Suijten
0c3f16c9ba
native-activity: Propagate onContentRectChanged callback to main loop
2023-04-19 14:09:30 +02:00
Marijn Suijten
87fe6a8465
native-activity: Propagate onNativeWindowRedrawNeeded callback to main loop
2023-04-19 14:09:24 +02:00
Marijn Suijten
a04c483d79
native-activity: Propagate onNativeWindowResized callback to main loop
2023-04-19 14:09:12 +02:00
jtnunley
507cfe072e
Add dependabot support
2023-04-10 09:45:05 -07:00
Robert Bragg
36ddfaa9ce
Merge pull request #64 from rib/release-0.4.1
...
Release 0.4.1
v0.4.1
2023-02-15 15:38:40 +00:00
Robert Bragg
b2467cb028
Release 0.4.1
2023-02-15 14:28:55 +00:00
Robert Bragg
6dd3c0c02a
Merge pull request #62 from rib/rust-mobile-org-urls
...
Update Github URL since moving to rust-mobile org
2023-02-14 12:02:18 +00:00
Robert Bragg
6ae2e427d6
Merge pull request #61 from rib/jni-vm-and-activity-ptrs
...
Add AndroidApp::vm_as_ptr() and ::activity_as_ptr() APIs
2023-02-14 12:01:33 +00:00
Robert Bragg
dc9ca832c5
Add AndroidApp::vm_as_ptr() and ::activity_as_ptr() APIs
...
This enables applications to make JNI calls without needing the
`ndk-context` crate - which we would like to deprecate.
Fixes : #60
2023-02-14 11:49:38 +00:00
Robert Bragg
9d06f62a4e
Update Github URL since moving to rust-mobile org
2023-02-13 17:20:11 +00:00
Robert Bragg
6942637c3c
Merge pull request #56 from rib/remove-example-lock-files
...
Remove Cargo.lock files for examples
2022-12-23 01:25:51 +00:00