Subscribe to theme change in settings

This commit is contained in:
Fedor Indutny 2021-09-29 11:37:30 -07:00 committed by GitHub
parent 64fc234490
commit bdf1287403
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 50 additions and 13 deletions

View file

@ -0,0 +1,25 @@
// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import { ipcRenderer as ipc } from 'electron';
import { explodePromise } from '../util/explodePromise';
let preferencesChangeResolvers = new Array<() => void>();
ipc.on('preferences-changed', _event => {
const resolvers = preferencesChangeResolvers;
preferencesChangeResolvers = [];
for (const resolve of resolvers) {
resolve();
}
});
export function waitForSettingsChange(): Promise<void> {
const { promise, resolve } = explodePromise<void>();
preferencesChangeResolvers.push(resolve);
return promise;
}