如何让 Electron 使用 chrome://flags/#enable-force-dark

How to enable Electron to use chrome://flags/#enable-force-dark

我们发现 chrome 标志 chrome://flags/#enable-force-dark 强制所有网站使用暗模式,实际上它非常好!

但是,我们无法让这个标志在 Electron 中工作。这是我们尝试过的:

app.commandLine.appendSwitch('enable-force-dark');
app.commandLine.appendSwitch('force-dark-mode');
app.commandLine.appendSwitch('enable-features', 'enableForceDark');
app.commandLine.appendSwitch('enable-features', 'WebUIDarkMode');

可悲的是,其中 none 有效。任何指针将不胜感激。

Electron docs 指定支持的命令行开关列表(其中一些确实来自 Chromium)。不幸的是,--enable-force-dark 不在该列表中。

那是因为它应该是:

app.commandLine.appendSwitch('enable-features', 'WebContentsForceDark');

您可以通过启用它并转到 chrome://version 并查看命令行来找到它。

但是在这种情况下,您应该使用 themeSource

编辑:实际上,我猜这与强制暗模式不同(不确定您是否应该这样做),但如果您愿意,我想也许您应该这样做:

    new BrowserWindow({
      webPreferences: {
        enableBlinkFeatures: "WebContentsForceDark",
      },
      ...

虽然我还没有尝试过,但它似乎很糟糕。我无法通过 CSSColorSchemeUARendering.

的任何方法使其工作