From 00e0967fa103574cd244ec742a014c9feaa12e77 Mon Sep 17 00:00:00 2001 From: Mengchou97 Date: Wed, 10 Jun 2026 13:49:28 +0700 Subject: [PATCH] updated Keyman standard header and added comment to the onWindowFocusChanged --- .../com/tavultesoft/kmapro/GetStartedActivity.java | 11 +++++++++++ .../com/tavultesoft/kmapro/KeymanSettingsKeys.java | 8 ++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/GetStartedActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/GetStartedActivity.java index ce414fbf26..7f95881901 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/GetStartedActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/GetStartedActivity.java @@ -177,6 +177,17 @@ public class GetStartedActivity extends BaseActivity { super.onWindowFocusChanged(hasFocus); if (hasFocus) { if (openDefaultKeyboardPickerOnly) { + + // When the user taps 'Set Default Keyboard' from the drawer, + // GetStartedActivity is launched in picker-only mode. But you + // can't open the system keyboard picker directly from a menu + // tap — it requires a window with focus. So we use + // onWindowFocusChanged as the trigger point: first focus opens + // the picker, and when the user dismisses it and focus returns + // to this activity, we call finish() to close it. The activity + // is essentially just a invisible bridge to show the system + // picker. + if (!didAutoOpenDefaultKeyboardPicker) { didAutoOpenDefaultKeyboardPicker = true; InputMethodManager imManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsKeys.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsKeys.java index 7045c2d54d..f2a57798ec 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsKeys.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsKeys.java @@ -1,5 +1,9 @@ -/** - * Copyright (C) 2017 SIL International. All rights reserved. +/* + * Keyman is copyright (C) SIL Global. MIT License. + * + * Created by MengchouChey on 2026-06-10 + * + * (These are the keys used for KeymanSettingsActivity and KeymanSettingsFragment) */ package com.tavultesoft.kmapro;