このガイドは、主にアプリの配色テーマを変更する PR を出したい外部コントリビューター向けです。
- 既存テーマ(通常は
.dimまたは.lightsOut)をコピーし、例えば.myThemeに名前を変更します。 - 必須の色フィールド(
primary、themePrimary、qb*、g*、入力欄/メッセージ色など)をすべて設定します。 isLightを正しく設定します(ライトテーマはtrue、ダークテーマはfalse)。displayNameに新しい分岐を追加します。- 永続化互換のため、
fromStringとtoStringも更新します。
itemsリストに新しいFormItemを追加します。_onDimPressed/_onLightsOutPressedと同様のハンドラーを追加します。P.preference.preferredDarkCustomTheme.qを更新halo_state.preferredDarkCustomThemeを保存
- 選択状態の表示は
preferredDarkCustomTheme == .yourThemeを再利用します。
注意: 現在の構成は「ライトテーマ 1 つ + ダークテーマ複数」です。ライトテーマを追加する場合は lib/store/app.dart の同期ロジックも調整してください。
- 起動引数:
--dart-define=debuggingThemes=true - デバッグ時の動作: アプリが 1 秒ごとに
.lightと現在のダーク設定(preferredDarkCustomTheme)を切り替えます。 - 用途: 同じ画面で明暗テーマのコントラスト、可読性、適用漏れを素早く確認できます。
- プラットフォーム別の launch 設定(例: macOS / Android / iOS)を用意します。
compoundsでそれらをまとめます(例:all (Halo))。- compound 設定を実行し、複数プラットフォーム UI を並行起動します。
任意: 対象設定に --dart-define=debuggingThemes=true を追加すると、自動明暗切り替えで確認できます。