From fb8b28341c26258f29b261419a8be40d8dde0d1d Mon Sep 17 00:00:00 2001 From: Vesa Luusua Date: Fri, 26 Jan 2018 15:49:25 +0200 Subject: [PATCH] Create listing flow: smooth scrolling polyfill to scroll to correct tab --- src/components/EditListingWizard/EditListingWizard.js | 6 ++++++ src/components/EditListingWizard/EditListingWizardTab.js | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/src/components/EditListingWizard/EditListingWizard.js b/src/components/EditListingWizard/EditListingWizard.js index 0206f3bb..a23d7c42 100644 --- a/src/components/EditListingWizard/EditListingWizard.js +++ b/src/components/EditListingWizard/EditListingWizard.js @@ -101,6 +101,11 @@ class EditListingWizard extends Component { // Having this info in state would trigger unnecessary rerendering this.hasScrolledToTab = false; + this.handleCreateFlowTabScrolling = this.handleCreateFlowTabScrolling.bind(this); + } + + handleCreateFlowTabScrolling(shouldScroll) { + this.hasScrolledToTab = shouldScroll; } render() { @@ -155,6 +160,7 @@ class EditListingWizard extends Component { params={params} listing={listing} marketplaceTabs={TABS} + handleCreateFlowTabScrolling={this.handleCreateFlowTabScrolling} /> ); })} diff --git a/src/components/EditListingWizard/EditListingWizardTab.js b/src/components/EditListingWizard/EditListingWizardTab.js index 750c3851..04e3f569 100644 --- a/src/components/EditListingWizard/EditListingWizardTab.js +++ b/src/components/EditListingWizard/EditListingWizardTab.js @@ -44,6 +44,7 @@ const EditListingWizardTab = props => { history, images, listing, + handleCreateFlowTabScrolling, onCreateListing, onUpdateListing, onCreateListingDraft, @@ -68,6 +69,9 @@ const EditListingWizardTab = props => { if (isNew) { const onUpsertListingDraft = currentListing.id ? onUpdateListingDraft : onCreateListingDraft; onUpsertListingDraft(updateValues); + + // Create listing flow: smooth scrolling polyfill to scroll to correct tab + handleCreateFlowTabScrolling(false); // Redirect to next tab const pathParams = pathParamsToNextTab(params, tab, marketplaceTabs); history.push( @@ -225,6 +229,7 @@ EditListingWizardTab.propTypes = { images: array, }), + handleCreateFlowTabScrolling: func.isRequired, onCreateListing: func.isRequired, onUpdateListing: func.isRequired, onCreateListingDraft: func.isRequired,