     let value = source.isOn;
     let userDefaults = Storage.active.userDefaults
     userDefaults.set(predictSetting: value, forLanguageID: self.language.id)
+
+    // Reactively set the corrections switch interactivity state.
+    self.doCorrectionsSwitch?.isEnabled = value
+    self.doCorrectionsLabel?.isEnabled = value
+    self.correctionsCell?.isUserInteractionEnabled = value
     
     if let lm = Manager.shared.preferredLexicalModel(userDefaults, forLanguage: self.language.id) {
       if Manager.shared.currentKeyboardID?.languageID == self.language.id {

  private var settingsArray = [[String: String]]()
  private var keyboardRepository: KeyboardRepository?

  public init(_ keyboardRepository: KeyboardRepository?, _ inLanguage: Language) {
    language = inLanguage
    self.keyboardRepository = keyboardRepository

        case 0:
          cell.textLabel?.text = "Enable predictions"
        case 1:
          doCorrectionsLabel = cell.textLabel
          cell.textLabel?.text = "Enable corrections"
          cell.textLabel?.isEnabled = doCorrectionsSwitch?.isEnabled ?? false
        case 2:
          cell.textLabel?.text = "Dictionaries"
          cell.accessoryType = .disclosureIndicator
