From b3fcaba1458802a46ea77d71b9ba789a80d067e0 Mon Sep 17 00:00:00 2001 From: "Vladislav.Soroka" Date: Fri, 21 Apr 2017 13:09:32 +0300 Subject: [PATCH 01/14] Gradle: 4.0 compatibility fix, handle removed method - manifest.writeTo(Writer) --- .../tooling/builder/WarModelBuilderImpl.groovy | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/WarModelBuilderImpl.groovy b/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/WarModelBuilderImpl.groovy index 4105d822cf29..85534efefedc 100644 --- a/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/WarModelBuilderImpl.groovy +++ b/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/WarModelBuilderImpl.groovy @@ -21,6 +21,7 @@ import org.gradle.api.file.FileVisitDetails import org.gradle.api.java.archives.Manifest import org.gradle.api.plugins.WarPlugin import org.gradle.api.tasks.bundling.War +import org.gradle.util.GradleVersion import org.jetbrains.annotations.NotNull import org.jetbrains.annotations.Nullable import org.jetbrains.plugins.gradle.model.web.WebConfiguration @@ -38,6 +39,8 @@ class WarModelBuilderImpl implements ModelBuilderService { private static final String WEB_APP_DIR_PROPERTY = "webAppDir" private static final String WEB_APP_DIR_NAME_PROPERTY = "webAppDirName" + private static is4OrBetter = GradleVersion.current().baseVersion >= GradleVersion.version("4.0") + @Override boolean canBuild(String modelName) { @@ -99,9 +102,17 @@ class WarModelBuilderImpl implements ModelBuilderService { Manifest manifest = warTask.manifest if (manifest != null) { - def writer = new StringWriter() - manifest.writeTo(writer) - warModel.manifestContent = writer.toString() + if(is4OrBetter) { + if(manifest instanceof org.gradle.api.java.archives.internal.ManifestInternal) { + ByteArrayOutputStream baos = new ByteArrayOutputStream() + manifest.writeTo(baos) + warModel.manifestContent = baos.toString(manifest.contentCharset) + } + } else { + def writer = new StringWriter() + manifest.writeTo(writer) + warModel.manifestContent = writer.toString() + } } warModels.add(warModel) } From 5e8b5a2134fff73cc687c7083630851db2355150 Mon Sep 17 00:00:00 2001 From: Dmitry Batrak Date: Fri, 21 Apr 2017 13:16:28 +0300 Subject: [PATCH 02/14] fix blinking JavaFileEditorManagerTest.testFoldingIsNotBlinkingOnNavigationToSingleLineMethod test Do not break 'create from usage' intentions which work with caret position in newly opened editors (following IDEA-CR-20477) --- .../fileEditor/OpenFileDescriptor.java | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/platform/platform-api/src/com/intellij/openapi/fileEditor/OpenFileDescriptor.java b/platform/platform-api/src/com/intellij/openapi/fileEditor/OpenFileDescriptor.java index e4f64cfda5d9..1844a0adea53 100644 --- a/platform/platform-api/src/com/intellij/openapi/fileEditor/OpenFileDescriptor.java +++ b/platform/platform-api/src/com/intellij/openapi/fileEditor/OpenFileDescriptor.java @@ -168,30 +168,30 @@ public class OpenFileDescriptor implements Navigatable, Comparable { - final int offset = getOffset(); - CaretModel caretModel = e.getCaretModel(); - boolean caretMoved = false; - if (myLogicalLine >= 0) { - LogicalPosition pos = new LogicalPosition(myLogicalLine, Math.max(myLogicalColumn, 0)); - if (offset < 0 || offset == e.logicalPositionToOffset(pos)) { - caretModel.removeSecondaryCarets(); - caretModel.moveToLogicalPosition(pos); - caretMoved = true; - } - } - if (!caretMoved && offset >= 0) { + final int offset = getOffset(); + CaretModel caretModel = e.getCaretModel(); + boolean caretMoved = false; + if (myLogicalLine >= 0) { + LogicalPosition pos = new LogicalPosition(myLogicalLine, Math.max(myLogicalColumn, 0)); + if (offset < 0 || offset == e.logicalPositionToOffset(pos)) { caretModel.removeSecondaryCarets(); - caretModel.moveToOffset(Math.min(offset, e.getDocument().getTextLength())); + caretModel.moveToLogicalPosition(pos); caretMoved = true; } + } + if (!caretMoved && offset >= 0) { + caretModel.removeSecondaryCarets(); + caretModel.moveToOffset(Math.min(offset, e.getDocument().getTextLength())); + caretMoved = true; + } - if (caretMoved) { - e.getSelectionModel().removeSelection(); + if (caretMoved) { + e.getSelectionModel().removeSelection(); + FileEditorManager.getInstance(myProject).runWhenLoaded(e, () -> { scrollToCaret(e); unfoldCurrentLine(e); - } - }); + }); + } } protected static void unfoldCurrentLine(@NotNull final Editor editor) { From 019385667f776f7c0bab955e2a126594c0d66935 Mon Sep 17 00:00:00 2001 From: Anton Tarasov Date: Fri, 21 Apr 2017 13:22:40 +0300 Subject: [PATCH 03/14] Scale default UI font size --- platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.kt b/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.kt index 1285a68b4df6..628da926130e 100644 --- a/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.kt +++ b/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.kt @@ -54,7 +54,7 @@ class UISettings : BaseState(), PersistentStateComponent { @get:Property(filter = FontFilter::class) @get:OptionTag("FONT_SIZE") - var fontSize by storedProperty(12) + var fontSize by storedProperty((UIUtil.DEF_SYSTEM_FONT_SIZE * UISettings.normalizingScale).toInt()) @get:Property(filter = FontFilter::class) @get:OptionTag("FONT_SCALE") From b46e8a9f09b66a7b95bdaf1eeea80320c1be554f Mon Sep 17 00:00:00 2001 From: "Liana.Bakradze" Date: Fri, 21 Apr 2017 13:43:11 +0300 Subject: [PATCH 04/14] fix broken tests --- .../testData/migration/adaptive45.after.xml | 4 +- .../testData/migration/theory351To4.after.xml | 4 +- .../testData/migration/theory35To4.after.xml | 37 ++----------------- .../testData/migration/theory35To4.xml | 32 +--------------- .../stepic/StudyStepicFormatTest.java | 4 -- 5 files changed, 8 insertions(+), 73 deletions(-) diff --git a/python/educational-core/testData/migration/adaptive45.after.xml b/python/educational-core/testData/migration/adaptive45.after.xml index cdb97a37db83..0355503300c2 100644 --- a/python/educational-core/testData/migration/adaptive45.after.xml +++ b/python/educational-core/testData/migration/adaptive45.after.xml @@ -1,7 +1,7 @@ diff --git a/python/educational-core/testData/migration/theory35To4.after.xml b/python/educational-core/testData/migration/theory35To4.after.xml index 07edf716d6b2..2ff33d1dcf62 100644 --- a/python/educational-core/testData/migration/theory35To4.after.xml +++ b/python/educational-core/testData/migration/theory35To4.after.xml @@ -30,7 +30,7 @@ diff --git a/python/educational-core/testData/migration/theory35To4.xml b/python/educational-core/testData/migration/theory35To4.xml index 408fd6301eef..08e98366e4aa 100644 --- a/python/educational-core/testData/migration/theory35To4.xml +++ b/python/educational-core/testData/migration/theory35To4.xml @@ -39,7 +39,7 @@