diff --git a/lib/main.dart b/lib/main.dart index 400b15c..9228a26 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -31,7 +31,6 @@ import 'package:geolocator/geolocator.dart'; import 'package:battery/battery.dart'; import 'package:firebase_crashlytics/firebase_crashlytics.dart'; import 'package:flutter_webview_plugin/flutter_webview_plugin.dart' as standaloneWebview; -import 'package:webview_flutter/webview_flutter.dart'; import 'utils/logger.dart'; diff --git a/lib/managers/connection_manager.class.dart b/lib/managers/connection_manager.class.dart index 3c7b2a9..c123b4e 100644 --- a/lib/managers/connection_manager.class.dart +++ b/lib/managers/connection_manager.class.dart @@ -15,7 +15,6 @@ class ConnectionManager { String displayHostname; String _webSocketAPIEndpoint; String httpWebHost; - String httpWebHostWithExtAuth; String _token; String _tempToken; String oauthUrl; @@ -52,12 +51,6 @@ class ConnectionManager { "${prefs.getString('hassio-protocol')}://$_domain:$_port/api/websocket"; httpWebHost = "${prefs.getString('hassio-res-protocol')}://$_domain:$_port"; - httpWebHostWithExtAuth = httpWebHost; - if (httpWebHostWithExtAuth.contains("?")) { - httpWebHostWithExtAuth += "&external_auth=1"; - } else { - httpWebHostWithExtAuth += "?external_auth=1"; - } if ((_domain == null) || (_port == null) || (_domain.isEmpty) || (_port.isEmpty)) { completer.completeError(HAError.checkConnectionSettings()); diff --git a/lib/pages/main/main.page.dart b/lib/pages/main/main.page.dart index af75d90..7085b76 100644 --- a/lib/pages/main/main.page.dart +++ b/lib/pages/main/main.page.dart @@ -806,14 +806,6 @@ class _MainPageState extends State with WidgetsBindingObserver, Ticker } TabController _viewsTabController; - WebViewController _mainWebViewController; - - _loadJSInterface() { - Logger.d("[MainWebView] Injecting JS interface"); - rootBundle.loadString('assets/js/externalAuth.js').then((js){ - _mainWebViewController.evaluateJavascript(js.replaceFirst("[token]", ConnectionManager()._token)); - }); - } @override Widget build(BuildContext context) { @@ -869,59 +861,11 @@ class _MainPageState extends State with WidgetsBindingObserver, Ticker return Scaffold( key: _scaffoldKey, primary: false, - bottomNavigationBar: bottomBar, + //bottomNavigationBar: bottomBar, body: Container( color: Colors.blue, ) ); - } else if (ConnectionManager().settingsLoaded && ConnectionManager().useWebView && !_showLoginButton) { - return WillPopScope( - child: Scaffold( - primary: true, - appBar: EmptyAppBar(), - body: WebView( - initialUrl: ConnectionManager().httpWebHostWithExtAuth, - debuggingEnabled: Logger.isInDebugMode, - javascriptMode: JavascriptMode.unrestricted, - onWebViewCreated: (webviewController) { - _mainWebViewController = webviewController; - }, - onPageStarted: (url) { - Logger.d("[MainWebView] Page started: $url"); - if (url.contains(ConnectionManager()._domain)) { - _loadJSInterface(); - } - }, - gestureNavigationEnabled: true, - gestureRecognizers: >[ - new Factory( - () => new EagerGestureRecognizer(), - ), - ].toSet(), - javascriptChannels: { - new JavascriptChannel(name: 'HAClient', onMessageReceived: (JavascriptMessage message) { - if (message.message == "show-settings") { - Navigator.of(context).pushNamed("/connection-settings"); - } - }) - } - ) - ), - onWillPop: () { - Completer completer = Completer(); - if (_mainWebViewController != null) { - _mainWebViewController.canGoBack().then((canGoBack) { - if (canGoBack) { - _mainWebViewController.goBack(); - } - completer.complete(!canGoBack); - }); - } else { - completer.complete(true); - } - return completer.future; - }, - ); } else { if (HomeAssistant().isNoViews) { return Scaffold( @@ -974,14 +918,3 @@ class _MainPageState extends State with WidgetsBindingObserver, Ticker super.dispose(); } } - -class EmptyAppBar extends StatelessWidget implements PreferredSizeWidget { - @override - Widget build(BuildContext context) { - return Container( - color: Colors.blue, - ); - } - @override - Size get preferredSize => Size(0.0,0.0); -} diff --git a/lib/pages/settings.page.dart b/lib/pages/settings.page.dart index a00d1bc..e1c984a 100644 --- a/lib/pages/settings.page.dart +++ b/lib/pages/settings.page.dart @@ -20,8 +20,6 @@ class _ConnectionSettingsPageState extends State { String _newLongLivedToken = ""; bool _useLovelace = true; bool _newUseLovelace = true; - bool _useWebView = false; - bool _newUseWebView = true; String oauthUrl; bool useOAuth = false; @@ -62,11 +60,6 @@ class _ConnectionSettingsPageState extends State { } catch (e) { _useLovelace = _newUseLovelace = true; } - try { - _useWebView = _newUseWebView = prefs.getBool("use-webview") ?? false; - } catch (e) { - _useWebView = _newUseWebView = false; - } }); } @@ -76,7 +69,6 @@ class _ConnectionSettingsPageState extends State { (_newHassioDomain != _hassioDomain) || (_newSocketProtocol != _socketProtocol) || (_newUseLovelace != _useLovelace) || - (_newUseWebView != _useWebView) || (_newLongLivedToken != _longLivedToken)); } @@ -112,7 +104,6 @@ class _ConnectionSettingsPageState extends State { prefs.setString("hassio-protocol", _newSocketProtocol); prefs.setString("hassio-res-protocol", _newSocketProtocol == "wss" ? "https" : "http"); prefs.setBool("use-lovelace", _newUseLovelace); - prefs.setBool("use-webview", _newUseWebView); } @override @@ -210,19 +201,6 @@ class _ConnectionSettingsPageState extends State { ) ], ), - new Row( - children: [ - Text("Use web UI"), - Switch( - value: _newUseWebView, - onChanged: (value) { - setState(() { - _newUseWebView = value; - }); - }, - ) - ], - ), Text( "Authentication settings", style: TextStyle( diff --git a/pubspec.yaml b/pubspec.yaml index e6e0c64..6b5f1b8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -22,7 +22,6 @@ dependencies: in_app_purchase: ^0.3.0+3 flutter_custom_tabs: ^0.6.0 flutter_webview_plugin: ^0.3.10+1 - webview_flutter: ^0.3.19+7 firebase_messaging: ^6.0.9 flutter_secure_storage: ^3.3.1+1 device_info: ^0.4.1+4