From c80aad5b4ab70462f39b5073c936adf9f54c5fd3 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Sun, 27 Feb 2022 18:15:43 +0100 Subject: fix(service-preload): Browser view canvas background MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Due to `BrowserView.setBackgroundColor` not working under linux, we have to inject styles to make sure our `BrowserView` is opaque. We try to cover more edge cases to avoid the interference of the injected style and the web site's own styles according to the CSS specification: https://www.w3.org/TR/css-backgrounds-3/#body-background In particular, we avoid overwriting the styles for the `html` element if `body` already has an opaque background so that the background of `body` can extend to the whole canvas. This might still interfere with the web site if it updates the background color on the fly (dark mode), but a reload should solve most of such issues. Hopefully, after https://github.com/electron/electron/issues/32898 is resolved, we can get rid of the hack entirely. Signed-off-by: Kristóf Marussy --- packages/main/src/stores/MainStore.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages/main') diff --git a/packages/main/src/stores/MainStore.ts b/packages/main/src/stores/MainStore.ts index bf351d7..21d7a63 100644 --- a/packages/main/src/stores/MainStore.ts +++ b/packages/main/src/stores/MainStore.ts @@ -87,7 +87,7 @@ const MainStore = types self.settings.setShowLocationBar(action.showLocationBar); break; case 'reload-all-services': - // TODO + self.services.forEach((service) => service.reload()); break; case 'dispatch-service-action': { const { serviceId, serviceAction } = action; -- cgit v1.2.3-54-g00ecf