Remove NSToolbar support
This commit is contained in:
parent
59bc93fb8e
commit
90e2ba2545
3 changed files with 5 additions and 120 deletions
|
@ -113,49 +113,3 @@ class HomeViewController: UIViewController, UIDocumentPickerDelegate {
|
||||||
return super.shouldPerformSegue(withIdentifier: identifier, sender: sender)
|
return super.shouldPerformSegue(withIdentifier: identifier, sender: sender)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if targetEnvironment(macCatalyst)
|
|
||||||
private let OurButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton")
|
|
||||||
private let OurButtonToolbarIdentifier2 = NSToolbarItem.Identifier(rawValue: "OurButton2")
|
|
||||||
private let TitlebarToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "Titlebar")
|
|
||||||
|
|
||||||
extension HomeViewController: NSToolbarDelegate {
|
|
||||||
@objc func searchAction() {
|
|
||||||
if(navigationController?.topViewController != self) {
|
|
||||||
navigationController?.popViewController(animated: true)
|
|
||||||
} else {
|
|
||||||
performSegue(withIdentifier: "search", sender: nil)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func toolbarDefaultItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
|
||||||
return [OurButtonToolbarIdentifier2, NSToolbarItem.Identifier.flexibleSpace, OurButtonToolbarIdentifier]
|
|
||||||
}
|
|
||||||
|
|
||||||
func toolbarAllowedItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
|
||||||
return toolbarDefaultItemIdentifiers(toolbar)
|
|
||||||
}
|
|
||||||
|
|
||||||
func toolbar(_ toolbar: NSToolbar, itemForItemIdentifier itemIdentifier: NSToolbarItem.Identifier, willBeInsertedIntoToolbar flag: Bool) -> NSToolbarItem? {
|
|
||||||
if (itemIdentifier == OurButtonToolbarIdentifier2) {
|
|
||||||
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.add,
|
|
||||||
target: self,
|
|
||||||
action: #selector(self.importAction))
|
|
||||||
let button = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
|
||||||
button.label = "Add";
|
|
||||||
|
|
||||||
return button
|
|
||||||
}
|
|
||||||
|
|
||||||
if (itemIdentifier == OurButtonToolbarIdentifier) {
|
|
||||||
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.search,
|
|
||||||
target: self,
|
|
||||||
action: #selector(self.searchAction))
|
|
||||||
let button = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
|
||||||
button.label = "Search";
|
|
||||||
return button
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -132,66 +132,3 @@ extension PostDetailViewController {
|
||||||
return storyboard.instantiateViewController(withIdentifier: "PostViewController") as? PostDetailViewController
|
return storyboard.instantiateViewController(withIdentifier: "PostViewController") as? PostDetailViewController
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#if targetEnvironment(macCatalyst)
|
|
||||||
|
|
||||||
private let EditButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton")
|
|
||||||
private let ShareButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton2")
|
|
||||||
private let InfoButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton3")
|
|
||||||
|
|
||||||
extension PostDetailViewController: NSToolbarDelegate {
|
|
||||||
@objc func editTagsAction() {
|
|
||||||
if(navigationController?.topViewController != self) {
|
|
||||||
navigationController?.popViewController(animated: true)
|
|
||||||
} else {
|
|
||||||
performSegue(withIdentifier: "showTags", sender: nil)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@objc func infoAction() {
|
|
||||||
if(navigationController?.topViewController != self) {
|
|
||||||
navigationController?.popViewController(animated: true)
|
|
||||||
} else {
|
|
||||||
performSegue(withIdentifier: "showInfo", sender: nil)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func toolbarDefaultItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
|
||||||
return [NSToolbarItem.Identifier.flexibleSpace, InfoButtonToolbarIdentifier, EditButtonToolbarIdentifier, ShareButtonToolbarIdentifier]
|
|
||||||
}
|
|
||||||
|
|
||||||
func toolbarAllowedItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
|
||||||
return toolbarDefaultItemIdentifiers(toolbar)
|
|
||||||
}
|
|
||||||
|
|
||||||
func toolbar(_ toolbar: NSToolbar, itemForItemIdentifier itemIdentifier: NSToolbarItem.Identifier, willBeInsertedIntoToolbar flag: Bool) -> NSToolbarItem? {
|
|
||||||
if (itemIdentifier == InfoButtonToolbarIdentifier) {
|
|
||||||
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.camera,
|
|
||||||
target: self,
|
|
||||||
action: #selector(self.infoAction))
|
|
||||||
let button = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
|
||||||
return button
|
|
||||||
}
|
|
||||||
|
|
||||||
if (itemIdentifier == EditButtonToolbarIdentifier) {
|
|
||||||
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.edit,
|
|
||||||
target: self,
|
|
||||||
action: #selector(self.editTagsAction))
|
|
||||||
let button = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
|
||||||
return button
|
|
||||||
}
|
|
||||||
|
|
||||||
if (itemIdentifier == ShareButtonToolbarIdentifier) {
|
|
||||||
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.action,
|
|
||||||
target: self,
|
|
||||||
action: #selector(self.shareAction))
|
|
||||||
let button = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
|
||||||
return button
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -12,18 +12,12 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate {
|
||||||
}
|
}
|
||||||
|
|
||||||
#if targetEnvironment(macCatalyst)
|
#if targetEnvironment(macCatalyst)
|
||||||
guard let windowScene = (scene as? UIWindowScene) else {
|
guard let windowScene = (scene as? UIWindowScene) else { return }
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
let toolbar = NSToolbar(identifier: "Toolbar")
|
if let titlebar = windowScene.titlebar {
|
||||||
toolbar.delegate = (window?.rootViewController as! UINavigationController).topViewController as? NSToolbarDelegate
|
titlebar.titleVisibility = .hidden
|
||||||
toolbar.allowsUserCustomization = true
|
titlebar.toolbar = nil
|
||||||
|
}
|
||||||
windowScene.titlebar!.toolbar = toolbar
|
|
||||||
windowScene.titlebar!.titleVisibility = .visible
|
|
||||||
|
|
||||||
(window?.rootViewController as! UINavigationController).navigationBar.isHidden = true
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Reference in a new issue