SessionCtl // Implement selectionRange(), etc.

This commit is contained in:
ShikiSuen 2023-04-28 00:51:34 +08:00
parent b4d6d54f57
commit 3b85bd6d7d
1 changed files with 8 additions and 4 deletions

View File

@ -244,7 +244,7 @@ public extension SessionCtl {
///
/// - Parameter sender:
override func activateServer(_ sender: Any!) {
_ = sender //
super.activateServer(sender)
DispatchQueue.main.async { [self] in
if let senderBundleID: String = (sender as? IMKTextInput)?.bundleIdentifier() {
vCLog("activateServer(\(senderBundleID))")
@ -294,7 +294,6 @@ public extension SessionCtl {
///
/// - Parameter sender: 使
override func deactivateServer(_ sender: Any!) {
_ = sender //
DispatchQueue.main.async { [self] in
isActivated = false
resetInputHandler() // Empty
@ -305,6 +304,7 @@ public extension SessionCtl {
candidateUI = nil
}
}
super.deactivateServer(sender)
}
///
@ -315,12 +315,11 @@ public extension SessionCtl {
/// - tag: 使
/// - sender: 使
override func setValue(_ value: Any!, forTag tag: Int, client sender: Any!) {
_ = tag //
_ = sender //
DispatchQueue.main.async { [self] in
let newMode: Shared.InputMode = .init(rawValue: value as? String ?? PrefMgr.shared.mostRecentInputMode) ?? .imeModeNULL
if inputMode != newMode { inputMode = newMode }
}
super.setValue(value, forTag: tag, client: sender)
}
///
@ -382,6 +381,11 @@ public extension SessionCtl {
super.inputControllerWillClose()
}
///
override func selectionRange() -> NSRange {
attributedStringSecured.range
}
///
override func hidePalettes() {
candidateUI?.visible = false