class_docstr: Key press event, delivered to key bindings.
  
  :param input_processor_ref: Weak reference to the `InputProcessor`.
  :param arg: Repetition argument.
  :param key_sequence: List of `KeyPress` instances.
  :param previouskey_sequence: Previous list of `KeyPress` instances.
  :param is_repeat: True when the previous event was delivered to the same handler.
class_docstr_tok: ["Key","press","event",",","delivered","to","key","bindings",".",":","param","input_processor_ref",":","Weak","reference","to","the","`","InputProcessor","`",".",":","param","arg",":","Repetition","argument",".",":","param","key_sequence",":","List","of","`","KeyPress","`","instances",".",":","param","previouskey_sequence",":","Previous","list","of","`","KeyPress","`","instances",".",":","param","is_repeat",":","True","when","the","previous","event","was","delivered","to","the","same","handler","."]
code: def __init__(
      self,
      input_processor_ref,
      arg=None,
      key_sequence=None,
      previous_key_sequence=None,
      is_repeat=False,
  ):
      self._input_processor_ref = input_processor_ref
      self.key_sequence = key_sequence
      self.previous_key_sequence = previous_key_sequence
  
      #: True when the previous key sequence was handled by the same handler.
      self.is_repeat = is_repeat
  
      self._arg = arg
  
imports: from __future__ import unicode_literals
  from prompt_toolkit.buffer import EditReadOnlyBuffer
  from prompt_toolkit.filters.cli import ViNavigationMode
  from prompt_toolkit.keys import Keys, Key
  from prompt_toolkit.utils import Event
  from .registry import BaseRegistry
  from collections import deque
  from six.moves import range
  import weakref
  import six
label_desc: Use image node_id 1 to create a new KeyPressEvent object from inherited base classes: object with example: obj = KeyPressEvent(input_processor_ref, arg, key_sequence, previous_key_sequence, is_repeat)