diff options
Diffstat (limited to 'bundles/org.eclipse.team.genericeditor.diff.extension/src/org/eclipse/team/internal/genericeditor/diff/extension/partitioner/DiffPartitioner.java')
-rw-r--r-- | bundles/org.eclipse.team.genericeditor.diff.extension/src/org/eclipse/team/internal/genericeditor/diff/extension/partitioner/DiffPartitioner.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/bundles/org.eclipse.team.genericeditor.diff.extension/src/org/eclipse/team/internal/genericeditor/diff/extension/partitioner/DiffPartitioner.java b/bundles/org.eclipse.team.genericeditor.diff.extension/src/org/eclipse/team/internal/genericeditor/diff/extension/partitioner/DiffPartitioner.java index 1caf63515..eb52620dc 100644 --- a/bundles/org.eclipse.team.genericeditor.diff.extension/src/org/eclipse/team/internal/genericeditor/diff/extension/partitioner/DiffPartitioner.java +++ b/bundles/org.eclipse.team.genericeditor.diff.extension/src/org/eclipse/team/internal/genericeditor/diff/extension/partitioner/DiffPartitioner.java @@ -12,6 +12,7 @@ package org.eclipse.team.internal.genericeditor.diff.extension.partitioner; import org.eclipse.core.filebuffers.IDocumentSetupParticipant; import org.eclipse.jface.text.IDocument; +import org.eclipse.jface.text.IDocumentExtension3; import org.eclipse.jface.text.rules.FastPartitioner; import org.eclipse.jface.text.rules.IPartitionTokenScanner; @@ -20,7 +21,12 @@ public class DiffPartitioner implements IDocumentSetupParticipant{ public void setup(IDocument document) { IPartitionTokenScanner scanner = new DiffPartitionScanner(); FastPartitioner partitioner = new FastPartitioner(scanner, IDiffPartitioning.LEGAL_PARTITION_TYPES); - document.setDocumentPartitioner(partitioner); - partitioner.connect(document); + if (document instanceof IDocumentExtension3) { + final IDocumentExtension3 extension3 = (IDocumentExtension3) document; + extension3.setDocumentPartitioner(IDiffPartitioning.DIFF_PARTITIONINING, partitioner); + } else { + document.setDocumentPartitioner(partitioner); + } + partitioner.connect(document); } } |