URLBar shouldn't show cancel button on iPad, visual tweaks
This commit is contained in:
@@ -98,9 +98,10 @@ class ToolbarView: UIView
|
||||
|
||||
// Cancel button
|
||||
let urlBarPadding: CGFloat = 8.0
|
||||
let cancelButtonSize = cancelButton.sizeThatFits(containerView.bounds.size)
|
||||
var cancelButtonSize = cancelButton.sizeThatFits(containerView.bounds.size)
|
||||
cancelButtonSize.width += (urlBarPadding * 2)
|
||||
cancelButton.frame = CGRect(origin: CGPoint(x: (containerView.bounds.maxX - cancelButtonSize.width), y: 0),
|
||||
size: CGSize(width: cancelButtonSize.width, height: containerView.bounds.height))
|
||||
size: CGSize(width: cancelButtonSize.width + urlBarPadding, height: containerView.bounds.height))
|
||||
|
||||
// Leading toolbar buttons
|
||||
if leadingButtonsView.numberOfButtonViews > 0 {
|
||||
@@ -189,9 +190,11 @@ class ToolbarViewController: UIViewController
|
||||
forwardButton.setImage(UIImage(systemName: "chevron.right"), for: .normal)
|
||||
|
||||
let toolbarAnimationDuration: TimeInterval = 0.3
|
||||
urlBar.textField.addAction(.init(handler: { [toolbarView, urlBar] _ in
|
||||
UIView.animate(withDuration: toolbarAnimationDuration) {
|
||||
toolbarView.cancelButtonVisible = urlBar.textField.isFirstResponder
|
||||
urlBar.textField.addAction(.init(handler: { [traitCollection, toolbarView, urlBar] _ in
|
||||
if traitCollection.horizontalSizeClass == .compact {
|
||||
UIView.animate(withDuration: toolbarAnimationDuration) {
|
||||
toolbarView.cancelButtonVisible = urlBar.textField.isFirstResponder
|
||||
}
|
||||
}
|
||||
}), for: [ .editingDidBegin, .editingDidEnd ])
|
||||
|
||||
|
||||
Reference in New Issue
Block a user