Fix scrolling issues when closing some dropdown menus (#14606)
This commit is contained in:
		
							parent
							
								
									9b2648b30a
								
							
						
					
					
						commit
						c7cfd4e67a
					
				
					 2 changed files with 3 additions and 3 deletions
				
			
		| 
						 | 
					@ -205,7 +205,7 @@ export default class Dropdown extends React.PureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  handleClose = () => {
 | 
					  handleClose = () => {
 | 
				
			||||||
    if (this.activeElement) {
 | 
					    if (this.activeElement) {
 | 
				
			||||||
      this.activeElement.focus();
 | 
					      this.activeElement.focus({ preventScroll: true });
 | 
				
			||||||
      this.activeElement = null;
 | 
					      this.activeElement = null;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    this.props.onClose(this.state.id);
 | 
					    this.props.onClose(this.state.id);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -179,7 +179,7 @@ class PrivacyDropdown extends React.PureComponent {
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      const { top } = target.getBoundingClientRect();
 | 
					      const { top } = target.getBoundingClientRect();
 | 
				
			||||||
      if (this.state.open && this.activeElement) {
 | 
					      if (this.state.open && this.activeElement) {
 | 
				
			||||||
        this.activeElement.focus();
 | 
					        this.activeElement.focus({ preventScroll: true });
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });
 | 
					      this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' });
 | 
				
			||||||
      this.setState({ open: !this.state.open });
 | 
					      this.setState({ open: !this.state.open });
 | 
				
			||||||
| 
						 | 
					@ -220,7 +220,7 @@ class PrivacyDropdown extends React.PureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  handleClose = () => {
 | 
					  handleClose = () => {
 | 
				
			||||||
    if (this.state.open && this.activeElement) {
 | 
					    if (this.state.open && this.activeElement) {
 | 
				
			||||||
      this.activeElement.focus();
 | 
					      this.activeElement.focus({ preventScroll: true });
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    this.setState({ open: false });
 | 
					    this.setState({ open: false });
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue