mirror of
https://github.com/Ranchero-Software/NetNewsWire
synced 2025-08-12 06:26:36 +00:00
Handle more cases in willChangeTo displayMode delegate method. Create and use setRefreshToolbarItemVisibility method on TimelineViewController.
This commit is contained in:
@@ -254,6 +254,10 @@ class TimelineViewController: UITableViewController, UndoableCommandRunner {
|
||||
becomeFirstResponder()
|
||||
}
|
||||
|
||||
func setRefreshToolbarItemVisibility(visible: Bool) {
|
||||
refreshProgressView?.alpha = visible ? 1.0 : 0
|
||||
}
|
||||
|
||||
// MARK: - Table view
|
||||
|
||||
override func tableView(_ tableView: UITableView, leadingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
|
||||
|
||||
@@ -1309,34 +1309,21 @@ extension SceneCoordinator: UISplitViewControllerDelegate {
|
||||
}
|
||||
|
||||
func splitViewController(_ svc: UISplitViewController, willChangeTo displayMode: UISplitViewController.DisplayMode) {
|
||||
|
||||
var sidebarIsShowing = false
|
||||
|
||||
switch displayMode {
|
||||
case .automatic:
|
||||
return
|
||||
case .secondaryOnly:
|
||||
return
|
||||
case .oneBesideSecondary:
|
||||
// Timeline + Article - show the refresh control on the timeline
|
||||
mainTimelineViewController?.toolbarItems?[2].customView?.alpha = 1.0
|
||||
case .oneOverSecondary:
|
||||
return
|
||||
case .twoBesideSecondary:
|
||||
return
|
||||
case .twoOverSecondary:
|
||||
return
|
||||
case .twoDisplaceSecondary:
|
||||
// Sidebar + Timeline + Article - hide the refresh control on the timeline
|
||||
mainTimelineViewController?.toolbarItems?[2].customView?.alpha = 0.0
|
||||
case .primaryHidden:
|
||||
return
|
||||
case .allVisible:
|
||||
return
|
||||
case .primaryOverlay:
|
||||
return
|
||||
case .automatic, .secondaryOnly, .oneBesideSecondary, .oneOverSecondary:
|
||||
sidebarIsShowing = false
|
||||
case .twoBesideSecondary, .twoOverSecondary, .twoDisplaceSecondary:
|
||||
sidebarIsShowing = true
|
||||
@unknown default:
|
||||
return
|
||||
break
|
||||
}
|
||||
|
||||
let timelineShouldShowRefreshProgress = !sidebarIsShowing
|
||||
mainTimelineViewController?.setRefreshToolbarItemVisibility(visible: timelineShouldShowRefreshProgress)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// MARK: UINavigationControllerDelegate
|
||||
|
||||
Reference in New Issue
Block a user