keyDownListener(e, stopListeningAfterKeyCombination, escapeToCancel) {
    e.preventDefault();

    if (e.key === 'Escape' && escapeToCancel) {
      this.stopListening();
      this.emit('cancel');
      return;
    }

    if (!this.blacklistedKeys.includes(e.key)) {
      const keyList = [];

      if (e.metaKey) keyList.push('Super');
      if (e.ctrlKey) keyList.push('Ctrl');
      if (e.altKey) keyList.push('Alt');
      if (e.shiftKey) keyList.push('Shift');

      keyList.push(getNormalizedKeyName(e.key));

      if (keyList.length >= 2) {
        this.emit('key-combination', keyList);
        if (stopListeningAfterKeyCombination) this.stopListening();
      }
    }
  }
Event listener for `keydown` event

@param {KeyboardEvent} e
@param {boolean} stopListeningAfterKeyCombination
@param {boolean} escapeToCancel