From d56a3c58101a92625bd21ab155aae855fdeda823 Mon Sep 17 00:00:00 2001 From: Christopher Willis-Ford <7019101+cwillisf@users.noreply.github.com> Date: Wed, 2 Dec 2020 14:03:57 -0800 Subject: [PATCH] keep telemetry modal state in sync with main process --- src/renderer/app.jsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/renderer/app.jsx b/src/renderer/app.jsx index aaff2ae..5d728a5 100644 --- a/src/renderer/app.jsx +++ b/src/renderer/app.jsx @@ -99,15 +99,18 @@ const ScratchDesktopHOC = function (WrappedComponent) { } handleTelemetryModalOptIn () { ipcRenderer.send('setTelemetryDidOptIn', true); + this.forceUpdate(); } handleTelemetryModalOptOut () { ipcRenderer.send('setTelemetryDidOptIn', false); + this.forceUpdate(); } handleUpdateProjectTitle (newTitle) { this.setState({projectTitle: newTitle}); } render () { - const shouldShowTelemetryModal = (typeof ipcRenderer.sendSync('getTelemetryDidOptIn') !== 'boolean'); + const currentTelemetryState = ipcRenderer.sendSync('getTelemetryDidOptIn'); + const shouldShowTelemetryModal = (typeof currentTelemetryState !== 'boolean'); const childProps = omit(this.props, Object.keys(ScratchDesktopComponent.propTypes)); @@ -116,6 +119,7 @@ const ScratchDesktopHOC = function (WrappedComponent) { canModifyCloudData={false} canSave={false} isScratchDesktop + isTelemetryEnabled={currentTelemetryState} showTelemetryModal={shouldShowTelemetryModal} onClickAbout={[ {