summaryrefslogtreecommitdiff
path: root/platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java')
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java b/platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java
index 51809addc44c..8120b0644675 100644
--- a/platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java
+++ b/platform/platform-impl/src/com/intellij/openapi/application/ConfigImportHelper.java
@@ -132,6 +132,27 @@ public class ConfigImportHelper {
maxFile = file;
}
}
+
+ // Android Studio: Attempt to find user settings from earlier versions where the settings names
+ // are different from the current setting name
+ if (maxFile == null) {
+ File preview = new File(PathManager.getDefaultConfigPathFor("AndroidStudioPreview"));
+ File beta = new File(PathManager.getDefaultConfigPathFor("AndroidStudioBeta")); // relevant when we switch from beta to stable
+ for (File file : new File[] { preview, beta }) {
+ if (!file.isDirectory()) {
+ continue;
+ }
+ File options = new File(file, CONFIG_RELATED_PATH + OPTIONS_XML);
+ if (options.exists()) {
+ final long modified = options.lastModified();
+ if (modified > lastModified) {
+ lastModified = modified;
+ maxFile = file;
+ }
+ }
+ }
+ }
+
return maxFile != null ? new File(maxFile, CONFIG_RELATED_PATH) : null;
}