Make URL bar FR when creating new tab, make errors local to tabs only
This commit is contained in:
@@ -35,8 +35,6 @@ class BrowserViewController: UIViewController
|
||||
private var activeTabObservation: AnyCancellable?
|
||||
private var faviconObservation: AnyCancellable?
|
||||
|
||||
internal var loadError: Error?
|
||||
|
||||
internal var commandKeyHeld: Bool = false
|
||||
internal var windowButtonHeld: Bool {
|
||||
get { toolbarController.newTabButton.isTracking }
|
||||
@@ -142,9 +140,7 @@ class BrowserViewController: UIViewController
|
||||
if gestureRecognizer.state != .began { return }
|
||||
}
|
||||
|
||||
// Create new tab
|
||||
let newTab = tabController.createNewTab(url: nil)
|
||||
self.tab = newTab
|
||||
self.createNewTab(withURL: nil)
|
||||
}
|
||||
|
||||
if Self.longPressWindowButtonToMakeNewTab {
|
||||
@@ -159,7 +155,7 @@ class BrowserViewController: UIViewController
|
||||
|
||||
// Error button
|
||||
toolbarController.urlBar.errorButton.addAction(UIAction(handler: { [unowned self] _ in
|
||||
let alert = UIAlertController(title: "Error", message: self.loadError?.localizedDescription, preferredStyle: .actionSheet)
|
||||
let alert = UIAlertController(title: "Error", message: self.tab.loadError?.localizedDescription, preferredStyle: .actionSheet)
|
||||
alert.popoverPresentationController?.sourceView = self.toolbarController.urlBar.errorButton
|
||||
|
||||
alert.addAction(UIAlertAction(title: "Reload", style: .destructive, handler: { _ in
|
||||
@@ -354,7 +350,7 @@ class BrowserViewController: UIViewController
|
||||
}
|
||||
|
||||
internal func updateLoadProgress(forWebView webView: WKWebView) {
|
||||
if let loadError = loadError {
|
||||
if let loadError = tab.loadError {
|
||||
toolbarController.urlBar.loadProgress = .error(error: loadError)
|
||||
} else if webView.estimatedProgress == 1.0 {
|
||||
toolbarController.urlBar.loadProgress = .complete
|
||||
@@ -437,6 +433,9 @@ class BrowserViewController: UIViewController
|
||||
|
||||
// Enforce dark mode setting
|
||||
tab.bridge.darkModeEnabled = toolbarController.darkModeEnabled
|
||||
|
||||
// Blur url bar, if applicable
|
||||
toolbarController.urlBar.textField.resignFirstResponder()
|
||||
}
|
||||
|
||||
override func viewWillAppear(_ animated: Bool) {
|
||||
@@ -472,6 +471,10 @@ class BrowserViewController: UIViewController
|
||||
public func createNewTab(withURL url: URL?) {
|
||||
let newTab = tabController.createNewTab(url: url)
|
||||
self.tab = newTab
|
||||
|
||||
if url == nil {
|
||||
self.toolbarController.urlBar.textField.becomeFirstResponder()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user