From e0cb89825af0cfe1dc78096eb055e61a15bc0860 Mon Sep 17 00:00:00 2001 From: Dominik Guzei Date: Fri, 4 Oct 2019 13:54:46 +0200 Subject: Reference electron webview view more defensively --- src/components/services/content/ServiceWebview.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/components/services/content/ServiceWebview.js b/src/components/services/content/ServiceWebview.js index b3198d36a..4bab4a964 100644 --- a/src/components/services/content/ServiceWebview.js +++ b/src/components/services/content/ServiceWebview.js @@ -37,7 +37,9 @@ class ServiceWebview extends Component { { this.webview = webview; - webview.view.addEventListener('did-stop-loading', this.refocusWebview); + if (webview && webview.view) { + webview.view.addEventListener('did-stop-loading', this.refocusWebview); + } }} autosize src={service.url} -- cgit v1.2.3-70-g09d2 From efac27e19d813db32ae097cf1245e16f2d561c12 Mon Sep 17 00:00:00 2001 From: Dominik Guzei Date: Fri, 4 Oct 2019 13:56:46 +0200 Subject: Only load services when workspaces have been loaded This avoids briefly loading and displaying all services (which is ugly and slow) before it has been determined that there actually is an active workspace. --- src/features/workspaces/store.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/features/workspaces/store.js b/src/features/workspaces/store.js index 7f41cfc88..a9a0b6eff 100644 --- a/src/features/workspaces/store.js +++ b/src/features/workspaces/store.js @@ -141,8 +141,17 @@ export default class WorkspacesStore extends FeatureStore { filterServicesByActiveWorkspace = (services) => { const { activeWorkspace, isFeatureActive } = this; - if (isFeatureActive && activeWorkspace) { - return this.getWorkspaceServices(activeWorkspace); + if (isFeatureActive) { + if (activeWorkspace) { + return this.getWorkspaceServices(activeWorkspace); + } + // There is no active workspace yet but we might be still loading them + if (!getUserWorkspacesRequest.wasExecuted || getUserWorkspacesRequest.isExecutingFirstTime) { + // If so, do not show any services to avoid loading all of them unfiltered + // and then having the filter flashing in (which is ugly and slow). + console.log('return', []); + return []; + } } return services; }; -- cgit v1.2.3-70-g09d2 From 59ae3b148246778b86347686e7ba864883824190 Mon Sep 17 00:00:00 2001 From: Dominik Guzei Date: Fri, 4 Oct 2019 14:52:04 +0200 Subject: Remove console.log --- src/features/workspaces/store.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/features/workspaces/store.js b/src/features/workspaces/store.js index a9a0b6eff..f08323e6c 100644 --- a/src/features/workspaces/store.js +++ b/src/features/workspaces/store.js @@ -149,7 +149,6 @@ export default class WorkspacesStore extends FeatureStore { if (!getUserWorkspacesRequest.wasExecuted || getUserWorkspacesRequest.isExecutingFirstTime) { // If so, do not show any services to avoid loading all of them unfiltered // and then having the filter flashing in (which is ugly and slow). - console.log('return', []); return []; } } -- cgit v1.2.3-70-g09d2