|
@@ -31,6 +31,15 @@ class KMNoteFooterCellView: NSTableCellView, NibLoadable {
|
|
|
@IBOutlet weak var inputBoxHeightConst: NSLayoutConstraint!
|
|
|
@IBOutlet weak var replyButtonTopConst: NSLayoutConstraint!
|
|
|
|
|
|
+ private lazy var inputRespButton_: NSButton = {
|
|
|
+ let view = NSButton()
|
|
|
+ view.isBordered = false
|
|
|
+ view.title = NSLocalizedString("", comment: "")
|
|
|
+ view.target = self
|
|
|
+ view.action = #selector(_inputRespButtonAction)
|
|
|
+ return view
|
|
|
+ }()
|
|
|
+
|
|
|
var itemClick: KMCommonClickBlock?
|
|
|
|
|
|
var model: KMBotaAnnotationFooterModel?
|
|
@@ -87,14 +96,22 @@ class KMNoteFooterCellView: NSTableCellView, NibLoadable {
|
|
|
}
|
|
|
if result {
|
|
|
self?.inputBox.borderColor = NSColor.km_init(hex: "#1770F4")
|
|
|
+
|
|
|
+ self?.inputRespButton_.isHidden = true
|
|
|
} else {
|
|
|
if KMAppearance.isDarkMode() {
|
|
|
self?.inputBox.borderColor = NSColor(hex: "#56585A")
|
|
|
} else {
|
|
|
self?.inputBox.borderColor = NSColor(white: 0, alpha: 0.2)
|
|
|
}
|
|
|
+ self?.inputRespButton_.isHidden = false
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ self.inputBox.contentView?.addSubview(self.inputRespButton_)
|
|
|
+ self.inputRespButton_.frame = self.inputBox.contentView?.bounds ?? .zero
|
|
|
+ self.inputRespButton_.autoresizingMask = [.width, .height]
|
|
|
+
|
|
|
self.replyButton.title = NSLocalizedString("Reply", comment: "")
|
|
|
self.replyButton.wantsLayer = true
|
|
|
self.replyButton.setTitleColor(color: .white, font: .SFProTextRegularFont(13))
|
|
@@ -184,6 +201,11 @@ class KMNoteFooterCellView: NSTableCellView, NibLoadable {
|
|
|
self.itemClick?(2, sender)
|
|
|
}
|
|
|
|
|
|
+ @objc private func _inputRespButtonAction() {
|
|
|
+ self.window?.makeFirstResponder(self.inputTextF)
|
|
|
+ self.inputRespButton_.isHidden = true
|
|
|
+ }
|
|
|
+
|
|
|
override func updateLayer() {
|
|
|
super.updateLayer()
|
|
|
|
|
@@ -206,6 +228,8 @@ extension KMNoteFooterCellView: NSTextFieldDelegate {
|
|
|
self.inputBox.borderColor = NSColor(white: 0, alpha: 0.2)
|
|
|
}
|
|
|
self.flag_ = false
|
|
|
+
|
|
|
+ self.inputRespButton_.isHidden = false
|
|
|
}
|
|
|
}
|
|
|
}
|