We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent c0575fe commit 4ca0046Copy full SHA for 4ca0046
1 file changed
packages/vscode-extension/src/webview/theme.ts
@@ -39,7 +39,13 @@ export const setupThemeSync = (
39
};
40
window.addEventListener('message', onIframeReady);
41
42
- const observer = new MutationObserver(sendTheme);
+ let rafId = 0;
43
+ const sendThemeDebounced = (): void => {
44
+ cancelAnimationFrame(rafId);
45
+ rafId = requestAnimationFrame(sendTheme);
46
+ };
47
+
48
+ const observer = new MutationObserver(sendThemeDebounced);
49
observer.observe(document.body, {
50
attributes: true,
51
attributeFilter: ['class', 'style'],
@@ -48,5 +54,6 @@ export const setupThemeSync = (
54
return () => {
55
window.removeEventListener('message', onIframeReady);
56
observer.disconnect();
57
58
52
59
0 commit comments