quick_share_row library

A ready-made row of per-channel share icons (WhatsApp, SMS, Facebook, Email, system share), plus a long-press popup variant.

Classes

ShareButtonsRow
A ready-made row of ShareIcons wired straight to ShareUtils.share - the inline version. Drop it under a "Share this" heading, in a bottom sheet, wherever a row fits. For a long-press context menu instead, see showShareMenu.
ShareChannel
One button's worth of presentation for a share channel: what it's called, what it looks like, and which ShareChannelType it triggers. ShareButtonsRow and showShareMenu both render a List<ShareChannel>
ShareIcon
One circular, colored, tooltip-labeled tap target for a ShareChannel. ShareButtonsRow builds a row of these; use it directly if you want a single channel's button somewhere else in your own layout.
ShareUtils
Per-channel share mechanics: builds the right deep-link URL for each app and launches it, or falls through to the OS share sheet. Stateless static methods - no BuildContext required anywhere, so these are safe to call from a provider/controller/notifier as well as a widget.

Enums

ShareChannelType
Which sharing mechanism a ShareChannel triggers. Kept separate from ShareChannel itself so ShareUtils.share can switch on it without depending on any particular icon/color/label choice.

Functions

showShareMenu(BuildContext context, Offset position, {required String message, String? url, String? subject, List<ShareChannel> channels = ShareChannel.defaults, double iconSize = 40, Color iconColor = const Color(0xFFFFFFFF), Color backgroundColor = Colors.white, void onError(Object error)?}) → Future<void>
Shows ShareButtonsRow inside a floating popup anchored at position