Add proper window titles to macOS
Also adds window titles to posts under iPadOS
This commit is contained in:
parent
45bbbf8945
commit
0527fc5499
2 changed files with 33 additions and 3 deletions
|
@ -13,6 +13,8 @@ class PostViewController: UIViewController {
|
||||||
|
|
||||||
let documentsPath : URL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0].absoluteURL
|
let documentsPath : URL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0].absoluteURL
|
||||||
|
|
||||||
|
let windowTitle = "Post"
|
||||||
|
|
||||||
override func viewWillAppear(_ animated: Bool) {
|
override func viewWillAppear(_ animated: Bool) {
|
||||||
super.viewWillAppear(animated)
|
super.viewWillAppear(animated)
|
||||||
|
|
||||||
|
@ -35,6 +37,12 @@ class PostViewController: UIViewController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override func viewDidAppear(_ animated: Bool) {
|
||||||
|
super.viewDidAppear(animated)
|
||||||
|
|
||||||
|
self.view.window?.windowScene!.title = windowTitle
|
||||||
|
}
|
||||||
|
|
||||||
@objc func closePopup() {
|
@objc func closePopup() {
|
||||||
UIApplication.shared.requestSceneSessionDestruction((self.view.window?.windowScene!.session)!, options: nil, errorHandler: nil)
|
UIApplication.shared.requestSceneSessionDestruction((self.view.window?.windowScene!.session)!, options: nil, errorHandler: nil)
|
||||||
}
|
}
|
||||||
|
@ -96,6 +104,7 @@ extension PostViewController {
|
||||||
private let EditButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton")
|
private let EditButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton")
|
||||||
private let ShareButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton2")
|
private let ShareButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton2")
|
||||||
private let InfoButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton3")
|
private let InfoButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton3")
|
||||||
|
private let TitlebarToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "Titlebar")
|
||||||
|
|
||||||
extension PostViewController: NSToolbarDelegate {
|
extension PostViewController: NSToolbarDelegate {
|
||||||
@objc func editTagsAction() {
|
@objc func editTagsAction() {
|
||||||
|
@ -115,7 +124,7 @@ extension PostViewController: NSToolbarDelegate {
|
||||||
}
|
}
|
||||||
|
|
||||||
func toolbarDefaultItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
func toolbarDefaultItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
||||||
return [NSToolbarItem.Identifier.flexibleSpace, InfoButtonToolbarIdentifier, EditButtonToolbarIdentifier, ShareButtonToolbarIdentifier]
|
return [NSToolbarItem.Identifier.flexibleSpace, TitlebarToolbarIdentifier, NSToolbarItem.Identifier.flexibleSpace, InfoButtonToolbarIdentifier, EditButtonToolbarIdentifier, ShareButtonToolbarIdentifier]
|
||||||
}
|
}
|
||||||
|
|
||||||
func toolbarAllowedItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
func toolbarAllowedItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
||||||
|
@ -147,6 +156,15 @@ extension PostViewController: NSToolbarDelegate {
|
||||||
return button
|
return button
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(itemIdentifier == TitlebarToolbarIdentifier) {
|
||||||
|
let barButtonItem = UIBarButtonItem(title: windowTitle, style: UIBarButtonItem.Style.plain, target: nil, action: nil)
|
||||||
|
|
||||||
|
let title = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
||||||
|
title.label = "Title"
|
||||||
|
|
||||||
|
return title
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,8 @@ class ViewController: UIViewController, UIDocumentPickerDelegate {
|
||||||
|
|
||||||
let documentsPath : URL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0].absoluteURL
|
let documentsPath : URL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0].absoluteURL
|
||||||
|
|
||||||
|
let windowTitle = "Home"
|
||||||
|
|
||||||
func importFile(path: URL) {
|
func importFile(path: URL) {
|
||||||
guard let appDelegate =
|
guard let appDelegate =
|
||||||
UIApplication.shared.delegate as? AppDelegate else {
|
UIApplication.shared.delegate as? AppDelegate else {
|
||||||
|
@ -53,7 +55,7 @@ class ViewController: UIViewController, UIDocumentPickerDelegate {
|
||||||
override func viewDidAppear(_ animated: Bool) {
|
override func viewDidAppear(_ animated: Bool) {
|
||||||
super.viewDidAppear(animated)
|
super.viewDidAppear(animated)
|
||||||
|
|
||||||
self.view.window?.windowScene!.title = "Home"
|
self.view.window?.windowScene!.title = windowTitle
|
||||||
}
|
}
|
||||||
|
|
||||||
@IBAction func importAction(_ sender: Any) {
|
@IBAction func importAction(_ sender: Any) {
|
||||||
|
@ -110,6 +112,7 @@ class ViewController: UIViewController, UIDocumentPickerDelegate {
|
||||||
#if targetEnvironment(macCatalyst)
|
#if targetEnvironment(macCatalyst)
|
||||||
private let OurButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton")
|
private let OurButtonToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "OurButton")
|
||||||
private let OurButtonToolbarIdentifier2 = NSToolbarItem.Identifier(rawValue: "OurButton2")
|
private let OurButtonToolbarIdentifier2 = NSToolbarItem.Identifier(rawValue: "OurButton2")
|
||||||
|
private let TitlebarToolbarIdentifier = NSToolbarItem.Identifier(rawValue: "Titlebar")
|
||||||
|
|
||||||
extension ViewController: NSToolbarDelegate {
|
extension ViewController: NSToolbarDelegate {
|
||||||
@objc func searchAction() {
|
@objc func searchAction() {
|
||||||
|
@ -122,7 +125,7 @@ extension ViewController: NSToolbarDelegate {
|
||||||
|
|
||||||
func toolbarDefaultItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
func toolbarDefaultItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
||||||
return [OurButtonToolbarIdentifier2, NSToolbarItem.Identifier.flexibleSpace,
|
return [OurButtonToolbarIdentifier2, NSToolbarItem.Identifier.flexibleSpace,
|
||||||
OurButtonToolbarIdentifier]
|
TitlebarToolbarIdentifier, NSToolbarItem.Identifier.flexibleSpace, OurButtonToolbarIdentifier]
|
||||||
}
|
}
|
||||||
|
|
||||||
func toolbarAllowedItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
func toolbarAllowedItemIdentifiers(_ toolbar: NSToolbar) -> [NSToolbarItem.Identifier] {
|
||||||
|
@ -140,6 +143,15 @@ extension ViewController: NSToolbarDelegate {
|
||||||
return button
|
return button
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(itemIdentifier == TitlebarToolbarIdentifier) {
|
||||||
|
let barButtonItem = UIBarButtonItem(title: windowTitle, style: UIBarButtonItem.Style.plain, target: nil, action: nil)
|
||||||
|
|
||||||
|
let title = NSToolbarItem(itemIdentifier: itemIdentifier, barButtonItem: barButtonItem)
|
||||||
|
title.label = "Title"
|
||||||
|
|
||||||
|
return title
|
||||||
|
}
|
||||||
|
|
||||||
if (itemIdentifier == OurButtonToolbarIdentifier) {
|
if (itemIdentifier == OurButtonToolbarIdentifier) {
|
||||||
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.search,
|
let barButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.search,
|
||||||
target: self,
|
target: self,
|
||||||
|
|
Reference in a new issue