mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
(IDEA-332521, IJ-CR-118534) Settings Transfer: single property to check for the new flow availability
GitOrigin-RevId: 45f5278a1119ad6e367d0f751fdce177c69b7a2d
This commit is contained in:
committed by
intellij-monorepo-bot
parent
51590f438b
commit
6a62e6820c
@@ -37,7 +37,7 @@ import com.intellij.openapi.util.text.NaturalComparator;
|
||||
import com.intellij.openapi.util.text.StringUtilRt;
|
||||
import com.intellij.openapi.util.text.Strings;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.platform.ide.bootstrap.IdeStartupExperiment;
|
||||
import com.intellij.platform.ide.bootstrap.IdeStartupWizardKt;
|
||||
import com.intellij.platform.ide.bootstrap.StartupErrorReporter;
|
||||
import com.intellij.ui.AppUIUtilKt;
|
||||
import com.intellij.util.PlatformUtils;
|
||||
@@ -150,7 +150,7 @@ public final class ConfigImportHelper {
|
||||
log.error("Couldn't backup current config or delete current config directory", e);
|
||||
}
|
||||
}
|
||||
else if (Boolean.getBoolean("intellij.startup.wizard") && IdeStartupExperiment.INSTANCE.shouldEnableNewStartupFlow()) {
|
||||
else if (IdeStartupWizardKt.isIdeStartupWizardEnabled()) {
|
||||
if (!guessedOldConfigDirs.isEmpty() && !shouldAskForConfig()) {
|
||||
Pair<Path, FileTime> bestConfigGuess = guessedOldConfigDirs.getFirstItem();
|
||||
if (!isConfigOld(bestConfigGuess.second)) {
|
||||
|
||||
@@ -23,6 +23,9 @@ import kotlin.time.Duration.Companion.seconds
|
||||
|
||||
private val log = logger<IdeStartupWizard>()
|
||||
|
||||
val isIdeStartupWizardEnabled: Boolean
|
||||
get() = java.lang.Boolean.getBoolean("intellij.startup.wizard") && IdeStartupExperiment.isExperimentEnabled()
|
||||
|
||||
internal suspend fun runStartupWizard(isInitialStart: Job, app: Application) {
|
||||
|
||||
log.info("Entering startup wizard workflow.")
|
||||
@@ -97,7 +100,7 @@ object IdeStartupWizardCollector : CounterUsagesCollector() {
|
||||
)
|
||||
fun logExperimentState() {
|
||||
if (ConfigImportHelper.isFirstSession()) {
|
||||
val isEnabled = IdeStartupExperiment.shouldEnableNewStartupFlow()
|
||||
val isEnabled = IdeStartupExperiment.isExperimentEnabled()
|
||||
log.info("IDE startup isEnabled = $isEnabled, experimentGroupKind = ${IdeStartupExperiment.experimentGroupKind}, experimentGroup = ${IdeStartupExperiment.experimentGroup}")
|
||||
experimentState.log(
|
||||
IdeStartupExperiment.experimentGroupKind,
|
||||
@@ -150,7 +153,7 @@ object IdeStartupExperiment {
|
||||
getGroupKind(experimentGroup)
|
||||
}
|
||||
|
||||
fun shouldEnableNewStartupFlow(): Boolean {
|
||||
fun isExperimentEnabled(): Boolean {
|
||||
return when (experimentGroupKind) {
|
||||
GroupKind.Experimental -> true
|
||||
GroupKind.Control -> false
|
||||
|
||||
@@ -228,7 +228,7 @@ fun CoroutineScope.startApplication(args: List<String>,
|
||||
}.getOrLogException(log)
|
||||
}
|
||||
|
||||
if (IdeStartupExperiment.shouldEnableNewStartupFlow()) {
|
||||
if (isIdeStartupWizardEnabled) {
|
||||
log.info("Will enter initial app wizard flow.")
|
||||
val result = CompletableDeferred<Boolean>()
|
||||
isInitialStart = result
|
||||
|
||||
+2
-4
@@ -8,6 +8,7 @@ import com.intellij.openapi.application.ApplicationNamesInfo
|
||||
import com.intellij.openapi.application.EDT
|
||||
import com.intellij.openapi.diagnostic.logger
|
||||
import com.intellij.platform.ide.bootstrap.IdeStartupWizard
|
||||
import com.intellij.platform.ide.bootstrap.isIdeStartupWizardEnabled
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.async
|
||||
import kotlinx.coroutines.coroutineScope
|
||||
@@ -15,11 +16,8 @@ import kotlinx.coroutines.withContext
|
||||
|
||||
internal class IdeStartupWizardImpl : IdeStartupWizard {
|
||||
|
||||
private val isEnabledViaSystemProperty
|
||||
get() = System.getProperty("intellij.startup.wizard", "false").toBoolean()
|
||||
|
||||
override suspend fun run() {
|
||||
if (!isEnabledViaSystemProperty) return
|
||||
if (!isIdeStartupWizardEnabled) return
|
||||
|
||||
logger.info("Initial startup wizard is enabled. Will start the wizard.")
|
||||
coroutineScope {
|
||||
|
||||
Reference in New Issue
Block a user