part of 'main.dart'; void customMenuItems() { final shouldSkip = kIsWeb ? true : ![ TargetPlatform.android, TargetPlatform.iOS, TargetPlatform.macOS, ].contains(defaultTargetPlatform); skippableTest('custom menu items', () async { var inAppBrowser = new MyInAppBrowser(); final data = (await rootBundle.load('test_assets/images/flutter-logo.png')) .buffer .asUint8List(); inAppBrowser.addMenuItem(InAppBrowserMenuItem( id: 0, title: 'Menu Item 0', iconColor: Colors.black, order: 0, onClick: () { inAppBrowser.webViewController?.reload(); }, )); inAppBrowser.addMenuItem(InAppBrowserMenuItem( id: 1, title: 'Menu Item 1', icon: data, showAsAction: true, order: 2, onClick: () { inAppBrowser.webViewController?.reload(); }, )); var icon = null; if ([ TargetPlatform.iOS, TargetPlatform.macOS, ].contains(defaultTargetPlatform)) { icon = UIImage(systemName: 'ellipsis.circle'); } else if (defaultTargetPlatform == TargetPlatform.android) { icon = AndroidResource.drawable(name: 'ic_menu_edit', defPackage: 'android'); } inAppBrowser.addMenuItem(InAppBrowserMenuItem( id: 2, title: 'Menu Item 2', icon: icon, iconColor: Colors.red, showAsAction: true, order: 1, onClick: () { inAppBrowser.webViewController?.reload(); }, )); await inAppBrowser.openUrlRequest( urlRequest: URLRequest(url: TEST_URL_1), settings: InAppBrowserClassSettings( browserSettings: InAppBrowserSettings(hideDefaultMenuItems: true))); await inAppBrowser.browserCreated.future; await inAppBrowser.firstPageLoaded.future; await expectLater(inAppBrowser.close(), completes); }, skip: shouldSkip); }