[PK Setting] update searchable if page is not visible

if PK setting is not available, also make it not searchable.

Test: verified on device
Bug: 301881819
Change-Id: I6e71634ce5ddc6d5db3d31f5614fef7ccabc6d3d
diff --git a/src/com/android/settings/inputmethod/ModifierKeysSettings.java b/src/com/android/settings/inputmethod/ModifierKeysSettings.java
index 2353c2c..f174598 100644
--- a/src/com/android/settings/inputmethod/ModifierKeysSettings.java
+++ b/src/com/android/settings/inputmethod/ModifierKeysSettings.java
@@ -58,7 +58,8 @@
                 protected boolean isPageSearchEnabled(Context context) {
                     return FeatureFlagUtils
                             .isEnabled(
-                                    context, FeatureFlagUtils.SETTINGS_NEW_KEYBOARD_MODIFIER_KEY);
+                                    context, FeatureFlagUtils.SETTINGS_NEW_KEYBOARD_MODIFIER_KEY)
+                            && !PhysicalKeyboardFragment.getHardKeyboards(context).isEmpty();
                 }
             };
 }
diff --git a/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java b/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java
index 1ca9ee6..0e95840 100644
--- a/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java
+++ b/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java
@@ -474,5 +474,10 @@
                     sir.xmlResId = R.xml.physical_keyboard_settings;
                     return Arrays.asList(sir);
                 }
+
+                @Override
+                protected boolean isPageSearchEnabled(Context context) {
+                    return !getHardKeyboards(context).isEmpty();
+                }
             };
 }