isEnabled method
- PrioritizedIntents intent, [
- BuildContext? context
override
Returns true if the action is enabled and is ready to be invoked.
This will be called by the ActionDispatcher before attempting to invoke the action.
The optional context
parameter is the context of the invocation of the
action, and in the case of an action invoked by a ShortcutManager, via
a Shortcuts widget, will be the context of the Shortcuts widget.
Implementation
@override
bool isEnabled(PrioritizedIntents intent, [ BuildContext? context ]) {
final FocusNode? focus = primaryFocus;
if (focus == null || focus.context == null) {
return false;
}
for (final Intent candidateIntent in intent.orderedIntents) {
final Action<Intent>? candidateAction = Actions.maybeFind<Intent>(
focus.context!,
intent: candidateIntent,
);
if (candidateAction != null && candidateAction._isEnabled(candidateIntent, context)) {
_selectedAction = candidateAction;
_selectedIntent = candidateIntent;
return true;
}
}
return false;
}