Hui Xu
d5b9ae137e
ipc/android: Dup the fd from JVM and maintain it in native
...
- dup the fd in native part to avoid fd_san error
2023-08-22 18:54:26 +00:00
Jakob Bornecrantz
7dae8d1ddd
ipc: Add a stable ID for clients
...
Co-authored-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
2023-07-18 17:33:52 +02:00
Jakob Bornecrantz
1920a9f0d7
ipc: Send less information when describing the client
2023-07-18 17:33:52 +02:00
Jakob Bornecrantz
2edf07749b
ipc: Rename client connected function and document code
2023-07-18 17:33:52 +02:00
huanchen
db230b3dcb
ipc: Unmap shared memory before destroy
2023-07-18 13:43:01 +01:00
Korcan Hussein
b6b5610c05
xrt|ipc|st/oxr: Adds support for XR_EXT_hand_interaction
profile.
2023-07-12 14:14:08 +01:00
Korcan Hussein
8865baafee
xrt: Plumbs enabled ext state for XR_EXT_eye_gaze_interaction
2023-06-29 00:31:58 +01:00
Ryan Pavlik
2c2aa92889
ipc: Factor out client connection setup and teardown for reuse.
2023-06-17 22:23:33 +01:00
Ryan Pavlik
684a3f22e4
ipc/client: Warning fix
2023-06-17 11:46:14 +01:00
Christoph Haag
6a01170b23
ipc: Transfer xdev serial over ipc
2023-06-14 01:02:07 +00:00
Robbie Bridgewater
28dc5747e2
ipc: Add more diagnostic info for first instance service failure
2023-06-14 01:01:49 +00:00
Drew Chien (Te-Ju)
96c88f488e
xrt: Add eye gaze defines and role
2023-06-13 01:31:11 +01:00
sdegrande
2f3f9e0cb9
build,a/{os,util},xrt,ipc: Fix compilation with Mingw64 on MSYS2
...
Main changes:
- use the pthread lib provided by Mingw64
- include windows.h where needed
- define XRT_ENV_MINGW
2023-06-05 12:03:47 -05:00
Korcan Hussein
17d8e010c8
xrt: App enabled extension state
...
Adds support for passing through which extensions an OpenXR client
has enabled to server for drivers/compositors to be able to query.
2023-05-25 23:20:38 +01:00
Ryan Pavlik
8603e5d63e
i/client: Fix return type incompatibility on Windows
2023-05-16 22:04:53 +00:00
samuel degrande
ea7ec1bda8
xrt: Fail to build with Clang 16
2023-05-16 14:25:36 +00:00
Jakob Bornecrantz
ca20f359b5
ipc: Allow UWP/AppContainer and others to connect
...
Including: UWP/AppContainer, Authenticated user and Administrator. Currently
guarded with IPC_RELAXED_CONNECTION_SECURITY env variable.
2023-05-06 16:21:30 +01:00
Jakob Bornecrantz
cfb63abac1
ipc: Do not leak arguments before fully having waited
2023-05-03 16:16:13 +01:00
Jarvis Huang
0d31791092
comp/android: Refine surface creation flow
...
Reuse MonadoView when "Display over other apps" is enabled. Move surface
creation logic to compositor for consistency. With this approach, compositor
implementer controls the way surface is created.
2023-04-18 16:24:35 -05:00
Jarvis Huang
d60db29295
aux/android: Refactor SystemUiController
2023-04-18 16:22:42 -05:00
Ryan Pavlik
9840730169
ipc/android: Run spotlessApply to format Java and Kotlin code
2023-04-17 10:58:38 -05:00
utzcoz
8e93bbde4b
gradle: Integrate spotless to format Java and Kotlin code
...
See https://github.com/diffplug/spotless .
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-04-17 10:58:38 -05:00
utzcoz
08831237f5
gradle: Migrate compileSdkVersion to compileSdk
...
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-04-11 11:43:57 +00:00
Ryan Pavlik
35b1bc063d
gradle: Update dependencies further and fix conflicts
2023-04-10 14:11:41 -05:00
Jakob Bornecrantz
50838f5801
xrt: Introduce xrt_layer_frame_data
2023-04-04 13:38:21 +01:00
utzcoz
629c4b67f1
ipc/android: Remove unnecessary toString for log
...
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-04-02 16:14:15 +00:00
utzcoz
7676fa0a93
gradle: Bump AGP to 7.1.2
...
1. Bump AGP to 7.1.2.
2. Bump hiltVersion to 2.38.1.
3. Migrate lintOptions to lint.
4. Move package from AndroidManifest to Gradle.
5. Fully qualify application class name.
6. Fix packagingOptions usage with resources wrapper.
Signed-off-by: utzcoz <utzcoz@outlook.com>
Signed-off-by: Ryan Pavlik <ryan.pavlik@collabora.com>
2023-03-29 16:48:16 +00:00
Jakob Bornecrantz
c70bc60084
xrt: Also create a space overseer when creating system devices
2023-03-10 00:03:46 +00:00
Jakob Bornecrantz
4aaefc7588
ipc: Add xrt_space support
2023-03-10 00:03:46 +00:00
Jakob Bornecrantz
bff220b6f8
ipc: Implement xrt_device::compute_distortion
2023-03-09 15:51:29 +00:00
Moshi Turner
7485afbeaa
xrt: Refactor oxr_sdl2_hack to u_debug_gui
...
And OXR_DEBUG_GUI to XRT_DEBUG_GUI
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-03-06 16:39:52 -06:00
Jakob Bornecrantz
9a19a91f2d
ipc: Refactor out common ipc_client_xdev
2023-02-28 21:27:56 +00:00
Jarvis Huang
693641b70b
ipc: Add support for xrt_device::is_form_factor_available
2023-02-22 23:52:21 +00:00
Ryan Pavlik
f32ed406d8
a/android,ipc/android: Fix typos
2023-02-08 17:35:49 -06:00
Jakob Bornecrantz
3dc0415374
ipc: Tidy client includes (NFC)
...
Fixes some clang-tidy warnings about duplicated includes.
2023-02-02 20:05:06 +00:00
Ryan Pavlik
85a897a0b5
a/d3d,a/vk,c/client,ipc: D3D Depth texture / DXGI handle support
...
a/d3d: Improve allocation
Enable D3D11 and D3D112 depth images using DXGI handles
Allow D3D depth by default
D3D: only use DXGI handles
NT handles don't support depth formats and may fail to properly interop with Vulkan with some image dimensions.
Removed D3D_COMPOSITOR_ALLOW_DEPTH env.
D3D now always imports depth.
Added authorship.
Format pass
Fix D3D compositor tests
ipc: Fix HANDLE bit twiddling code
Merge into commits related to D3D depth changes. Makes the code compile
as C++, useful for Windows traceing
Co-authored-by: Robbie Bridgewater <ebridgewater@magicleap.com>
Co-authored-by: Fernando Velazquez Innella <finnella@magicleap.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-01-24 15:35:22 +00:00
Jarvis Huang
503dae2883
ipc/android: Early reject if server failed to start
2023-01-19 19:50:28 +00:00
Jarvis Huang
aa6b8cd88d
ipc: Change init order to avoid assertion
2023-01-01 17:00:43 +00:00
SeungHoon Han
a594d6d86e
a/android: fixed forced applied alpha=0.8 window after Android S
2022-12-08 21:41:16 +00:00
SeungHoon Han
a2f5e5f1b9
a/android: hide display cutout to use full screen
2022-12-08 20:24:53 +00:00
Jakob Bornecrantz
040764c4f1
ipc: Trace around ipc_dispatch
2022-12-08 00:24:42 +00:00
Jakob Bornecrantz
9b3f9baff3
ipc: Properly cast assignment
2022-12-04 18:07:53 +00:00
Jakob Bornecrantz
6450cba854
ipc: Clarify code around xrt_comp_begin_session call
2022-12-04 18:07:53 +00:00
Jakob Bornecrantz
bc83130354
ipc: Use correct cast
2022-12-04 18:07:53 +00:00
Jakob Bornecrantz
2ffaf7fd46
ipc: Add C++ guards to generated headers
2022-12-04 18:07:53 +00:00
Jakob Bornecrantz
09975b0d24
ipc: Use XRT_STRUCT_INIT
2022-12-04 18:07:53 +00:00
Maxim Kizub
e600cdaabf
c/main,ipc/android: Deferred render target initialization for Android.
2022-11-30 09:32:18 -06:00
Jakob Bornecrantz
fb15e8aa50
ipc: Tidy Windows mainloop code
2022-11-25 16:04:20 +00:00
Jakob Bornecrantz
8271d213f5
ipc: Use u_winerror helper
2022-11-25 16:04:20 +00:00
Jakob Bornecrantz
386aa510bd
ipc: Use U_TRACE_SET_THREAD_NAME
2022-11-20 13:52:38 +00:00
Jakob Bornecrantz
98b7f7d1c6
xrt: Remove xrt_gfx_native
2022-11-15 23:24:20 +00:00
Ryan Pavlik
678b27145a
ipc/client: can not -> cannot
2022-11-09 14:52:03 -06:00
Jakob Bornecrantz
ca83275671
ipc: Move struct declaration into same place
2022-11-07 23:48:59 +00:00
Jakob Bornecrantz
f9cd474156
ipc: Use XRT_MAX_IPC_HANDLES and also validate input from client
2022-11-07 23:48:59 +00:00
Jakob Bornecrantz
26c4771bfb
ipc: Make _sync struct have the right indentation
2022-11-07 23:48:59 +00:00
Jakob Bornecrantz
86a6b4b3e3
ipc: Generated code doesn't need to care about line length
2022-11-07 23:48:59 +00:00
Jakob Bornecrantz
cf2dbb9334
ipc: Use xrt limits for number of swapchain handles max
2022-11-03 17:43:06 +00:00
Jakob Bornecrantz
e629bbbe2b
a/util: Split out process functions into own library
2022-10-27 17:19:57 +00:00
Julian Petrov
fb28f940b5
Fix an IPC protocol issue on windows when receiving zero HANDLEs
2022-10-14 10:49:50 -04:00
Julian Petrov
d0f713c4c4
ipc: Add Windows support
2022-10-13 17:07:27 +00:00
Robbie Bridgewater
cc2e7b6da3
ipc: Allow IPC path to be set dynamically
...
Uses cache for XRT_IPC_MSG_SOCK_FILE
2022-10-09 15:21:11 +01:00
Daniel Willmott
b710127fad
xrt/device: Add force feedback role
2022-09-19 22:08:28 +00:00
zhibinw
0cec22e907
ipc/android:allow none activity context for overlay app
2022-09-13 14:21:21 +00:00
Ryan Pavlik
a7d553d93e
xrt,comp,ipc...: Clarifying docs about "system compositor" and "multi compositor"
2022-09-12 10:59:41 -05:00
Jakob Bornecrantz
1772baa90e
ipc: Use wait helper to implement wait frame
2022-09-07 15:06:57 +00:00
Jarvis Huang
25e96a508c
aux/android: Using DexClassLoader to load class
2022-09-02 16:25:12 +00:00
Jarvis Huang
5063e76d16
ipc: Update active client id while activate session changed
2022-08-11 11:57:07 +08:00
Christoph Haag
c24e482e5e
st/oxr: Make OpenXR timestamps relative to service startup
...
This solves a problem where OpenXR timestamps could become invalid
(negative) in certain circumstances:
The timestamps that the OpenXR state tracker returned were offset such
that they appeared to start at OpenXR application startup time.
However monado-service is a long running service using system timestamps.
Because of this, if monado-service started work using a system timestamp
acquired before an OpenXR application started, then this system timestamp
could not be converted into an OpenXR without becoming invalid.
With this change, the OpenXR timestamps for OpenXR applications are offset
such that they appear to start at monado-service startup time instead.
As a side effect, all OpenXR applications connected to the same
monado-service instance will receive timestamps from the same domain.
2022-08-08 15:52:18 +00:00
Ryan Pavlik
a8bb821cf5
ipc: Fix typo
2022-07-26 14:45:29 +00:00
Ryan Pavlik
46ad907dac
ipc: Replace size_t usages.
...
Not safe to use any type whose size differs between 32 and 64 bit builds.
2022-07-26 14:45:29 +00:00
bjorn
919936991c
ipc: make all IPC input aggregates const;
2022-07-14 20:31:38 +00:00
utzcoz
34c97c48ef
ipc,t/oxr_android: Add FLAG_IMMUTABLE for PendingIntent from S+
...
Signed-off-by: utzcoz <utzcoz@outlook.com>
2022-06-27 09:59:27 -05:00
Ryan Pavlik
e1a0486f30
gradle: Update some deps slightly to cope with gradle 7
2022-06-25 09:59:37 +08:00
Simon Zeni
f91ada32c2
ipc: add missing sys/types include
2022-05-27 15:08:40 +00:00
Mateo de Mayo
bcac379cf5
ipc: Init connection mutex
2022-05-21 23:57:55 -03:00
Ryan Pavlik
ea35e79ec7
ipc: Clarify that wait_image timeout is nanoseconds
2022-05-20 23:31:59 +01:00
Ryan Pavlik
7f600569e7
ipc: Word choice/clarity
2022-05-17 17:40:58 -05:00
Jakob Bornecrantz
61323c32d2
xrt: Use error messages in various instance and prober functions
2022-05-17 20:10:40 +01:00
Jakob Bornecrantz
2e8d1f9b34
ipc: Set xdev_count on xrt_system_devices
2022-05-13 10:57:28 +01:00
Jakob Bornecrantz
aafbaecbc9
xrt: Remove old unused instance functions
2022-05-11 10:49:15 +01:00
Moses Turner
d6f62633e9
st/gui: Use xrt_system_devices struct and xrt_instance_create_system call
...
Includes fixes from Christoph Haag:
```
st/gui: Fix segfault when starting monado-gui without arguments
```
```
st/gui: Run gui_prober_select only in the modules that need a prober
This also speeds up starting up the monado-gui main menu.
```
Co-authored-by: Moses Turner <moses@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-05-11 10:49:15 +01:00
Jakob Bornecrantz
634d495301
ipc: Use and support xrt_instance_create_system
2022-05-11 10:18:35 +01:00
Jakob Bornecrantz
759162ebeb
ipc: Return correct status if we fail to create a semaphore
2022-05-09 14:01:20 +00:00
Christoph Haag
f76b31795f
ipc: zero initialize message buffer
2022-05-09 15:53:00 +02:00
Jakob Bornecrantz
a36620fad3
ipc: Use xrt_swapchain_create_properties when using XINA
2022-05-04 15:51:16 +01:00
Jakob Bornecrantz
6805b40ac2
ipc: Add support for xrt_swapchain_create_properties
2022-05-04 15:50:54 +01:00
Jakob Bornecrantz
175ff58f10
build: Remove meson files
2022-04-28 21:36:25 +00:00
Ryan Pavlik
3e6ec47296
monado: Apply clang-tidy fixes to most of the codebase.
...
All at least visually inspected, some revised from the auto-fixit
2022-04-13 09:34:54 -05:00
zhibinw
172ed2e847
xrt: Do not require OPENXR permission when connect MonadoService
2022-04-12 14:20:17 +00:00
Christoph Haag
22c7fea639
ipc: Amend swapchain create error for unsupported swapchains
2022-04-01 18:10:22 +01:00
Christoph Haag
1eeb870a2d
ipc: Add float to supported types in proto
2022-03-30 22:35:33 +02:00
Jakob Bornecrantz
ef373662f2
ipc: Impelement xrt_compositor_semaphore interfaces
2022-03-14 19:53:05 +00:00
Jakob Bornecrantz
ab5e863116
ipc: Do not copy fov in distortion information
...
No other distortion info is passed along
2022-02-19 13:22:25 +00:00
Christoph Haag
996a5d3e9a
xrt: Move fov from xrt_view to xrt_hmd_parts::distortion
2022-02-19 13:04:32 +00:00
Jakob Bornecrantz
9b656cde77
xrt: Remove xrt_device::get_view_pose
...
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-02-16 23:15:24 +00:00
Jakob Bornecrantz
be4f4969c0
ipc: Add support for xrt_device::get_view_poses
2022-02-16 23:15:06 +00:00
Christoph Haag
dd81085a04
ipc/server: print monado version in info log on startup
2022-02-14 00:26:09 +01:00
Jarvis Huang
97100821d2
ipc/android: Add shutdown mechanism back
2022-01-05 14:59:39 +00:00
Jarvis Huang
9339e6022f
ipc/android: Refactor and cleanup IPC glue code
2022-01-05 14:59:39 +00:00
Jarvis Huang
3bb151e4bf
ipc/android: Avoid race condition/blocking main thread
2022-01-05 14:59:39 +00:00