!6 1.3.7 osr3 // Maintentance.
Merge pull request !6 from ShikiSuen/upd/1.3.7osr3
This commit is contained in:
commit
ef5735193d
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
killall vChewing
|
||||
rm -rf ~/Library/Input\ Methods/vChewing.app
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
killall vChewing
|
||||
rm -rf ~/Library/Input\ Methods/vChewing.app
|
||||
rm -rf ~/Library/Keyboard\ Layouts/vChewingKeyLayout.bundle
|
||||
rm -rf ~/Library/Keyboard\ Layouts/vChewing\ Dachen.keylayout
|
||||
rm -rf ~/Library/Keyboard\ Layouts/vChewing\ ETen.keylayout
|
||||
rm -rf ~/Library/Keyboard\ Layouts/vChewing\ FakeSeigyou.keylayout
|
||||
rm -rf ~/Library/Keyboard\ Layouts/vChewing\ IBM.keylayout
|
||||
rm -rf ~/Library/Keyboard\ Layouts/vChewing\ MiTAC.keylayout
|
|
@ -20,12 +20,10 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR TH
|
|||
|
||||
@interface AWFileHash : NSObject
|
||||
|
||||
+ (NSString *)md5HashOfData:(NSData *)data;
|
||||
+ (NSString *)sha1HashOfData:(NSData *)data;
|
||||
+ (NSString *)sha512HashOfData:(NSData *)data;
|
||||
+ (NSString *)crc32HashOfData:(NSData *)data;
|
||||
|
||||
+ (NSString *)md5HashOfFileAtPath:(NSString *)filePath;
|
||||
+ (NSString *)sha1HashOfFileAtPath:(NSString *)filePath;
|
||||
+ (NSString *)sha512HashOfFileAtPath:(NSString *)filePath;
|
||||
+ (NSString *)crc32HashOfFileAtPath:(NSString *)filePath;
|
||||
|
|
|
@ -307,11 +307,7 @@ int CC_CRC32_Final(unsigned char *md, CC_CRC32_CTX *c) {
|
|||
|
||||
#pragma mark -
|
||||
#pragma mark public class accessors
|
||||
+ (NSString *)md5HashOfData:(NSData *)data {
|
||||
FileHashComputationContext context;
|
||||
FileHashComputationContextInitialize(context, MD5);
|
||||
return [self hashOfNSData:data withComputationContext:&context];
|
||||
}
|
||||
|
||||
|
||||
+ (NSString *)sha1HashOfData:(NSData *)data {
|
||||
FileHashComputationContext context;
|
||||
|
@ -331,12 +327,6 @@ int CC_CRC32_Final(unsigned char *md, CC_CRC32_CTX *c) {
|
|||
return [self hashOfNSData:data withComputationContext:&context];
|
||||
}
|
||||
|
||||
+ (NSString *)md5HashOfFileAtPath:(NSString *)filePath {
|
||||
FileHashComputationContext context;
|
||||
FileHashComputationContextInitialize(context, MD5);
|
||||
return [self hashOfFileAtPath:filePath withComputationContext:&context];
|
||||
}
|
||||
|
||||
+ (NSString *)sha1HashOfFileAtPath:(NSString *)filePath {
|
||||
FileHashComputationContext context;
|
||||
FileHashComputationContextInitialize(context, SHA1);
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit ed8e8f37aeff477a242f4ad345d5b2cfa85e0cf0
|
||||
Subproject commit e7785674095589d8d35a54f9ad3920d26d39a448
|
|
@ -299,4 +299,19 @@ class AppDelegate: NSObject, NSApplicationDelegate, ctlNonModalAlertWindowDelega
|
|||
NSLog("vChewingErrorCallback: %@", strPrint)
|
||||
}
|
||||
}
|
||||
@objc static func isDarkMode() -> Bool {
|
||||
if #available(macOS 10.15, *) {
|
||||
let appearanceDescription = NSApplication.shared.effectiveAppearance.debugDescription.lowercased()
|
||||
if appearanceDescription.contains("dark") {
|
||||
return true
|
||||
}
|
||||
} else if #available(macOS 10.14, *) {
|
||||
if let appleInterfaceStyle = UserDefaults.standard.object(forKey: "AppleInterfaceStyle") as? String {
|
||||
if appleInterfaceStyle.lowercased().contains("dark") {
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
|
|
@ -563,7 +563,9 @@ extension ctlInputMethod {
|
|||
|
||||
func candidateFont(name: String?, size: CGFloat) -> NSFont {
|
||||
let currentMUIFont = (keyHandler.inputMode == InputMode.imeModeCHS) ? "Sarasa Term Slab SC" : "Sarasa Term Slab TC"
|
||||
let finalReturnFont = NSFont(name: currentMUIFont, size: size) ?? NSFont.systemFont(ofSize: size)
|
||||
var finalReturnFont = NSFont(name: currentMUIFont, size: size) ?? NSFont.systemFont(ofSize: size)
|
||||
// 對更紗黑體的依賴到 macOS 11 Big Sur 為止。macOS 12 Monterey 開始則依賴系統內建的函數使用蘋方來處理。
|
||||
if #available(macOS 12.0, *) {finalReturnFont = NSFont.systemFont(ofSize: size)}
|
||||
if let name = name {
|
||||
return NSFont(name: name, size: size) ?? finalReturnFont
|
||||
}
|
||||
|
|
|
@ -118,12 +118,13 @@ fileprivate class HorizontalCandidateView: NSView {
|
|||
var activeCandidateIndexAttr = keyLabelAttrDict
|
||||
var activeCandidateAttr = candidateAttrDict
|
||||
if index == highlightedIndex {
|
||||
let colorBlendAmount: CGFloat = IME.isDarkMode() ? 0.25 : 0
|
||||
// The background color of the highlightened candidate
|
||||
switch ctlInputMethod.currentKeyHandler.inputMode {
|
||||
case InputMode.imeModeCHS:
|
||||
NSColor.systemRed.withAlphaComponent(0.75).setFill()
|
||||
NSColor.systemRed.blended(withFraction: colorBlendAmount, of: NSColor.controlBackgroundColor)!.setFill()
|
||||
case InputMode.imeModeCHT:
|
||||
NSColor.systemBlue.withAlphaComponent(0.75).setFill()
|
||||
NSColor.systemBlue.blended(withFraction: colorBlendAmount, of: NSColor.controlBackgroundColor)!.setFill()
|
||||
default:
|
||||
NSColor.alternateSelectedControlColor.setFill()
|
||||
}
|
||||
|
@ -132,6 +133,14 @@ fileprivate class HorizontalCandidateView: NSView {
|
|||
} else {
|
||||
NSColor.controlBackgroundColor.setFill()
|
||||
}
|
||||
switch ctlInputMethod.currentKeyHandler.inputMode {
|
||||
case InputMode.imeModeCHS:
|
||||
if #available(macOS 12.0, *) {activeCandidateAttr[.languageIdentifier] = "zh-Hans" as AnyObject}
|
||||
case InputMode.imeModeCHT:
|
||||
if #available(macOS 12.0, *) {activeCandidateAttr[.languageIdentifier] = "zh-Hant" as AnyObject}
|
||||
default:
|
||||
break
|
||||
}
|
||||
NSBezierPath.fill(rctCandidateArea)
|
||||
(keyLabels[index] as NSString).draw(in: rctLabel, withAttributes: activeCandidateIndexAttr)
|
||||
(displayedCandidates[index] as NSString).draw(in: rctCandidatePhrase, withAttributes: activeCandidateAttr)
|
||||
|
|
|
@ -124,12 +124,13 @@ fileprivate class VerticalCandidateView: NSView {
|
|||
var activeCandidateIndexAttr = keyLabelAttrDict
|
||||
var activeCandidateAttr = candidateAttrDict
|
||||
if index == highlightedIndex {
|
||||
let colorBlendAmount: CGFloat = IME.isDarkMode() ? 0.25 : 0
|
||||
// The background color of the highlightened candidate
|
||||
switch ctlInputMethod.currentKeyHandler.inputMode {
|
||||
case InputMode.imeModeCHS:
|
||||
NSColor.systemRed.withAlphaComponent(0.75).setFill()
|
||||
NSColor.systemRed.blended(withFraction: colorBlendAmount, of: NSColor.controlBackgroundColor)!.setFill()
|
||||
case InputMode.imeModeCHT:
|
||||
NSColor.systemBlue.withAlphaComponent(0.75).setFill()
|
||||
NSColor.systemBlue.blended(withFraction: colorBlendAmount, of: NSColor.controlBackgroundColor)!.setFill()
|
||||
default:
|
||||
NSColor.alternateSelectedControlColor.setFill()
|
||||
}
|
||||
|
@ -138,6 +139,14 @@ fileprivate class VerticalCandidateView: NSView {
|
|||
} else {
|
||||
NSColor.controlBackgroundColor.setFill()
|
||||
}
|
||||
switch ctlInputMethod.currentKeyHandler.inputMode {
|
||||
case InputMode.imeModeCHS:
|
||||
if #available(macOS 12.0, *) {activeCandidateAttr[.languageIdentifier] = "zh-Hans" as AnyObject}
|
||||
case InputMode.imeModeCHT:
|
||||
if #available(macOS 12.0, *) {activeCandidateAttr[.languageIdentifier] = "zh-Hant" as AnyObject}
|
||||
default:
|
||||
break
|
||||
}
|
||||
NSBezierPath.fill(rctCandidateArea)
|
||||
(keyLabels[index] as NSString).draw(in: rctLabel, withAttributes: activeCandidateIndexAttr)
|
||||
(displayedCandidates[index] as NSString).draw(in: rctCandidatePhrase, withAttributes: activeCandidateAttr)
|
||||
|
|
|
@ -222,6 +222,7 @@ extension String {
|
|||
varLineData.regReplace(pattern: "cai", replaceWith: "ㄘㄞ")
|
||||
varLineData.regReplace(pattern: "can", replaceWith: "ㄘㄢ")
|
||||
varLineData.regReplace(pattern: "cao", replaceWith: "ㄘㄠ")
|
||||
varLineData.regReplace(pattern: "cei", replaceWith: "ㄘㄟ")
|
||||
varLineData.regReplace(pattern: "cen", replaceWith: "ㄘㄣ")
|
||||
varLineData.regReplace(pattern: "cha", replaceWith: "ㄔㄚ")
|
||||
varLineData.regReplace(pattern: "che", replaceWith: "ㄔㄜ")
|
||||
|
|
128
vChewing.pkgproj
128
vChewing.pkgproj
|
@ -52,6 +52,22 @@
|
|||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Audio</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
|
@ -68,6 +84,22 @@
|
|||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>ColorPickers</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
|
@ -116,6 +148,22 @@
|
|||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>80</integer>
|
||||
<key>PATH</key>
|
||||
<string>Fonts</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>1021</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
|
@ -524,6 +572,56 @@
|
|||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Extensions</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Library</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>System</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
|
@ -594,7 +692,7 @@
|
|||
<key>PREINSTALL_PATH</key>
|
||||
<dict>
|
||||
<key>PATH</key>
|
||||
<string>Installer/pkgPostInstall.sh</string>
|
||||
<string>Installer/pkgPreInstall.sh</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
|
@ -846,11 +944,11 @@
|
|||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
<string>Simplified Chinese</string>
|
||||
<string>Traditional Chinese</string>
|
||||
<key>VALUE</key>
|
||||
<dict>
|
||||
<key>PATH</key>
|
||||
<string>LICENSE-CHS.txt</string>
|
||||
<string>LICENSE-CHT.txt</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
|
@ -868,11 +966,11 @@
|
|||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
<string>Traditional Chinese</string>
|
||||
<string>Simplified Chinese</string>
|
||||
<key>VALUE</key>
|
||||
<dict>
|
||||
<key>PATH</key>
|
||||
<string>LICENSE-CHT.txt</string>
|
||||
<string>LICENSE-CHS.txt</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
|
@ -903,9 +1001,9 @@
|
|||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
<string>Traditional Chinese</string>
|
||||
<string>Simplified Chinese</string>
|
||||
<key>VALUE</key>
|
||||
<string>威注音輸入法</string>
|
||||
<string>威注音输入法</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
|
@ -915,9 +1013,9 @@
|
|||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
<string>Simplified Chinese</string>
|
||||
<string>Traditional Chinese</string>
|
||||
<key>VALUE</key>
|
||||
<string>威注音输入法</string>
|
||||
<string>威注音輸入法</string>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
|
@ -954,11 +1052,11 @@
|
|||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
<string>Traditional Chinese</string>
|
||||
<string>Simplified Chinese</string>
|
||||
<key>SECONDARY_VALUE</key>
|
||||
<string>至少 macOS 10.11.5 方可滿足威注音對系統內的萬國碼版本支援的需要。</string>
|
||||
<string>至少 macOS 10.11.5 方可满足威注音对系统内的万国码版本支援的需要。</string>
|
||||
<key>VALUE</key>
|
||||
<string>作業系統版本太舊</string>
|
||||
<string>作业系统版本太旧</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
|
@ -970,11 +1068,11 @@
|
|||
</dict>
|
||||
<dict>
|
||||
<key>LANGUAGE</key>
|
||||
<string>Simplified Chinese</string>
|
||||
<string>Traditional Chinese</string>
|
||||
<key>SECONDARY_VALUE</key>
|
||||
<string>至少 macOS 10.11.5 方可满足威注音对系统内的万国码版本支援的需要。</string>
|
||||
<string>至少 macOS 10.11.5 方可滿足威注音對系統內的萬國碼版本支援的需要。</string>
|
||||
<key>VALUE</key>
|
||||
<string>作业系统版本太旧</string>
|
||||
<string>作業系統版本太舊</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>NAME</key>
|
||||
|
|
Loading…
Reference in New Issue