From 7f99b2f76a2738c1d36a22b5e82371bb3fef6023 Mon Sep 17 00:00:00 2001 From: ShikiSuen Date: Thu, 15 Jun 2023 19:24:51 +0800 Subject: [PATCH] SessionCtl // Share isASCIIMode across all sessions for a client. --- Source/Modules/SessionCtl_Core.swift | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/Source/Modules/SessionCtl_Core.swift b/Source/Modules/SessionCtl_Core.swift index ff852c38..eedd1a4d 100644 --- a/Source/Modules/SessionCtl_Core.swift +++ b/Source/Modules/SessionCtl_Core.swift @@ -103,8 +103,19 @@ public class SessionCtl: IMKInputController { } } - private var isASCIIModeForThisClient = false // 給每個副本用的。 - private static var isASCIIModeForAllClients = false // 給所有副本共用的。 + /// 給所有副本共用的 isASCIIMode 追蹤用餐數。 + private static var isASCIIModeForAllClients = false + /// 一個共用辭典,專門用來給每個副本用的 isASCIIMode 追蹤用餐數。 + private static var isASCIIModeForEachClient: [String: Bool] = [:] + /// 給每個副本用的 isASCIIMode 追蹤用餐數。 + private var isASCIIModeForThisClient: Bool { + get { + Self.isASCIIModeForEachClient[clientBundleIdentifier] ?? false + } + set { + Self.isASCIIModeForEachClient[clientBundleIdentifier] = newValue + } + } /// 輸入調度模組的副本。 var inputHandler: InputHandlerProtocol?