openWebPage static method
Future<void>
openWebPage({
- required String url,
- CustomTabsOptions customTabsOptions = const CustomTabsOptions(),
- SafariViewControllerOptions safariVCOptions = const SafariViewControllerOptions(),
Implementation
static Future<void> openWebPage({
required String url,
CustomTabsOptions customTabsOptions = const CustomTabsOptions(),
SafariViewControllerOptions safariVCOptions =
const SafariViewControllerOptions(),
}) {
final CustomTabsColorSchemeParams customTabsDefaultColorSchemeParams =
customTabsOptions.defaultColorSchemeParams ??
CustomTabsColorSchemeParams(
toolbarColor: customTabsOptions.toolbarColor,
secondaryToolbarColor: customTabsOptions.secondaryToolbarColor,
navigationBarColor: customTabsOptions.navigationBarColor,
);
final CustomTabsShareState customTabsShareState =
customTabsOptions.shareState ??
CustomTabsShareStateExtension.fromAddDefaultShareMenuItem(
addDefaultShareMenuItem:
customTabsOptions.addDefaultShareMenuItem,
) ??
CustomTabsShareState.default_;
return _channel.invokeMethod('openWebPage', {
"url": url,
'android_options': {
'colorScheme': customTabsOptions.colorScheme.index,
'lightColorSchemeParams': customTabsOptions.lightColorSchemeParams
?.toMethodChannelArgumentMap(),
'darkColorSchemeParams': customTabsOptions.darkColorSchemeParams
?.toMethodChannelArgumentMap(),
'defaultColorSchemeParams':
customTabsDefaultColorSchemeParams.toMethodChannelArgumentMap(),
'instantAppsEnabled': customTabsOptions.instantAppsEnabled,
'shareState': customTabsShareState.index,
'showTitle': customTabsOptions.showTitle,
'urlBarHidingEnabled': customTabsOptions.urlBarHidingEnabled,
},
'ios_options': {
'barCollapsingEnabled': safariVCOptions.barCollapsingEnabled,
'entersReaderIfAvailable': safariVCOptions.entersReaderIfAvailable,
'preferredBarTintColor':
safariVCOptions.preferredBarTintColor?.hexColor,
'preferredControlTintColor':
safariVCOptions.preferredControlTintColor?.hexColor,
'modalPresentationCapturesStatusBarAppearance':
safariVCOptions.modalPresentationCapturesStatusBarAppearance,
'dismissButtonStyle': safariVCOptions.dismissButtonStyle?.index,
},
});
}