Do not scroll the columns area due to redirection (#4541)
Commit 9d1f8b9d6a scrolls the columns area
when the route changes since the user is likely to want to see the
rightmost column in such cases.
However, redirection is automatic and does not indicate users' intension.
Do not scroll the columns area due to one.
	
	
This commit is contained in:
		
					parent
					
						
							
								0827c09c44
							
						
					
				
			
			
				commit
				
					
						9958eba356
					
				
			
		
					 3 changed files with 20 additions and 8 deletions
				
			
		|  | @ -1,12 +1,12 @@ | |||
| import React from 'react'; | ||||
| import classNames from 'classnames'; | ||||
| import Redirect from 'react-router-dom/Redirect'; | ||||
| import NotificationsContainer from './containers/notifications_container'; | ||||
| import PropTypes from 'prop-types'; | ||||
| import LoadingBarContainer from './containers/loading_bar_container'; | ||||
| import TabsBar from './components/tabs_bar'; | ||||
| import ModalContainer from './containers/modal_container'; | ||||
| import { connect } from 'react-redux'; | ||||
| import { Redirect, withRouter } from 'react-router-dom'; | ||||
| import { isMobile } from '../../is_mobile'; | ||||
| import { debounce } from 'lodash'; | ||||
| import { uploadCompose } from '../../actions/compose'; | ||||
|  | @ -48,6 +48,7 @@ const mapStateToProps = state => ({ | |||
| }); | ||||
| 
 | ||||
| @connect(mapStateToProps) | ||||
| @withRouter | ||||
| export default class UI extends React.PureComponent { | ||||
| 
 | ||||
|   static contextTypes = { | ||||
|  | @ -59,6 +60,7 @@ export default class UI extends React.PureComponent { | |||
|     children: PropTypes.node, | ||||
|     systemFontUi: PropTypes.bool, | ||||
|     isComposing: PropTypes.bool, | ||||
|     location: PropTypes.object, | ||||
|   }; | ||||
| 
 | ||||
|   state = { | ||||
|  | @ -168,6 +170,12 @@ export default class UI extends React.PureComponent { | |||
|     return true; | ||||
|   } | ||||
| 
 | ||||
|   componentDidUpdate (prevProps) { | ||||
|     if (![this.props.location.pathname, '/'].includes(prevProps.location.pathname)) { | ||||
|       this.columnsAreaNode.handleChildrenContentChange(); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   componentWillUnmount () { | ||||
|     window.removeEventListener('resize', this.handleResize); | ||||
|     document.removeEventListener('dragenter', this.handleDragEnter); | ||||
|  | @ -181,6 +189,10 @@ export default class UI extends React.PureComponent { | |||
|     this.node = c; | ||||
|   } | ||||
| 
 | ||||
|   setColumnsAreaRef = (c) => { | ||||
|     this.columnsAreaNode = c.getWrappedInstance().getWrappedInstance(); | ||||
|   } | ||||
| 
 | ||||
|   render () { | ||||
|     const { width, draggingOver } = this.state; | ||||
|     const { children } = this.props; | ||||
|  | @ -192,7 +204,7 @@ export default class UI extends React.PureComponent { | |||
|     return ( | ||||
|       <div className={className} ref={this.setRef}> | ||||
|         <TabsBar /> | ||||
|         <ColumnsAreaContainer singleColumn={isMobile(width)}> | ||||
|         <ColumnsAreaContainer ref={this.setColumnsAreaRef} singleColumn={isMobile(width)}> | ||||
|           <WrappedSwitch> | ||||
|             <Redirect from='/' to='/getting-started' exact /> | ||||
|             <WrappedRoute path='/getting-started' component={GettingStarted} content={children} /> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue