import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:nowser/component/webview/webview_controller_interface.dart'; class WebviewController extends WebviewControllerInterface { InAppWebViewController controller; WebviewController(this.controller); @override Future reload() async { await controller.reload(); } @override Future goBack() async { await controller.goBack(); } @override Future canGoBack() async { return await controller.canGoBack(); } @override Future goForward() async { await controller.goForward(); } @override Future getUrl() async { var webUrl = await controller.getUrl(); try { if (webUrl != null) { return webUrl.uriValue; } } catch (e) {} return null; } @override Future getFavicon() async { var favicons = await controller.getFavicons(); if (favicons.isNotEmpty) { return favicons.first.url.toString(); } return null; } @override Future loadUrl(String url) async { await controller.loadUrl(urlRequest: URLRequest(url: WebUri(url))); } @override Future getTitle() async { return controller.getTitle(); } }