diff --git a/java/debugger/impl/src/com/intellij/debugger/engine/JavaStackFrame.java b/java/debugger/impl/src/com/intellij/debugger/engine/JavaStackFrame.java index 353619761de0..db28c4bf34a7 100644 --- a/java/debugger/impl/src/com/intellij/debugger/engine/JavaStackFrame.java +++ b/java/debugger/impl/src/com/intellij/debugger/engine/JavaStackFrame.java @@ -314,8 +314,7 @@ public class JavaStackFrame extends XStackFrame { final Collection argValues = frame.getArgumentValues(); int index = 0; for (Value argValue : argValues) { - final ArgumentValueDescriptorImpl descriptor = myNodeManager.getArgumentValueDescriptor(null, index++, argValue, null); - children.add(JavaValue.create(descriptor, evaluationContext, myNodeManager)); + children.add(createArgumentValue(index++, argValue, null, evaluationContext)); } node.setMessage(MessageDescriptor.LOCAL_VARIABLES_INFO_UNAVAILABLE.getLabel(), XDebuggerUIConstants.INFORMATION_MESSAGE_ICON, SimpleTextAttributes.REGULAR_ATTRIBUTES, null); //myChildren.add(myNodeManager.createMessageNode(MessageDescriptor.LOCAL_VARIABLES_INFO_UNAVAILABLE)); @@ -326,9 +325,7 @@ public class JavaStackFrame extends XStackFrame { try { final Map values = LocalVariablesUtil.fetchValues(frame.getStackFrame(), decompiled); for (DecompiledLocalVariable var : decompiled) { - final Value value = values.get(var); - final ArgumentValueDescriptorImpl descriptor = myNodeManager.getArgumentValueDescriptor(null, var.getSlot(), value, var.getName()); - children.add(JavaValue.create(descriptor, evaluationContext, myNodeManager)); + children.add(createArgumentValue(var.getSlot(), values.get(var), var.getName(), evaluationContext)); } } catch (Exception ex) { @@ -342,6 +339,13 @@ public class JavaStackFrame extends XStackFrame { } } + private JavaValue createArgumentValue(int index, Value value, String name, EvaluationContextImpl evaluationContext) { + ArgumentValueDescriptorImpl descriptor = myNodeManager.getArgumentValueDescriptor(null, index, value, name); + // setContext is required to calculate correct name + descriptor.setContext(evaluationContext); + return JavaValue.create(descriptor, evaluationContext, myNodeManager); + } + protected void superBuildVariables(final EvaluationContextImpl evaluationContext, XValueChildrenList children) throws EvaluateException { final StackFrameProxyImpl frame = getStackFrameProxy(); for (final LocalVariableProxyImpl local : frame.visibleVariables()) { diff --git a/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java b/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java index efee74b807da..8d4d3b29b088 100644 --- a/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java +++ b/platform/lang-api/src/com/intellij/execution/ui/RunContentDescriptor.java @@ -142,14 +142,15 @@ public class RunContentDescriptor implements Disposable { return myContent; } - public void setRestarter(Runnable runnable) { - myRestarter = runnable; - } - + @Nullable public Runnable getRestarter() { return myRestarter; } + public void setRestarter(@Nullable Runnable runnable) { + myRestarter = runnable; + } + public boolean isActivateToolWindowWhenAdded() { return myActivateToolWindowWhenAdded; } diff --git a/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettings.java b/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettings.java index 8d8a8938c708..d858bfc01fcb 100644 --- a/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettings.java +++ b/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettings.java @@ -56,7 +56,6 @@ public class CodeStyleSettings extends CommonCodeStyleSettings implements Clonea public CodeStyleSettings(boolean loadExtensions) { super(null); - RIGHT_MARGIN = DEFAULT_RIGHT_MARGIN; initTypeToName(); initImportsByDefault(); @@ -248,6 +247,7 @@ public class CodeStyleSettings extends CommonCodeStyleSettings implements Clonea public int INNER_CLASSES_ORDER_WEIGHT = 7; //----------------- WRAPPING --------------------------- + public int RIGHT_MARGIN = 120; public boolean WRAP_WHEN_TYPING_REACHES_RIGHT_MARGIN = false; diff --git a/platform/lang-api/src/com/intellij/psi/codeStyle/CommonCodeStyleSettings.java b/platform/lang-api/src/com/intellij/psi/codeStyle/CommonCodeStyleSettings.java index 20b96cac3920..299d17215fdf 100644 --- a/platform/lang-api/src/com/intellij/psi/codeStyle/CommonCodeStyleSettings.java +++ b/platform/lang-api/src/com/intellij/psi/codeStyle/CommonCodeStyleSettings.java @@ -287,7 +287,6 @@ public class CommonCodeStyleSettings { //----------------- GENERAL -------------------- public int RIGHT_MARGIN = -1; - public final static int DEFAULT_RIGHT_MARGIN = 120; public boolean LINE_COMMENT_AT_FIRST_COLUMN = true; public boolean BLOCK_COMMENT_AT_FIRST_COLUMN = true; diff --git a/platform/lang-impl/src/com/intellij/application/options/codeStyle/OptionTableWithPreviewPanel.java b/platform/lang-impl/src/com/intellij/application/options/codeStyle/OptionTableWithPreviewPanel.java index f978d5f6dcdb..59736bc0e4b2 100644 --- a/platform/lang-impl/src/com/intellij/application/options/codeStyle/OptionTableWithPreviewPanel.java +++ b/platform/lang-impl/src/com/intellij/application/options/codeStyle/OptionTableWithPreviewPanel.java @@ -18,6 +18,7 @@ package com.intellij.application.options.codeStyle; import com.intellij.lang.Language; import com.intellij.openapi.application.ApplicationBundle; import com.intellij.psi.codeStyle.CodeStyleSettings; +import com.intellij.psi.codeStyle.CommonCodeStyleSettings; import com.intellij.psi.codeStyle.CustomCodeStyleSettings; import com.intellij.ui.SpeedSearchComparator; import com.intellij.ui.TreeTableSpeedSearch; @@ -378,7 +379,7 @@ public abstract class OptionTableWithPreviewPanel extends MultilanguageCodeStyle this.groupName = groupName; try { - Class styleSettingsClass = clazz == null ? CodeStyleSettings.class : clazz; + Class styleSettingsClass = clazz == null ? CommonCodeStyleSettings.class : clazz; this.field = styleSettingsClass.getField(fieldName); } catch (NoSuchFieldException e) { diff --git a/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java b/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java index f19d92f76bcf..b27a939dd57c 100644 --- a/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java +++ b/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java @@ -74,7 +74,7 @@ public class ProgramRunnerUtil { } public static void executeConfiguration(Project project, - DataContext context, + @Nullable DataContext context, @Nullable RunnerAndConfigurationSettings configuration, Executor executor, ExecutionTarget target, diff --git a/platform/lang-impl/src/com/intellij/execution/runners/RestartAction.java b/platform/lang-impl/src/com/intellij/execution/runners/RestartAction.java index 507864126430..20b29c2de994 100644 --- a/platform/lang-impl/src/com/intellij/execution/runners/RestartAction.java +++ b/platform/lang-impl/src/com/intellij/execution/runners/RestartAction.java @@ -61,6 +61,15 @@ public class RestartAction extends FakeRerunAction implements DumbAware, AnActio myDescriptor = descriptor; myExecutor = executor; // see IDEADEV-698 + + if (descriptor.getRestarter() == null) { + descriptor.setRestarter(new Runnable() { + @Override + public void run() { + restart(); + } + }); + } } @Override diff --git a/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java b/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java index ab9433e66831..bb6d206f1eb9 100644 --- a/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java +++ b/platform/lang-impl/src/com/intellij/execution/runners/RunContentBuilder.java @@ -206,12 +206,6 @@ public class RunContentBuilder extends LogConsoleManagerBase { final RestartAction restartAction = new RestartAction(myExecutor, myRunner, contentDescriptor, getEnvironment()); restartAction.registerShortcut(component); actionGroup.add(restartAction); - contentDescriptor.setRestarter(new Runnable() { - @Override - public void run() { - restartAction.restart(); - } - }); if (myExecutionResult instanceof DefaultExecutionResult) { final AnAction[] actions = ((DefaultExecutionResult)myExecutionResult).getRestartActions(); diff --git a/platform/platform-api/src/com/intellij/openapi/diff/MergeRequest.java b/platform/platform-api/src/com/intellij/openapi/diff/MergeRequest.java index 29243f7b9be0..ce8d56044f96 100644 --- a/platform/platform-api/src/com/intellij/openapi/diff/MergeRequest.java +++ b/platform/platform-api/src/com/intellij/openapi/diff/MergeRequest.java @@ -25,7 +25,7 @@ import org.jetbrains.annotations.Nullable; * @see DiffRequestFactory#createMergeRequest */ public abstract class MergeRequest extends DiffRequest { - protected MergeRequest(Project project) { + protected MergeRequest(@Nullable Project project) { super(project); } diff --git a/platform/platform-api/src/com/intellij/openapi/fileEditor/FileEditorManager.java b/platform/platform-api/src/com/intellij/openapi/fileEditor/FileEditorManager.java index 366f69db9cc6..b9589574059d 100644 --- a/platform/platform-api/src/com/intellij/openapi/fileEditor/FileEditorManager.java +++ b/platform/platform-api/src/com/intellij/openapi/fileEditor/FileEditorManager.java @@ -30,7 +30,7 @@ public abstract class FileEditorManager { public static final Key USE_CURRENT_WINDOW = Key.create("OpenFile.searchForOpen"); - public static FileEditorManager getInstance(Project project) { + public static FileEditorManager getInstance(@NotNull Project project) { return project.getComponent(FileEditorManager.class); } diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/ex/DiffPanelOptions.java b/platform/platform-impl/src/com/intellij/openapi/diff/ex/DiffPanelOptions.java index 538058d2d190..ec7a316357e2 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/ex/DiffPanelOptions.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/ex/DiffPanelOptions.java @@ -23,6 +23,8 @@ import com.intellij.openapi.fileEditor.OpenFileDescriptor; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.DialogWrapperDialog; import com.intellij.openapi.util.Disposer; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.awt.*; @@ -56,25 +58,26 @@ public class DiffPanelOptions { myShowSourcePolicy = showSourcePolicy; } - public void showSource(OpenFileDescriptor descriptor) { + public void showSource(@Nullable OpenFileDescriptor descriptor) { + if (descriptor == null || myDiffPanel.getProject() == null) return; myShowSourcePolicy.showSource(descriptor, myDiffPanel); } public interface ShowSourcePolicy { - void showSource(OpenFileDescriptor descriptor, DiffPanelImpl diffPanel); + void showSource(@NotNull OpenFileDescriptor descriptor, @NotNull DiffPanelImpl diffPanel); ShowSourcePolicy DONT_SHOW = new ShowSourcePolicy() { - public void showSource(OpenFileDescriptor descriptor, DiffPanelImpl diffPanel) {} + public void showSource(@NotNull OpenFileDescriptor descriptor, @NotNull DiffPanelImpl diffPanel) {} }; ShowSourcePolicy OPEN_EDITOR = new ShowSourcePolicy() { - public void showSource(OpenFileDescriptor descriptor, DiffPanelImpl diffPanel) { + public void showSource(@NotNull OpenFileDescriptor descriptor, @NotNull DiffPanelImpl diffPanel) { FileEditorManager.getInstance(diffPanel.getProject()).openTextEditor(descriptor, true); } }; ShowSourcePolicy OPEN_EDITOR_AND_CLOSE_DIFF = new ShowSourcePolicy() { - public void showSource(OpenFileDescriptor descriptor, DiffPanelImpl diffPanel) { + public void showSource(@NotNull OpenFileDescriptor descriptor, @NotNull DiffPanelImpl diffPanel) { OPEN_EDITOR.showSource(descriptor, diffPanel); if (diffPanel.getOwnerWindow() == null) return; Disposer.dispose(diffPanel); @@ -97,7 +100,7 @@ public class DiffPanelOptions { }; ShowSourcePolicy DEFAULT = new ShowSourcePolicy() { - public void showSource(OpenFileDescriptor descriptor, DiffPanelImpl diffPanel) { + public void showSource(@NotNull OpenFileDescriptor descriptor, @NotNull DiffPanelImpl diffPanel) { Window window = diffPanel.getOwnerWindow(); if (window == null) return; else if (window instanceof Frame) OPEN_EDITOR.showSource(descriptor, diffPanel); diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffPanelImpl.java b/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffPanelImpl.java index 3baff07649aa..8ea3242d9361 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffPanelImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffPanelImpl.java @@ -612,7 +612,7 @@ public class DiffPanelImpl implements DiffPanelEx, ContentChangeListener, TwoSid return myData.getProject(); } - public void showSource(OpenFileDescriptor descriptor) { + public void showSource(@Nullable OpenFileDescriptor descriptor) { myOptions.showSource(descriptor); } @@ -1009,10 +1009,7 @@ public class DiffPanelImpl implements DiffPanelEx, ContentChangeListener, TwoSid @Override public void navigate(boolean requestFocus) { - final OpenFileDescriptor descriptor = mySide.getCurrentOpenFileDescriptor(); - if (descriptor != null) { - showSource(descriptor); - } + showSource(mySide.getCurrentOpenFileDescriptor()); } } } diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/DiffRequestFactoryImpl.java b/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/DiffRequestFactoryImpl.java index 221a082d5367..962a0712465b 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/DiffRequestFactoryImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/DiffRequestFactoryImpl.java @@ -28,11 +28,11 @@ import org.jetbrains.annotations.Nullable; public class DiffRequestFactoryImpl extends DiffRequestFactory { - public MergeRequest createMergeRequest(String leftText, - String rightText, - String originalContent, + public MergeRequest createMergeRequest(@NotNull String leftText, + @NotNull String rightText, + @NotNull String originalContent, @NotNull VirtualFile file, - Project project, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { final Document document = FileDocumentManager.getInstance().getDocument(file); @@ -46,23 +46,20 @@ public class DiffRequestFactoryImpl extends DiffRequestFactory { } } - public MergeRequest create3WayDiffRequest(final String leftText, - final String rightText, - final String originalContent, + public MergeRequest create3WayDiffRequest(@NotNull String leftText, + @NotNull String rightText, + @NotNull String originalContent, @Nullable FileType type, - final Project project, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { - if (type != null) { - return new MergeRequestImpl(leftText, originalContent, rightText, type, project, okButtonPresentation, cancelButtonPresentation); - } - return new MergeRequestImpl(leftText, originalContent, rightText, project, okButtonPresentation, cancelButtonPresentation); + return new MergeRequestImpl(leftText, originalContent, rightText, type, project, okButtonPresentation, cancelButtonPresentation); } - public MergeRequest create3WayDiffRequest(final String leftText, - final String rightText, - final String originalContent, - final Project project, + public MergeRequest create3WayDiffRequest(@NotNull String leftText, + @NotNull String rightText, + @NotNull String originalContent, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { return create3WayDiffRequest(leftText, rightText, originalContent, null, project, okButtonPresentation, cancelButtonPresentation); diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/MergeRequestImpl.java b/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/MergeRequestImpl.java index f6642b720acc..938c1ee7a42d 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/MergeRequestImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/impl/mergeTool/MergeRequestImpl.java @@ -47,40 +47,39 @@ public class MergeRequestImpl extends MergeRequest { @Nullable private final ActionButtonPresentation myOkButtonPresentation; @Nullable private final ActionButtonPresentation myCancelButtonPresentation; - public MergeRequestImpl(String left, - MergeVersion base, - String right, - Project project, + public MergeRequestImpl(@NotNull String left, + @NotNull MergeVersion base, + @NotNull String right, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { this(new SimpleContent(left), new MergeContent(base, project), new SimpleContent(right), project, okButtonPresentation, cancelButtonPresentation); } - public MergeRequestImpl(DiffContent left, - MergeVersion base, - DiffContent right, - Project project, + public MergeRequestImpl(@NotNull DiffContent left, + @NotNull MergeVersion base, + @NotNull DiffContent right, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { this(left, new MergeContent(base, project), right, project, okButtonPresentation, cancelButtonPresentation); } - public MergeRequestImpl(String left, - String base, - String right, - Project project, + public MergeRequestImpl(@NotNull String left, + @NotNull String base, + @NotNull String right, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { - this(new SimpleContent(left), new SimpleContent(base), new SimpleContent(right), project, okButtonPresentation, - cancelButtonPresentation); + this(left, base, right, null, project, okButtonPresentation, cancelButtonPresentation); } - public MergeRequestImpl(String left, - String base, - String right, - FileType type, - Project project, + public MergeRequestImpl(@NotNull String left, + @NotNull String base, + @NotNull String right, + @Nullable FileType type, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { this(new SimpleContent(left, type), @@ -89,10 +88,10 @@ public class MergeRequestImpl extends MergeRequest { project, okButtonPresentation, cancelButtonPresentation); } - private MergeRequestImpl(DiffContent left, - DiffContent base, - DiffContent right, - Project project, + private MergeRequestImpl(@NotNull DiffContent left, + @NotNull DiffContent base, + @NotNull DiffContent right, + @Nullable Project project, @Nullable final ActionButtonPresentation okButtonPresentation, @Nullable final ActionButtonPresentation cancelButtonPresentation) { super(project); @@ -240,11 +239,11 @@ public class MergeRequestImpl extends MergeRequest { } public static class MergeContent extends DiffContent { - private final MergeVersion myTarget; + @NotNull private final MergeVersion myTarget; private final Document myWorkingDocument; private final Project myProject; - public MergeContent(MergeVersion target, Project project) { + public MergeContent(@NotNull MergeVersion target, Project project) { myTarget = target; myProject = project; myWorkingDocument = myTarget.createWorkingDocument(project); diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java index b99f19242fa9..ebb3686969f0 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java @@ -393,7 +393,7 @@ public class KeymapPanel extends JPanel implements SearchableConfigurable, Confi group.add(commonActionsManager.createExpandAllAction(treeExpander, myActionsTree.getTree())); group.add(commonActionsManager.createCollapseAllAction(treeExpander, myActionsTree.getTree())); - group.add(new AnAction("Edit Shortcut", "Edit Shortcut", AllIcons.Actions.Properties) { + group.add(new AnAction("Edit Shortcut", "Edit Shortcut", AllIcons.ToolbarDecorator.Edit) { { registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0)), myActionsTree.getTree()); } diff --git a/platform/util/src/com/intellij/openapi/util/text/StringUtil.java b/platform/util/src/com/intellij/openapi/util/text/StringUtil.java index 181d660503b8..bc37f673bb03 100644 --- a/platform/util/src/com/intellij/openapi/util/text/StringUtil.java +++ b/platform/util/src/com/intellij/openapi/util/text/StringUtil.java @@ -923,6 +923,10 @@ public class StringUtil extends StringUtilRt { } } + public static String defaultIfEmpty(@Nullable String value, String defaultValue) { + return isEmpty(value) ? defaultValue : value; + } + @Contract("null -> false") public static boolean isNotEmpty(@Nullable String s) { return s != null && !s.isEmpty(); diff --git a/plugins/devkit/src/actions/ShowSerializedXmlAction.java b/plugins/devkit/src/actions/ShowSerializedXmlAction.java index 888042424295..e718eb74989d 100644 --- a/plugins/devkit/src/actions/ShowSerializedXmlAction.java +++ b/plugins/devkit/src/actions/ShowSerializedXmlAction.java @@ -41,6 +41,7 @@ import com.intellij.psi.util.PsiTreeUtil; import com.intellij.util.containers.FList; import com.intellij.util.lang.UrlClassLoader; import com.intellij.util.xmlb.Accessor; +import com.intellij.util.xmlb.XmlSerializationException; import com.intellij.util.xmlb.XmlSerializer; import com.intellij.util.xmlb.XmlSerializerUtil; import org.jdom.Element; @@ -121,7 +122,16 @@ public class ShowSerializedXmlAction extends DumbAwareAction { return; } - final Element element = XmlSerializer.serialize(o); + final Element element; + try { + element = XmlSerializer.serialize(o); + } + catch (XmlSerializationException e) { + LOG.info(e); + Throwable cause = e.getCause(); + Messages.showErrorDialog(project, e.getMessage() + (cause != null ? ": " + cause.getMessage() : ""), CommonBundle.getErrorTitle()); + return; + } final String text = JDOMUtil.writeElement(element, "\n"); Messages.showIdeaMessageDialog(project, text, "Serialized XML for '" + className + "'", new String[]{CommonBundle.getOkButtonText()}, 0, Messages.getInformationIcon(), null); diff --git a/plugins/google-app-engine/source/com/intellij/appengine/actions/UploadApplicationAction.java b/plugins/google-app-engine/source/com/intellij/appengine/actions/UploadApplicationAction.java index afe24f134587..e3a7762fa539 100644 --- a/plugins/google-app-engine/source/com/intellij/appengine/actions/UploadApplicationAction.java +++ b/plugins/google-app-engine/source/com/intellij/appengine/actions/UploadApplicationAction.java @@ -21,6 +21,7 @@ import com.intellij.appengine.util.AppEngineUtil; import com.intellij.facet.ProjectFacetManager; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; import com.intellij.packaging.artifacts.Artifact; @@ -67,8 +68,12 @@ public class UploadApplicationAction extends AnAction { } @Override - public void errorOccurred(@NotNull String errorMessage) { - Messages.showErrorDialog(project, errorMessage, CommonBundle.getErrorTitle()); + public void errorOccurred(@NotNull final String errorMessage) { + ApplicationManager.getApplication().invokeLater(new Runnable() { + public void run() { + Messages.showErrorDialog(project, errorMessage, CommonBundle.getErrorTitle()); + } + }); } }, null); if (uploader != null) { diff --git a/plugins/ui-designer/src/com/intellij/uiDesigner/PsiPropertiesProvider.java b/plugins/ui-designer/src/com/intellij/uiDesigner/PsiPropertiesProvider.java index 5b8518f0d70b..91b75c91b619 100644 --- a/plugins/ui-designer/src/com/intellij/uiDesigner/PsiPropertiesProvider.java +++ b/plugins/ui-designer/src/com/intellij/uiDesigner/PsiPropertiesProvider.java @@ -16,6 +16,7 @@ package com.intellij.uiDesigner; import com.intellij.openapi.module.Module; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.*; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.util.ClassUtil; @@ -74,7 +75,8 @@ public final class PsiPropertiesProvider implements PropertiesProvider { } final PsiType type = getter.getReturnType(); - final String propertyClassName = type.getCanonicalText(); + String propertyClassName = + StringUtil.defaultIfEmpty(StringUtil.substringBefore(type.getCanonicalText(), "<"), type.getCanonicalText()); LwIntrospectedProperty property = CompiledClassPropertiesProvider.propertyFromClassName(propertyClassName, name); if (property == null) { diff --git a/python/edu/build/pycharm_edu_build.gant b/python/edu/build/pycharm_edu_build.gant index bd14541654ec..8c857c159874 100644 --- a/python/edu/build/pycharm_edu_build.gant +++ b/python/edu/build/pycharm_edu_build.gant @@ -21,14 +21,14 @@ setProperty("home", guessHome(this as Script)) includeTargets << new File("${guessHome(this as Script)}/build/scripts/utils.gant") // signMacZip locates in ultimate_utils.gant -includeTargets << new File("${guessHome(this)}/build/scripts/ultimate_utils.gant") + includeTargets << new File("${guessHome(this)}/ultimate/build/scripts/ultimate_utils.gant") includeTargets << new File("${guessHome(this)}/build/scripts/libLicenses.gant") requireProperty("buildNumber", requireProperty("build.number", snapshot)) -setProperty("ch", home) -setProperty("pythonCommunityHome", "$home/python") -setProperty("pythonEduHome", "$home/python/edu") +setProperty("ch", "$home") +setProperty("pythonCommunityHome", "$ch/python") +setProperty("pythonEduHome", "$ch/python/edu") // load ApplicationInfo.xml properties ant.xmlproperty(file: "$pythonEduHome/resources/idea/PyCharmEduApplicationInfo.xml", collapseAttributes: "true")