summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerome Gaillard <jgaillard@google.com>2015-04-23 23:15:24 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-04-23 23:15:24 +0000
commit75c88c8895f4f68b835d6b7d82260132bba759cc (patch)
tree843b645a6c4af8275ef47a2dc32f8556fa37beac
parent7f7a47d565f8800b5f3bf4f77a2e7b47815ff2ab (diff)
parent89f03e3d1102af10b6c49d56d89ecb780b81243a (diff)
downloadidea-75c88c8895f4f68b835d6b7d82260132bba759cc.tar.gz
am 89f03e3d: am 46fd44c7: am 0d36ab55: Merge "Makes Theme Editor available at the start of a new project" into studio-1.3-dev automerge: edab732 automerge: 7fead51
* commit '89f03e3d1102af10b6c49d56d89ecb780b81243a': Makes Theme Editor available at the start of a new project
-rw-r--r--android/src/com/android/tools/idea/actions/AndroidShowThemeEditor.java2
-rwxr-xr-xandroid/src/com/android/tools/idea/configurations/ConfigurationManager.java1
-rw-r--r--android/src/com/android/tools/idea/editors/theme/ThemeEditorNotificationProvider.java3
-rw-r--r--android/src/com/android/tools/idea/editors/theme/ThemeEditorUtils.java10
4 files changed, 6 insertions, 10 deletions
diff --git a/android/src/com/android/tools/idea/actions/AndroidShowThemeEditor.java b/android/src/com/android/tools/idea/actions/AndroidShowThemeEditor.java
index 87bef913af2..8a6f44bb7da 100644
--- a/android/src/com/android/tools/idea/actions/AndroidShowThemeEditor.java
+++ b/android/src/com/android/tools/idea/actions/AndroidShowThemeEditor.java
@@ -38,7 +38,7 @@ public class AndroidShowThemeEditor extends AnAction {
e.getPresentation().setVisible(false);
}
Module module = getModuleFromAction(e);
- e.getPresentation().setEnabled(module != null && ThemeEditorUtils.isModuleInitialized(module));
+ e.getPresentation().setEnabled(module != null);
}
@Override
diff --git a/android/src/com/android/tools/idea/configurations/ConfigurationManager.java b/android/src/com/android/tools/idea/configurations/ConfigurationManager.java
index e63c7cb7260..3d0aebfa653 100755
--- a/android/src/com/android/tools/idea/configurations/ConfigurationManager.java
+++ b/android/src/com/android/tools/idea/configurations/ConfigurationManager.java
@@ -119,6 +119,7 @@ public class ConfigurationManager implements Disposable {
private Configuration create(@NotNull VirtualFile file) {
ConfigurationStateManager stateManager = getStateManager();
ConfigurationFileState fileState = stateManager.getConfigurationState(file);
+ assert file.getParent() != null : file;
FolderConfiguration config = FolderConfiguration.getConfigForFolder(file.getParent().getName());
if (config == null) {
config = new FolderConfiguration();
diff --git a/android/src/com/android/tools/idea/editors/theme/ThemeEditorNotificationProvider.java b/android/src/com/android/tools/idea/editors/theme/ThemeEditorNotificationProvider.java
index 8efcb60d547..5c345d8691f 100644
--- a/android/src/com/android/tools/idea/editors/theme/ThemeEditorNotificationProvider.java
+++ b/android/src/com/android/tools/idea/editors/theme/ThemeEditorNotificationProvider.java
@@ -58,9 +58,6 @@ public class ThemeEditorNotificationProvider extends EditorNotifications.Provide
if (!ThemeEditorProvider.isAndroidTheme(psiFile) || module == null) {
return null;
}
- if (!ThemeEditorUtils.isModuleInitialized(module)) {
- return null;
- }
final InfoPanel panel = new InfoPanel();
panel.setText("Edit all themes in the project in the theme editor.");
diff --git a/android/src/com/android/tools/idea/editors/theme/ThemeEditorUtils.java b/android/src/com/android/tools/idea/editors/theme/ThemeEditorUtils.java
index c3c270d0e83..da77b4c1bc3 100644
--- a/android/src/com/android/tools/idea/editors/theme/ThemeEditorUtils.java
+++ b/android/src/com/android/tools/idea/editors/theme/ThemeEditorUtils.java
@@ -28,7 +28,6 @@ import com.intellij.openapi.fileEditor.FileEditorManager;
import com.intellij.openapi.fileEditor.OpenFileDescriptor;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.project.Project;
-import com.intellij.openapi.vfs.VirtualFile;
import org.jetbrains.android.dom.attrs.AttributeDefinition;
import org.jetbrains.android.dom.attrs.AttributeFormat;
import org.jetbrains.annotations.NotNull;
@@ -89,6 +88,10 @@ public class ThemeEditorUtils {
public void run() {
ThemeEditorVirtualFile file = null;
final Project project = module.getProject();
+ if (module.getModuleFile() == null) {
+ // Saving the project makes sure the module virtual file is created
+ project.save();
+ }
final FileEditorManager fileEditorManager = FileEditorManager.getInstance(project);
for (final FileEditor editor : fileEditorManager.getAllEditors()) {
@@ -115,11 +118,6 @@ public class ThemeEditorUtils {
});
}
- public static boolean isModuleInitialized(final Module module) {
- VirtualFile moduleFile = module.getModuleFile();
- return moduleFile != null && moduleFile.getParent() != null;
- }
-
public static List<EditedStyleItem> resolveAllAttributes(final ThemeEditorStyle style) {
final List<EditedStyleItem> allValues = new ArrayList<EditedStyleItem>();
final Set<String> namesSet = new TreeSet<String>();