diff --git a/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewPanel.java b/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewPanel.java index a8f932379746..4cf6390f19c0 100644 --- a/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewPanel.java +++ b/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewPanel.java @@ -51,6 +51,7 @@ import org.jetbrains.annotations.TestOnly; import javax.swing.*; import java.awt.*; +import java.util.Arrays; import java.util.List; import static com.intellij.diff.tools.util.base.TextDiffSettingsHolder.TextDiffSettings; @@ -108,8 +109,7 @@ class DiffPreviewPanel implements PreviewPanel { private final List myContents; public SampleRequest() { - com.intellij.openapi.diff.DiffContent[] contents = DiffPreviewProvider.getContents(); - myContents = ContainerUtil.list(convert(contents[0]), convert(contents[1]), convert(contents[2])); + myContents = Arrays.asList(DiffPreviewProvider.getContents()); } private static DiffContent convert(@NotNull com.intellij.openapi.diff.DiffContent content) { diff --git a/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewProvider.java b/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewProvider.java index 327f99ea60a0..6ad6cb479202 100644 --- a/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewProvider.java +++ b/platform/lang-impl/src/com/intellij/openapi/diff/impl/settings/DiffPreviewProvider.java @@ -16,12 +16,14 @@ package com.intellij.openapi.diff.impl.settings; -import com.intellij.openapi.diff.DiffContent; -import com.intellij.openapi.diff.SimpleContent; +import com.intellij.diff.DiffContentFactory; +import com.intellij.diff.contents.DiffContent; import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.openapi.extensions.Extensions; +import com.intellij.openapi.fileTypes.FileType; import com.intellij.openapi.fileTypes.StdFileTypes; import org.jetbrains.annotations.NonNls; +import org.jetbrains.annotations.NotNull; /** * @author oleg @@ -30,19 +32,33 @@ import org.jetbrains.annotations.NonNls; public abstract class DiffPreviewProvider { public static final ExtensionPointName EP_NAME = ExtensionPointName.create("com.intellij.diffPreviewProvider"); + @NotNull public abstract DiffContent[] createContents(); + @NotNull public static DiffContent[] getContents() { // Assuming that standalone IDE should provide one provider final DiffPreviewProvider[] providers = Extensions.getExtensions(EP_NAME); - if (providers.length != 0){ + if (providers.length != 0) { return providers[0].createContents(); } - return new DiffContent[]{createContent(LEFT_TEXT), createContent(CENTER_TEXT), createContent(RIGHT_TEXT)}; + return createContent(LEFT_TEXT, CENTER_TEXT, RIGHT_TEXT, StdFileTypes.JAVA); } - private static SimpleContent createContent(String text) { - return new SimpleContent(text, StdFileTypes.JAVA); + @NotNull + public static DiffContent[] createContent(@NotNull String left, + @NotNull String center, + @NotNull String right, + @NotNull FileType fileType) { + return new DiffContent[]{ + createContent(left, StdFileTypes.JAVA), + createContent(center, StdFileTypes.JAVA), + createContent(right, StdFileTypes.JAVA)}; + } + + @NotNull + private static DiffContent createContent(@NotNull String text, @NotNull FileType fileType) { + return DiffContentFactory.getInstance().create(text, fileType); } @NonNls private static final String LEFT_TEXT = "class MyClass {\n" + diff --git a/python/python-community-configure/python-community-configure.iml b/python/python-community-configure/python-community-configure.iml index 752e44910b9a..bf105b4e982a 100644 --- a/python/python-community-configure/python-community-configure.iml +++ b/python/python-community-configure/python-community-configure.iml @@ -13,5 +13,6 @@ + \ No newline at end of file diff --git a/python/python-community-configure/src/com/jetbrains/python/configuration/PyDiffPreviewProvider.java b/python/python-community-configure/src/com/jetbrains/python/configuration/PyDiffPreviewProvider.java index b40ea6f27cfb..3447a4f2a691 100644 --- a/python/python-community-configure/src/com/jetbrains/python/configuration/PyDiffPreviewProvider.java +++ b/python/python-community-configure/src/com/jetbrains/python/configuration/PyDiffPreviewProvider.java @@ -15,23 +15,20 @@ */ package com.jetbrains.python.configuration; -import com.intellij.openapi.diff.DiffContent; -import com.intellij.openapi.diff.SimpleContent; +import com.intellij.diff.contents.DiffContent; import com.intellij.openapi.diff.impl.settings.DiffPreviewProvider; import com.jetbrains.python.PythonFileType; import org.jetbrains.annotations.NonNls; +import org.jetbrains.annotations.NotNull; /** * @author oleg */ public class PyDiffPreviewProvider extends DiffPreviewProvider { + @NotNull @Override public DiffContent[] createContents() { - return new DiffContent[]{createContent(LEFT_TEXT), createContent(CENTER_TEXT), createContent(RIGHT_TEXT)}; - } - - private static SimpleContent createContent(final String text) { - return new SimpleContent(text, PythonFileType.INSTANCE); + return createContent(LEFT_TEXT, CENTER_TEXT, RIGHT_TEXT, PythonFileType.INSTANCE); } @NonNls private static final String LEFT_TEXT = "class MyClass\n" +