[Glitch] Fix redirecting to /publish when compose form is visible in web UI
				
					
				
			Port 5452af2188 to glitch-soc
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
			
			
This commit is contained in:
		
							parent
							
								
									80b53623e1
								
							
						
					
					
						commit
						89fdfb8fe6
					
				
					 2 changed files with 24 additions and 18 deletions
				
			
		|  | @ -23,7 +23,7 @@ const messages = defineMessages({ | |||
| 
 | ||||
| const mapStateToProps = (state, ownProps) => ({ | ||||
|   elefriend: state.getIn(['compose', 'elefriend']), | ||||
|   showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage, | ||||
|   showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : false, | ||||
| }); | ||||
| 
 | ||||
| const mapDispatchToProps = (dispatch, { intl }) => ({ | ||||
|  | @ -46,7 +46,6 @@ class Compose extends React.PureComponent { | |||
|   static propTypes = { | ||||
|     multiColumn: PropTypes.bool, | ||||
|     showSearch: PropTypes.bool, | ||||
|     isSearchPage: PropTypes.bool, | ||||
|     elefriend: PropTypes.number, | ||||
|     onClickElefriend: PropTypes.func, | ||||
|     onMount: PropTypes.func, | ||||
|  | @ -55,19 +54,11 @@ class Compose extends React.PureComponent { | |||
|   }; | ||||
| 
 | ||||
|   componentDidMount () { | ||||
|     const { isSearchPage } = this.props; | ||||
| 
 | ||||
|     if (!isSearchPage) { | ||||
|       this.props.onMount(); | ||||
|     } | ||||
|     this.props.onMount(); | ||||
|   } | ||||
| 
 | ||||
|   componentWillUnmount () { | ||||
|     const { isSearchPage } = this.props; | ||||
| 
 | ||||
|     if (!isSearchPage) { | ||||
|       this.props.onUnmount(); | ||||
|     } | ||||
|     this.props.onUnmount(); | ||||
|   } | ||||
| 
 | ||||
|   render () { | ||||
|  | @ -76,7 +67,6 @@ class Compose extends React.PureComponent { | |||
|       intl, | ||||
|       multiColumn, | ||||
|       onClickElefriend, | ||||
|       isSearchPage, | ||||
|       showSearch, | ||||
|     } = this.props; | ||||
|     const computedClass = classNames('drawer', `mbstobon-${elefriend}`); | ||||
|  | @ -86,10 +76,10 @@ class Compose extends React.PureComponent { | |||
|         <div className={computedClass} role='region' aria-label={intl.formatMessage(messages.compose)}> | ||||
|           <HeaderContainer /> | ||||
| 
 | ||||
|           {(multiColumn || isSearchPage) && <SearchContainer />} | ||||
|           {multiColumn && <SearchContainer />} | ||||
| 
 | ||||
|           <div className='drawer__pager'> | ||||
|             {!isSearchPage && <div className='drawer__inner'> | ||||
|             <div className='drawer__inner'> | ||||
|               <NavigationContainer /> | ||||
| 
 | ||||
|               <ComposeFormContainer /> | ||||
|  | @ -97,9 +87,9 @@ class Compose extends React.PureComponent { | |||
|               <div className='drawer__inner__mastodon'> | ||||
|                 {mascot ? <img alt='' draggable='false' src={mascot} /> : <button className='mastodon' onClick={onClickElefriend} />} | ||||
|               </div> | ||||
|             </div>} | ||||
|             </div> | ||||
| 
 | ||||
|             <Motion defaultStyle={{ x: isSearchPage ? 0 : -100 }} style={{ x: spring(showSearch || isSearchPage ? 0 : -100, { stiffness: 210, damping: 20 }) }}> | ||||
|             <Motion defaultStyle={{ x: -100 }} style={{ x: spring(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }}> | ||||
|               {({ x }) => ( | ||||
|                 <div className='drawer__inner darker' style={{ transform: `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}> | ||||
|                   <SearchResultsContainer /> | ||||
|  |  | |||
|  | @ -1,18 +1,34 @@ | |||
| import React from 'react'; | ||||
| import { connect } from 'react-redux'; | ||||
| import PropTypes from 'prop-types'; | ||||
| import SearchContainer from 'flavours/glitch/features/compose/containers/search_container'; | ||||
| import ComposeFormContainer from 'flavours/glitch/features/compose/containers/compose_form_container'; | ||||
| import NavigationContainer from 'flavours/glitch/features/compose/containers/navigation_container'; | ||||
| import LinkFooter from './link_footer'; | ||||
| import ServerBanner from 'flavours/glitch/components/server_banner'; | ||||
| import { mountCompose, unmountCompose } from 'flavours/glitch/actions/compose'; | ||||
| 
 | ||||
| export default | ||||
| export default @connect() | ||||
| class ComposePanel extends React.PureComponent { | ||||
| 
 | ||||
|   static contextTypes = { | ||||
|     identity: PropTypes.object.isRequired, | ||||
|   }; | ||||
| 
 | ||||
|   static propTypes = { | ||||
|     dispatch: PropTypes.func.isRequired, | ||||
|   }; | ||||
| 
 | ||||
|   componentDidMount () { | ||||
|     const { dispatch } = this.props; | ||||
|     dispatch(mountCompose()); | ||||
|   } | ||||
| 
 | ||||
|   componentWillUnmount () { | ||||
|     const { dispatch } = this.props; | ||||
|     dispatch(unmountCompose()); | ||||
|   } | ||||
| 
 | ||||
|   render() { | ||||
|     const { signedIn } = this.context.identity; | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue