WebviewBaseController class

Contrôleur permettant de piloter une instance de Webview native (Android, iOS, macOS, Windows, Linux) depuis Dart.

Chaque instance de vue native possède son propre MethodChannel, nommé webview_plus_<viewId>, où viewId est l'identifiant entier attribué par Flutter à la plateforme view (AndroidView / UiKitView) au moment de sa création.

Implemented types

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

addJavaScriptHandler({required String handlerName, required JavaScriptHandlerCallback callback}) → void
Enregistre un handler appelable depuis le JavaScript de la page via window.webview_plus.callHandler('nomDuHandler', arg1, arg2, ...).
override
canGoBack() Future<bool>
override
canGoForward() Future<bool>
override
evaluateJavascript(String code) Future
Exécute du JavaScript dans le contexte de la page chargée.
override
getHtml() Future<String?>
Retourne le HTML actuellement rendu par la page (document.documentElement.outerHTML).
override
goBack() Future<void>
override
goForward() Future<void>
override
hasJavaScriptHandler(String handlerName) bool
Indique si un handler porte ce nom.
override
injectCssData(String cssData) Future<void>
Injecte du code CSS brut directement dans la page en cours.
override
injectCSSFileFromAsset(String assetFilePath) Future<void>
Injecte une feuille de style provenant des assets Flutter.
override
injectCSSFileFromUrl(String urlFile) Future<void>
Injecte une feuille de style distante dans la page en cours.
override
injectJavascriptFileFromAsset(String assetFilePath) Future<void>
Injecte un fichier <script> provenant des assets Flutter.
override
injectJavascriptFileFromUrl(String urlFile) Future<void>
Injecte un fichier <script> distant dans la page en cours.
override
injectJsData(String jsData) Future<void>
Injecte du code JavaScript brut directement dans la page en cours.
override
loadData(String data, {String mimeType = 'text/html', String encoding = 'utf8', String? baseUrl}) Future<void>
Équivalent de loadHtmlString mais permettant de préciser le mimeType et l'encoding (utile pour charger autre chose que du HTML, par ex. du SVG ou du texte brut).
override
loadFile(String filePath) Future<void>
Charge un fichier n'importe où sur le disque via un chemin absolu.
override
loadFlutterAsset(String assetPath) Future<void>
Charge un fichier HTML embarqué dans les assets Flutter (déclaré dans le pubspec.yaml de l'application hôte).
override
loadHtmlString(String html, {String? baseUrl}) Future<void>
Charge une chaîne HTML brute directement.
override
loadUrl(String url) Future<void>
Charge une URL distante ou locale (http, https, file).
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reload() Future<void>
override
removeJavaScriptHandler(String handlerName) → void
Désenregistre un handler précédemment ajouté.
override
setContextMenuItems(List<ContextMenuItem> items) Future<void>
Remplace la liste des éléments personnalisés du menu contextuel natif (déjà envoyée à la création via WebviewPlus(contextMenuItems: ...)) et met à jour la vue native en conséquence.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

init(int viewId, {NavigationRequestCallback? onNavigationRequest, WebviewMessageCallback? onMessageReceived, WebviewLoadCallback? onLoadStart, WebviewLoadCallback? onLoadStop, WebviewLoadCallback? onDOMContentLoaded, WebviewErrorCallback? onReceivedError, WebviewControllerCallback? onWindowFocus, WebviewControllerCallback? onWindowBlur, WebviewCursorCallback? onCursorChanged, WebviewFontsLoadedCallback? onFontsIsLoaded, WebviewLoadResourceCallback? onLoadResource, List<ContextMenuItem> contextMenuItems = const <ContextMenuItem>[]}) WebviewBaseController
Utilisé en interne par le widget pour instancier le contrôleur dès que la vue native est créée.
setWebContentsDebuggingEnabled([bool enabled = true]) Future<void>
Active ou désactive l'inspection distante (Chrome DevTools / Safari Web Inspector) pour toutes les Webviews de l'application, existantes et futures — à la différence de WebviewSettings.isInspectable, qui ne s'applique qu'à une seule instance au moment de sa création.