[Scummvm-git-logs] scummvm master -> 80e32dbbc851487d2c345882d9906e5d17d16a9c

antoniou79 a.antoniou79 at gmail.com
Sat Oct 17 19:01:54 UTC 2020


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
80e32dbbc8 ANDROID: Do not use or show virtual keyboard when physical is connected


Commit: 80e32dbbc851487d2c345882d9906e5d17d16a9c
    https://github.com/scummvm/scummvm/commit/80e32dbbc851487d2c345882d9906e5d17d16a9c
Author: antoniou (a.antoniou79 at gmail.com)
Date: 2020-10-17T22:00:41+03:00

Commit Message:
ANDROID: Do not use or show virtual keyboard when physical is connected

The toggle button will still be shown, but it won't show the in-app keyboard when pressed, unless the physical keyboard is disconnected

Changed paths:
    backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java


diff --git a/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java b/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java
index 52486c7804..3f1e090791 100644
--- a/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java
+++ b/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java
@@ -10,6 +10,7 @@ import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.content.res.AssetManager;
+import android.content.res.Configuration;
 import android.graphics.Rect;
 //import android.inputmethodservice.Keyboard;
 //import android.inputmethodservice.KeyboardView;
@@ -58,6 +59,8 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.TreeSet;
 
+import static android.content.res.Configuration.KEYBOARD_QWERTY;
+
 //import android.os.Environment;
 //import java.util.List;
 
@@ -124,6 +127,18 @@ public class ScummVMActivity extends Activity implements OnKeyboardVisibilityLis
 		{ 0, R.xml.qwerty_alt_shift }
 	};
 
+	@Override
+	public void onConfigurationChanged(@NonNull Configuration newConfig) {
+		super.onConfigurationChanged(newConfig);
+		if (isHWKeyboardConnected()) {
+			hideScreenKeyboard();
+		}
+	}
+
+	private boolean isHWKeyboardConnected() {
+		return getResources().getConfiguration().keyboard == KEYBOARD_QWERTY;
+	}
+
 	public void showScreenKeyboardWithoutTextInputField(final int keyboard) {
 		if (_main_surface != null) {
 			_inputManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
@@ -431,6 +446,11 @@ public class ScummVMActivity extends Activity implements OnKeyboardVisibilityLis
 	public void showScreenKeyboard() {
 		final boolean bGlobalsCompatibilityHacksTextInputEmulatesHwKeyboard = true;
 		final int dGlobalsTextInputKeyboard = 1;
+
+		if (isHWKeyboardConnected()) {
+			return;
+		}
+
 		if (_main_surface != null) {
 
 			if (bGlobalsCompatibilityHacksTextInputEmulatesHwKeyboard) {




More information about the Scummvm-git-logs mailing list