From fa5e7cceb1e86ac2e10e6205ba77ad792fe6643c Mon Sep 17 00:00:00 2001 From: Ruben van de Ven Date: Mon, 12 Oct 2020 17:25:26 +0200 Subject: [PATCH] Fix cloning when editing someone else's project --- client/modules/IDE/actions/project.js | 2 +- client/modules/IDE/components/Toolbar.jsx | 9 ++++++--- client/modules/IDE/pages/IDEView.jsx | 1 + client/styles/components/_toolbar.scss | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/client/modules/IDE/actions/project.js b/client/modules/IDE/actions/project.js index b3da6819..8d1c6383 100644 --- a/client/modules/IDE/actions/project.js +++ b/client/modules/IDE/actions/project.js @@ -262,7 +262,7 @@ function generateNewIdsForChildren(file, files) { export function cloneProject(id) { return (dispatch, getState) => { dispatch(setUnsavedChanges(false)); - new Promise((resolve, reject) => { + return new Promise((resolve, reject) => { if (!id) { resolve(getState()); } else { diff --git a/client/modules/IDE/components/Toolbar.jsx b/client/modules/IDE/components/Toolbar.jsx index 1af979cc..29572cb8 100644 --- a/client/modules/IDE/components/Toolbar.jsx +++ b/client/modules/IDE/components/Toolbar.jsx @@ -58,11 +58,14 @@ class Toolbar extends React.Component { } render() { + const canEditProjectName = this.canEditProjectName(); + const playButtonClass = classNames({ 'toolbar__play-button': true, 'toolbar__play-button--selected': this.props.isPlaying, 'toolbar__play-button--saved': this.props.isSaved, - 'toolbar__play-button--unsaved': !this.props.isSaved + 'toolbar__play-button--unsaved': !this.props.isSaved, + 'toolbar__play-button--clone': this.props.unsavedChanges && !canEditProjectName }); const stopButtonClass = classNames({ 'toolbar__stop-button': true, @@ -77,8 +80,6 @@ class Toolbar extends React.Component { 'toolbar__project-name-container--editing': this.props.project.isEditingName }); - const canEditProjectName = this.canEditProjectName(); - return (