From e6a90db7214d3c8daf102503a7067d50defd8d92 Mon Sep 17 00:00:00 2001 From: Naveen Singh <snaveen935@gmail.com> Date: Wed, 2 Apr 2025 16:12:32 +0530 Subject: [PATCH] Avoid consuming all key events The dialog's key listener was consuming all key events and led to problems like https://github.com/FossifyOrg/Gallery/issues/128 --- .../org/fossify/gallery/dialogs/PickDirectoryDialog.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/org/fossify/gallery/dialogs/PickDirectoryDialog.kt b/app/src/main/kotlin/org/fossify/gallery/dialogs/PickDirectoryDialog.kt index de61dc0c4..98825c872 100644 --- a/app/src/main/kotlin/org/fossify/gallery/dialogs/PickDirectoryDialog.kt +++ b/app/src/main/kotlin/org/fossify/gallery/dialogs/PickDirectoryDialog.kt @@ -1,7 +1,8 @@ package org.fossify.gallery.dialogs import android.graphics.Color -import android.view.KeyEvent +import android.view.KeyEvent.ACTION_UP +import android.view.KeyEvent.KEYCODE_BACK import android.view.inputmethod.EditorInfo import android.widget.Toast import androidx.appcompat.app.AlertDialog @@ -54,10 +55,12 @@ class PickDirectoryDialog( .setPositiveButton(org.fossify.commons.R.string.ok, null) .setNegativeButton(org.fossify.commons.R.string.cancel, null) .setOnKeyListener { dialogInterface, i, keyEvent -> - if (keyEvent.action == KeyEvent.ACTION_UP && i == KeyEvent.KEYCODE_BACK) { + return@setOnKeyListener if (keyEvent.action == ACTION_UP && i == KEYCODE_BACK) { backPressed() + true + } else { + false } - true } if (showOtherFolderButton) {