From 465b08c7699a3b3e6d782da2128cef24d1256af1 Mon Sep 17 00:00:00 2001 From: Dennis Ushakov Date: Thu, 28 May 2015 16:36:21 +0300 Subject: [PATCH 1/4] pass correct max offset + add xml comment characters to wrappable elements #WEB-16691 fixed --- .../PsiAwareLineWrapPositionStrategy.java | 2 +- .../MarkupLineWrapPositionStrategy.java | 3 ++- .../src/com/intellij/editor/XmlEditorTest.java | 17 +++++++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/platform/lang-api/src/com/intellij/openapi/editor/PsiAwareLineWrapPositionStrategy.java b/platform/lang-api/src/com/intellij/openapi/editor/PsiAwareLineWrapPositionStrategy.java index 54be09b33aba..ac229772d343 100644 --- a/platform/lang-api/src/com/intellij/openapi/editor/PsiAwareLineWrapPositionStrategy.java +++ b/platform/lang-api/src/com/intellij/openapi/editor/PsiAwareLineWrapPositionStrategy.java @@ -96,7 +96,7 @@ public abstract class PsiAwareLineWrapPositionStrategy implements LineWrapPositi TextRange textRange = element.getTextRange(); int start = Math.max(textRange.getStartOffset(), startOffset); int end = Math.min(textRange.getEndOffset(), endOffset); - int result = doCalculateWrapPosition(document, project, start, end, end, false, virtual); + int result = doCalculateWrapPosition(document, project, start, end, maxPreferredOffset, false, virtual); if (result >= 0) { return result; } diff --git a/xml/impl/src/com/intellij/psi/formatter/MarkupLineWrapPositionStrategy.java b/xml/impl/src/com/intellij/psi/formatter/MarkupLineWrapPositionStrategy.java index 4db5fbe6ab83..5a4380d9e431 100644 --- a/xml/impl/src/com/intellij/psi/formatter/MarkupLineWrapPositionStrategy.java +++ b/xml/impl/src/com/intellij/psi/formatter/MarkupLineWrapPositionStrategy.java @@ -19,6 +19,7 @@ import com.intellij.openapi.editor.LineWrapPositionStrategy; import com.intellij.openapi.editor.PsiAwareDefaultLineWrapPositionStrategy; import com.intellij.psi.TokenType; import com.intellij.psi.xml.XmlElementType; +import com.intellij.psi.xml.XmlTokenType; /** * {@link LineWrapPositionStrategy} for markup languages like XML, HTML etc. @@ -29,6 +30,6 @@ import com.intellij.psi.xml.XmlElementType; public class MarkupLineWrapPositionStrategy extends PsiAwareDefaultLineWrapPositionStrategy { public MarkupLineWrapPositionStrategy() { - super(true, XmlElementType.XML_TEXT, TokenType.WHITE_SPACE); + super(true, XmlElementType.XML_TEXT, XmlTokenType.XML_COMMENT_CHARACTERS, TokenType.WHITE_SPACE); } } diff --git a/xml/tests/src/com/intellij/editor/XmlEditorTest.java b/xml/tests/src/com/intellij/editor/XmlEditorTest.java index 4cb188e10cab..95432cdf2413 100644 --- a/xml/tests/src/com/intellij/editor/XmlEditorTest.java +++ b/xml/tests/src/com/intellij/editor/XmlEditorTest.java @@ -57,6 +57,23 @@ public class XmlEditorTest extends LightCodeInsightTestCase { ""); } + public void testHardWrapInComment() throws Exception { + configureFromFileText("a.xml", + ""); + + CodeStyleSettings clone = CodeStyleSettingsManager.getInstance(getProject()).getCurrentSettings().clone(); + clone.WRAP_WHEN_TYPING_REACHES_RIGHT_MARGIN = true; + try { + CodeStyleSettingsManager.getInstance(getProject()).setTemporarySettings(clone); + EditorTestUtil.performTypingAction(getEditor(), '?'); + } + finally { + CodeStyleSettingsManager.getInstance(getProject()).dropTemporarySettings(); + } + checkResultByText(""); + } + @NotNull @Override protected String getTestDataPath() { From 875844fe4c69bcee0e109f58b5d6d9e280c6805a Mon Sep 17 00:00:00 2001 From: nik Date: Thu, 28 May 2015 16:43:06 +0300 Subject: [PATCH 2/4] class-file versions checks corrected --- build/conf/classVersions.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build/conf/classVersions.txt b/build/conf/classVersions.txt index 1ce904adc40b..cdd775177c7b 100644 --- a/build/conf/classVersions.txt +++ b/build/conf/classVersions.txt @@ -35,6 +35,8 @@ 1.5 => plugins/Groovy/lib/groovy_rt.jar 1.5 => lib/annotations.jar +1.8 => lib/annotations-java8.jar +1.8 => redist/annotations-java8.jar 1.6 => plugins/gradle/lib/gradle-jps-plugin.jar From 12cdc2a86c5c4116ed78c6c69b638fdf3e94316a Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Mon, 25 May 2015 12:38:10 +0300 Subject: [PATCH 3/4] IDEA-139870 vcs: avoid calling VcsVirtualFile.getFileType() in update() this could lead to length(), that will lead to content loading from VCS --- .../openapi/vcs/actions/AnnotateRevisionActionBase.java | 2 +- .../openapi/vcs/history/FileHistoryPanelImpl.java | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/AnnotateRevisionActionBase.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/AnnotateRevisionActionBase.java index 32df4bbb77ad..1fac9a8fdb8a 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/AnnotateRevisionActionBase.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/AnnotateRevisionActionBase.java @@ -49,7 +49,7 @@ public abstract class AnnotateRevisionActionBase extends AnAction { if (fileRevision == null) return false; VirtualFile file = getFile(e); - if (file == null || file.isDirectory() || file.getFileType().isBinary()) return false; + if (file == null) return false; AbstractVcs vcs = getVcs(e); if (vcs == null) return false; diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistoryPanelImpl.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistoryPanelImpl.java index 7cd33f23b460..f03e030ad579 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistoryPanelImpl.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistoryPanelImpl.java @@ -1104,7 +1104,13 @@ public class FileHistoryPanelImpl extends PanelWithActionsAndCloseButton { final Boolean nonLocal = e.getData(VcsDataKeys.VCS_NON_LOCAL_HISTORY_SESSION); if (Boolean.TRUE.equals(nonLocal)) return null; - return e.getData(VcsDataKeys.VCS_VIRTUAL_FILE); + VirtualFile file = e.getData(VcsDataKeys.VCS_VIRTUAL_FILE); + if (file == null || file.isDirectory()) return null; + + VirtualFile localVirtualFile = getVirtualFile(); + if (localVirtualFile.getFileType().isBinary() && myFilePath.getFileType().isBinary()) return null; + + return file; } @Nullable From 7c8377934c3c433b75ef79c7bc28dddb8cc4b21c Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Tue, 26 May 2015 21:06:04 +0300 Subject: [PATCH 4/4] IDEA-136797 respect PROXY_EXCEPTIONS in Tasks plugin and other places --- .../intellij/util/net/HttpConfigurable.java | 41 ++++++++++++++----- .../plugins/github/api/GithubConnection.java | 4 +- .../httpclient/NewBaseRepositoryImpl.java | 4 +- 3 files changed, 34 insertions(+), 15 deletions(-) diff --git a/platform/platform-api/src/com/intellij/util/net/HttpConfigurable.java b/platform/platform-api/src/com/intellij/util/net/HttpConfigurable.java index f0c915913b84..7dd894fc151c 100644 --- a/platform/platform-api/src/com/intellij/util/net/HttpConfigurable.java +++ b/platform/platform-api/src/com/intellij/util/net/HttpConfigurable.java @@ -28,6 +28,7 @@ import com.intellij.openapi.ui.popup.util.PopupUtil; import com.intellij.openapi.util.*; import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.CharsetToolkit; +import com.intellij.openapi.vfs.VfsUtil; import com.intellij.openapi.wm.IdeFocusManager; import com.intellij.openapi.wm.IdeFrame; import com.intellij.util.Base64; @@ -419,33 +420,51 @@ public class HttpConfigurable implements PersistentStateComponent