nativeTheme (Родная тема)
Читайте и реагируйте на изменения в родной цветовой теме Chromium.
Процесс: Главный
События
Объект 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.