From 09e7b14d0ead361c56579d8491015320251bb043 Mon Sep 17 00:00:00 2001 From: Charles Lombardo Date: Mon, 1 May 2023 04:43:04 -0400 Subject: android: Use x-axis animation for navigation rail --- .../java/org/yuzu/yuzu_emu/ui/main/MainActivity.kt | 18 +++++++++++++++--- src/android/app/src/main/res/values-w600dp/bools.xml | 4 ++++ src/android/app/src/main/res/values/bools.xml | 4 ++++ 3 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 src/android/app/src/main/res/values-w600dp/bools.xml create mode 100644 src/android/app/src/main/res/values/bools.xml (limited to 'src') diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/ui/main/MainActivity.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/ui/main/MainActivity.kt index c620c3c7c..5fafc2d2d 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/ui/main/MainActivity.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/ui/main/MainActivity.kt @@ -148,17 +148,29 @@ class MainActivity : AppCompatActivity(), ThemeProvider { return } + val smallLayout = resources.getBoolean(R.bool.small_layout) binding.navigationView.animate().apply { if (visible) { binding.navigationView.visibility = View.VISIBLE - binding.navigationView.translationY = binding.navigationView.height.toFloat() * 2 duration = 300 - translationY(0f) interpolator = PathInterpolator(0.05f, 0.7f, 0.1f, 1f) + + if (smallLayout) { + binding.navigationView.translationY = binding.navigationView.height.toFloat() * 2 + translationY(0f) + } else { + binding.navigationView.translationX = binding.navigationView.width.toFloat() * -2 + translationX(0f) + } } else { duration = 300 - translationY(binding.navigationView.height.toFloat() * 2) interpolator = PathInterpolator(0.3f, 0f, 0.8f, 0.15f) + + if (smallLayout) { + translationY(binding.navigationView.height.toFloat() * 2) + } else { + translationX(binding.navigationView.width.toFloat() * -2) + } } }.withEndAction { if (!visible) { diff --git a/src/android/app/src/main/res/values-w600dp/bools.xml b/src/android/app/src/main/res/values-w600dp/bools.xml new file mode 100644 index 000000000..b6833a702 --- /dev/null +++ b/src/android/app/src/main/res/values-w600dp/bools.xml @@ -0,0 +1,4 @@ + + + false + diff --git a/src/android/app/src/main/res/values/bools.xml b/src/android/app/src/main/res/values/bools.xml new file mode 100644 index 000000000..e50f473fb --- /dev/null +++ b/src/android/app/src/main/res/values/bools.xml @@ -0,0 +1,4 @@ + + + true + -- cgit v1.2.3