Change window resize handler to switch to/from mobile layout as soon as needed (#11656)
This commit is contained in:
		
							parent
							
								
									2e99e3cab3
								
							
						
					
					
						commit
						bd4099d976
					
				
					 1 changed files with 14 additions and 4 deletions
				
			
		| 
						 | 
				
			
			@ -141,14 +141,24 @@ class SwitchingColumnsArea extends React.PureComponent {
 | 
			
		|||
    return location.state !== previewMediaState && location.state !== previewVideoState;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  handleResize = debounce(() => {
 | 
			
		||||
  handleLayoutChange = debounce(() => {
 | 
			
		||||
    // The cached heights are no longer accurate, invalidate
 | 
			
		||||
    this.props.onLayoutChange();
 | 
			
		||||
 | 
			
		||||
    this.setState({ mobile: isMobile(window.innerWidth) });
 | 
			
		||||
  }, 500, {
 | 
			
		||||
    trailing: true,
 | 
			
		||||
  });
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  handleResize = () => {
 | 
			
		||||
    const mobile = isMobile(window.innerWidth);
 | 
			
		||||
 | 
			
		||||
    if (mobile !== this.state.mobile) {
 | 
			
		||||
      this.handleLayoutChange.cancel();
 | 
			
		||||
      this.props.onLayoutChange();
 | 
			
		||||
      this.setState({ mobile });
 | 
			
		||||
    } else {
 | 
			
		||||
      this.handleLayoutChange();
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  setRef = c => {
 | 
			
		||||
    this.node = c.getWrappedInstance();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue