diff --git a/Mac/Inspector/BuiltinSmartFeedInspectorViewController.swift b/Mac/Inspector/BuiltinSmartFeedInspectorViewController.swift index da31cc523..8b59bec65 100644 --- a/Mac/Inspector/BuiltinSmartFeedInspectorViewController.swift +++ b/Mac/Inspector/BuiltinSmartFeedInspectorViewController.swift @@ -26,6 +26,7 @@ final class BuiltinSmartFeedInspectorViewController: NSViewController, Inspector updateSmartFeed() } } + var windowTitle: String = NSLocalizedString("Smart Feed Inspector", comment: "Smart Feed Inspector window title") func canInspect(_ objects: [Any]) -> Bool { @@ -62,5 +63,6 @@ private extension BuiltinSmartFeedInspectorViewController { func updateUI() { nameTextField?.stringValue = smartFeed?.nameForDisplay ?? "" + windowTitle = smartFeed?.nameForDisplay ?? NSLocalizedString("Smart Feed Inspector", comment: "Smart Feed Inspector window title") } } diff --git a/Mac/Inspector/FolderInspectorViewController.swift b/Mac/Inspector/FolderInspectorViewController.swift index 45ca150f9..708802d9b 100644 --- a/Mac/Inspector/FolderInspectorViewController.swift +++ b/Mac/Inspector/FolderInspectorViewController.swift @@ -30,6 +30,7 @@ final class FolderInspectorViewController: NSViewController, Inspector { updateFolder() } } + var windowTitle: String = NSLocalizedString("Folder Inspector", comment: "Folder Inspector window title") func canInspect(_ objects: [Any]) -> Bool { @@ -103,5 +104,6 @@ private extension FolderInspectorViewController { if nameTextField.stringValue != name { nameTextField.stringValue = name } + windowTitle = folder?.nameForDisplay ?? NSLocalizedString("Folder Inspector", comment: "Folder Inspector window title") } } diff --git a/Mac/Inspector/InspectorWindowController.swift b/Mac/Inspector/InspectorWindowController.swift index 01e476bc0..8f4f82e8f 100644 --- a/Mac/Inspector/InspectorWindowController.swift +++ b/Mac/Inspector/InspectorWindowController.swift @@ -12,6 +12,7 @@ protocol Inspector: class { var objects: [Any]? { get set } var isFallbackInspector: Bool { get } // Can handle nothing-to-inspect or unexpected type of objects. + var windowTitle: String { get } func canInspect(_ objects: [Any]) -> Bool } @@ -62,6 +63,7 @@ final class InspectorWindowController: NSWindowController { inspectors = [feedInspector, folderInspector, builtinSmartFeedInspector, nothingInspector] currentInspector = nothingInspector + window?.title = currentInspector.windowTitle if let savedOrigin = originFromDefaults() { window?.setFlippedOriginAdjustingForScreen(savedOrigin) @@ -108,7 +110,11 @@ private extension InspectorWindowController { guard let window = window else { return } - + + DispatchQueue.main.async { + window.title = inspector.windowTitle + } + let flippedOrigin = window.flippedOrigin if window.contentViewController != inspector { diff --git a/Mac/Inspector/NothingInspectorViewController.swift b/Mac/Inspector/NothingInspectorViewController.swift index f6ffb97f3..376e6a594 100644 --- a/Mac/Inspector/NothingInspectorViewController.swift +++ b/Mac/Inspector/NothingInspectorViewController.swift @@ -19,6 +19,7 @@ final class NothingInspectorViewController: NSViewController, Inspector { updateTextFields() } } + var windowTitle: String = NSLocalizedString("Inspector", comment: "Inspector window title") func canInspect(_ objects: [Any]) -> Bool { diff --git a/Mac/Inspector/WebFeedInspectorViewController.swift b/Mac/Inspector/WebFeedInspectorViewController.swift index ee4779a0d..877205359 100644 --- a/Mac/Inspector/WebFeedInspectorViewController.swift +++ b/Mac/Inspector/WebFeedInspectorViewController.swift @@ -38,6 +38,7 @@ final class WebFeedInspectorViewController: NSViewController, Inspector { updateFeed() } } + var windowTitle: String = NSLocalizedString("Feed Inspector", comment: "Feed Inspector window title") func canInspect(_ objects: [Any]) -> Bool { return objects.count == 1 && objects.first is WebFeed @@ -112,6 +113,7 @@ extension WebFeedInspectorViewController: NSTextFieldDelegate { return } feed.editedName = nameTextField.stringValue + windowTitle = feed.editedName ?? NSLocalizedString("Feed Inspector", comment: "Feed Inspector window title") } } @@ -133,7 +135,7 @@ private extension WebFeedInspectorViewController { updateFeedURL() updateNotifyAboutNewArticles() updateIsReaderViewAlwaysOn() - + windowTitle = feed?.nameForDisplay ?? NSLocalizedString("Feed Inspector", comment: "Feed Inspector window title") view.needsLayout = true }