Add hotkey for toggling content warning composer field (#13987)
This commit is contained in:
		
							parent
							
								
									89f40b6c3e
								
							
						
					
					
						commit
						6b6a9d0ea3
					
				
					 2 changed files with 13 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -10,7 +10,7 @@ import LoadingBarContainer from './containers/loading_bar_container';
 | 
			
		|||
import ModalContainer from './containers/modal_container';
 | 
			
		||||
import { isMobile } from '../../is_mobile';
 | 
			
		||||
import { debounce } from 'lodash';
 | 
			
		||||
import { uploadCompose, resetCompose } from '../../actions/compose';
 | 
			
		||||
import { uploadCompose, resetCompose, changeComposeSpoilerness } from '../../actions/compose';
 | 
			
		||||
import { expandHomeTimeline } from '../../actions/timelines';
 | 
			
		||||
import { expandNotifications } from '../../actions/notifications';
 | 
			
		||||
import { fetchFilters } from '../../actions/filters';
 | 
			
		||||
| 
						 | 
				
			
			@ -76,6 +76,7 @@ const keyMap = {
 | 
			
		|||
  new: 'n',
 | 
			
		||||
  search: 's',
 | 
			
		||||
  forceNew: 'option+n',
 | 
			
		||||
  toggleComposeSpoilers: 'option+x',
 | 
			
		||||
  focusColumn: ['1', '2', '3', '4', '5', '6', '7', '8', '9'],
 | 
			
		||||
  reply: 'r',
 | 
			
		||||
  favourite: 'f',
 | 
			
		||||
| 
						 | 
				
			
			@ -375,7 +376,7 @@ class UI extends React.PureComponent {
 | 
			
		|||
 | 
			
		||||
  componentDidMount () {
 | 
			
		||||
    this.hotkeys.__mousetrap__.stopCallback = (e, element) => {
 | 
			
		||||
      return ['TEXTAREA', 'SELECT', 'INPUT'].includes(element.tagName);
 | 
			
		||||
      return ['TEXTAREA', 'SELECT', 'INPUT'].includes(element.tagName) && !e.altKey;
 | 
			
		||||
    };
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -420,6 +421,11 @@ class UI extends React.PureComponent {
 | 
			
		|||
    this.props.dispatch(resetCompose());
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  handleHotkeyToggleComposeSpoilers = e => {
 | 
			
		||||
    e.preventDefault();
 | 
			
		||||
    this.props.dispatch(changeComposeSpoilerness());
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  handleHotkeyFocusColumn = e => {
 | 
			
		||||
    const index  = (e.key * 1) + 1; // First child is drawer, skip that
 | 
			
		||||
    const column = this.node.querySelector(`.column:nth-child(${index})`);
 | 
			
		||||
| 
						 | 
				
			
			@ -515,6 +521,7 @@ class UI extends React.PureComponent {
 | 
			
		|||
      new: this.handleHotkeyNew,
 | 
			
		||||
      search: this.handleHotkeySearch,
 | 
			
		||||
      forceNew: this.handleHotkeyForceNew,
 | 
			
		||||
      toggleComposeSpoilers: this.handleHotkeyToggleComposeSpoilers,
 | 
			
		||||
      focusColumn: this.handleHotkeyFocusColumn,
 | 
			
		||||
      back: this.handleHotkeyBack,
 | 
			
		||||
      goToHome: this.handleHotkeyGoToHome,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue