Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

色テーマをシステムのテーマに追従する設定 #1139

Open
2 of 3 tasks
kat0h opened this issue Jan 22, 2023 · 3 comments
Open
2 of 3 tasks

色テーマをシステムのテーマに追従する設定 #1139

kat0h opened this issue Jan 22, 2023 · 3 comments

Comments

@kat0h
Copy link
Contributor

kat0h commented Jan 22, 2023

内容

現在VOICEVOXには標準で「デフォルト(ライトテーマ)」と「ダーク」の2種類のテーマが付属しています。
テーマはユーザー側で明示的に切り替える必要がありますが、ElectronにはWindows/macOS環境でシステムのテーマを検知するAPIがあるためVOICEVOXでもこのAPIを使って自動でテーマを切り替えることができると思います。

systemtheme.mp4

この動画は実際に機能を実装してみたものです。

Pros 良くなる点

多くのアプリケーションはOSの色テーマの設定に自動で追従します。同じように動作する方が自然です。

Cons 悪くなる点

この機能は「デフォルト(ライトテーマ)」と「ダーク」テーマが存在することを強く仮定します。テーマ名をソースにハードコードすることは避けたいですがハードコードしないようにするには手間がかかります。
https://github.com/VOICEVOX/voicevox/tree/main/public/themes

また、#865 に逆行する仕様です。

実現方法

https://github.com/kat0h/voicevox/tree/system_theme
手元のforkに動作するサンプルがあります。

diff:
kat0h/voicevox@main...3dcd2d9

VOICEVOXのバージョン

04673ef

OSの種類/ディストリ/バージョン

  • Windows
  • macOS
  • Linux

その他

@kat0h
Copy link
Contributor Author

kat0h commented Jan 22, 2023

UIについて

サンプルでは設定ダイアログに「システムテーマを使う」オプションを作成しました。
テーマ  [システムに合わせる|デフォルト|ダーク]のようにした方が自然かもしれません。(VOICEVOX Communityより)
スクリーンショット 0005-01-23 午前1 26 53

@Hiroshiba
Copy link
Member

Hiroshiba commented Jan 22, 2023

issue作成ありがとうございます!ぜひプルリクエストを頂ければ!!!

UIに関しては テーマ  [システムに合わせる|デフォルト|ダーク] の方が良いかなと思いました!
理由は単純に、分けた場合にどちらが優先されるのか一瞬混乱しそうなためです。
(極端ですが、「テーマ」の設定が「システムテーマ」に上書きされることを知らずバグだと思う人もいるかも、みたいな感じです。)

ここからは迷ってる議論ポイントですが、デフォルトはできればライトテーマにしたいなと思っています。
ライトテーマでのデザインは注力していますが、ダークは細部まで気を配れてないので、こっちがおすすめだと言い訳したいためです。。
そういう意味でライトテーマは「デフォルト」という表記でもいいかなと思いました!

@kat0h
Copy link
Contributor Author

kat0h commented Jan 23, 2023

コメントを反映したPRを作成しました! #1141

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

No branches or pull requests

2 participants