Skip to content

カスタム QWERTY のポップアップサイズ設定を独立化 / Add dedicated custom QWERTY popup sizing - #1303

Open
KazumaProject wants to merge 1 commit into
codex/qwerty-templatesfrom
codex/custom-qwerty-popup-settings
Open

KazumaProject wants to merge 1 commit into
codex/qwerty-templatesfrom
codex/custom-qwerty-popup-settings

Conversation

@KazumaProject

@KazumaProject KazumaProject commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

Stack: #1302 → this PR / この PR。Base: codex/qwerty-templates。

日本語

カスタム QWERTY 型キーのタップ・長押しポップアップは標準 QWERTY とサイズ設定を共用していました。また、新しい設定 UI の遷移先登録がなく、スキン付きタッププレビューでは倍率と文字サイズが反映されない経路がありました。

  • カスタム専用に、タップ時・長押し時それぞれの大きさ(50〜200%)と文字サイズ(8〜48sp)を設定できるようにします。
  • 新旧両方の設定 UI から専用画面を開けるようにします。通常のキー・文字サイズは既存のカスタムキーボード設定を使用し、専用画面にその設定への入口を設けます。
  • 初回と旧形式の設定バックアップ復元時には、従来の共用値を専用項目に引き継ぎます。その後は標準 QWERTY と独立して保存・復元します。
  • カスタム QWERTY の全4スキンでサイズ倍率と文字サイズを反映します。スキンのプレビュー寸法に倍率を適用し、スキンが文字サイズを上書きした後に設定値を適用します。
  • IME を再起動せず設定変更を反映する処理を追加します。

検証

  • QWERTY 入力コントローラーのユニットテスト 2件成功。全4スキンでタップ/長押しの独立した倍率、プレビュー文字サイズ、キー本体の寸法維持を確認。
  • アプリの専用設定・既存スキン設定のユニットテスト 7件成功。値の引き継ぎ、独立性、範囲、部分移行、新旧設定カタログ、バックアップ往復・旧形式復元を確認。
  • Lite Standard Debug 本体・AndroidTest APK のビルド成功。
  • Android 35 arm64 エミュレーターの実 IME(分離した Lite Debug アプリ ID):新旧設定 UI からの遷移、画面再生成後の保存値、通常キー設定への遷移を確認。標準/ Cupertino Light の2スキンでタップ 50%→150%、長押し 80%→140% の実際の寸法と文字サイズ・候補入力を確認し、標準 QWERTY の保存値が変わらないことを確認(外部 instrumentation 1件成功)。
  • 実機、Full/Release ビルド、フローティング・分割面での動作は未検証。

English

Custom QWERTY keys previously shared popup size settings with standard QWERTY. The modern settings catalog lacked their navigation mapping, and skinned tap previews could ignore size and text-size settings.

  • Add independent custom-key settings for tap and long-press popup size (50–200%) and text size (8–48sp).
  • Expose the dedicated screen in both modern and legacy settings. Normal key/text sizing continues to use the existing custom keyboard sizing screen, linked from this screen.
  • Initialize the new values from the previously shared settings on first use/startup and legacy backup restore, preserving existing custom values thereafter.
  • Honor size and text-size settings across all four custom QWERTY skins, including skinned preview geometry and skin text-size overrides.
  • Apply changes without restarting the IME.

Validation

  • 2 controller unit tests passed, including independent scaling and preview text-size checks across all four skins.
  • 7 app unit tests passed for migration, independence, bounds, partial migration, both settings catalogs, backups, and existing skin preferences.
  • Lite Standard Debug app and AndroidTest APK builds passed.
  • Android 35 arm64 emulator, isolated Lite Debug app, actual IME: both settings routes, state restoration, normal-key sizing navigation, popup dimensions/text size, and candidate input passed. Tested tap scaling 50%→150% and long-press scaling 80%→140% with Default and Cupertino Light; standard QWERTY preferences remained unchanged (1 external instrumentation test passed).
  • Physical devices, Full/Release builds, and floating/split-surface device behavior were not tested.

スクリーンショット / Screenshots

Android 35 エミュレーター上の設定画面と実 IME です。通常表示・通常タップのスクショは親 PR #1302 にも追加しています。画像・APK・ログ・一時検証コードはコミットしていません。
Settings and actual IME on the Android 35 emulator. Normal-key and tap-preview screenshots were also added to parent PR #1302. Images, APKs, logs, and temporary verification code are not committed.

設定画面 / Settings 長押しの設定 / Long-press controls
設定画面 / Settings 長押しの設定 / Long-press controls
タップ 50%・18sp / Tap 50%, 18sp タップ 150%・36sp / Tap 150%, 36sp
タップ 50%・18sp / Tap 50%, 18sp タップ 150%・36sp / Tap 150%, 36sp
長押し 80%・18sp / Hold 80%, 18sp 長押し 140%・32sp / Hold 140%, 32sp
長押し 80%・18sp / Hold 80%, 18sp 長押し 140%・32sp / Hold 140%, 32sp
Cupertino:タップ 150%・36sp / Tap Cupertino:長押し 140%・32sp / Hold
Cupertino:タップ 150%・36sp / Tap Cupertino:長押し 140%・32sp / Hold

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant