Christoph Haag
2e2a62ce1a
st/oxr: submit layers with os monotonic timestamp, not XrTime
...
The compositor does not know about XrTime, only os monotonic timestamps.
2020-11-05 23:11:03 +00:00
Ryan Pavlik
3c13dbce43
t/oxr_android: Work on aboutLibraries usage.
2020-11-05 17:04:58 -06:00
Ryan Pavlik
25967f906b
t/oxr_android: Generate license resource at build time.
2020-11-05 17:04:53 -06:00
Ryan Pavlik
e1e7b92372
ipc/android: Add additional service options
2020-11-05 17:02:21 -06:00
Ryan Pavlik
cb09e68f0c
gradle: Allow python location to be explicitly specified in local.properties
2020-11-05 16:09:27 -06:00
Ryan Pavlik
ed519b1601
t/oxr_android: Rename activity and add version field
2020-11-05 16:09:26 -06:00
Jakob Bornecrantz
1c98297aa0
st/oxr: Use new xdev providing binding
2020-11-05 14:44:04 +00:00
Jakob Bornecrantz
b5e847c814
ipc: Add support for device provided bindings
2020-11-05 14:44:04 +00:00
Christoph Haag
ffa7cc84c8
d/vive: Add device bindings
2020-11-05 14:44:04 +00:00
Christoph Haag
4b261219a2
d/survive: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
12df35232a
d/psmv: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
24a3886e85
d/daydream: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
5997708634
d/arduino: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
7c807a8605
xrt: Add device driver provided bindings
2020-11-05 14:41:55 +00:00
Christoph Haag
d0b126c1ee
oxr: Add one missing mutex to active_wait_frames
2020-11-04 13:33:27 +00:00
Jakob Bornecrantz
2a9a0100bc
d/psvr: Tidy code
2020-11-04 13:26:47 +00:00
Christoph Haag
7eaa7abb89
oxr: Implement additional xrWaitFrame/xrBeginFrame call order checks
...
Relevant CTS tests: https://github.com/KhronosGroup/OpenXR-CTS/pull/7
2020-11-04 00:37:21 +01:00
Christoph Haag
965fa60bff
xrt: Move synchronized state test into oxr session
...
The compositor now moves immediately to visible/focused when polling.
The state tracker will generate relevant openxr state changes once the session is synchronized.
Properly working alternative to e03ee48dce
(reverted in e7643de8db
)
2020-11-04 00:37:10 +01:00
Christoph Haag
4709744d0a
ipc: log ipc calls and dispatch with IPC_PRINT_SPEW
2020-11-03 22:32:58 +01:00
Christoph Haag
233f3cb234
ipc: hook up IPC_PRINT_SPEW and IPC_PRINT_DEBUG variables
...
for both server and client
2020-11-03 22:32:58 +01:00
Jakob Bornecrantz
e7643de8db
c/main: Revert "Transition to visible/focused after xrEndFrame, not xrWaitFrame"
...
This reverts commit e03ee48dce
.
2020-11-03 21:04:05 +00:00
Ryan Pavlik
5f70826ba5
xrt: Add misc missing copyright/license notices
2020-11-02 17:04:51 +00:00
Ryan Pavlik
0684daae4f
clang-format configs: Fix SPDX tags
2020-11-02 17:04:51 +00:00
Christoph Haag
e03ee48dce
comp: Transition to visible/focused after xrEndFrame, not xrWaitFrame
...
The application synchronizes its frame loop by "by calling xrWaitFrame,
xrBeginFrame and xrEndFrame in a loop."
Applications can discard frames by not calling xrEndFrame. If initial
frames are discarded, we should not consider the frame loop synchronized.
Previously a sequence like
xrBeginFrame, xrWaitFrame, xrBeginFrame, xrWaitFrame, xrPollEvent, xrBeginFrame
failed because xrPollEvent the compositor emitted transitions to visible
and focused but they were not emitted in the state tracker, because the
oxr session had not internally tranisitioned to the synchronized state.
2020-10-31 20:14:49 +01:00
Ryan Pavlik
240b8f3047
t/oxr_android: Include library attribution/notices in "about" activity.
2020-10-30 18:20:36 -05:00
Ryan Pavlik
f70b1abd88
d/android: Use not-deprecated API when possible.
2020-10-30 18:20:36 -05:00
Lubosz Sarnecki
ae1d4e9541
d/android: Enable cardboard distortion.
2020-10-30 18:20:36 -05:00
Lubosz Sarnecki
f4113ef15b
d/android: Add Android sensors driver.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
ad42bbff9e
t/oxr_android: Move some distribution-related strings to build system
2020-10-30 18:20:35 -05:00
Ryan Pavlik
55eab2d79b
t/oxr_android: Set package version from Git
2020-10-30 18:20:35 -05:00
Ryan Pavlik
36a9273db2
t/oxr_android: Match theme to temporary logo
2020-10-30 18:20:35 -05:00
Ryan Pavlik
f46b801ad4
t/oxr_android: Improve VR Mode status messages
2020-10-30 18:20:35 -05:00
Ryan Pavlik
36fa605ab4
t/oxr_android: Add fragment to the main activity
2020-10-30 18:20:35 -05:00
Ryan Pavlik
03a129a4ea
t/oxr_android: Add VrModeStatus fragment.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
ce3750bfe1
a/android: Store a native pointer in the MonadoView.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
3bc84cca9e
a/android: Migrate to using the MonadoView generated wrapper.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
b6a12f8522
a/android: Add some partially-generated wrappers for our own Java code.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
fc78b5de86
a/android: Use android_custom_surface constructor/destructor
2020-10-30 18:20:34 -05:00
Ryan Pavlik
66d6281a7f
a/android: Monitor whether MonadoView is still being used by native code.
2020-10-30 18:20:34 -05:00
Ryan Pavlik
6f989f5451
t/oxr_android: Clean up main activity.
2020-10-30 18:20:34 -05:00
Jakob Bornecrantz
75ff836e3b
ipc: Add ipc_android doc group
2020-10-29 17:02:06 +00:00
Jakob Bornecrantz
585bb6fe7a
ipc: Add ipc_shared doc group
2020-10-29 17:02:06 +00:00
Jakob Bornecrantz
3008e5482d
ipc: Refactor folders
2020-10-29 17:02:06 +00:00
Jakob Bornecrantz
5ba3486628
t/[gui|oxr]: Directly reference SDL2 in CMake
...
This fixes the build when building with clang and CMake.
2020-10-29 16:33:15 +00:00
Jakob Bornecrantz
09ba7fc1e3
d/remote: Fix warning when building with clang
2020-10-29 16:17:20 +00:00
Ryan Pavlik
26cd22b232
a/android: Move class name to a constant.
2020-10-28 12:12:31 -05:00
Ryan Pavlik
da3959e642
a/android: C++ headers use .hpp as the extension
2020-10-28 12:12:31 -05:00
Ryan Pavlik
8301c9d1b4
a/android: Fix some file comments.
2020-10-28 12:12:31 -05:00
Ryan Pavlik
941c6286e5
t/oxr_android: Add version annotation to the VR listener
2020-10-28 12:12:31 -05:00
Ryan Pavlik
e724a72fc1
st/oxr_android: Adjust name string
2020-10-28 12:12:31 -05:00
Ryan Pavlik
e4e3ee888a
st/oxr_android: Clean up manifest
2020-10-28 12:12:31 -05:00
Ryan Pavlik
1acadb8a18
a/android: Make MonadoView fullscreen.
2020-10-28 12:12:31 -05:00
Ryan Pavlik
307b3f28fa
t/oxr_android: Clean up manifest
2020-10-28 12:12:31 -05:00
Ryan Pavlik
bcb6e85f9d
t/oxr_android: Rename the VrListener class/service.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
a8c7ac2074
c/eglimage_swapchain: Actually return created swapchain.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
af4c6a8ba3
c/gl_client: Check if swapchain is not NULL.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
bd107095fd
c/gl_client: Port to u_logging.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
e3df2f9940
st/oxr: Add GLES Android session boilerplate.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
d61faff421
aux/android/ahardwarebuffer_allocator: Use Vulkan enums in format switch.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
633b7839c2
aux/vk+comp/sc: Initialize extra structs for hardware buffer extension.
...
Fix sRGB format for Android hardware buffers.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
3cc8793d7d
aux+comp: Add Android hardware buffer device extension.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
2cc8252c05
aux/vk: Add vkGetAndroidHardwareBufferPropertiesANDROID.
2020-10-28 12:12:31 -05:00
Lubosz Sarnecki
2df2daa00c
aux/android/ahardwarebuffer_allocator: Add function to allocate a single buffer.
2020-10-28 12:12:31 -05:00
Ryan Pavlik
436886852d
a/android: Improve monadoview, including fixing deleted ref problem.
2020-10-28 12:12:31 -05:00
Ryan Pavlik
a0bbca572d
comp: Basic Android compositor window.
...
Also makes the service feature not depend on other options:
it can be used without those other parts.
comp/window_android: Remove unused EGL code for now, as it is crashing.
comp/window_android: Use MonadoView async method to create surface.
comp/window_android: Use custom surface as intended
Co-authored-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
2020-10-28 09:41:30 -05:00
Ryan Pavlik
dfd771f768
aux/android: Enhance custom surface
...
Includes fixes to my mistakes by Lubosz.
Co-authored-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
2020-10-28 09:41:03 -05:00
Lubosz Sarnecki
e78ad12634
aux/android/custom_surface: Make JNI happy.
...
Keep android_load_class methods in C++, since
casting the class handle to void results in:
```
JNI DETECTED ERROR IN APPLICATION: use of deleted global reference.
```
Co-authored-by: Ryan Pavlik <ryan.pavlik@collabora.com>
2020-10-28 09:33:47 -05:00
Lubosz Sarnecki
2a8db3d780
aux/android/load_class: Use pkgClassLoader.loadClass to load MonadoView class.
2020-10-28 09:33:46 -05:00
Lubosz Sarnecki
dbe0338956
android/MonadoView: Register surface callback and fix imports.
...
Run UI things on UI thread.
2020-10-28 09:33:46 -05:00
Lubosz Sarnecki
c64d17fa88
comp/main: Define Android extensions.
2020-10-28 09:33:46 -05:00
Lubosz Sarnecki
79fd76f68d
comp/main: Don't check for VK_KHR_display on Android.
2020-10-28 09:33:46 -05:00
Lubosz Sarnecki
7d02a93ca5
android/manifest: Extract libs.
2020-10-28 09:33:46 -05:00
Ryan Pavlik
43d724b6bf
aux/vk: Fix a place where we were missing an android ifdef
2020-10-28 09:33:46 -05:00
Ryan Pavlik
d4b19f3d47
aux/android: Add custom surface code.
2020-10-28 09:33:46 -05:00
Ryan Pavlik
9b67c0a09f
aux/android: Add code to load Java from a package
2020-10-28 09:33:46 -05:00
Ryan Pavlik
2cafdfa5cc
t/oxr_android: Add Android-specific subdirectory
2020-10-28 09:33:46 -05:00
Ryan Pavlik
d6564e3798
ipc_android: Add Android-specific Java/AIDL code
2020-10-28 09:33:46 -05:00
Ryan Pavlik
d0187cee9a
aux/android: Add Java code
2020-10-28 09:33:26 -05:00
Ryan Pavlik
0f43bbe924
inc/xrt: Add Android config header to store package name.
2020-10-28 09:32:49 -05:00
Ryan Pavlik
06f75e03b4
a/android: Fix typo in comment
2020-10-28 09:32:49 -05:00
Ryan Pavlik
0ea7cf8009
targets: Add service-lib stub for Android
2020-10-28 09:32:49 -05:00
Ryan Pavlik
59d2285c8e
aux/util: Port logging for Android.
...
Now if u_logging is used, it goes to logcat.
2020-10-28 09:32:49 -05:00
Jakob Bornecrantz
463330d5d5
u/distortion: Set blend mode incase it is zero
2020-10-27 21:34:29 +00:00
Jakob Bornecrantz
ecbde55752
m/space: Normalize orientation when returning result
2020-10-27 16:20:12 +00:00
Jakob Bornecrantz
09566cf5fd
c/main: Fix projection layer flags not getting set
2020-10-27 16:05:13 +00:00
Jakob Bornecrantz
bd6ea43de5
m/headers: Fix doxygen warnings
2020-10-26 22:55:22 +00:00
Jakob Bornecrantz
8730ff479a
u/hand_tracking: Tidy header
2020-10-26 22:50:54 +00:00
Jakob Bornecrantz
d72776b82c
d/psvr: Switch to logging API
2020-10-26 22:41:49 +00:00
Jakob Bornecrantz
6fd1e7b36c
d/dummy: Add logging to variable tracking
2020-10-26 22:41:27 +00:00
Jakob Bornecrantz
02a3b47f7c
d/dummy: Switch to logging API
2020-10-26 22:17:15 +00:00
Jakob Bornecrantz
3611193feb
d/dummy: Tidy file
2020-10-26 22:14:05 +00:00
Jakob Bornecrantz
cf8ca3756e
c/main: Fix leaks of samplers and tidy code
2020-10-26 22:07:12 +00:00
Jakob Bornecrantz
75153a7066
u/distortion: Add simple cardboard distortion code
2020-10-26 21:53:55 +00:00
Jakob Bornecrantz
ed2040a571
u/mesh: Tidy header
2020-10-26 20:36:30 +00:00
Jakob Bornecrantz
7bcdf0de40
st/prober: Depend on remote driver as we reference it directly
2020-10-26 20:35:18 +00:00
Jakob Bornecrantz
f868f61a17
st/oxr: Improve verification of XrGraphicsBindingEGLMNDX
2020-10-26 14:05:27 +00:00
Jakob Bornecrantz
7ba4bee439
st/oxr: Minor fixes for oxr_session_egl
2020-10-26 14:03:30 +00:00
Jakob Bornecrantz
ebfd984c12
st/oxr: Fix missing semicolons
2020-10-26 14:03:30 +00:00
Jakob Bornecrantz
f9443cf362
st/oxr: Timeout minimum duration pulses after 0.1 seconds
2020-10-26 14:03:30 +00:00
Lubosz Sarnecki
663dfe8990
meson: Add equirect2 to build.
2020-10-26 01:34:10 +00:00