MCPcopy
hub / github.com/darkreader/darkreader / MV3syncSystemColorStateManager

Method MV3syncSystemColorStateManager

src/background/extension.ts:120–136  ·  view source on GitHub ↗
(isDark: boolean | null)

Source from the content-addressed store, hash-verified

118 }
119
120 private static async MV3syncSystemColorStateManager(isDark: boolean | null): Promise<void> {
121 if (!__CHROMIUM_MV3__) {
122 return;
123 }
124 if (!Extension.systemColorStateManager) {
125 Extension.systemColorStateManager = new StateManager<SystemColorState>(Extension.SYSTEM_COLOR_LOCAL_STORAGE_KEY, Extension, {
126 wasLastColorSchemeDark: isDark,
127 }, logWarn);
128 }
129 if (isDark === null) {
130 // Attempt to restore data from storage
131 return Extension.systemColorStateManager.loadState();
132 } else if (Extension.wasLastColorSchemeDark !== isDark) {
133 Extension.wasLastColorSchemeDark = isDark;
134 return Extension.systemColorStateManager.saveState();
135 }
136 }
137
138 private static alarmListener = (alarm: chrome.alarms.Alarm): void => {
139 if (alarm.name === Extension.ALARM_NAME) {

Callers 2

startMethod · 0.80
ExtensionClass · 0.80

Calls 2

loadStateMethod · 0.45
saveStateMethod · 0.45

Tested by

no test coverage detected