nexus/lib/helpers/extensions/show_context_menu.dart
2026-04-01 16:29:19 -04:00

23 lines
667 B
Dart

import "package:flutter/material.dart";
extension ShowContextMenu on BuildContext {
void showContextMenu({
required Offset globalPosition,
required List<PopupMenuEntry> children,
}) {
final overlay = Overlay.of(this).context.findRenderObject() as RenderBox;
showMenu(
context: this,
constraints: BoxConstraints.loose(Size.infinite),
position: RelativeRect.fromLTRB(
globalPosition.dx,
globalPosition.dy,
overlay.size.width - globalPosition.dx,
overlay.size.height - globalPosition.dy,
),
color: Theme.of(this).colorScheme.surfaceContainerHighest,
items: children,
);
}
}