SingleActivator class

A shortcut key combination of a single key and modifiers.

The SingleActivator implements typical shortcuts such as:

  • ArrowLeft
  • Shift + Delete
  • Control + Alt + Meta + Shift + A

More specifically, it creates shortcut key combinations that are composed of a trigger key, and zero, some, or all of the four modifiers (control, shift, alt, meta). The shortcut is activated when the following conditions are met:

  • The incoming event is a down event for a trigger key.
  • If control is true, then at least one control key must be held. Otherwise, no control keys must be held.
  • Similar conditions apply for the alt, shift, and meta keys.

This resembles the typical behavior of most operating systems, and handles modifier keys differently from LogicalKeySet in the following way:

  • SingleActivators allow additional non-modifier keys being pressed in order to activate the shortcut. For example, pressing key X while holding ControlLeft and key A will be accepted by SingleActivator(LogicalKeyboardKey.keyX, control: true).
  • SingleActivators do not consider modifiers to be a trigger key. For example, pressing ControlLeft while holding key X will not activate a SingleActivator(LogicalKeyboardKey.keyX, control: true).

See also:

  • CharacterActivator, an activator that represents key combinations that result in the specified character, such as question mark.
Implemented types
Mixed-in types

Constructors

SingleActivator(LogicalKeyboardKey trigger, {bool control = false, bool shift = false, bool alt = false, bool meta = false, LockState numLock = LockState.ignored, bool includeRepeats = true})
Triggered when the trigger key is pressed while the modifiers are held.
const

Properties

alt bool
Whether either (or both) alt keys should be held for trigger to activate the shortcut.
final
control bool
Whether either (or both) control keys should be held for trigger to activate the shortcut.
final
hashCode int
The hash code for this object.
no setterinherited
includeRepeats bool
Whether this activator accepts repeat events of the trigger key.
final
meta bool
Whether either (or both) meta keys should be held for trigger to activate the shortcut.
final
numLock LockState
Whether the NumLock key state should be checked for trigger to activate the shortcut.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shift bool
Whether either (or both) shift keys should be held for trigger to activate the shortcut.
final
trigger LogicalKeyboardKey
The non-modifier key of the shortcut that is pressed after all modifiers to activate the shortcut.
final
triggers Iterable<LogicalKeyboardKey>
An optional property to provide all the keys that might be the final event to trigger this shortcut.
no setteroverride

Methods

accepts(KeyEvent event, HardwareKeyboard state) bool
Whether the triggering event and the keyboard state at the time of the event meet required conditions, providing that the event is a triggering event.
override
debugDescribeKeys() String
Returns a short and readable description of the key combination.
override
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
serializeForMenu() ShortcutSerialization
Implement this in a ShortcutActivator subclass to allow it to be serialized for use in a PlatformMenuBar.
override
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited