UpdateSputnik // Also show the GitHub download page in notification.
This commit is contained in:
parent
2fc8dbe541
commit
ff468a94a1
|
@ -11,6 +11,7 @@ import Cocoa
|
||||||
public class UpdateSputnik {
|
public class UpdateSputnik {
|
||||||
public static let shared: UpdateSputnik = .init()
|
public static let shared: UpdateSputnik = .init()
|
||||||
public let kUpdateInfoPageURLKey: String = "UpdateInfoSite"
|
public let kUpdateInfoPageURLKey: String = "UpdateInfoSite"
|
||||||
|
public let kUpdateInfoPageURLGitHubKey: String = "UpdateInfoSiteGitHub"
|
||||||
public let kUpdateCheckDateKeyPrevious: String = "PreviousUpdateCheckDate"
|
public let kUpdateCheckDateKeyPrevious: String = "PreviousUpdateCheckDate"
|
||||||
public let kUpdateCheckDateKeyNext: String = "NextUpdateCheckDate"
|
public let kUpdateCheckDateKeyNext: String = "NextUpdateCheckDate"
|
||||||
public let kUpdateCheckInterval: TimeInterval = 114_514
|
public let kUpdateCheckInterval: TimeInterval = 114_514
|
||||||
|
@ -127,20 +128,33 @@ public class UpdateSputnik {
|
||||||
intRemoteVersion.description
|
intRemoteVersion.description
|
||||||
)
|
)
|
||||||
let alert = NSAlert()
|
let alert = NSAlert()
|
||||||
alert.messageText = NSLocalizedString("New Version Available", comment: "")
|
|
||||||
alert.informativeText = content
|
alert.informativeText = content
|
||||||
alert.addButton(withTitle: NSLocalizedString("Visit Website", comment: ""))
|
alert.messageText = NSLocalizedString("New Version Available", comment: "")
|
||||||
|
let strVisitWebsite = NSLocalizedString("Visit Website", comment: "")
|
||||||
|
alert.addButton(withTitle: "\(strVisitWebsite) (Gitee)")
|
||||||
|
alert.addButton(withTitle: "\(strVisitWebsite) (GitHub)")
|
||||||
alert.addButton(withTitle: NSLocalizedString("Not Now", comment: ""))
|
alert.addButton(withTitle: NSLocalizedString("Not Now", comment: ""))
|
||||||
|
|
||||||
|
guard let siteInfoURLString = plist["\(kUpdateInfoPageURLKey)"] as? String,
|
||||||
|
let siteURL = URL(string: siteInfoURLString),
|
||||||
|
let siteInfoURLStringGitHub = plist["\(kUpdateInfoPageURLGitHubKey)"] as? String,
|
||||||
|
let siteURLGitHub = URL(string: siteInfoURLStringGitHub)
|
||||||
|
else {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
let result = alert.runModal()
|
let result = alert.runModal()
|
||||||
NSApp.activate(ignoringOtherApps: true)
|
NSApp.activate(ignoringOtherApps: true)
|
||||||
if result == NSApplication.ModalResponse.alertFirstButtonReturn {
|
switch result {
|
||||||
if let siteInfoURLString = plist[kUpdateInfoPageURLKey] as? String,
|
case .alertFirstButtonReturn:
|
||||||
let siteURL = URL(string: siteInfoURLString)
|
|
||||||
{
|
|
||||||
DispatchQueue.main.async {
|
DispatchQueue.main.async {
|
||||||
NSWorkspace.shared.open(siteURL)
|
NSWorkspace.shared.open(siteURL)
|
||||||
}
|
}
|
||||||
|
case .alertSecondButtonReturn:
|
||||||
|
DispatchQueue.main.async {
|
||||||
|
NSWorkspace.shared.open(siteURLGitHub)
|
||||||
}
|
}
|
||||||
|
default: break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -157,6 +157,8 @@ SOFTWARE.
|
||||||
<string>https://gitee.com/vchewing/vChewing-macOS/raw/main/Update-Info.plist</string>
|
<string>https://gitee.com/vchewing/vChewing-macOS/raw/main/Update-Info.plist</string>
|
||||||
<key>UpdateInfoSite</key>
|
<key>UpdateInfoSite</key>
|
||||||
<string>https://gitee.com/vChewing/vChewing-macOS/releases</string>
|
<string>https://gitee.com/vChewing/vChewing-macOS/releases</string>
|
||||||
|
<key>UpdateInfoSiteGitHub</key>
|
||||||
|
<string>https://gitee.com/vChewing/vChewing-macOS/releases</string>
|
||||||
<key>tsInputMethodCharacterRepertoireKey</key>
|
<key>tsInputMethodCharacterRepertoireKey</key>
|
||||||
<array>
|
<array>
|
||||||
<string>Hans</string>
|
<string>Hans</string>
|
||||||
|
|
|
@ -10,5 +10,7 @@
|
||||||
<string>https://gitee.com/vchewing/vChewing-macOS/raw/main/Update-Info.plist</string>
|
<string>https://gitee.com/vchewing/vChewing-macOS/raw/main/Update-Info.plist</string>
|
||||||
<key>UpdateInfoSite</key>
|
<key>UpdateInfoSite</key>
|
||||||
<string>https://gitee.com/vChewing/vChewing-macOS/releases</string>
|
<string>https://gitee.com/vChewing/vChewing-macOS/releases</string>
|
||||||
|
<key>UpdateInfoSiteGitHub</key>
|
||||||
|
<string>https://gitee.com/vChewing/vChewing-macOS/releases</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
Loading…
Reference in New Issue