Skip to content

Commit 2a33cf4

Browse files
author
ying
committed
Prepare 0.1.4 update behavior
1 parent dfa980c commit 2a33cf4

9 files changed

Lines changed: 21 additions & 28 deletions

File tree

Sources/ClipDock/ApplicationRuntime.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -602,7 +602,7 @@ final class AppDelegate: NSObject, NSApplicationDelegate {
602602
self?.updateCoordinator.checkForSettingsUpdate()
603603
}
604604
preferencesController.onUpdateReleaseRequested = { [weak self] release in
605-
self?.updateCoordinator.presentUpdatePrompt(for: release)
605+
self?.updateCoordinator.openReleasePage(release)
606606
}
607607
preferencesController.onAutomaticUpdateChecksChanged = { [weak self] isEnabled in
608608
self?.updateCoordinator.setAutomaticChecksEnabled(isEnabled)

Sources/ClipDock/PreferencesUI.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1031,7 +1031,7 @@ struct PreferencesVersionUpdatePresentation: Equatable {
10311031
return PreferencesVersionUpdatePresentation(
10321032
detail: AppLocalization.format(
10331033
"preferences.version.updateAvailable.detail",
1034-
defaultValue: "发现新版本 %@,点击查看更新提示",
1034+
defaultValue: "发现新版本 %@,点击打开发布页面",
10351035
release.displayVersion
10361036
),
10371037
value: AppLocalization.format(
@@ -2278,7 +2278,7 @@ private struct PreferenceRow<Accessory: View>: View {
22782278
.contentShape(Rectangle())
22792279
.help(AppLocalization.text(
22802280
"preferences.version.openRelease.help",
2281-
defaultValue: "显示更新提示"
2281+
defaultValue: "打开发布页面"
22822282
))
22832283
} else {
22842284
rowContent

Sources/ClipDock/Resources/AppInfo.plist

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<plist version="1.0">
44
<dict>
55
<key>CFBundleShortVersionString</key>
6-
<string>0.1.2</string>
6+
<string>0.1.4</string>
77
<key>CFBundleVersion</key>
88
<string>4</string>
99
</dict>

Sources/ClipDock/Resources/en.lproj/Localizable.strings

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,9 +194,9 @@
194194
"preferences.version.detail" = "Current app version";
195195
"preferences.version.format" = "Version %@ (%@)";
196196
"preferences.version.inline" = "Version %@";
197-
"preferences.version.openRelease.help" = "Show update prompt";
197+
"preferences.version.openRelease.help" = "Open release page";
198198
"preferences.version.title" = "Version";
199-
"preferences.version.updateAvailable.detail" = "New version %@ is available. Click to show the update prompt.";
199+
"preferences.version.updateAvailable.detail" = "New version %@ is available. Click to open the release page.";
200200
"preferences.version.updateAvailable.value" = "Update %@";
201201
"preferences.updateChecks.detail" = "Automatically check for new versions and notify when one is available";
202202
"preferences.updateChecks.title" = "Check for Updates";

Sources/ClipDock/Resources/ja.lproj/Localizable.strings

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,9 +194,9 @@
194194
"preferences.version.detail" = "Current app version";
195195
"preferences.version.format" = "Version %@ (%@)";
196196
"preferences.version.inline" = "Version %@";
197-
"preferences.version.openRelease.help" = "Show update prompt";
197+
"preferences.version.openRelease.help" = "Open release page";
198198
"preferences.version.title" = "Version";
199-
"preferences.version.updateAvailable.detail" = "New version %@ is available. Click to show the update prompt.";
199+
"preferences.version.updateAvailable.detail" = "New version %@ is available. Click to open the release page.";
200200
"preferences.version.updateAvailable.value" = "Update %@";
201201
"preferences.updateChecks.detail" = "Automatically check for new versions and notify when one is available";
202202
"preferences.updateChecks.title" = "Check for Updates";

Sources/ClipDock/Resources/ko.lproj/Localizable.strings

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,9 +194,9 @@
194194
"preferences.version.detail" = "Current app version";
195195
"preferences.version.format" = "Version %@ (%@)";
196196
"preferences.version.inline" = "Version %@";
197-
"preferences.version.openRelease.help" = "Show update prompt";
197+
"preferences.version.openRelease.help" = "Open release page";
198198
"preferences.version.title" = "Version";
199-
"preferences.version.updateAvailable.detail" = "New version %@ is available. Click to show the update prompt.";
199+
"preferences.version.updateAvailable.detail" = "New version %@ is available. Click to open the release page.";
200200
"preferences.version.updateAvailable.value" = "Update %@";
201201
"preferences.updateChecks.detail" = "Automatically check for new versions and notify when one is available";
202202
"preferences.updateChecks.title" = "Check for Updates";

Sources/ClipDock/Resources/zh-Hant.lproj/Localizable.strings

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,9 +194,9 @@
194194
"preferences.version.detail" = "Current app version";
195195
"preferences.version.format" = "Version %@ (%@)";
196196
"preferences.version.inline" = "Version %@";
197-
"preferences.version.openRelease.help" = "顯示更新提示";
197+
"preferences.version.openRelease.help" = "開啟發行頁面";
198198
"preferences.version.title" = "Version";
199-
"preferences.version.updateAvailable.detail" = "發現新版本 %@,點按以顯示更新提示。";
199+
"preferences.version.updateAvailable.detail" = "發現新版本 %@,點按以開啟發行頁面。";
200200
"preferences.version.updateAvailable.value" = "有更新 %@";
201201
"preferences.updateChecks.detail" = "自動檢查新版本,並在可用時提醒";
202202
"preferences.updateChecks.title" = "檢查更新";

Sources/ClipDock/UpdateChecker.swift

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -542,13 +542,6 @@ final class AppUpdateCoordinator {
542542
skippedVersion: nil
543543
) {
544544
onSettingsUpdateStatusChanged?(.available(candidate))
545-
handlePromptAction(
546-
promptPresenter.presentUpdatePrompt(
547-
release: candidate,
548-
currentVersion: currentVersion
549-
),
550-
for: candidate
551-
)
552545
} else {
553546
onSettingsUpdateStatusChanged?(.upToDate)
554547
}

Tests/ClipboardPanelAppTests/AppUpdateCheckerTests.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -128,14 +128,14 @@ struct AppUpdateCheckerTests {
128128
currentVersionText: "0.1.3 (3)"
129129
)
130130
#expect(available.detail.contains("0.2.0"))
131-
#expect(available.detail.contains("更新提示"))
131+
#expect(available.detail.contains("发布页面"))
132132
#expect(available.value == "有更新 0.2.0")
133133
#expect(available.isActionable)
134134
}
135135

136136
@Test
137137
@MainActor
138-
func settingsCheckReportsAvailabilityAndPromptsWithoutConsumingDailyCheck() async throws {
138+
func settingsCheckReportsAvailabilityWithoutPromptingOrConsumingDailyCheck() async throws {
139139
let release = try makeRelease(version: "v0.2.0")
140140
let provider = FakeAppUpdateProvider(release: release)
141141
let promptPresenter = FakeAppUpdatePromptPresenter()
@@ -162,9 +162,9 @@ struct AppUpdateCheckerTests {
162162
#expect(statuses.first == .checking)
163163
#expect(statuses.last == .available(release))
164164
#expect(provider.requestCount == 1)
165-
#expect(promptPresenter.requestCount == 1)
166-
#expect(promptPresenter.requestedRelease == release)
167-
#expect(promptPresenter.requestedCurrentVersion == "0.1.3")
165+
#expect(promptPresenter.requestCount == 0)
166+
#expect(promptPresenter.requestedRelease == nil)
167+
#expect(promptPresenter.requestedCurrentVersion == nil)
168168
#expect(stateStore.lastCheckAttemptDate == nil)
169169
}
170170

@@ -212,7 +212,7 @@ struct AppUpdateCheckerTests {
212212

213213
@Test
214214
@MainActor
215-
func settingsUpdatePromptDownloadActionOpensDownloadURL() async throws {
215+
func settingsCheckReportsAvailabilityWithoutOpeningDownloadURL() async throws {
216216
let release = try makeRelease(version: "v0.2.0")
217217
let provider = FakeAppUpdateProvider(release: release)
218218
let promptPresenter = FakeAppUpdatePromptPresenter(action: .download)
@@ -233,12 +233,12 @@ struct AppUpdateCheckerTests {
233233

234234
coordinator.checkForSettingsUpdate()
235235
await waitFor {
236-
urlOpener.openedURLs == [release.downloadURL]
236+
statuses.last == .available(release)
237237
}
238238

239239
#expect(statuses.last == .available(release))
240-
#expect(promptPresenter.requestCount == 1)
241-
#expect(urlOpener.openedURLs == [release.downloadURL])
240+
#expect(promptPresenter.requestCount == 0)
241+
#expect(urlOpener.openedURLs.isEmpty)
242242
}
243243

244244
@Test

0 commit comments

Comments
 (0)