Prefs // +onlyLoadFactoryLangModelsIfNeeded.
This commit is contained in:
parent
e1648fc1a7
commit
50396a42c6
|
@ -40,6 +40,7 @@ public protocol PrefMgrProtocol {
|
|||
var trimUnfinishedReadingsOnCommit: Bool { get set }
|
||||
var alwaysShowTooltipTextsHorizontally: Bool { get set }
|
||||
var clientsIMKTextInputIncapable: [String] { get set }
|
||||
var onlyLoadFactoryLangModelsIfNeeded: Bool { get set }
|
||||
var useIMKCandidateWindow: Bool { get set }
|
||||
var handleDefaultCandidateFontsByLangIdentifier: Bool { get set }
|
||||
var shiftKeyAccommodationBehavior: Int { get set }
|
||||
|
|
|
@ -58,6 +58,7 @@ public enum UserDef: String, CaseIterable {
|
|||
case kTrimUnfinishedReadingsOnCommit = "TrimUnfinishedReadingsOnCommit"
|
||||
case kAlwaysShowTooltipTextsHorizontally = "AlwaysShowTooltipTextsHorizontally"
|
||||
case kClientsIMKTextInputIncapable = "ClientsIMKTextInputIncapable"
|
||||
case kOnlyLoadFactoryLangModelsIfNeeded = "OnlyLoadFactoryLangModelsIfNeeded"
|
||||
|
||||
case kUseIMKCandidateWindow = "UseIMKCandidateWindow"
|
||||
case kHandleDefaultCandidateFontsByLangIdentifier = "HandleDefaultCandidateFontsByLangIdentifier"
|
||||
|
|
|
@ -51,7 +51,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserNotificationCenterDele
|
|||
NSUserNotificationCenter.default.deliver(userNotification)
|
||||
}
|
||||
|
||||
LMMgr.loadDataModelsOnAppDelegate()
|
||||
if !PrefMgr.shared.onlyLoadFactoryLangModelsIfNeeded { LMMgr.loadDataModelsOnAppDelegate() }
|
||||
DispatchQueue.main.async {
|
||||
LMMgr.initUserLangModels()
|
||||
self.folderMonitor.folderDidChange = { [weak self] in
|
||||
|
|
|
@ -126,6 +126,13 @@ public class PrefMgr: PrefMgrProtocol {
|
|||
@AppProperty(key: UserDef.kClientsIMKTextInputIncapable.rawValue, defaultValue: ["com.valvesoftware.steam"])
|
||||
public var clientsIMKTextInputIncapable: [String]
|
||||
|
||||
@AppProperty(key: UserDef.kOnlyLoadFactoryLangModelsIfNeeded.rawValue, defaultValue: true)
|
||||
public var onlyLoadFactoryLangModelsIfNeeded: Bool {
|
||||
didSet {
|
||||
if !onlyLoadFactoryLangModelsIfNeeded { LMMgr.loadDataModelsOnAppDelegate() }
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Settings (Tier 2)
|
||||
|
||||
@AppProperty(key: UserDef.kUseIMKCandidateWindow.rawValue, defaultValue: false)
|
||||
|
|
|
@ -177,7 +177,7 @@ class ctlInputMethod: IMKInputController {
|
|||
default:
|
||||
newInputMode = .imeModeNULL
|
||||
}
|
||||
// LMMgr.loadDataModel(newInputMode)
|
||||
if PrefMgr.shared.onlyLoadFactoryLangModelsIfNeeded { LMMgr.loadDataModel(newInputMode) }
|
||||
|
||||
if inputMode != newInputMode {
|
||||
UserDefaults.standard.synchronize()
|
||||
|
|
Loading…
Reference in New Issue