mirror of
https://github.com/home-assistant/iOS.git
synced 2026-06-19 07:24:05 -05:00
<!-- Thank you for submitting a Pull Request and helping to improve Home Assistant. Please complete the following sections to help the processing and review of your changes. Please do not delete anything from this template. --> ## Summary <!-- Provide a brief summary of the changes you have made and most importantly what they aim to achieve --> This PR adds functionality of resetting web cache when server version changes and also refactor WebView direct access around the project, becoming now private to WebViewController and only interactable through the controller's protocol. ## Screenshots <!-- If this is a user-facing change not in the frontend, please include screenshots in light and dark mode. --> ## Link to pull request in Documentation repository <!-- Pull requests that add, change or remove functionality must have a corresponding pull request in the Companion App Documentation repository (https://github.com/home-assistant/companion.home-assistant). Please add the number of this pull request after the "#" --> Documentation: home-assistant/companion.home-assistant# ## Any other notes <!-- If there is any other information of note, like if this Pull Request is part of a bigger change, please include it here. -->
27 lines
1016 B
Swift
27 lines
1016 B
Swift
import Foundation
|
|
import Shared
|
|
|
|
protocol WebViewControllerProtocol: AnyObject {
|
|
var server: Server { get }
|
|
var overlayedController: UIViewController? { get }
|
|
var webViewExternalMessageHandler: any WebViewExternalMessageHandlerProtocol { get }
|
|
var canGoBack: Bool { get }
|
|
var canGoForward: Bool { get }
|
|
var traitCollection: UITraitCollection { get }
|
|
|
|
func presentOverlayController(controller: UIViewController, animated: Bool)
|
|
func presentAlertController(controller: UIViewController, animated: Bool)
|
|
func evaluateJavaScript(_ script: String, completion: ((Any?, (any Error)?) -> Void)?)
|
|
func dismissOverlayController(animated: Bool, completion: (() -> Void)?)
|
|
func dismissControllerAboveOverlayController()
|
|
func updateFrontendConnectionState(state: String)
|
|
func navigateToPath(path: String)
|
|
func reload()
|
|
func load(request: URLRequest)
|
|
func showSettingsViewController()
|
|
func openDebug()
|
|
func goBack()
|
|
func goForward()
|
|
func styleUI()
|
|
}
|