KeyHandler // Add disaster rescue marker for observe().
- Also disable UOM observation when fetchSuggestionsFromUserOverrideModel is off.
This commit is contained in:
parent
b211faa6f4
commit
d98f57b6f1
|
@ -184,14 +184,20 @@ public class KeyHandler {
|
||||||
addToUserOverrideModel = false
|
addToUserOverrideModel = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if addToUserOverrideModel {
|
if addToUserOverrideModel, mgrPrefs.fetchSuggestionsFromUserOverrideModel {
|
||||||
IME.prtDebugIntel("UOM: Start Observation.")
|
IME.prtDebugIntel("UOM: Start Observation.")
|
||||||
|
// 這個過程可能會因為使用者半衰記憶模組內部資料錯亂、而導致輸入法在選字時崩潰。
|
||||||
|
// 於是在這裡引入災後狀況察覺專用變數,且先開啟該開關。順利執行完觀察後會關閉。
|
||||||
|
// 一旦輸入法崩潰,會在重啟時發現這個開關是開著的,屆時 AppDelegate 會做出應對。
|
||||||
|
mgrPrefs.failureFlagForUOMObservation = true
|
||||||
// 令半衰記憶模組觀測給定的三元圖。
|
// 令半衰記憶模組觀測給定的三元圖。
|
||||||
// 這個過程會讓半衰引擎根據當前上下文生成三元圖索引鍵。
|
// 這個過程會讓半衰引擎根據當前上下文生成三元圖索引鍵。
|
||||||
currentUOM.observe(
|
currentUOM.observe(
|
||||||
walkedAnchors: walkedAnchors, cursorIndex: adjustedCursor, candidate: theCandidate.value,
|
walkedAnchors: walkedAnchors, cursorIndex: adjustedCursor, candidate: theCandidate.value,
|
||||||
timestamp: NSDate().timeIntervalSince1970, saveCallback: { mgrLangModel.saveUserOverrideModelData() }
|
timestamp: NSDate().timeIntervalSince1970, saveCallback: { mgrLangModel.saveUserOverrideModelData() }
|
||||||
)
|
)
|
||||||
|
// 如果沒有出現崩框的話,那就將這個開關復位。
|
||||||
|
mgrPrefs.failureFlagForUOMObservation = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue