function shouldIgnoreKeyEvents(activeElement) {
  while (activeElement.shadowRoot != null &&
         activeElement.shadowRoot.activeElement != null) {
    activeElement = activeElement.shadowRoot.activeElement;
  }

  return (
      activeElement.isContentEditable || activeElement.tagName == 'INPUT' ||
      activeElement.tagName == 'TEXTAREA');
}
/**
 * Whether keydown events should currently be ignored. Events are ignored when
 * an editable element has focus, to allow for proper editing controls.
 *
 * @param {HTMLElement} activeElement The currently selected DOM node.
 * @return {boolean} True if keydown events should be ignored.
 */
Whether keydown events should currently be ignored. Events are ignored when
an editable element has focus, to allow for proper editing controls.

@param {HTMLElement} activeElement The currently selected DOM node.
@return {boolean} True if keydown events should be ignored.
Whether keydown events should currently be ignored . Events are ignored when an editable element has focus to allow for proper editing controls . @param { HTMLElement } activeElement The currently selected DOM node . @return { boolean } True if keydown events should be ignored .
function shouldIgnoreKeyEvents(activeElement) {
  while (activeElement.shadowRoot != null &&
         activeElement.shadowRoot.activeElement != null) {
    activeElement = activeElement.shadowRoot.activeElement;
  }
  return (
      activeElement.isContentEditable || activeElement.tagName == 'INPUT' ||
      activeElement.tagName == 'TEXTAREA');
}
function shouldIgnoreKeyEvents ( activeElement ) { while ( activeElement . shadowRoot != null && activeElement . shadowRoot . activeElement != null ) { activeElement = activeElement . shadowRoot . activeElement ; } return ( activeElement . isContentEditable || activeElement . tagName == 'INPUT' || activeElement . tagName == 'TEXTAREA' ) ; }
Whether keydown events should currently be ignored.
Whether keydown events should currently be ignored .