1
0
mirror of https://github.com/flutter/samples.git synced 2025-11-08 13:58:47 +00:00

Enable the context menu examples on web (#1687)

This commit is contained in:
Justin McCandless
2023-03-01 18:33:12 -08:00
committed by GitHub
parent b4c64cff9a
commit 7874e554b6
3 changed files with 21 additions and 4 deletions

View File

@@ -10,9 +10,6 @@ such as the text selection toolbar on mobile or the right click menu on desktop.
Just run `flutter run` in the same directory as this README file.
Currently, most of the examples in this demo do not support web, because Flutter
uses the browser's built-in context menu instead.
## The examples
### [Anywhere](https://github.com/flutter/samples/blob/main/experimental/context_menus/lib/anywhere_page.dart)

View File

@@ -1,5 +1,6 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'anywhere_page.dart';
import 'cascading_menu_page.dart';
@@ -35,6 +36,24 @@ class _MyAppState extends State<MyApp> {
});
}
@override
void initState() {
super.initState();
// On web, disable the browser's context menu everywhere so that the custom
// Flutter-rendered context menu shows.
if (kIsWeb) {
BrowserContextMenu.disableContextMenu();
}
}
@override
void dispose() {
if (kIsWeb) {
BrowserContextMenu.enableContextMenu();
}
super.dispose();
}
@override
Widget build(BuildContext context) {
return MaterialApp(

View File

@@ -22,7 +22,8 @@ declare -ar PROJECT_NAMES=(
"code_sharing/shared"
"desktop_photo_search/fluent_ui"
"desktop_photo_search/material"
"experimental/context_menus"
# TODO(DomesticMouse): uncomment on next Flutter stable increment
# "experimental/context_menus"
"experimental/federated_plugin/federated_plugin"
"experimental/federated_plugin/federated_plugin/example"
"experimental/federated_plugin/federated_plugin_macos"