diff --git a/CHANGELOG.md b/CHANGELOG.md index cee2935..9064933 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ ## [Unreleased] +## [1.2.0] - 2025-11-26 + +- Skip showing "Enter CodeClocker API Key" dialog on every IDE start + ## [1.1.0] - 2025-11-22 - Show VCS changes in IDE popup @@ -58,7 +62,8 @@ - Support IntelliJ Platform 2024.3.5 -[Unreleased]: https://github.com/codeclocker/codeclocker-intellij-plugin/compare/v1.1.0...HEAD +[Unreleased]: https://github.com/codeclocker/codeclocker-intellij-plugin/compare/v1.2.0...HEAD +[1.2.0]: https://github.com/codeclocker/codeclocker-intellij-plugin/compare/v1.1.0...v1.2.0 [1.1.0]: https://github.com/codeclocker/codeclocker-intellij-plugin/compare/v1.0.11...v1.1.0 [1.0.11]: https://github.com/codeclocker/codeclocker-intellij-plugin/compare/v1.0.10...v1.0.11 [1.0.10]: https://github.com/codeclocker/codeclocker-intellij-plugin/compare/v1.0.9...v1.0.10 diff --git a/gradle.properties b/gradle.properties index d781cca..de52e89 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,7 +4,7 @@ pluginGroup = com.codeclocker pluginName = CodeClocker pluginRepositoryUrl = https://github.com/codeclocker/codeclocker-intellij-plugin # SemVer format -> https://semver.org -pluginVersion = 1.1.0 +pluginVersion = 1.2.0 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html pluginSinceBuild = 242 diff --git a/src/main/java/com/codeclocker/plugin/intellij/apikey/ApiKeyPromptStartupActivity.java b/src/main/java/com/codeclocker/plugin/intellij/apikey/ApiKeyPromptStartupActivity.java index 3f6525d..b727a39 100644 --- a/src/main/java/com/codeclocker/plugin/intellij/apikey/ApiKeyPromptStartupActivity.java +++ b/src/main/java/com/codeclocker/plugin/intellij/apikey/ApiKeyPromptStartupActivity.java @@ -1,12 +1,25 @@ package com.codeclocker.plugin.intellij.apikey; +import com.intellij.ide.util.PropertiesComponent; import com.intellij.openapi.application.ApplicationManager; public class ApiKeyPromptStartupActivity { + private static final String API_KEY_PROMPT_SHOWN_PROPERTY = + "com.codeclocker.api-key-prompt-shown"; + public static void showApiKeyDialog() { - if (ApiKeyPersistence.getApiKey() == null) { + if (ApiKeyPersistence.getApiKey() == null && !wasPromptAlreadyShown()) { + markPromptAsShown(); ApplicationManager.getApplication().invokeLater(EnterApiKeyAction::showAction); } } + + private static boolean wasPromptAlreadyShown() { + return PropertiesComponent.getInstance().getBoolean(API_KEY_PROMPT_SHOWN_PROPERTY, false); + } + + private static void markPromptAsShown() { + PropertiesComponent.getInstance().setValue(API_KEY_PROMPT_SHOWN_PROPERTY, true); + } }