findAll method
- @SupportedPlatforms.new(platforms: [AndroidPlatform(apiName: 'WebView.findAllAsync', apiUrl: 'https://developer.android.com/reference/android/webkit/WebView#findAllAsync(java.lang.String)', note: 'It finds all instances asynchronously. Successive calls to this will cancel any pending searches.'), IOSPlatform(note: 'If [InAppWebViewSettings.isFindInteractionEnabled] is `true`, it uses the built-in find interaction native UI, otherwise this is implemented using CSS and Javascript. In this case, it will use the [Official API - UIFindInteraction.presentFindNavigator](https://developer.apple.com/documentation/uikit/uifindinteraction/3975832-presentfindnavigator?changes=_2) with [Official API - UIFindInteraction.searchText](https://developer.apple.com/documentation/uikit/uifindinteraction/3975834-searchtext?changes=_2)'), MacOSPlatform(), LinuxPlatform(apiName: 'webkit_find_controller_search', apiUrl: 'https://wpewebkit.org/reference/stable/wpe-webkit-2.0/method.FindController.search.html'), WindowsPlatform(apiName: 'ICoreWebView2Find.Start', apiUrl: 'https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2find#start')])
- String? find,
Finds all instances of find on the page and highlights them. Notifies PlatformFindInteractionController.onFindResultReceived listener.
find represents the string to find.
Officially Supported Platforms/Implementations:
- Android WebView (Official API - WebView.findAllAsync):
- It finds all instances asynchronously. Successive calls to this will cancel any pending searches.
- iOS WKWebView:
- If InAppWebViewSettings.isFindInteractionEnabled is
true, it uses the built-in find interaction native UI, otherwise this is implemented using CSS and Javascript. In this case, it will use the Official API - UIFindInteraction.presentFindNavigator with Official API - UIFindInteraction.searchText
- If InAppWebViewSettings.isFindInteractionEnabled is
- macOS WKWebView
- Linux WPE WebKit (Official API - webkit_find_controller_search)
- Windows WebView2 (Official API - ICoreWebView2Find.Start)
Parameters - Officially Supported Platforms/Implementations:
find: all platforms
Use the PlatformFindInteractionController.isMethodSupported method to check if this method is supported at runtime.
Implementation
@SupportedPlatforms(
platforms: [
AndroidPlatform(
apiName: 'WebView.findAllAsync',
apiUrl:
'https://developer.android.com/reference/android/webkit/WebView#findAllAsync(java.lang.String)',
note:
'It finds all instances asynchronously. Successive calls to this will cancel any pending searches.',
),
IOSPlatform(
note:
'If [InAppWebViewSettings.isFindInteractionEnabled] is `true`, it uses the built-in find interaction native UI, otherwise this is implemented using CSS and Javascript. In this case, it will use the [Official API - UIFindInteraction.presentFindNavigator](https://developer.apple.com/documentation/uikit/uifindinteraction/3975832-presentfindnavigator?changes=_2) with [Official API - UIFindInteraction.searchText](https://developer.apple.com/documentation/uikit/uifindinteraction/3975834-searchtext?changes=_2)',
),
MacOSPlatform(),
LinuxPlatform(
apiName: 'webkit_find_controller_search',
apiUrl:
'https://wpewebkit.org/reference/stable/wpe-webkit-2.0/method.FindController.search.html',
),
WindowsPlatform(
apiName: 'ICoreWebView2Find.Start',
apiUrl:
'https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2find#start',
),
],
)
Future<void> findAll({String? find}) {
throw UnimplementedError(
'findAll is not implemented on the current platform',
);
}