MessageInputExtensionPlugin class

Describes one item in the MessageInput extension panel.

Constructors

MessageInputExtensionPlugin({required String id, required String? title, required IconData icon, MessageInputExtensionPluginType type = MessageInputExtensionPluginType.custom, bool enabled = true, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName})
const
MessageInputExtensionPlugin.camera({String id = 'camera', String? title, IconData icon = Icons.photo_camera_outlined, bool? enabled, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName = 'NexconnLightIcon/Camera.png'})
const
MessageInputExtensionPlugin.file({String id = 'file', String? title, IconData icon = Icons.insert_drive_file_outlined, bool? enabled, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName = 'NexconnLightIcon/Document.png'})
const
MessageInputExtensionPlugin.filming({String id = 'filming', String? title, IconData icon = Icons.videocam_outlined, bool? enabled, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName = 'NexconnLightIcon/filming.png'})
const
MessageInputExtensionPlugin.location({String id = 'location', String? title, IconData icon = Icons.location_on_outlined, bool? enabled, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName = 'NexconnLightIcon/Local.png'})
const
MessageInputExtensionPlugin.photo({String id = 'photo', String? title, IconData icon = Icons.photo_outlined, bool? enabled, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName = 'NexconnLightIcon/Gallery.png'})
const
MessageInputExtensionPlugin.video({String id = 'video', String? title, IconData icon = Icons.play_circle_outline, bool? enabled, String? tooltip, String? unavailableText, MessageInputExtensionPluginTap? onTap, MessageInputPermissionRequest? permissionRequest, MessageInputMediaPathResolver? mediaPathResolver, MessageInputMediaDraftResolver? mediaDraftResolver, MessageInputLocationDraftResolver? locationResolver, MessageInputExtensionPluginBuilder? builder, String? assetName = 'NexconnLightIcon/play_video.png'})
const

Properties

assetName String?
Optional packaged asset used by the default grid item.
final
builder MessageInputExtensionPluginBuilder?
Custom grid item builder for this plugin.
final
enabled bool
Whether the plugin can be tapped.
final
hasAction bool
Whether this plugin has a runnable action or default media behavior.
no setter
hashCode int
The hash code for this object.
no setterinherited
icon IconData
Material icon used when no custom asset or builder is provided.
final
id String
Stable plugin id used by callbacks and custom builders.
final
locationResolver MessageInputLocationDraftResolver?
Location resolver used by the location plugin.
final
mediaDraftResolver MessageInputMediaDraftResolver?
Media draft resolver for photo, video, camera, filming, and file plugins.
final
mediaPathResolver MessageInputMediaPathResolver?
Simple path resolver for media plugins.
final
onTap MessageInputExtensionPluginTap?
Custom tap handler; when set it takes ownership of the action.
final
permissionRequest MessageInputPermissionRequest?
Permission hook scoped to this plugin.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
title String?
Display title; localization supplies a default when null for built-ins.
final
tooltip String?
Optional tooltip for accessibility and desktop hover.
final
type MessageInputExtensionPluginType
Built-in plugin behavior type.
final
unavailableText String?
Text shown when the plugin is unavailable.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

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