diff --git a/Evergreen/Base.lproj/RenameSheet.xib b/Evergreen/Base.lproj/RenameSheet.xib index 6722eaaeb..ea16cc5e9 100644 --- a/Evergreen/Base.lproj/RenameSheet.xib +++ b/Evergreen/Base.lproj/RenameSheet.xib @@ -41,6 +41,9 @@ + + + diff --git a/Evergreen/MainWindow/Sidebar/Renaming/RenameWindowController.swift b/Evergreen/MainWindow/Sidebar/Renaming/RenameWindowController.swift index 12bc8fd1f..439cd057a 100644 --- a/Evergreen/MainWindow/Sidebar/Renaming/RenameWindowController.swift +++ b/Evergreen/MainWindow/Sidebar/Renaming/RenameWindowController.swift @@ -16,9 +16,32 @@ final class RenameWindowController: NSWindowController { private var originalTitle: String! - public convenience init(originalTitle: String) { + convenience init(originalTitle: String) { self.init(windowNibName: NSNib.Name(rawValue: "RenameSheet")) self.originalTitle = originalTitle } + + override func windowDidLoad() { + + newTitleTextField.stringValue = originalTitle + updateUI() + } +} + +extension RenameWindowController: NSTextFieldDelegate { + + override func controlTextDidChange(_ obj: Notification) { + + updateUI() + } +} + +private extension RenameWindowController { + + func updateUI() { + + let newTitle = newTitleTextField.stringValue + renameButton.isEnabled = !newTitle.isEmpty && newTitle != originalTitle + } }