秀丸とブラウザ枠とダークモードの認識ズNo.11705
こみやんま さん 24/06/13 13:18
 
■ブラウザ枠やレンダリング枠の(ダークモード|ホワイトモード)を秀丸の本体と合
わせては?

 ・今は秀丸は秀丸で「既定のアプリがダークモード && 「秀丸の設定のダーク
モード」で、
  「両方がダークモード」の時だけダークモード

 ・一方、ブラウザ枠やレンダリング枠は、「既定のアプリがダークモード」だと、
  そのまま「ダークモード」→秀丸が何も制御していなくともWindowsがWebView2
コンポーネントに伝搬しているのでそうなっている。
  (次のブラウザコンポーネントとダークモードの話へと続く)

 ・結論:「秀丸本体の通常モード・ダークモード」の値に合わせて

  webView.CoreWebView2.Profile.PreferredColorScheme = Microsoft.Web.WebVie
w2.Core.CoreWebView2PreferredColorScheme.Light;
  or
  webView.CoreWebView2.Profile.PreferredColorScheme = Microsoft.Web.WebVie
w2.Core.CoreWebView2PreferredColorScheme.Dark;

  を切り替え設定しては? といった話し。



■ブラウザコンポーネントとダークモード

これは厳密には秀丸の話ではなく、「WebView2のコンポーネントとHTML/CSS」の話で
すが、
一番下に示しているHTMLをブラウザ枠で「以下のA,B、Cの3通り」でひらいてみ
てください。

Cの時に、秀丸本体とブラウザ枠の色が「本体はライト」「コンポーネントはダー
ク」とずれています。
(これをちゃんとWebView2に秀丸本体のカラー情報を伝達して合わせては?という話)


A-@ 秀丸はダークモードでチェック
 -A Windowsで「個人設定」の「色」の「既定のアプリ色」を「ダークモード」にする

 以上で、秀丸もブラウザ枠も「両方ダークモード」

B-@ 秀丸はダークモードにチェックが入っていない
 -A Windowsで「個人設定」の「色」の「既定のアプリ色」を「ライトモード」にする

 以上で、秀丸もブラウザ枠も「両方ライトモード」

C-@ 秀丸はダークモードにチェックが入っていない
 -A Windowsで「個人設定」の「色」の「既定のアプリ色」を「ダークモード」にする

 以上で、秀丸はライトモードだが、ブラウザ枠はダークモード (★ここで秀丸と
ブラウザ枠に「状況把握」の食い違いが起こる)




■ブラウザ枠(やレンダリング枠)はWebView2コンポーネントであるから、秀丸とは無
関係に
 そのコンポーネント自体がダークモードかどうかのレンダリング情報を持っている

<!DOCTYPE html>
<html>

<head>
    <title>ダークモードはブラウザ枠やレンダリング枠でも有効</title>
    <style>
        @media (prefers-color-scheme: light) {
            body {
                background-color: #fff;
                color: #222;
            }
        }

        @media (prefers-color-scheme: dark) {
            body {
                background-color: #222;
                color: #eee;
            }
        }
    </style>
</head>
<body>
    <h1 id="kami">色...</h1>
    <script>
        let kamiEle = document.getElementById("kami");
        // 今レンダリングしてるブラウザコンポーネントはダークモードなの?
        if (window.matchMedia && window.matchMedia('(prefers-color-scheme: d
ark)').matches) {
            kamiEle.innerText = "ダークモード";
        } else {
            kamiEle.innerText = "ホワイトモード";
        }
    </script>
</body>

</html>

[ ]
RE:11705 秀丸とブラウザ枠とダークモードNo.11706
こみやんま さん 24/06/13 13:25
 
Microsoft/C++での参考のURL

https://learn.microsoft.com/ja-jp/microsoft-edge/webview2/reference/win32/icorewebview2profile?view=webview2-1.0.2535.41#put_preferredcolorscheme

[ ]
RE:11705 秀丸とブラウザ枠とダークモードNo.11707
秀丸担当 さん 24/06/13 15:08
 
そのほうがいいかもしれないです。
そのようにしてみます。

[ ]