summaryrefslogtreecommitdiff
path: root/Source/Android/app/src/main/java
diff options
context:
space:
mode:
authorCharles Lombardo <clombardo169@gmail.com>2023-03-01 13:47:28 -0500
committerCharles Lombardo <clombardo169@gmail.com>2023-03-01 13:47:28 -0500
commit3935449ca01e6bab39b1997d9e5cf999a160e48f (patch)
treee22282806bc6ae26f613d308c569f3f223714bd4 /Source/Android/app/src/main/java
parent6bc4ae74386640645b7bf88026f2dae48d48787f (diff)
Android: Convert TwoPaneOnBackPressedCallback to Kotlin
Diffstat (limited to 'Source/Android/app/src/main/java')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.java56
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.kt38
2 files changed, 38 insertions, 56 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.java
deleted file mode 100644
index 0ab829fa77..0000000000
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.java
+++ /dev/null
@@ -1,56 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-package org.dolphinemu.dolphinemu.ui;
-
-import android.content.Context;
-import android.view.View;
-import android.view.inputmethod.InputMethodManager;
-
-import androidx.activity.OnBackPressedCallback;
-import androidx.annotation.NonNull;
-import androidx.slidingpanelayout.widget.SlidingPaneLayout;
-
-public class TwoPaneOnBackPressedCallback extends OnBackPressedCallback
- implements SlidingPaneLayout.PanelSlideListener
-{
- private final SlidingPaneLayout mSlidingPaneLayout;
-
- public TwoPaneOnBackPressedCallback(@NonNull SlidingPaneLayout slidingPaneLayout)
- {
- super(slidingPaneLayout.isSlideable() && slidingPaneLayout.isOpen());
- mSlidingPaneLayout = slidingPaneLayout;
- slidingPaneLayout.addPanelSlideListener(this);
- }
-
- @Override
- public void handleOnBackPressed()
- {
- mSlidingPaneLayout.close();
- }
-
- @Override
- public void onPanelSlide(@NonNull View panel, float slideOffset)
- {
- }
-
- @Override
- public void onPanelOpened(@NonNull View panel)
- {
- setEnabled(true);
- }
-
- @Override
- public void onPanelClosed(@NonNull View panel)
- {
- closeKeyboard();
- setEnabled(false);
- }
-
- private void closeKeyboard()
- {
- InputMethodManager manager = (InputMethodManager) mSlidingPaneLayout.getContext()
- .getSystemService(Context.INPUT_METHOD_SERVICE);
- manager.hideSoftInputFromWindow(mSlidingPaneLayout.getRootView().getWindowToken(), 0);
- }
-}
-
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.kt
new file mode 100644
index 0000000000..e9fa0679d2
--- /dev/null
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/TwoPaneOnBackPressedCallback.kt
@@ -0,0 +1,38 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+package org.dolphinemu.dolphinemu.ui
+
+import android.content.Context
+import android.view.View
+import android.view.inputmethod.InputMethodManager
+import androidx.activity.OnBackPressedCallback
+import androidx.slidingpanelayout.widget.SlidingPaneLayout
+import androidx.slidingpanelayout.widget.SlidingPaneLayout.PanelSlideListener
+
+class TwoPaneOnBackPressedCallback(private val slidingPaneLayout: SlidingPaneLayout) :
+ OnBackPressedCallback(slidingPaneLayout.isSlideable && slidingPaneLayout.isOpen),
+ PanelSlideListener {
+ init {
+ slidingPaneLayout.addPanelSlideListener(this)
+ }
+
+ override fun handleOnBackPressed() {
+ slidingPaneLayout.close()
+ }
+
+ override fun onPanelSlide(panel: View, slideOffset: Float) {}
+ override fun onPanelOpened(panel: View) {
+ isEnabled = true
+ }
+
+ override fun onPanelClosed(panel: View) {
+ closeKeyboard()
+ isEnabled = false
+ }
+
+ private fun closeKeyboard() {
+ val manager = slidingPaneLayout.context
+ .getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
+ manager.hideSoftInputFromWindow(slidingPaneLayout.rootView.windowToken, 0)
+ }
+}