From d27a797f0b0b15291c5427c86313bd104100889b Mon Sep 17 00:00:00 2001 From: Empa <42304516+ItsEmpa@users.noreply.github.com> Date: Thu, 3 Oct 2024 21:53:14 +0200 Subject: [PATCH] Fix: Auto Updater (#26) Co-authored-by: ItsEmpa --- src/main/kotlin/com/ratons/config/features/About.java | 7 +++++++ .../com/ratons/features/misc/update/UpdateManager.kt | 4 ++-- .../com/ratons/features/misc/update/UpdateStream.kt | 11 +++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 src/main/kotlin/com/ratons/features/misc/update/UpdateStream.kt diff --git a/src/main/kotlin/com/ratons/config/features/About.java b/src/main/kotlin/com/ratons/config/features/About.java index 7f83339..d32a76e 100644 --- a/src/main/kotlin/com/ratons/config/features/About.java +++ b/src/main/kotlin/com/ratons/config/features/About.java @@ -1,8 +1,10 @@ package com.ratons.config.features; import at.hannibal2.skyhanni.deps.moulconfig.annotations.ConfigEditorBoolean; +import at.hannibal2.skyhanni.deps.moulconfig.annotations.ConfigEditorDropdown; import at.hannibal2.skyhanni.deps.moulconfig.annotations.ConfigOption; import com.google.gson.annotations.Expose; +import com.ratons.features.misc.update.UpdateStream; public class About { @@ -11,6 +13,11 @@ public class About { @ConfigEditorBoolean public boolean autoUpdates = true; + @Expose + @ConfigOption(name = "Update Stream", desc = "Select the update stream.") + @ConfigEditorDropdown + public UpdateStream updateStream = UpdateStream.FULL; + @Expose @ConfigOption(name = "Debug", desc = "Developer setting for checking debug messages.") @ConfigEditorBoolean diff --git a/src/main/kotlin/com/ratons/features/misc/update/UpdateManager.kt b/src/main/kotlin/com/ratons/features/misc/update/UpdateManager.kt index 91225ac..7081e72 100644 --- a/src/main/kotlin/com/ratons/features/misc/update/UpdateManager.kt +++ b/src/main/kotlin/com/ratons/features/misc/update/UpdateManager.kt @@ -54,8 +54,8 @@ object UpdateManager { checkUpdate() } - fun checkUpdate() { - activePromise = context.checkUpdate("full") + fun checkUpdate(stream: String = config.updateStream.streamName) { + activePromise = context.checkUpdate(stream) .thenAcceptAsync({ potentialUpdate = it if (it.isUpdateAvailable) { diff --git a/src/main/kotlin/com/ratons/features/misc/update/UpdateStream.kt b/src/main/kotlin/com/ratons/features/misc/update/UpdateStream.kt new file mode 100644 index 0000000..cc12b51 --- /dev/null +++ b/src/main/kotlin/com/ratons/features/misc/update/UpdateStream.kt @@ -0,0 +1,11 @@ +package com.ratons.features.misc.update + +@Suppress("unused") +enum class UpdateStream(private val displayName: String, val streamName: String = "") { + NONE("None"), + PRERELEASE("Pre-release", "pre"), + FULL("Full", "full"), + ; + + override fun toString() = displayName +}