handleKeyDown_(e) {
    if (e.key === 'Tab') {
      // If there are no elements or there is one element don't wrap.
      if (
        !this.firstFocusableEl_ ||
        this.firstFocusableEl_ === this.lastFocusableEl_
      ) {
        e.preventDefault();
        e.stopPropagation();
        return;
      }
      if (e.shiftKey) {
        this.handleBackwardTab_(e);
      } else {
        this.handleForwardTab_(e);
      }
    } else if (e.key === 'Escape' && this.shouldCloseOnEsc) {
      this.hide();
    }
    e.stopPropagation();
  }
Handles keydown event for a Blockly modal. Handles forward tab, backward
tab, and escape button.
@param {KeyboardEvent} e The keydown event.
@private