Lee y respondo a los cambios en el tema de color nativo de Chromium.
Proceso: principal</0>
El módulo nativo nativeTheme
emite los siguientes eventos:
Emitido cuando algo en el NativeTheme subyacente ha cambiado. Esto normalmente significa que le valor de shouldUseDarkColors
, shouldUseHighContrastColors
o shouldUseInvertedColorScheme
ha cambiado. Tendrás que comprobarlos para determinar cual ha cambiado.
El módulo nativeTheme
tiene las siguientes propiedades:
Un Boolean
para si el OS / Chromium actualmente tiene un modo oscuro activado o está siendo instruido para mostrar una UI de estilo oscuro. Si quieres modificar este valor debes utilizar themeSource
acontinuación.
Una propiedad String
que puede ser system
, light
o dark
. It is used to override and supersede the value that Chromium has chosen to use internally.
Estableciendo esta propiedad a system
eliminará la sobreescritura y todo será restablecido a los valores predeterminados del sistema operativo. Por defecto themeSource
es system
.
Estableciendo esta propiedad a dark
tendrá los siguientes efectos:
nativeTheme.shouldUseDarkColors
serátrue
cuando se accede- Any UI Electron renders on Linux and Windows including context menus, devtools, etc. will use the dark UI.
- Any UI the OS renders on macOS including menus, window frames, etc. will use the dark UI.
- La consulta CSS
prefers-color-scheme
coincidirá con el mododark
. - El evento
updated
será emitido
Estableciendo esta propiedad a light
tendrá los siguientes efectos:
nativeTheme.shouldUseDarkColors
seráfalse
cuando se acceda- Any UI Electron renders on Linux and Windows including context menus, devtools, etc. will use the light UI.
- Any UI the OS renders on macOS including menus, window frames, etc. will use the light UI.
- La consulta CSS
prefers-color-scheme
coincidirá con el modolight
. - El evento
updated
será emitido
El uso de esta propiedad debe alinearse con una máquina de estado clásica de "modo oscuro" en su aplicación, donde el usuario tiene tres opciones.
Follow OS
-->themeSource = 'system'
Dark Mode
-->themeSource = 'dark'
Light Mode
-->themeSource = 'light'
Su aplicación debe usar siempre shouldUseDarkColors
para determinar que CSS aplicar.
A Boolean
for if the OS / Chromium currently has high-contrast mode enabled or is being instructed to show a high-contrast UI.
A Boolean
for if the OS / Chromium currently has an inverted color scheme or is being instructed to use an inverted color scheme.