diff options
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.java | 21 |
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; } |