nativeTheme (Родная тема)
Читайте и реагируйте на изменения в родной цветовой теме Chromium.
Process: Main
События
Объект nativeTheme
имеет следующие события:
Событие: 'updated'
Возникает, когда в основной NativeTheme что-то изменилось. Это обычно означает, что значение shouldUseDarkColors
(использовать темные цвета), shouldUseHighContrastColors
(использовать высококонтрастные цвета) или shouldUseInvertedColorScheme
(использовать инвертированную цветовую гамму) - изменилось. Вам придется проверить их для того, чтобы определить, какие из них были изменены.
Свойства
Объект nativeTheme
имеет следующие свойства:
nativeTheme.shouldUseDarkColors
Только чтение
boolean
- в данный момент для текущей OS / Chromium включен темный режим или дается указание отображать пользовательский интерфейс в темном режиме. Если вы хотите изменить это значение, вы должны использовать themeSource
ниже.
nativeTheme.themeSource
Свойство string
может быть system
, light
или dark
. It is used to override and supersede the value that Chromium has chosen to use internally.
Установка этого свойства на system
удалит переопределение и все будет сброшено на установленное ОС по умолчанию. По умолчанию themeSource
является system
.
Параметры свойства dark
имеют следующие эффекты:
nativeTheme.shouldUseDarkColors
при обращении будетtrue
- 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.
- Запрос
prefers-color-scheme
CSS будет соответствовать режимуdark
. - Возникнет событие
updated
Параметры свойства light
имеют следующие эффекты:
nativeTheme.shouldUseDarkColors
при обращении будетfalse
- 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.
- Запрос
prefers-color-scheme
CSS будет соответствовать режимуlight
. - Возникнет событие
updated
Использование этого свойства должно совпадать с классическим "темным режимом" машины в вашем приложении, где у пользователя есть три варианта.
Follow OS
-->themeSource = 'system'
Dark Mode
-->themeSource = 'dark'
Light Mode
-->themeSource = 'light'
В этом случае ваше приложение должно всегда использовать shouldUseDarkColors
, чтобы определить, какой CSS будет применяться.
nativeTheme.shouldUseHighContrastColors
macOS Windows Только чтение
A boolean
for if the OS / Chromium currently has high-contrast mode enabled or is being instructed to show a high-contrast UI.
nativeTheme.shouldUseInvertedColorScheme
macOS Windows Только чтение
boolean
- в данный момент для текущей OS / Chromium включен режим инвертирования цветовой схемы или дается указание отображать пользовательский интерфейс с инвертированной цветовой схемой.
nativeTheme.inForcedColorsMode
Windows Readonly
A boolean
indicating whether Chromium is in forced colors mode, controlled by system accessibility settings. Currently, Windows high contrast is the only system setting that triggers forced colors mode.
nativeTheme.prefersReducedTransparency
Только чтение
A boolean
that indicates the whether the user has chosen via system accessibility settings to reduce transparency at the OS level.