The open source OpenXR runtime

t/oxr_android: Include library attribution/notices in "about" activity.

+262 -12
+3
build.gradle
··· 3 3 4 4 buildscript { 5 5 ext.kotlin_version = '1.4.10' 6 + ext.latestAboutLibsRelease = "8.4.3" 6 7 repositories { 7 8 google() 8 9 jcenter() 10 + mavenCentral() 9 11 } 10 12 dependencies { 11 13 classpath 'com.android.tools.build:gradle:4.1.0' 12 14 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" 15 + classpath "com.mikepenz.aboutlibraries.plugin:aboutlibraries-plugin:${latestAboutLibsRelease}" 13 16 } 14 17 } 15 18 plugins {
+23 -1
src/xrt/targets/openxr_android/build.gradle
··· 3 3 4 4 apply plugin: 'com.android.application' 5 5 apply plugin: 'kotlin-android' 6 + apply plugin: 'com.mikepenz.aboutlibraries.plugin' 6 7 7 8 androidGitVersion { 8 9 tagPattern(/^v[0-9]+.*/) 9 10 codeFormat = 'MNNPPPBBB' 10 11 } 12 + 13 + def parseOpenXRVersion(def fn) { 14 + def matches = file(fn).readLines().find { it.contains('XR_CURRENT_API_VERSION') } =~ ~/XR_MAKE_VERSION\(([^\)]+)\)/ 15 + def components = matches[0][1].split(',').each { it.replace(' ', '').trim() } 16 + String.join('.', components) 17 + } 18 + 11 19 android { 12 20 compileSdkVersion project.sharedTargetSdk 13 21 buildToolsVersion '30.0.2' ··· 24 32 25 33 resValue "string", "monado_lib_version", "${versionName}" 26 34 resValue "string", "app_name", "Monado XR" 35 + 36 + resValue "string", "library_openxrheaders_libraryVersion", parseOpenXRVersion("../../../external/openxr_includes/openxr/openxr.h") 37 + 27 38 externalNativeBuild { 28 39 cmake { 29 40 arguments "-DEIGEN3_INCLUDE_DIR=${project.eigenIncludeDir}", "-DANDROID_PLATFORM=26", "-DANDROID_STL=c++_shared", "-DANDROID_ARM_NEON=TRUE" ··· 34 45 buildTypes { 35 46 release { 36 47 minifyEnabled false 37 - // proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 48 + // Gradle plugin produces proguard-android-optimize.txt from @Keep annotations 49 + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 38 50 } 39 51 } 40 52 ··· 65 77 } 66 78 } 67 79 80 + aboutLibraries { 81 + configPath = "config" 82 + } 83 + 68 84 dependencies { 69 85 outOfProcessImplementation project(':src:xrt:ipc:android') 70 86 implementation project(':src:xrt:auxiliary:android') 71 87 implementation 'androidx.appcompat:appcompat:1.2.0' 72 88 implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" 73 89 implementation 'androidx.constraintlayout:constraintlayout:2.0.1' 90 + implementation "com.mikepenz:aboutlibraries-core:${latestAboutLibsRelease}" 91 + implementation "com.mikepenz:aboutlibraries:${latestAboutLibsRelease}" 92 + implementation "androidx.cardview:cardview:1.*.*" 93 + implementation "androidx.recyclerview:recyclerview:1.1.*" 94 + implementation "com.google.android.material:material:1.1.*" 95 + 74 96 }
+10
src/xrt/targets/openxr_android/proguard-rules.pro
··· 1 + # Copyright 2020, Collabora, Ltd. 2 + # SPDX-License-Identifier: BSL-1.0 3 + # see http://developer.android.com/guide/developing/tools/proguard.html 4 + # Trying to keep most of them in source code annotations and let Gradle do the work 5 + 6 + # For library auto-detection in AboutLibraries 7 + -keep class .R 8 + -keep class **.R$* { 9 + <fields>; 10 + }
+17
src/xrt/targets/openxr_android/src/main/java/org/freedesktop/monado/openxr_runtime/MainActivity.java
··· 13 13 import android.widget.TextView; 14 14 15 15 import androidx.appcompat.app.AppCompatActivity; 16 + import androidx.fragment.app.Fragment; 16 17 import androidx.fragment.app.FragmentManager; 17 18 import androidx.fragment.app.FragmentTransaction; 19 + 20 + import com.mikepenz.aboutlibraries.LibsBuilder; 18 21 19 22 public class MainActivity extends AppCompatActivity { 20 23 ··· 32 35 int status = VrModeStatus.detectStatus(this, BuildConfig.APPLICATION_ID); 33 36 VrModeStatus statusFrag = VrModeStatus.newInstance(status); 34 37 fragmentTransaction.add(R.id.statusFrame, statusFrag, null); 38 + 39 + 40 + Fragment libsFragment = (new LibsBuilder()) 41 + .withFields(R.string.class.getFields()) 42 + 43 + // We do this ourselves bigger 44 + .withAboutIconShown(false) 45 + // Let the fragment show our version 46 + .withAboutVersionShown(true) 47 + 48 + // Not sure why you'd do this without license info 49 + .withLicenseShown(true) 50 + .supportFragment(); 51 + fragmentTransaction.add(R.id.aboutFrame, libsFragment, null); 35 52 fragmentTransaction.commit(); 36 53 } 37 54 }
+25 -6
src/xrt/targets/openxr_android/src/main/res/layout/activity_main.xml
··· 14 14 android:id="@+id/imageView" 15 15 android:layout_width="@android:dimen/thumbnail_width" 16 16 android:layout_height="@android:dimen/thumbnail_height" 17 - android:layout_marginTop="24dp" 17 + android:layout_marginTop="8dp" 18 18 android:contentDescription="@string/monado_logo" 19 19 android:scaleType="fitCenter" 20 20 app:layout_constraintEnd_toEndOf="parent" ··· 39 39 android:id="@+id/textPowered" 40 40 android:layout_width="wrap_content" 41 41 android:layout_height="wrap_content" 42 - android:layout_marginTop="252dp" 42 + android:layout_marginTop="8dp" 43 43 android:text="@string/powered_by_monado" 44 44 android:textAppearance="@style/TextAppearance.AppCompat.Medium" 45 45 app:layout_constraintEnd_toEndOf="parent" 46 46 app:layout_constraintStart_toStartOf="parent" 47 - app:layout_constraintTop_toTopOf="parent" /> 47 + app:layout_constraintTop_toBottomOf="@+id/textView" /> 48 48 49 49 <androidx.constraintlayout.widget.Barrier 50 50 android:id="@+id/barrier" ··· 56 56 57 57 <FrameLayout 58 58 android:id="@+id/statusFrame" 59 - android:layout_width="260dp" 60 - android:layout_height="248dp" 59 + android:layout_width="0dp" 60 + android:layout_height="wrap_content" 61 61 android:layout_marginStart="8dp" 62 + android:layout_marginTop="8dp" 62 63 android:layout_marginEnd="8dp" 63 - app:layout_constraintBottom_toTopOf="@+id/btnOSS" 64 64 app:layout_constraintEnd_toEndOf="parent" 65 65 app:layout_constraintStart_toStartOf="parent" 66 66 app:layout_constraintTop_toBottomOf="@+id/textPowered"> 67 67 68 68 </FrameLayout> 69 69 70 + <FrameLayout 71 + android:id="@+id/aboutFrame" 72 + android:layout_width="0dp" 73 + android:layout_height="0dp" 74 + android:layout_marginTop="8dp" 75 + android:layout_marginBottom="8dp" 76 + app:layout_constraintBottom_toBottomOf="parent" 77 + app:layout_constraintEnd_toEndOf="parent" 78 + app:layout_constraintHorizontal_bias="0.0" 79 + app:layout_constraintStart_toStartOf="parent" 80 + app:layout_constraintTop_toBottomOf="@+id/statusFrame"> 81 + 82 + <Button 83 + android:id="@+id/btnAndroid" 84 + android:layout_width="wrap_content" 85 + android:layout_height="wrap_content" 86 + android:text="Button" 87 + android:visibility="gone" /> 88 + </FrameLayout> 70 89 71 90 </androidx.constraintlayout.widget.ConstraintLayout>
+1 -3
src/xrt/targets/openxr_android/src/main/res/layout/fragment_vr_mode_status.xml
··· 12 12 13 13 <androidx.constraintlayout.widget.ConstraintLayout 14 14 android:layout_width="match_parent" 15 - android:layout_height="match_parent"> 15 + android:layout_height="wrap_content"> 16 16 17 17 <TextView 18 18 android:id="@+id/textEnabledDisabled" 19 19 android:layout_width="wrap_content" 20 20 android:layout_height="wrap_content" 21 21 android:layout_marginTop="8dp" 22 - android:layout_marginBottom="8dp" 23 22 android:text="@string/vr_mode_enabled" 24 23 android:textAppearance="@style/TextAppearance.AppCompat.Body2" 25 - app:layout_constraintBottom_toBottomOf="parent" 26 24 app:layout_constraintEnd_toEndOf="parent" 27 25 app:layout_constraintHorizontal_bias="0.5" 28 26 app:layout_constraintStart_toStartOf="parent"
+23
src/xrt/targets/openxr_android/src/main/res/raw/bsl_1_0.txt
··· 1 + Boost Software License - Version 1.0 - August 17th, 2003<br> 2 + <br> 3 + Permission is hereby granted, free of charge, to any person or organization 4 + obtaining a copy of the software and accompanying documentation covered by 5 + this license (the "Software") to use, reproduce, display, distribute, execute, 6 + and transmit the Software, and to prepare derivative works of the Software, 7 + and to permit third-parties to whom the Software is furnished to do so, all 8 + subject to the following:<br> 9 + <br> 10 + The copyright notices in the Software and this entire statement, including 11 + the above license grant, this restriction and the following disclaimer, must 12 + be included in all copies of the Software, in whole or in part, and all derivative 13 + works of the Software, unless such copies or derivative works are solely in 14 + the form of machine-executable object code generated by a source language 15 + processor.<br> 16 + <br> 17 + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 19 + FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE 20 + COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES 21 + OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 + THE SOFTWARE.
+19
src/xrt/targets/openxr_android/src/main/res/values/library_cjson_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_cjson">type</string> 8 + <string name="library_cjson_author">Dave Gamble and cJSON contributors</string> 9 + <string name="library_cjson_authorWebsite">https://github.com/DaveGamble/cJSON</string> 10 + <string name="library_cjson_libraryName">cJSON</string> 11 + <string name="library_cjson_libraryDescription">cJSON is a parser that tries to share the same philosophy as JSON itself. Simple, dumb, out of the way.</string> 12 + <string name="library_cjson_libraryVersion">1.7.12</string> 13 + <string name="library_cjson_licenseIds">mit</string> 14 + <string name="library_cjson_isOpenSource">true</string> 15 + <string name="library_cjson_repositoryLink">https://github.com/DaveGamble/cJSON</string> 16 + <string name="library_cjson_type">native</string> 17 + 18 + 19 + </resources>
+18
src/xrt/targets/openxr_android/src/main/res/values/library_flexkalman_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_flexkalman">type</string> 8 + <string name="library_flexkalman_author">Sensics and Collabora, Ltd.</string> 9 + <string name="library_flexkalman_authorWebsite">https://github.com/rpavlik/UVBI-and-KalmanFramework-Standalone</string> 10 + <string name="library_flexkalman_libraryName">flexkalman</string> 11 + <string name="library_flexkalman_libraryDescription">Flexible Kalman filter framework.</string> 12 + <string name="library_flexkalman_licenseIds">apache_2_0</string> 13 + <string name="library_flexkalman_isOpenSource">true</string> 14 + <string name="library_flexkalman_repositoryLink">https://github.com/rpavlik/UVBI-and-KalmanFramework-Standalone</string> 15 + <string name="library_flexkalman_type">native</string> 16 + 17 + 18 + </resources>
+17
src/xrt/targets/openxr_android/src/main/res/values/library_jnipp_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_jnipp">type</string> 8 + <string name="library_jnipp_author">Mitchell Dowd, Ryan Pavlik</string> 9 + <string name="library_jnipp_authorWebsite">https://github.com/rpavlik/jnipp</string> 10 + <string name="library_jnipp_libraryName">JNIPP</string> 11 + <string name="library_jnipp_libraryDescription">C++ wrapper for the Java Native Interface</string> 12 + <string name="library_jnipp_licenseIds">mit</string> 13 + <string name="library_jnipp_isOpenSource">true</string> 14 + <string name="library_jnipp_repositoryLink">https://github.com/rpavlik/jnipp</string> 15 + <string name="library_jnipp_type">native</string> 16 + 17 + </resources>
+19
src/xrt/targets/openxr_android/src/main/res/values/library_monado_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_Monado">type</string> 8 + <string name="library_Monado_author">Collabora, Ltd. and the Monado contributors</string> 9 + <string name="library_Monado_authorWebsite">https://monado.freedesktop.org</string> 10 + <string name="library_Monado_libraryName">Monado</string> 11 + <string name="library_Monado_libraryDescription">XR runtime construction kit</string> 12 + <string name="library_Monado_libraryVersion">@string/monado_lib_version</string> 13 + <string name="library_Monado_licenseIds">bsl_1_0</string> 14 + <string name="library_Monado_isOpenSource">true</string> 15 + <string name="library_Monado_repositoryLink">https://gitlab.freedesktop.org/monado/monado</string> 16 + <string name="library_Monado_type">native</string> 17 + 18 + 19 + </resources>
+17
src/xrt/targets/openxr_android/src/main/res/values/library_openxrincludes_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_openxrheaders">type</string> 8 + <string name="library_openxrheaders_author">The Khronos Group Inc.</string> 9 + <string name="library_openxrheaders_authorWebsite">https://khronos.org/openxr</string> 10 + <string name="library_openxrheaders_libraryName">OpenXR Headers</string> 11 + <string name="library_openxrheaders_licenseIds">apache_2_0,mit</string> 12 + <string name="library_openxrheaders_isOpenSource">true</string> 13 + <string name="library_openxrheaders_repositoryLink">https://github.com/KhronosGroup/OpenXR-SDK</string> 14 + <string name="library_openxrheaders_type">native</string> 15 + 16 + 17 + </resources>
+17
src/xrt/targets/openxr_android/src/main/res/values/library_openxrloaderinterfaces_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_openxrloaderinterfaces">type</string> 8 + <string name="library_openxrloaderinterfaces_author">The Khronos Group Inc., Valve Corporation, LunarG, Inc.</string> 9 + <string name="library_openxrloaderinterfaces_authorWebsite">https://khronos.org/openxr</string> 10 + <string name="library_openxrloaderinterfaces_libraryName">OpenXR Loader Interfaces</string> 11 + <string name="library_openxrloaderinterfaces_licenseIds">apache_2_0</string> 12 + <string name="library_openxrloaderinterfaces_libraryVersion">1.0</string> 13 + <string name="library_openxrloaderinterfaces_isOpenSource">true</string> 14 + <string name="library_openxrloaderinterfaces_repositoryLink">https://github.com/KhronosGroup/OpenXR-SDK</string> 15 + <string name="library_openxrloaderinterfaces_type">native</string> 16 + 17 + </resources>
+15
src/xrt/targets/openxr_android/src/main/res/values/library_quatexpmap_strings.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_plu_quatexpmap">type</string> 8 + <string name="library_quatexpmap_author">Sensics, Inc., Collabora, Ltd.</string> 9 + <string name="library_quatexpmap_libraryName">Quaternion Exponential Map</string> 10 + <string name="library_quatexpmap_licenseIds">apache_2_0</string> 11 + <string name="library_quatexpmap_isOpenSource">true</string> 12 + <string name="library_quatexpmap_repositoryLink">https://gitlab.freedesktop.org/monado/monado/-/blob/master/src/xrt/auxiliary/math/m_quatexpmap.cpp</string> 13 + <string name="library_quatexpmap_type">native</string> 14 + 15 + </resources>
+37
src/xrt/targets/openxr_android/src/main/res/values/license_bsl_1_0.xml
··· 1 + <?xml version="1.0" encoding="utf-8"?> 2 + <resources> 3 + <!-- 4 + Copyright 2020, Collabora, Ltd. 5 + SPDX-License-Identifier: BSL-1.0 6 + --> 7 + <string name="define_license_bsl_1_0" translatable="false" /> 8 + <string name="license_bsl_1_0_licenseName" translatable="false">Boost Software License 1.0</string> 9 + <string name="license_bsl_1_0_licenseWebsite" translatable="false">https://www.boost.org/LICENSE_1_0.txt</string> 10 + 11 + <string name="license_bsl_1_0_licenseShortDescription" translatable="false"> 12 + <![CDATA[ 13 + <p>Boost Software License - Version 1.0 - August 17th, 2003</p> 14 + <p>Permission is hereby granted, free of charge, to any person or organization 15 + obtaining a copy of the software and accompanying documentation covered by 16 + this license (the "Software") to use, reproduce, display, distribute, execute, 17 + and transmit the Software, and to prepare derivative works of the Software, 18 + and to permit third-parties to whom the Software is furnished to do so, all 19 + subject to the following:</p> 20 + <p>The copyright notices in the Software and this entire statement, including 21 + the above license grant, this restriction and the following disclaimer, must 22 + be included in all copies of the Software, in whole or in part, and all derivative 23 + works of the Software, unless such copies or derivative works are solely in 24 + the form of machine-executable object code generated by a source language 25 + processor.</p> 26 + <pTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 27 + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 28 + FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE 29 + COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES 30 + OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, 31 + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 32 + THE SOFTWARE.</p> 33 + ]]> 34 + </string> 35 + <!-- name of the license file under the raw folder --> 36 + <string name="license_bsl_1_0_licenseDescription" translatable="false">raw:bsl_1_0</string> 37 + </resources>
-1
src/xrt/targets/openxr_android/src/main/res/values/strings.xml
··· 6 6 7 7 <!-- app_name supplied by build system --> 8 8 9 - <string name="notice">"NOTICE text goes here\n\n\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam bibendum enim urna, consectetur mattis urna consectetur et. Aliquam erat volutpat. Nam dictum mi ac metus ullamcorper, eu finibus diam porta. Sed semper arcu mauris, eu porttitor arcu aliquet a. Donec et mauris id nulla aliquet eleifend. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque elementum velit non sem rutrum euismod.\n\nFusce venenatis justo ut suscipit sodales. Nunc tempor nunc nec est rhoncus varius. Quisque eget posuere sem, ac euismod nibh. Mauris viverra nisi varius varius hendrerit. Donec nibh est, ornare et ante eu, ultricies aliquet dolor. Nam laoreet velit tellus. In non felis sit amet velit mattis porttitor. Pellentesque non quam non erat porta auctor ut eget justo. Praesent non sem vitae metus blandit lacinia fringilla id mauris. Fusce quam magna, sodales eu tincidunt quis, accumsan et purus. Integer ipsum quam, egestas in malesuada id, gravida sed justo. Sed at leo tempus, porta turpis id, hendrerit dui. Nunc lobortis tortor ac orci vehicula, in sollicitudin ex pellentesque. Praesent euismod vulputate felis sed consectetur. Ut vitae quam velit.\n\nQuisque sodales sem nunc, sed semper ligula gravida ac. Nulla sit amet justo et enim suscipit lacinia ut vitae quam. Duis magna ipsum, gravida et eros a, vehicula viverra nibh. Fusce eu nisl ut massa congue auctor. Duis metus neque, egestas in accumsan scelerisque, rutrum efficitur libero. Sed bibendum id ante at pellentesque. Cras eget velit eu diam lacinia fringilla. Proin eleifend sit amet orci ac congue. Proin sed consequat justo. Sed et posuere velit.\n\nMauris consequat dignissim dui, nec ultrices augue elementum nec. Cras feugiat, ante non fringilla rhoncus, dolor metus volutpat eros, at rhoncus purus libero et mi. Sed rutrum iaculis nibh finibus congue. Maecenas sed mi vel orci volutpat sodales. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Duis non tortor aliquam felis mattis ultricies. Etiam iaculis massa id lacus dapibus placerat. Praesent ullamcorper imperdiet risus et commodo.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent scelerisque tellus purus, vel placerat sem fringilla in. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque lobortis mi nec luctus ullamcorper. Praesent diam tortor, accumsan ut vulputate non, volutpat eget ipsum. Sed sit amet ligula dictum, mollis lorem at, venenatis enim. Nullam mi nisl, pharetra suscipit facilisis non, posuere in nunc. Aliquam augue libero, eleifend non sagittis a, varius et arcu. Quisque arcu velit, lobortis eu felis ut, facilisis maximus urna. Integer nisl nisi, interdum sit amet ante nec, laoreet ullamcorper lacus. Donec lobortis non orci ac scelerisque. "</string> 10 9 <string name="powered_by_monado">An XR Runtime, powered by <a href="https://monado.dev">Monado</a></string> 11 10 12 11 </resources>
+1 -1
src/xrt/targets/openxr_android/src/main/res/values/styles.xml
··· 5 5 --> 6 6 7 7 <!-- Base application theme. --> 8 - <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 8 + <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar"> 9 9 <!-- Customize your theme here. --> 10 10 <item name="colorPrimary">@color/colorPrimary</item> 11 11 <item name="colorPrimaryDark">@color/colorPrimaryDark</item>