Skip to content

Commit 47b6b6f

Browse files
committed
Address code-excerpt
1 parent 7337199 commit 47b6b6f

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

packages/webview_flutter/webview_flutter_android/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ import io.flutter.plugins.webviewflutter.WebViewFlutterAndroidExternalApi;
5656

5757
Payment Request feature can be enabled by `AndroidWebViewController.setPaymentRequestEnabled` after checking `AndroidWebViewController.isWebViewFeatureSupported`.
5858

59+
<?code-excerpt "example/lib/main.dart (payment_request_example)"?>
5960
```dart
6061
final bool paymentRequestEnabled = await androidController
6162
.isWebViewFeatureSupported(WebViewFeatureType.paymentRequest);

packages/webview_flutter/webview_flutter_android/example/lib/main.dart

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -350,6 +350,7 @@ enum MenuOptions {
350350
basicAuthentication,
351351
javaScriptAlert,
352352
viewportMeta,
353+
checkWebViewPaymentRequestFeatureEnabled,
353354
}
354355

355356
class SampleMenu extends StatelessWidget {
@@ -407,6 +408,8 @@ class SampleMenu extends StatelessWidget {
407408
_onJavaScriptAlertExample(context);
408409
case MenuOptions.viewportMeta:
409410
_onViewportMetaExample();
411+
case MenuOptions.checkWebViewPaymentRequestFeatureEnabled:
412+
_onWebViewFeatureExample(context);
410413
}
411414
},
412415
itemBuilder: (BuildContext context) => <PopupMenuItem<MenuOptions>>[
@@ -483,6 +486,10 @@ class SampleMenu extends StatelessWidget {
483486
value: MenuOptions.viewportMeta,
484487
child: Text('Viewport meta example'),
485488
),
489+
const PopupMenuItem<MenuOptions>(
490+
value: MenuOptions.checkWebViewPaymentRequestFeatureEnabled,
491+
child: Text('WebView Feature Example'),
492+
),
486493
],
487494
);
488495
}
@@ -783,6 +790,25 @@ class SampleMenu extends StatelessWidget {
783790
Future<void> _onViewportMetaExample() {
784791
return webViewController.loadHtmlString(kViewportMetaPage);
785792
}
793+
794+
Future<void> _onWebViewFeatureExample(BuildContext context) async {
795+
final AndroidWebViewController androidController =
796+
webViewController as AndroidWebViewController;
797+
// #docregion payment_request_example
798+
final bool paymentRequestEnabled = await androidController
799+
.isWebViewFeatureSupported(WebViewFeatureType.paymentRequest);
800+
801+
if (paymentRequestEnabled) {
802+
await androidController.setPaymentRequestEnabled(true);
803+
}
804+
805+
// #enddocregion payment_request_example
806+
if (context.mounted) {
807+
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
808+
content: Text('Payment Request API supported: $paymentRequestEnabled'),
809+
));
810+
}
811+
}
786812
}
787813

788814
class NavigationControls extends StatelessWidget {

0 commit comments

Comments
 (0)