From f9b743fff17d7663b3a2287827fe25bb1b128214 Mon Sep 17 00:00:00 2001
From: Lars Vogel
Date: Tue, 18 Apr 2023 10:18:43 +0200
Subject: [PATCH 001/232] StackRendererTest should restet the model after each
test
StackRendererTest should remove the used window before each test
Before this change the the model
elements were not removed after a test.
---
.../ui/workbench/renderers/swt/StackRendererTest.java | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
index 6cc804ce8eb..53250ebbb77 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
@@ -59,6 +59,7 @@
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Widget;
+import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -86,11 +87,16 @@ public class StackRendererTest {
@Before
public void setUp() throws Exception {
window = ems.createModelElement(MWindow.class);
+ partStack = ems.createModelElement(MPartStack.class);
+ window.getChildren().add(partStack);
application.getChildren().add(window);
application.setSelectedElement(window);
+ }
- partStack = ems.createModelElement(MPartStack.class);
- window.getChildren().add(partStack);
+ @After
+ public void cleanUp() throws Exception {
+ ems.deleteModelElement(partStack);
+ ems.deleteModelElement(window);
}
@Test
From e97cfd0526c97c537daa9ed0d93239210067de0d Mon Sep 17 00:00:00 2001
From: Tobias Melcher
Date: Thu, 5 Sep 2024 17:50:40 +0200
Subject: [PATCH 002/232] increase version numbers for next release
---
examples/org.eclipse.jface.text.examples/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/examples/org.eclipse.jface.text.examples/META-INF/MANIFEST.MF b/examples/org.eclipse.jface.text.examples/META-INF/MANIFEST.MF
index 22e98fc1e7e..406cc1a7a71 100644
--- a/examples/org.eclipse.jface.text.examples/META-INF/MANIFEST.MF
+++ b/examples/org.eclipse.jface.text.examples/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CodeMinig Examples
Bundle-SymbolicName: org.eclipse.jface.text.examples
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-17
Bundle-Vendor: Eclipse.org
Require-Bundle: org.eclipse.jface.text,
From 9b21618ea5fe63c7de1bbb80ac988e95ae5a5bbb Mon Sep 17 00:00:00 2001
From: Tobias Melcher
Date: Mon, 30 Sep 2024 11:34:25 +0200
Subject: [PATCH 003/232] additional constructor param afterPosition in
LineContentCodeMining
which allows to render a code mining where the cursor selection does not
include the code mining at the given source position.
---
.../META-INF/MANIFEST.MF | 2 +-
.../CodeMiningLineContentAnnotation.java | 21 ++++++++
.../text/codemining/CodeMiningManager.java | 10 +++-
.../text/WhitespaceCharacterPainter.java | 45 ++++++++++++----
.../codemining/LineContentCodeMining.java | 42 +++++++++++++++
.../InlinedAnnotationDrawingStrategy.java | 38 ++++++++++++--
.../inlined/InlinedAnnotationSupport.java | 11 +++-
.../source/inlined/LineContentAnnotation.java | 7 ++-
.../examples/codemining/CodeMiningDemo.java | 18 +++++--
...ontentCodeMiningAfterPositionProvider.java | 52 +++++++++++++++++++
.../tests/TestWhitespaceCharacterPainter.java | 36 +++++++++++--
.../source/inlined/AnnotationOnTabTest.java | 5 +-
12 files changed, 257 insertions(+), 30 deletions(-)
create mode 100644 examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/LineContentCodeMiningAfterPositionProvider.java
diff --git a/bundles/org.eclipse.jface.text/META-INF/MANIFEST.MF b/bundles/org.eclipse.jface.text/META-INF/MANIFEST.MF
index 29a2defc9e4..f0f37e01f5e 100644
--- a/bundles/org.eclipse.jface.text/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.jface.text/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.jface.text
-Bundle-Version: 3.25.300.qualifier
+Bundle-Version: 3.26.0.qualifier
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Export-Package:
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningLineContentAnnotation.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningLineContentAnnotation.java
index df30b611bf0..c5ce31946be 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningLineContentAnnotation.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningLineContentAnnotation.java
@@ -61,6 +61,8 @@ public class CodeMiningLineContentAnnotation extends LineContentAnnotation imple
*/
private IProgressMonitor fMonitor;
+ private final boolean afterPosition;
+
/**
* Code mining annotation constructor.
*
@@ -72,6 +74,21 @@ public CodeMiningLineContentAnnotation(Position position, ISourceViewer viewer)
fResolvedMinings= null;
fMinings= new ArrayList<>();
fBounds= new ArrayList<>();
+ afterPosition= false;
+ }
+
+ /**
+ * Code mining annotation constructor.
+ *
+ * @param position the position
+ * @param viewer the viewer
+ */
+ public CodeMiningLineContentAnnotation(Position position, ISourceViewer viewer, boolean afterPosition) {
+ super(position, viewer);
+ fResolvedMinings= null;
+ fMinings= new ArrayList<>();
+ fBounds= new ArrayList<>();
+ this.afterPosition= afterPosition;
}
@Override
@@ -183,4 +200,8 @@ public Consumer getAction(MouseEvent e) {
public boolean isInVisibleLines() {
return super.isInVisibleLines();
}
+
+ public final boolean isAfterPosition() {
+ return afterPosition;
+ }
}
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningManager.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningManager.java
index d9863b03261..2793d1447af 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningManager.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/codemining/CodeMiningManager.java
@@ -42,6 +42,7 @@
import org.eclipse.jface.text.Position;
import org.eclipse.jface.text.codemining.ICodeMining;
import org.eclipse.jface.text.codemining.ICodeMiningProvider;
+import org.eclipse.jface.text.codemining.LineContentCodeMining;
import org.eclipse.jface.text.codemining.LineHeaderCodeMining;
import org.eclipse.jface.text.source.ISourceViewer;
import org.eclipse.jface.text.source.inlined.AbstractInlinedAnnotation;
@@ -251,12 +252,17 @@ private void renderCodeMinings(Map> groups, ISourceV
Position pos= new Position(g.getKey().offset, g.getKey().length);
List minings= g.getValue();
- boolean inLineHeader= !minings.isEmpty() ? (minings.get(0) instanceof LineHeaderCodeMining) : true;
+ ICodeMining first= minings.get(0);
+ boolean inLineHeader= !minings.isEmpty() ? (first instanceof LineHeaderCodeMining) : true;
// Try to find existing annotation
AbstractInlinedAnnotation ann= fInlinedAnnotationSupport.findExistingAnnotation(pos);
if (ann == null) {
// The annotation doesn't exists, create it.
- ann= inLineHeader ? new CodeMiningLineHeaderAnnotation(pos, viewer) : new CodeMiningLineContentAnnotation(pos, viewer);
+ boolean afterPosition= false;
+ if (first instanceof LineContentCodeMining m) {
+ afterPosition= m.isAfterPosition();
+ }
+ ann= inLineHeader ? new CodeMiningLineHeaderAnnotation(pos, viewer) : new CodeMiningLineContentAnnotation(pos, viewer, afterPosition);
} else if (ann instanceof ICodeMiningAnnotation && ((ICodeMiningAnnotation) ann).isInVisibleLines()) {
// annotation is in visible lines
annotationsToRedraw.add((ICodeMiningAnnotation) ann);
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/WhitespaceCharacterPainter.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/WhitespaceCharacterPainter.java
index 24a6526f064..43c6e53e7c5 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/WhitespaceCharacterPainter.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/WhitespaceCharacterPainter.java
@@ -17,8 +17,8 @@
*******************************************************************************/
package org.eclipse.jface.text;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.HashMap;
+import java.util.Map;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyleRange;
@@ -405,6 +405,10 @@ private void drawCharRange(GC gc, int startOffset, int endOffset, int lineOffset
break;
case '\r':
if (fShowCarriageReturn) {
+ if (visibleChar.length() > 0 && cache.contains(fTextWidget, lineOffset + textOffset)) {
+ textOffset--;
+ break;
+ }
visibleChar.append(CARRIAGE_RETURN_SIGN);
}
if (textOffset >= endOffsetInLine - 1 || lineText.charAt(textOffset + 1) != '\n') {
@@ -414,6 +418,10 @@ private void drawCharRange(GC gc, int startOffset, int endOffset, int lineOffset
continue;
case '\n':
if (fShowLineFeed) {
+ if (visibleChar.length() > 0 && cache.contains(fTextWidget, lineOffset + textOffset)) {
+ textOffset--;
+ break;
+ }
visibleChar.append(LINE_FEED_SIGN);
}
eol= true;
@@ -439,7 +447,7 @@ private void drawCharRange(GC gc, int startOffset, int endOffset, int lineOffset
fg= styleRange.foreground;
}
}
- draw(gc, widgetOffset, visibleChar.toString(), fg);
+ draw(gc, widgetOffset, visibleChar.toString(), fg, cache);
}
visibleChar.delete(0, visibleChar.length());
}
@@ -492,7 +500,7 @@ private void redrawAll() {
* @param s the string to be drawn
* @param fg the foreground color
*/
- private void draw(GC gc, int offset, String s, Color fg) {
+ private void draw(GC gc, int offset, String s, Color fg,StyleRangeWithMetricsOffsets cache) {
// Compute baseline delta (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=165640)
int baseline= fTextWidget.getBaseline(offset);
FontMetrics fontMetrics= gc.getFontMetrics();
@@ -500,32 +508,49 @@ private void draw(GC gc, int offset, String s, Color fg) {
int baslineDelta= baseline - fontBaseline;
Point pos= fTextWidget.getLocationAtOffset(offset);
+ StyleRange styleRange= cache.get(fTextWidget, offset);
+ if (styleRange != null && styleRange.metrics != null) { // code mining at \r or \n character - line break character should be drawn at end of code mining
+ String charBeforeOffset= " "; //$NON-NLS-1$
+ if (offset > 0) {
+ charBeforeOffset= fTextWidget.getText(offset - 1, offset - 1);
+ }
+ Point extCharBeforeOffset= gc.textExtent(charBeforeOffset);
+ pos.x= pos.x + styleRange.metrics.width - extCharBeforeOffset.x;
+ }
gc.setForeground(fg);
gc.drawString(s, pos.x, pos.y + baslineDelta, true);
}
private static class StyleRangeWithMetricsOffsets {
- private Set offsets= null;
+ private Map offsets= null;
public boolean contains(StyledText st, int offset) {
if (offsets == null) {
- fillSet(st);
+ fillMap(st);
}
- if (offsets.contains(offset)) {
+ if (offsets.containsKey(offset)) {
return true;
}
return false;
}
- private void fillSet(StyledText st) {
- offsets= new HashSet<>();
+ public StyleRange get(StyledText st, int offset) {
+ if (offsets == null) {
+ fillMap(st);
+ }
+ StyleRange styleRange= offsets.get(offset);
+ return styleRange;
+ }
+
+ private void fillMap(StyledText st) {
+ offsets= new HashMap<>();
StyleRange[] ranges= st.getStyleRanges();
if (ranges == null) {
return;
}
for (StyleRange range : ranges) {
if (range != null && range.metrics != null) {
- offsets.add(range.start);
+ offsets.put(range.start, range);
}
}
}
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/codemining/LineContentCodeMining.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/codemining/LineContentCodeMining.java
index d81cd0b1e0e..cb4402a75de 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/codemining/LineContentCodeMining.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/codemining/LineContentCodeMining.java
@@ -26,6 +26,8 @@
*/
public abstract class LineContentCodeMining extends AbstractCodeMining {
+ private final boolean afterPosition;
+
/**
* CodeMining constructor to locate the code mining in a given position.
*
@@ -36,6 +38,20 @@ public LineContentCodeMining(Position position, ICodeMiningProvider provider) {
this(position, provider, null);
}
+ /**
+ * CodeMining constructor to locate the code mining in a given position.
+ *
+ * @param position the position where the mining must be drawn.
+ * @param afterPosition if true code mining is treated as suffix code mining where cursor and
+ * selection is not including the mining
+ * @param provider the owner codemining provider which creates this mining.
+ *
+ * @since 3.26
+ */
+ public LineContentCodeMining(Position position, boolean afterPosition, ICodeMiningProvider provider) {
+ this(position, afterPosition, provider, null);
+ }
+
/**
* CodeMining constructor to locate the code mining in a given position.
*
@@ -44,7 +60,33 @@ public LineContentCodeMining(Position position, ICodeMiningProvider provider) {
* @param action the action to execute when mining is clicked and null otherwise.
*/
public LineContentCodeMining(Position position, ICodeMiningProvider provider, Consumer action) {
+ this(position, false, provider, action);
+ }
+
+ /**
+ * CodeMining constructor to locate the code mining in a given position.
+ *
+ * @param position the position where the mining must be drawn.
+ * @param provider the owner codemining provider which creates this mining.
+ * @param action the action to execute when mining is clicked and null otherwise.
+ * @param afterPosition if true code mining is treated as suffix code mining where cursor and
+ * selection is not including the mining
+ *
+ * @since 3.26
+ */
+ public LineContentCodeMining(Position position, boolean afterPosition, ICodeMiningProvider provider, Consumer action) {
super(position, provider, action);
+ this.afterPosition= afterPosition;
+ }
+
+ /**
+ * indicates if code mining should be rendered after given position; cursor and selection does
+ * not include the code mining if set to true.
+ *
+ * @since 3.26
+ */
+ public boolean isAfterPosition() {
+ return afterPosition;
}
}
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationDrawingStrategy.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationDrawingStrategy.java
index 09464aef653..39641a3c02c 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationDrawingStrategy.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationDrawingStrategy.java
@@ -24,6 +24,8 @@
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.jface.internal.text.codemining.CodeMiningLineContentAnnotation;
+
import org.eclipse.jface.text.ITextViewer;
import org.eclipse.jface.text.source.Annotation;
import org.eclipse.jface.text.source.AnnotationPainter.IDrawingStrategy;
@@ -202,6 +204,12 @@ private static void draw(LineHeaderAnnotation annotation, GC gc, StyledText text
*/
private static void draw(LineContentAnnotation annotation, GC gc, StyledText textWidget, int widgetOffset, int length,
Color color) {
+ if (annotation instanceof CodeMiningLineContentAnnotation a) {
+ if (a.isAfterPosition()) {
+ drawAsLeftOf1stCharacter(annotation, gc, textWidget, widgetOffset, length, color);
+ return;
+ }
+ }
if (annotation.isEmptyLine(widgetOffset, textWidget)) {
drawAfterLine(annotation, gc, textWidget, widgetOffset, length, color);
} else if (LineContentAnnotation.drawRightToPreviousChar(widgetOffset, textWidget)) {
@@ -254,9 +262,18 @@ protected static void drawAsLeftOf1stCharacter(LineContentAnnotation annotation,
// Compute the location of the annotation
Rectangle bounds= textWidget.getTextBounds(widgetOffset, widgetOffset);
- int x= bounds.x + (isEndOfLine ? bounds.width * 2 : 0);
- int y= bounds.y;
+ int x;
+ if (isEndOfLine) {
+ // getTextBounds at offset with char '\r' or '\n' returns incorrect x position, use getLocationAtOffset instead
+ x= textWidget.getLocationAtOffset(widgetOffset).x;
+ } else {
+ x= bounds.x;
+ }
+ int y= bounds.y;
+ if (isAfterPosition(annotation)) {
+ isEndOfLine= false;
+ }
// When line text has line header annotation, there is a space on the top, adjust the y by using char height
y+= bounds.height - textWidget.getLineHeight();
@@ -275,14 +292,18 @@ protected static void drawAsLeftOf1stCharacter(LineContentAnnotation annotation,
// Get size of the character where GlyphMetrics width is added
Point charBounds= gc.stringExtent(hostCharacter);
int charWidth= charBounds.x;
-
+ if (charWidth == 0 && ("\r".equals(hostCharacter) || "\n".equals(hostCharacter))) { //$NON-NLS-1$ //$NON-NLS-2$
+ // charWidth is 0 for '\r' on font Consolas, but not on other fonts, why?
+ charWidth= gc.stringExtent(" ").x; //$NON-NLS-1$
+ }
// FIXME: remove this code when we need not redraw the character (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=531769)
// START TO REMOVE
annotation.setRedrawnCharacterWidth(charWidth);
// END TO REMOVE
// Annotation takes place, add GlyphMetrics width to the style
- StyleRange newStyle= annotation.updateStyle(style, gc.getFontMetrics(), textWidget.getData() instanceof ITextViewer viewer ? viewer : annotation.getViewer());
+ StyleRange newStyle= annotation.updateStyle(style, gc.getFontMetrics(), textWidget.getData() instanceof ITextViewer viewer ? viewer : annotation.getViewer(),
+ isAfterPosition(annotation));
if (newStyle != null) {
textWidget.setStyleRange(newStyle);
return;
@@ -328,6 +349,13 @@ protected static void drawAsLeftOf1stCharacter(LineContentAnnotation annotation,
}
}
+ private static boolean isAfterPosition(LineContentAnnotation annotation) {
+ if (annotation instanceof CodeMiningLineContentAnnotation a) {
+ return a.isAfterPosition();
+ }
+ return false;
+ }
+
protected static void drawAsRightOfPreviousCharacter(LineContentAnnotation annotation, GC gc, StyledText textWidget, int widgetOffset, int length, Color color) {
StyleRange style= null;
try {
@@ -365,7 +393,7 @@ protected static void drawAsRightOfPreviousCharacter(LineContentAnnotation annot
// END TO REMOVE
// Annotation takes place, add GlyphMetrics width to the style
- StyleRange newStyle= annotation.updateStyle(style, gc.getFontMetrics(), InlinedAnnotationSupport.getSupport(textWidget).getViewer());
+ StyleRange newStyle= annotation.updateStyle(style, gc.getFontMetrics(), InlinedAnnotationSupport.getSupport(textWidget).getViewer(), isAfterPosition(annotation));
if (newStyle != null) {
textWidget.setStyleRange(newStyle);
return;
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java
index 8bf2116843d..79e301468f6 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java
@@ -42,6 +42,8 @@
import org.eclipse.core.runtime.Assert;
+import org.eclipse.jface.internal.text.codemining.CodeMiningLineContentAnnotation;
+
import org.eclipse.jface.text.BadLocationException;
import org.eclipse.jface.text.DocumentEvent;
import org.eclipse.jface.text.IDocument;
@@ -107,7 +109,7 @@ public void applyTextPresentation(TextPresentation textPresentation) {
.forEachRemaining(annotation -> {
if (annotation instanceof LineContentAnnotation) {
LineContentAnnotation ann= (LineContentAnnotation) annotation;
- StyleRange style= ann.updateStyle(null, fFontMetrics, fViewer);
+ StyleRange style= ann.updateStyle(null, fFontMetrics, fViewer, isAfterPosition(ann));
if (style != null) {
if (fViewer instanceof ITextViewerExtension5 projectionViewer) {
IRegion annotationRegion= projectionViewer.widgetRange2ModelRange(new Region(style.start, style.length));
@@ -119,6 +121,13 @@ public void applyTextPresentation(TextPresentation textPresentation) {
}
});
}
+
+ private static boolean isAfterPosition(LineContentAnnotation annotation) {
+ if (annotation instanceof CodeMiningLineContentAnnotation a) {
+ return a.isAfterPosition();
+ }
+ return false;
+ }
}
/**
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/LineContentAnnotation.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/LineContentAnnotation.java
index e6cc355c90f..24fffefaf9b 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/LineContentAnnotation.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/LineContentAnnotation.java
@@ -117,13 +117,16 @@ boolean contains(int x, int y) {
* @return the style to apply with GlyphMetrics width only if needed. It uses widget position,
* not model position.
*/
- StyleRange updateStyle(StyleRange style, FontMetrics fontMetrics, ITextViewer viewer) {
+ StyleRange updateStyle(StyleRange style, FontMetrics fontMetrics, ITextViewer viewer, boolean afterPosition) {
Position widgetPosition= computeWidgetPosition(viewer);
if (widgetPosition == null) {
return null;
}
StyledText textWidget = viewer.getTextWidget();
- boolean usePreviousChar= drawRightToPreviousChar(widgetPosition.getOffset(), textWidget);
+ boolean usePreviousChar= false;
+ if (!afterPosition) {
+ usePreviousChar= drawRightToPreviousChar(widgetPosition.getOffset(), textWidget);
+ }
if (width == 0 || getRedrawnCharacterWidth() == 0) {
return null;
}
diff --git a/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/CodeMiningDemo.java b/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/CodeMiningDemo.java
index 1cc8a5cf656..b70080822bd 100644
--- a/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/CodeMiningDemo.java
+++ b/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/CodeMiningDemo.java
@@ -16,10 +16,12 @@
import java.util.concurrent.atomic.AtomicReference;
import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.jface.text.Document;
import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.IRegion;
import org.eclipse.jface.text.ITextViewerExtension2;
+import org.eclipse.jface.text.WhitespaceCharacterPainter;
import org.eclipse.jface.text.codemining.ICodeMiningProvider;
import org.eclipse.jface.text.reconciler.DirtyRegion;
import org.eclipse.jface.text.reconciler.IReconcilingStrategy;
@@ -42,6 +44,8 @@
*/
public class CodeMiningDemo {
+ private static boolean showWhitespaces = false;
+
public static void main(String[] args) throws Exception {
Display display = new Display();
@@ -54,7 +58,13 @@ public static void main(String[] args) throws Exception {
endOfLineText.setText(endOfLineString.get());
GridDataFactory.fillDefaults().grab(true, false).applyTo(endOfLineText);
- ISourceViewer sourceViewer = new SourceViewer(shell, null, SWT.V_SCROLL | SWT.BORDER);
+ SourceViewer sourceViewer = new SourceViewer(shell, null, SWT.V_SCROLL | SWT.BORDER);
+ sourceViewer.getTextWidget().setFont(JFaceResources.getTextFont());
+ if (showWhitespaces) {
+ WhitespaceCharacterPainter whitespaceCharPainter = new WhitespaceCharacterPainter(sourceViewer, true, true,
+ true, true, true, true, true, true, true, true, true, 100);
+ sourceViewer.addPainter(whitespaceCharPainter);
+ }
sourceViewer.setDocument(
new Document("// Type class & new keyword and see references CodeMining\n"
+ "// Name class with a number N to emulate Nms before resolving the references CodeMining\n"
@@ -71,7 +81,8 @@ public static void main(String[] args) throws Exception {
+ "new 5\n" //
+ "new 5\n" //
+ "multiline \n" //
- + "multiline \n\n"),
+ + "multiline \n\n" //
+ + "suffix \n"),
new AnnotationModel());
GridDataFactory.fillDefaults().grab(true, true).applyTo(sourceViewer.getTextWidget());
// Add AnnotationPainter (required by CodeMining)
@@ -83,7 +94,8 @@ public static void main(String[] args) throws Exception {
new ToEchoWithHeaderAndInlineCodeMiningProvider("echo"), //
new MultilineCodeMiningProvider(), //
new EmptyLineCodeMiningProvider(), //
- new EchoAtEndOfLineCodeMiningProvider(endOfLineString) });
+ new EchoAtEndOfLineCodeMiningProvider(endOfLineString), //
+ new LineContentCodeMiningAfterPositionProvider() });
// Execute codemining in a reconciler
MonoReconciler reconciler = new MonoReconciler(new IReconcilingStrategy() {
diff --git a/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/LineContentCodeMiningAfterPositionProvider.java b/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/LineContentCodeMiningAfterPositionProvider.java
new file mode 100644
index 00000000000..e6bf0bb646f
--- /dev/null
+++ b/examples/org.eclipse.jface.text.examples/src/org/eclipse/jface/text/examples/codemining/LineContentCodeMiningAfterPositionProvider.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2024, SAP SE
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *******************************************************************************/
+package org.eclipse.jface.text.examples.codemining;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.CompletableFuture;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.text.ITextViewer;
+import org.eclipse.jface.text.Position;
+import org.eclipse.jface.text.codemining.AbstractCodeMiningProvider;
+import org.eclipse.jface.text.codemining.ICodeMining;
+import org.eclipse.jface.text.codemining.LineContentCodeMining;
+
+public class LineContentCodeMiningAfterPositionProvider extends AbstractCodeMiningProvider {
+
+ public LineContentCodeMiningAfterPositionProvider() {
+ }
+
+ @Override
+ public CompletableFuture> provideCodeMinings(ITextViewer viewer,
+ IProgressMonitor monitor) {
+ String suffix = "suffix";
+ int index = 0;
+ List res = new ArrayList<>();
+ while ((index = viewer.getDocument().get().indexOf(suffix, index)) != -1) {
+ index += suffix.length();
+ res.add(new LineContentCodeMining(new Position(index, 1), true, this) {
+ @Override
+ public String getLabel() {
+ return suffix;
+ }
+
+ @Override
+ public boolean isResolved() {
+ return true;
+ }
+ });
+ }
+ return CompletableFuture.completedFuture(res);
+ }
+}
+
diff --git a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/TestWhitespaceCharacterPainter.java b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/TestWhitespaceCharacterPainter.java
index 5b3298d050d..9a1d57a3e34 100644
--- a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/TestWhitespaceCharacterPainter.java
+++ b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/TestWhitespaceCharacterPainter.java
@@ -19,6 +19,9 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import java.util.Arrays;
+import java.util.List;
+
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -62,15 +65,30 @@ public void after() {
@Test
public void glyphMetricsTakenIntoAccount() throws Exception {
+ verifyDrawStringCalledNTimes("first \nsecond \nthird \n", Arrays.asList(6, 15), 5);
+ }
+
+ @Test
+ public void glyphMetricsAtNewTakenIntoAccount() throws Exception {
+ verifyDrawStringCalledNTimes("first \nsecond", Arrays.asList(7), 2);
+ }
+
+ @Test
+ public void glyphMetricsAtCarriageReturnTakenIntoAccount() throws Exception {
+ verifyDrawStringCalledNTimes("first \r\nsecond", Arrays.asList(7), 2);
+ }
+
+ private void verifyDrawStringCalledNTimes(String str, List styleRangeOffsets, int times) {
SourceViewer sourceViewer= new SourceViewer(shell, null, SWT.V_SCROLL | SWT.BORDER);
- sourceViewer.setDocument(new Document("first \nsecond \nthird \n"));
+ sourceViewer.setDocument(new Document(str));
StyledText textWidget= sourceViewer.getTextWidget();
textWidget.setFont(JFaceResources.getTextFont());
WhitespaceCharacterPainter whitespaceCharPainter= new WhitespaceCharacterPainter(sourceViewer, true, true, true, true, true, true, true,
true, true, true, true, 100);
sourceViewer.addPainter(whitespaceCharPainter);
- textWidget.setStyleRange(createStyleRangeWithMetrics(6));
- textWidget.setStyleRange(createStyleRangeWithMetrics(15));
+ for (Integer offset : styleRangeOffsets) {
+ textWidget.setStyleRange(createStyleRangeWithMetrics(offset));
+ }
Event e= new Event();
e.widget= textWidget;
PaintEvent ev= new PaintEvent(e);
@@ -87,6 +105,16 @@ public Point answer(InvocationOnMock invocation) throws Throwable {
return result;
}
});
+ when(ev.gc.textExtent(anyString())).thenAnswer(new Answer() {
+ @Override
+ public Point answer(InvocationOnMock invocation) throws Throwable {
+ GC gc= new GC(shell);
+ gc.setFont(JFaceResources.getTextFont());
+ Point result= gc.textExtent(invocation.getArgument(0));
+ gc.dispose();
+ return result;
+ }
+ });
when(ev.gc.getFontMetrics()).thenAnswer(new Answer() {
@Override
public FontMetrics answer(InvocationOnMock invocation) throws Throwable {
@@ -102,7 +130,7 @@ public FontMetrics answer(InvocationOnMock invocation) throws Throwable {
ev.width= 100;
ev.height= 100;
whitespaceCharPainter.paintControl(ev);
- verify(ev.gc, times(5)).drawString(anyString(), anyInt(), anyInt(), anyBoolean());
+ verify(ev.gc, times(times)).drawString(anyString(), anyInt(), anyInt(), anyBoolean());
}
private StyleRange createStyleRangeWithMetrics(int start) {
diff --git a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/source/inlined/AnnotationOnTabTest.java b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/source/inlined/AnnotationOnTabTest.java
index 4cf6795c238..279a6fb8ccd 100644
--- a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/source/inlined/AnnotationOnTabTest.java
+++ b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/source/inlined/AnnotationOnTabTest.java
@@ -74,7 +74,7 @@ public void testTextBoundsMatchPaintedArea() {
// add annotations
int annotationIndex = sourceViewer.getDocument().get().indexOf("annotated");
LineContentAnnotation annotation= new LineContentAnnotation(new Position(annotationIndex, 1), sourceViewer);
- annotation.setText("a"); // single char, so overall annoation is 3 chars, less than default 4 chars
+ annotation.setText("a"); // single char, so overall annotation is 3 chars, less than default 4 chars
support.updateAnnotations(Collections.singleton(annotation));
fParent.open();
Assert.assertTrue(new DisplayHelper() {
@@ -87,6 +87,7 @@ protected boolean condition() {
int referenceIndex = textWidget.getText().indexOf("reference");
Rectangle referenceBounds = textWidget.getTextBounds(referenceIndex, referenceIndex);
Rectangle annotatedCharactedBounds = textWidget.getTextBounds(annotationIndex, annotationIndex);
- Assert.assertTrue("Annotation didn't shift target character to the right, it most likely replaced the tab instead of expanding it", referenceBounds.x < annotatedCharactedBounds.x);
+ Assert.assertTrue("Annotation didn't shift target character to the right, it most likely replaced the tab instead of expanding it",
+ referenceBounds.x + referenceBounds.width < annotatedCharactedBounds.x + annotatedCharactedBounds.width);
}
}
From 70a2d11ea14846b2efb6876903afc291a58a86e5 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Mon, 9 Sep 2024 13:31:47 +0200
Subject: [PATCH 004/232] Remove reflective access from find/replace tests
#2060
The tests for the FindReplaceDialog and FindReplaceOverlay currently use
reflection to access specific UI elements. This ties the test
implementations to implementation details of the production classes
(i.e., specific hidden field to be present) and particularly requires
the production code to contain (hidden) fields even if they would not be
required just to provide according tests.
This change replaces the reflective access with widget extraction
functionality based on explicit IDs assigned to the UI elements of
interest.
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2060
---
.../overlay/FindReplaceOverlay.java | 43 +++++++---
.../ui/texteditor/FindReplaceDialog.java | 22 +++++
.../findandreplace/WidgetExtractor.java | 83 ++++++++++++++++++
.../overlay/FindReplaceOverlayTest.java | 4 +-
.../findandreplace/overlay/OverlayAccess.java | 64 +++++++-------
.../texteditor/tests/DialogAccess.java | 86 +++++++++----------
.../tests/FindReplaceDialogTest.java | 7 +-
7 files changed, 218 insertions(+), 91 deletions(-)
create mode 100644 tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/WidgetExtractor.java
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 26dfad8358b..1ba6878127b 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -104,6 +104,8 @@ private final class KeyboardShortcuts {
KeyStroke.getInstance(SWT.MOD1, 'R'), KeyStroke.getInstance(SWT.MOD1, 'r'));
}
+ public static final String ID_DATA_KEY = "org.eclipse.ui.internal.findreplace.overlay.FindReplaceOverlay.id"; //$NON-NLS-1$
+
private static final String REPLACE_BAR_OPEN_DIALOG_SETTING = "replaceBarOpen"; //$NON-NLS-1$
private static final double WORST_CASE_RATIO_EDITOR_TO_OVERLAY = 0.95;
private static final double BIG_WIDTH_RATIO_EDITOR_TO_OVERLAY = 0.7;
@@ -130,9 +132,9 @@ private final class KeyboardShortcuts {
private ToolItem wholeWordSearchButton;
private ToolItem caseSensitiveSearchButton;
private ToolItem regexSearchButton;
- private ToolItem searchUpButton;
- private ToolItem searchDownButton;
- private ToolItem searchAllButton;
+ private ToolItem searchBackwardButton;
+ private ToolItem searchForwardButton;
+ private ToolItem selectAllButton;
private AccessibleToolBar closeTools;
private ToolItem closeButton;
@@ -370,6 +372,7 @@ public int open() {
}
overlayOpen = true;
applyOverlayColors(backgroundToUse, true);
+ assignIDs();
updateFromTargetSelection();
searchBar.forceFocus();
@@ -391,6 +394,25 @@ private void restoreOverlaySettings() {
}
}
+ @SuppressWarnings("nls")
+ private void assignIDs() {
+ replaceToggle.setData(ID_DATA_KEY, "replaceToggle");
+ searchBar.setData(ID_DATA_KEY, "searchInput");
+ searchBackwardButton.setData(ID_DATA_KEY, "searchBackward");
+ searchForwardButton.setData(ID_DATA_KEY, "searchForward");
+ selectAllButton.setData(ID_DATA_KEY, "selectAll");
+ searchInSelectionButton.setData(ID_DATA_KEY, "searchInSelection");
+ wholeWordSearchButton.setData(ID_DATA_KEY, "wholeWordSearch");
+ regexSearchButton.setData(ID_DATA_KEY, "regExSearch");
+ caseSensitiveSearchButton.setData(ID_DATA_KEY, "caseSensitiveSearch");
+
+ if (replaceBarOpen) {
+ replaceBar.setData(ID_DATA_KEY, "replaceInput");
+ replaceButton.setData(ID_DATA_KEY, "replaceOne");
+ replaceAllButton.setData(ID_DATA_KEY, "replaceAll");
+ }
+ }
+
private void applyOverlayColors(Color color, boolean tryToColorReplaceBar) {
closeTools.setBackground(color);
closeButton.setBackground(color);
@@ -400,9 +422,9 @@ private void applyOverlayColors(Color color, boolean tryToColorReplaceBar) {
wholeWordSearchButton.setBackground(color);
regexSearchButton.setBackground(color);
caseSensitiveSearchButton.setBackground(color);
- searchAllButton.setBackground(color);
- searchUpButton.setBackground(color);
- searchDownButton.setBackground(color);
+ selectAllButton.setBackground(color);
+ searchBackwardButton.setBackground(color);
+ searchForwardButton.setBackground(color);
searchBarContainer.setBackground(color);
searchBar.setBackground(color);
@@ -511,20 +533,20 @@ private void createSearchTools() {
searchTools.createToolItem(SWT.SEPARATOR);
- searchUpButton = new AccessibleToolItemBuilder(searchTools).withStyleBits(SWT.PUSH)
+ searchBackwardButton = new AccessibleToolItemBuilder(searchTools).withStyleBits(SWT.PUSH)
.withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_FIND_PREV))
.withToolTipText(FindReplaceMessages.FindReplaceOverlay_upSearchButton_toolTip)
.withOperation(() -> performSearch(false))
.withShortcuts(KeyboardShortcuts.SEARCH_BACKWARD).build();
- searchDownButton = new AccessibleToolItemBuilder(searchTools).withStyleBits(SWT.PUSH)
+ searchForwardButton = new AccessibleToolItemBuilder(searchTools).withStyleBits(SWT.PUSH)
.withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_FIND_NEXT))
.withToolTipText(FindReplaceMessages.FindReplaceOverlay_downSearchButton_toolTip)
.withOperation(() -> performSearch(true))
.withShortcuts(KeyboardShortcuts.SEARCH_FORWARD).build();
- searchDownButton.setSelection(true); // by default, search down
+ searchForwardButton.setSelection(true); // by default, search down
- searchAllButton = new AccessibleToolItemBuilder(searchTools).withStyleBits(SWT.PUSH)
+ selectAllButton = new AccessibleToolItemBuilder(searchTools).withStyleBits(SWT.PUSH)
.withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_SEARCH_ALL))
.withToolTipText(FindReplaceMessages.FindReplaceOverlay_searchAllButton_toolTip)
.withOperation(this::performSelectAll).withShortcuts(KeyboardShortcuts.SEARCH_ALL).build();
@@ -759,6 +781,7 @@ private void createReplaceDialog() {
updatePlacementAndVisibility();
applyOverlayColors(backgroundToUse, true);
+ assignIDs();
replaceBar.forceFocus();
}
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
index e65cff7268e..2ab91df8d15 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
@@ -79,6 +79,8 @@
*/
class FindReplaceDialog extends Dialog {
+ public static final String ID_DATA_KEY = "org.eclipse.ui.texteditor.FindReplaceDialog.id"; //$NON-NLS-1$
+
private static final int CLOSE_BUTTON_ID = 101;
private IFindReplaceLogic findReplaceLogic;
@@ -275,6 +277,7 @@ public void create() {
shell.setText(FindReplaceMessages.FindReplace_Dialog_Title);
updateButtonState();
+ assignIDs();
}
/**
@@ -1353,4 +1356,23 @@ private String getCurrentSelection() {
return null;
return target.getSelectionText();
}
+
+ @SuppressWarnings("nls")
+ private void assignIDs() {
+ fFindField.setData(ID_DATA_KEY, "searchInput");
+ fReplaceField.setData(ID_DATA_KEY, "replaceInput");
+ fForwardRadioButton.setData(ID_DATA_KEY, "searchForward");
+ fGlobalRadioButton.setData(ID_DATA_KEY, "globalSearch");
+ fSelectedRangeRadioButton.setData(ID_DATA_KEY, "searchInSelection");
+ fCaseCheckBox.setData(ID_DATA_KEY, "caseSensitiveSearch");
+ fWrapCheckBox.setData(ID_DATA_KEY, "wrappedSearch");
+ fWholeWordCheckBox.setData(ID_DATA_KEY, "wholeWordSearch");
+ fIncrementalCheckBox.setData(ID_DATA_KEY, "incrementalSearch");
+ fIsRegExCheckBox.setData(ID_DATA_KEY, "regExSearch");
+
+ fReplaceSelectionButton.setData(ID_DATA_KEY, "replaceOne");
+ fReplaceFindButton.setData(ID_DATA_KEY, "replaceFindOne");
+ fReplaceAllButton.setData(ID_DATA_KEY, "replaceAll");
+ }
+
}
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/WidgetExtractor.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/WidgetExtractor.java
new file mode 100644
index 00000000000..81b7f64aa77
--- /dev/null
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/WidgetExtractor.java
@@ -0,0 +1,83 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Vector Informatik GmbH and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vector Informatik GmbH - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.ui.internal.findandreplace;
+
+import static org.junit.Assert.assertFalse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.ToolBar;
+import org.eclipse.swt.widgets.ToolItem;
+import org.eclipse.swt.widgets.Widget;
+
+import org.eclipse.ui.internal.findandreplace.overlay.HistoryTextWrapper;
+
+public final class WidgetExtractor {
+
+ private final Composite rootContainer;
+
+ private final String idDataKey;
+
+ public WidgetExtractor(String idDataKey, Composite container) {
+ this.idDataKey= idDataKey;
+ this.rootContainer= container;
+ }
+
+ public HistoryTextWrapper findHistoryTextWrapper(String id) {
+ return findWidget(rootContainer, HistoryTextWrapper.class, id);
+ }
+
+ public Combo findCombo(String id) {
+ return findWidget(rootContainer, Combo.class, id);
+ }
+
+ public Button findButton(String id) {
+ return findWidget(rootContainer, Button.class, id);
+ }
+
+ public ToolItem findToolItem(String id) {
+ return findWidget(rootContainer, ToolItem.class, id);
+ }
+
+ private T findWidget(Composite container, Class type, String id) {
+ List widgets= findWidgets(container, type, id);
+ assertFalse("more than one matching widget found for id '" + id + "':" + widgets, widgets.size() > 1);
+ return widgets.isEmpty() ? null : widgets.get(0);
+ }
+
+ private List findWidgets(Composite container, Class type, String id) {
+ List children= new ArrayList<>();
+ children.addAll(List.of(container.getChildren()));
+ if (container instanceof ToolBar toolbar) {
+ children.addAll(List.of(toolbar.getItems()));
+ }
+ List result= new ArrayList<>();
+ for (Widget child : children) {
+ if (type.isInstance(child)) {
+ if (id.equals(child.getData(idDataKey))) {
+ result.add(type.cast(child));
+ }
+ }
+ if (child instanceof Composite compositeChild) {
+ result.addAll(findWidgets(compositeChild, type, id));
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java
index 58e7afc72d8..f9dda34774d 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java
@@ -45,8 +45,8 @@ public class FindReplaceOverlayTest extends FindReplaceUITest {
public OverlayAccess openUIFromTextViewer(TextViewer viewer) {
Accessor actionAccessor= new Accessor(getFindReplaceAction(), FindReplaceAction.class);
actionAccessor.invoke("showOverlayInEditor", null);
- Accessor overlayAccessor= new Accessor(actionAccessor.get("overlay"), "org.eclipse.ui.internal.findandreplace.overlay.FindReplaceOverlay", getClass().getClassLoader());
- return new OverlayAccess(getFindReplaceTarget(), overlayAccessor);
+ FindReplaceOverlay overlay= (FindReplaceOverlay) actionAccessor.get("overlay");
+ return new OverlayAccess(getFindReplaceTarget(), overlay);
}
@Test
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
index ae961a3e0da..e81a1f47b56 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
@@ -21,7 +21,6 @@
import java.util.Objects;
import java.util.Set;
import java.util.function.Predicate;
-import java.util.function.Supplier;
import java.util.stream.Collectors;
import org.eclipse.swt.SWT;
@@ -31,13 +30,12 @@
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.ToolItem;
-import org.eclipse.text.tests.Accessor;
-
import org.eclipse.jface.text.IFindReplaceTarget;
import org.eclipse.jface.text.IFindReplaceTargetExtension;
import org.eclipse.ui.internal.findandreplace.IFindReplaceUIAccess;
import org.eclipse.ui.internal.findandreplace.SearchOptions;
+import org.eclipse.ui.internal.findandreplace.WidgetExtractor;
class OverlayAccess implements IFindReplaceUIAccess {
private final IFindReplaceTarget findReplaceTarget;
@@ -64,28 +62,33 @@ class OverlayAccess implements IFindReplaceUIAccess {
private ToolItem replaceAllButton;
- private final Runnable closeOperation;
-
- private final Accessor dialogAccessor;
+ private final FindReplaceOverlay overlay;
- private final Supplier shellRetriever;
+ private final Shell shell;
- OverlayAccess(IFindReplaceTarget findReplaceTarget, Accessor findReplaceOverlayAccessor) {
+ OverlayAccess(IFindReplaceTarget findReplaceTarget, FindReplaceOverlay findReplaceOverlay) {
this.findReplaceTarget= findReplaceTarget;
- dialogAccessor= findReplaceOverlayAccessor;
- find= (HistoryTextWrapper) findReplaceOverlayAccessor.get("searchBar");
- replace= (HistoryTextWrapper) findReplaceOverlayAccessor.get("replaceBar");
- caseSensitive= (ToolItem) findReplaceOverlayAccessor.get("caseSensitiveSearchButton");
- wholeWord= (ToolItem) findReplaceOverlayAccessor.get("wholeWordSearchButton");
- regEx= (ToolItem) findReplaceOverlayAccessor.get("regexSearchButton");
- searchForward= (ToolItem) findReplaceOverlayAccessor.get("searchDownButton");
- searchBackward= (ToolItem) findReplaceOverlayAccessor.get("searchUpButton");
- closeOperation= () -> findReplaceOverlayAccessor.invoke("close", null);
- openReplaceDialog= (Button) findReplaceOverlayAccessor.get("replaceToggle");
- replaceButton= (ToolItem) findReplaceOverlayAccessor.get("replaceButton");
- replaceAllButton= (ToolItem) findReplaceOverlayAccessor.get("replaceAllButton");
- inSelection= (ToolItem) findReplaceOverlayAccessor.get("searchInSelectionButton");
- shellRetriever= () -> ((Shell) findReplaceOverlayAccessor.invoke("getShell", null));
+ overlay= findReplaceOverlay;
+ shell= overlay.getShell();
+ WidgetExtractor widgetExtractor= new WidgetExtractor(FindReplaceOverlay.ID_DATA_KEY, shell);
+ find= widgetExtractor.findHistoryTextWrapper("searchInput");
+ caseSensitive= widgetExtractor.findToolItem("caseSensitiveSearch");
+ wholeWord= widgetExtractor.findToolItem("wholeWordSearch");
+ regEx= widgetExtractor.findToolItem("regExSearch");
+ inSelection= widgetExtractor.findToolItem("searchInSelection");
+ searchForward= widgetExtractor.findToolItem("searchForward");
+ searchBackward= widgetExtractor.findToolItem("searchBackward");
+ openReplaceDialog= widgetExtractor.findButton("replaceToggle");
+ extractReplaceWidgets();
+ }
+
+ private void extractReplaceWidgets() {
+ if (!isReplaceDialogOpen() && Objects.nonNull(openReplaceDialog)) {
+ WidgetExtractor widgetExtractor= new WidgetExtractor(FindReplaceOverlay.ID_DATA_KEY, shell);
+ replace= widgetExtractor.findHistoryTextWrapper("replaceInput");
+ replaceButton= widgetExtractor.findToolItem("replaceOne");
+ replaceAllButton= widgetExtractor.findToolItem("replaceAll");
+ }
}
private void restoreInitialConfiguration() {
@@ -100,12 +103,12 @@ private void restoreInitialConfiguration() {
public void closeAndRestore() {
restoreInitialConfiguration();
assertInitialConfiguration();
- closeOperation.run();
+ overlay.close();
}
@Override
public void close() {
- closeOperation.run();
+ overlay.close();
}
@Override
@@ -234,15 +237,13 @@ public void performReplace() {
}
public boolean isReplaceDialogOpen() {
- return dialogAccessor.getBoolean("replaceBarOpen");
+ return replace != null;
}
public void openReplaceDialog() {
if (!isReplaceDialogOpen() && Objects.nonNull(openReplaceDialog)) {
openReplaceDialog.notifyListeners(SWT.Selection, null);
- replace= (HistoryTextWrapper) dialogAccessor.get("replaceBar");
- replaceButton= (ToolItem) dialogAccessor.get("replaceButton");
- replaceAllButton= (ToolItem) dialogAccessor.get("replaceAllButton");
+ extractReplaceWidgets();
}
}
@@ -309,15 +310,14 @@ public void assertEnabled(SearchOptions option) {
@Override
public boolean isShown() {
- return shellRetriever.get() != null && shellRetriever.get().isVisible();
+ return !shell.isDisposed() && shell.isVisible();
}
@Override
public boolean hasFocus() {
- Shell overlayShell= shellRetriever.get();
- Control focusControl= overlayShell.getDisplay().getFocusControl();
+ Control focusControl= shell.getDisplay().getFocusControl();
Shell focusControlShell= focusControl != null ? focusControl.getShell() : null;
- return focusControlShell == overlayShell;
+ return focusControlShell == shell;
}
}
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/DialogAccess.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/DialogAccess.java
index 453e1f84317..4a4a75ed5d5 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/DialogAccess.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/DialogAccess.java
@@ -18,81 +18,77 @@
import java.util.Arrays;
import java.util.Set;
-import java.util.function.Supplier;
import java.util.stream.Collectors;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Shell;
-import org.eclipse.text.tests.Accessor;
+import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.text.IFindReplaceTarget;
import org.eclipse.jface.text.IFindReplaceTargetExtension;
import org.eclipse.ui.internal.findandreplace.IFindReplaceUIAccess;
import org.eclipse.ui.internal.findandreplace.SearchOptions;
+import org.eclipse.ui.internal.findandreplace.WidgetExtractor;
class DialogAccess implements IFindReplaceUIAccess {
- private final IFindReplaceTarget findReplaceTarget;
-
- Combo findCombo;
+ private static final String DATA_ID = "org.eclipse.ui.texteditor.FindReplaceDialog.id";
- Combo replaceCombo;
-
- Button forwardRadioButton;
+ private final IFindReplaceTarget findReplaceTarget;
- Button globalRadioButton;
+ private final Dialog findReplaceDialog;
- Button searchInRangeRadioButton;
+ private final Combo findCombo;
- Button caseCheckBox;
+ private final Combo replaceCombo;
- Button wrapCheckBox;
+ private final Button forwardRadioButton;
- Button wholeWordCheckBox;
+ private final Button globalRadioButton;
- Button incrementalCheckBox;
+ private final Button searchInRangeRadioButton;
- Button regExCheckBox;
+ private final Button caseCheckBox;
- Button findButton;
+ private final Button wrapCheckBox;
- Button replaceButton;
+ private final Button wholeWordCheckBox;
- Button replaceFindButton;
+ private final Button incrementalCheckBox;
- Button replaceAllButton;
+ private final Button regExCheckBox;
- private Supplier shellRetriever;
+ private final Button replaceButton;
- private Runnable closeOperation;
+ private final Button replaceFindButton;
- Accessor dialogAccessor;
+ private final Button replaceAllButton;
- DialogAccess(IFindReplaceTarget findReplaceTarget, Accessor findReplaceDialogAccessor) {
+ DialogAccess(IFindReplaceTarget findReplaceTarget, Dialog findReplaceDialog) {
this.findReplaceTarget= findReplaceTarget;
- dialogAccessor= findReplaceDialogAccessor;
- findCombo= (Combo) findReplaceDialogAccessor.get("fFindField");
- replaceCombo= (Combo) findReplaceDialogAccessor.get("fReplaceField");
- forwardRadioButton= (Button) findReplaceDialogAccessor.get("fForwardRadioButton");
- globalRadioButton= (Button) findReplaceDialogAccessor.get("fGlobalRadioButton");
- searchInRangeRadioButton= (Button) findReplaceDialogAccessor.get("fSelectedRangeRadioButton");
- caseCheckBox= (Button) findReplaceDialogAccessor.get("fCaseCheckBox");
- wrapCheckBox= (Button) findReplaceDialogAccessor.get("fWrapCheckBox");
- wholeWordCheckBox= (Button) findReplaceDialogAccessor.get("fWholeWordCheckBox");
- incrementalCheckBox= (Button) findReplaceDialogAccessor.get("fIncrementalCheckBox");
- regExCheckBox= (Button) findReplaceDialogAccessor.get("fIsRegExCheckBox");
- shellRetriever= () -> ((Shell) findReplaceDialogAccessor.get("fActiveShell"));
- closeOperation= () -> findReplaceDialogAccessor.invoke("close", null);
- findButton= (Button) findReplaceDialogAccessor.get("fFindNextButton");
- replaceButton= (Button) findReplaceDialogAccessor.get("fReplaceSelectionButton");
- replaceFindButton= (Button) findReplaceDialogAccessor.get("fReplaceFindButton");
- replaceAllButton= (Button) findReplaceDialogAccessor.get("fReplaceAllButton");
+ this.findReplaceDialog= findReplaceDialog;
+ WidgetExtractor widgetExtractor= new WidgetExtractor(DATA_ID, findReplaceDialog.getShell());
+ findCombo= widgetExtractor.findCombo("searchInput");
+ replaceCombo= widgetExtractor.findCombo("replaceInput");
+ forwardRadioButton= widgetExtractor.findButton("searchForward");
+ globalRadioButton= widgetExtractor.findButton("globalSearch");
+ searchInRangeRadioButton= widgetExtractor.findButton("searchInSelection");
+ caseCheckBox= widgetExtractor.findButton("caseSensitiveSearch");
+ wrapCheckBox= widgetExtractor.findButton("wrappedSearch");
+ wholeWordCheckBox= widgetExtractor.findButton("wholeWordSearch");
+ incrementalCheckBox= widgetExtractor.findButton("incrementalSearch");
+ regExCheckBox= widgetExtractor.findButton("regExSearch");
+
+ replaceButton= widgetExtractor.findButton("replaceOne");
+ replaceFindButton= widgetExtractor.findButton("replaceFindOne");
+ replaceAllButton= widgetExtractor.findButton("replaceAll");
}
void restoreInitialConfiguration() {
@@ -153,17 +149,19 @@ public void unselect(SearchOptions option) {
public void closeAndRestore() {
restoreInitialConfiguration();
assertInitialConfiguration();
- closeOperation.run();
+ findReplaceDialog.close();
}
@Override
public void close() {
- closeOperation.run();
+ findReplaceDialog.close();
}
@Override
public boolean hasFocus() {
- return shellRetriever.get() != null;
+ Control focusControl= findReplaceDialog.getShell().getDisplay().getFocusControl();
+ Shell focusControlShell= focusControl != null ? focusControl.getShell() : null;
+ return focusControlShell == findReplaceDialog.getShell();
}
@Override
@@ -296,7 +294,7 @@ private Set getSelectedOptions() {
@Override
public boolean isShown() {
- return shellRetriever.get() != null;
+ return findReplaceDialog.getShell().isVisible();
}
}
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java
index f6a992264e7..2fa0fb63b03 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java
@@ -28,6 +28,7 @@
import org.eclipse.text.tests.Accessor;
+import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.util.Util;
import org.eclipse.jface.text.IFindReplaceTarget;
@@ -50,8 +51,8 @@ public DialogAccess openUIFromTextViewer(TextViewer viewer) {
}
Accessor fFindReplaceDialogStubAccessor= new Accessor(fFindReplaceDialogStub, "org.eclipse.ui.texteditor.FindReplaceAction$FindReplaceDialogStub", getClass().getClassLoader());
- Accessor dialogAccessor= new Accessor(fFindReplaceDialogStubAccessor.invoke("getDialog", null), "org.eclipse.ui.texteditor.FindReplaceDialog", getClass().getClassLoader());
- return new DialogAccess(getFindReplaceTarget(), dialogAccessor);
+ Dialog dialog= (Dialog) fFindReplaceDialogStubAccessor.invoke("getDialog", null);
+ return new DialogAccess(getFindReplaceTarget(), dialog);
}
@Test
@@ -61,7 +62,7 @@ public void testFocusNotChangedWhenEnterPressed() {
initializeTextViewerWithFindReplaceUI("line\nline\nline");
DialogAccess dialog= getDialog();
- dialog.findCombo.setFocus();
+ dialog.getFindCombo().setFocus();
dialog.setFindText("line");
dialog.simulateKeyboardInteractionInFindInputField(SWT.CR, false);
ensureHasFocusOnGTK();
From c9b34e44a6fa6d6619916e31f2c1fd0439cb5d71 Mon Sep 17 00:00:00 2001
From: raghucssit
Date: Mon, 9 Sep 2024 16:19:14 +0200
Subject: [PATCH 005/232] Improve 'Replace All' performance.
For Large Java file 'Replace All' takes long time and freezes the UI.
One of the reason is Projection Model tries to iterate over all the
Projection Annotations to expand/collapse status.
We can improve this situation by using Region specific iterator. This
returns annotations which are enclosed by given offset.
This improves the performance by 25% at least.
See https://github.com/eclipse-platform/eclipse.platform.ui/issues/2257
---
.../jface/text/source/projection/ProjectionAnnotationModel.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java b/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
index 422d2442b58..892d917d301 100644
--- a/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
+++ b/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
@@ -149,7 +149,7 @@ protected boolean expandAll(int offset, int length, boolean fireModelChanged) {
boolean expanding= false;
- Iterator iterator= getAnnotationIterator();
+ Iterator iterator= getAnnotationIterator(offset, length, true, true);
while (iterator.hasNext()) {
ProjectionAnnotation annotation= (ProjectionAnnotation) iterator.next();
if (annotation.isCollapsed()) {
From 175f65eb9d7ad952c2e0d2837323808a27e39e1d Mon Sep 17 00:00:00 2001
From: Lars Vogel
Date: Tue, 1 Oct 2024 13:37:49 +0200
Subject: [PATCH 006/232] Revert "StackRendererTest should restet the model
after each test"
This reverts commit f9b743fff17d7663b3a2287827fe25bb1b128214.
---
.../ui/workbench/renderers/swt/StackRendererTest.java | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
index 53250ebbb77..6cc804ce8eb 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
@@ -59,7 +59,6 @@
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Widget;
-import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -87,16 +86,11 @@ public class StackRendererTest {
@Before
public void setUp() throws Exception {
window = ems.createModelElement(MWindow.class);
- partStack = ems.createModelElement(MPartStack.class);
- window.getChildren().add(partStack);
application.getChildren().add(window);
application.setSelectedElement(window);
- }
- @After
- public void cleanUp() throws Exception {
- ems.deleteModelElement(partStack);
- ems.deleteModelElement(window);
+ partStack = ems.createModelElement(MPartStack.class);
+ window.getChildren().add(partStack);
}
@Test
From 419bb6166b281bd3ff6f4cb3a9689109c62b145a Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Sat, 28 Sep 2024 11:00:07 +0200
Subject: [PATCH 007/232] Find/replace overlay: improve replace toggle button
appearance
The button to toggle whether the replace bar in a find/replace overlay
is shown currently appears to be a rather heavyweight button with a
border. With this change, the button is replace with a lightweight
toolbar item like used for all other buttons in the overlay. This
improves the appearance as well as the implementation as the same
implementation patterns can now be applied to all buttons in the
overlay.
---
.../overlay/AccessibleToolItem.java | 2 ++
.../overlay/FindReplaceOverlay.java | 36 +++++++++----------
.../findandreplace/overlay/OverlayAccess.java | 5 ++-
3 files changed, 21 insertions(+), 22 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/AccessibleToolItem.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/AccessibleToolItem.java
index ea68f106fa1..d2490d8c5c9 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/AccessibleToolItem.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/AccessibleToolItem.java
@@ -22,6 +22,7 @@
import org.eclipse.swt.widgets.ToolItem;
import org.eclipse.jface.bindings.keys.KeyStroke;
+import org.eclipse.jface.layout.GridDataFactory;
class AccessibleToolItem {
private final ToolItem toolItem;
@@ -30,6 +31,7 @@ class AccessibleToolItem {
AccessibleToolItem(Composite parent, int styleBits) {
ToolBar toolbar = new ToolBar(parent, SWT.FLAT | SWT.HORIZONTAL);
+ GridDataFactory.fillDefaults().grab(true, true).align(SWT.CENTER, SWT.CENTER).applyTo(toolbar);
toolItem = new ToolItem(toolbar, styleBits);
addToolItemTraverseListener(toolbar);
}
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 1ba6878127b..2abad115952 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -13,8 +13,6 @@
*******************************************************************************/
package org.eclipse.ui.internal.findandreplace.overlay;
-import static org.eclipse.ui.internal.findandreplace.overlay.FindReplaceShortcutUtil.registerActionShortcutsAtControl;
-
import java.util.List;
import java.util.function.Consumer;
@@ -28,7 +26,7 @@
import org.eclipse.swt.events.FocusEvent;
import org.eclipse.swt.events.FocusListener;
import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.events.ShellAdapter;
import org.eclipse.swt.events.ShellEvent;
import org.eclipse.swt.graphics.Color;
@@ -37,7 +35,6 @@
import org.eclipse.swt.graphics.RGBA;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
@@ -119,8 +116,8 @@ private final class KeyboardShortcuts {
private boolean replaceBarOpen;
private Composite container;
- private Button replaceToggle;
- private FindReplaceOverlayAction replaceToggleShortcut;
+ private AccessibleToolBar replaceToggleTools;
+ private ToolItem replaceToggle;
private Composite contentGroup;
@@ -496,7 +493,7 @@ private Control createDialog(final Composite parent) {
private void initializeSearchShortcutHandlers() {
searchTools.registerActionShortcutsAtControl(searchBar);
closeTools.registerActionShortcutsAtControl(searchBar);
- registerActionShortcutsAtControl(replaceToggleShortcut, searchBar);
+ replaceToggleTools.registerActionShortcutsAtControl(searchBar);
}
/**
@@ -734,15 +731,16 @@ private void createMainContainer(final Composite parent) {
}
private void createReplaceToggle() {
- replaceToggleShortcut = new FindReplaceOverlayAction(this::toggleReplace);
- replaceToggleShortcut.addShortcuts(KeyboardShortcuts.TOGGLE_REPLACE);
- replaceToggle = new Button(container, SWT.FLAT | SWT.PUSH);
- GridDataFactory.fillDefaults().grab(false, true).align(GridData.BEGINNING, GridData.FILL)
- .applyTo(replaceToggle);
- replaceToggle.setToolTipText(replaceToggleShortcut
- .addShortcutHintToTooltipText(FindReplaceMessages.FindReplaceOverlay_replaceToggle_toolTip));
- replaceToggle.setImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_OPEN_REPLACE_AREA));
- replaceToggle.addSelectionListener(SelectionListener.widgetSelectedAdapter(e -> toggleReplace()));
+ replaceToggleTools = new AccessibleToolBar(container);
+ GridDataFactory.fillDefaults().grab(false, true).align(GridData.FILL, GridData.FILL)
+ .applyTo(replaceToggleTools);
+ replaceToggleTools.addMouseListener(MouseListener.mouseDownAdapter(__ -> toggleReplace()));
+
+ replaceToggle = new AccessibleToolItemBuilder(replaceToggleTools)
+ .withShortcuts(KeyboardShortcuts.TOGGLE_REPLACE)
+ .withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_OPEN_REPLACE_AREA))
+ .withToolTipText(FindReplaceMessages.FindReplaceOverlay_replaceToggle_toolTip)
+ .withOperation(this::toggleReplace).build();
}
private void toggleReplace() {
@@ -788,7 +786,7 @@ private void createReplaceDialog() {
private void initializeReplaceShortcutHandlers() {
replaceTools.registerActionShortcutsAtControl(replaceBar);
closeTools.registerActionShortcutsAtControl(replaceBar);
- registerActionShortcutsAtControl(replaceToggleShortcut, replaceBar);
+ replaceToggleTools.registerActionShortcutsAtControl(replaceBar);
}
private void enableSearchTools(boolean enable) {
@@ -801,8 +799,8 @@ private void enableReplaceToggle(boolean enable) {
return;
}
boolean visible = enable && findReplaceLogic.getTarget().isEditable();
- ((GridData) replaceToggle.getLayoutData()).exclude = !visible;
- replaceToggle.setVisible(visible);
+ ((GridData) replaceToggleTools.getLayoutData()).exclude = !visible;
+ replaceToggleTools.setVisible(visible);
}
private void enableReplaceTools(boolean enable) {
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
index e81a1f47b56..51450754661 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
@@ -24,7 +24,6 @@
import java.util.stream.Collectors;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Shell;
@@ -54,7 +53,7 @@ class OverlayAccess implements IFindReplaceUIAccess {
private final ToolItem searchBackward;
- private final Button openReplaceDialog;
+ private final ToolItem openReplaceDialog;
private HistoryTextWrapper replace;
@@ -78,7 +77,7 @@ class OverlayAccess implements IFindReplaceUIAccess {
inSelection= widgetExtractor.findToolItem("searchInSelection");
searchForward= widgetExtractor.findToolItem("searchForward");
searchBackward= widgetExtractor.findToolItem("searchBackward");
- openReplaceDialog= widgetExtractor.findButton("replaceToggle");
+ openReplaceDialog= widgetExtractor.findToolItem("replaceToggle");
extractReplaceWidgets();
}
From 04dc50b8b643a72416cb1779741827e36e9d2066 Mon Sep 17 00:00:00 2001
From: Feilim Breatnach
Date: Tue, 1 Oct 2024 15:25:35 +0100
Subject: [PATCH 008/232] Modify the 'Close Editor' handler and enabled when
evaluation to support for Compatibility parts and new Parts which represent
an Editor and are contributed via eg. PartDescriptors in a Model Fragment.
Associated with Issue#2176.
---
.../ui/internal/CloseEditorHandler.java | 87 +++++++++++--------
.../PartTaggedAsEditorPropertyTester.java | 47 ++++++++++
bundles/org.eclipse.ui/plugin.xml | 17 ++--
3 files changed, 110 insertions(+), 41 deletions(-)
create mode 100644 bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseEditorHandler.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseEditorHandler.java
index b3acfd81940..11894454d03 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseEditorHandler.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseEditorHandler.java
@@ -14,16 +14,21 @@
package org.eclipse.ui.internal;
+import java.util.List;
+import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionInfo;
-import org.eclipse.core.expressions.IEvaluationContext;
+import org.eclipse.e4.core.contexts.IEclipseContext;
+import org.eclipse.e4.ui.model.application.ui.basic.MPart;
+import org.eclipse.e4.ui.workbench.IWorkbench;
+import org.eclipse.e4.ui.workbench.modeling.EPartService;
import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.ISources;
+import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.handlers.HandlerUtil;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.FrameworkUtil;
+import org.osgi.framework.ServiceReference;
/**
* Closes the active editor.
@@ -33,43 +38,53 @@
*
* @since 3.3
*/
-public class CloseEditorHandler extends AbstractEvaluationHandler {
-
- private Expression enabledWhen;
-
- public CloseEditorHandler() {
- registerEnablement();
- }
+public class CloseEditorHandler extends AbstractHandler {
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
- IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);
- IEditorPart part = HandlerUtil.getActiveEditorChecked(event);
- window.getActivePage().closeEditor(part, true);
- return null;
- }
-
- @Override
- protected Expression getEnabledWhenExpression() {
- if (enabledWhen == null) {
- enabledWhen = new Expression() {
- @Override
- public EvaluationResult evaluate(IEvaluationContext context) {
- IEditorPart part = InternalHandlerUtil.getActiveEditor(context);
- if (part != null) {
- return EvaluationResult.TRUE;
+ IWorkbenchPart activePart = HandlerUtil.getActivePart(event);
+ if (activePart instanceof IEditorPart) {
+ IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);
+ window.getActivePage().closeEditor((IEditorPart) activePart, true);
+ } else {
+ // we may have an E4PartWrapper for a part which has been contributed eg. via a
+ // PartDescriptor in a model fragment, and which has been tagged as
+ // representing an Editor
+ if (activePart instanceof E4PartWrapper) {
+ // derive the IEclipseContext & EPartService
+ BundleContext context = FrameworkUtil.getBundle(IWorkbench.class).getBundleContext();
+ ServiceReference reference = context.getServiceReference(IWorkbench.class);
+ IEclipseContext eclipseContext = context.getService(reference).getApplication().getContext();
+ EPartService partService = eclipseContext.get(EPartService.class);
+ // access the wrapped part => save & close it
+ MPart wrappedPart = ((E4PartWrapper) activePart).wrappedPart;
+ if (wrappedPart != null && partService != null) {
+ // ensure the active part does indeed represent an editor
+ // (and not eg. a view) - checking here is just for extra
+ // redundancy
+ if (representsEditor(wrappedPart)) {
+ if (partService.savePart(wrappedPart, true)) {
+ partService.hidePart(wrappedPart);
+ }
}
- return EvaluationResult.FALSE;
}
-
- @Override
- public void collectExpressionInfo(ExpressionInfo info) {
- info.addVariableNameAccess(ISources.ACTIVE_EDITOR_NAME);
- }
- };
+ }
}
- return enabledWhen;
+
+ return null;
+ }
+
+ /**
+ * Checks whether the specified part represents an editor instance.
+ *
+ * @param part the part to query
+ * @return true if the specified part represents an editor, false otherwise
+ */
+ private boolean representsEditor(MPart part) {
+ List partTags = part.getTags();
+ return partTags == null || partTags.isEmpty() ? false
+ : partTags.stream().anyMatch(tag -> Workbench.EDITOR_TAG.equals(tag));
}
-}
+}
\ No newline at end of file
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java
new file mode 100644
index 00000000000..78acda39cae
--- /dev/null
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2007, 2015 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ ******************************************************************************/
+
+package org.eclipse.ui.internal;
+
+import java.util.List;
+import org.eclipse.core.expressions.PropertyTester;
+
+/**
+ *
+ * Tests whether the object under test represents an MPart instance which is
+ * tagged as being one which represents an Editor (rather than a View).
+ *
+ *
+ *
+ * This test is performed via a query of the tags associated with the MPart, and
+ * checking whether this collection contains the
+ * {@link org.eclipse.ui.internal.Workbench#EDITOR_TAG} identifier.
+ *
+ *
+ */
+public class PartTaggedAsEditorPropertyTester extends PropertyTester {
+
+ @Override
+ public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
+ if (receiver instanceof E4PartWrapper) {
+ E4PartWrapper partWrapper = (E4PartWrapper) receiver;
+ if (partWrapper.wrappedPart != null) {
+ List partTags = partWrapper.wrappedPart.getTags();
+ return partTags == null || partTags.isEmpty() ? false
+ : partTags.stream().anyMatch(tag -> Workbench.EDITOR_TAG.equals(tag));
+ }
+ }
+ return false;
+ }
+}
\ No newline at end of file
diff --git a/bundles/org.eclipse.ui/plugin.xml b/bundles/org.eclipse.ui/plugin.xml
index f4523fefbd8..d7c0c6f8e16 100644
--- a/bundles/org.eclipse.ui/plugin.xml
+++ b/bundles/org.eclipse.ui/plugin.xml
@@ -2149,6 +2149,13 @@
properties="isPerspectiveOpen"
type="org.eclipse.ui.IWorkbenchWindow">
+
+
@@ -2207,11 +2214,11 @@
class="org.eclipse.ui.internal.CloseEditorHandler"
commandId="org.eclipse.ui.file.close">
-
-
-
+
+
+
+
+
From 5e20de94ba2def0aac083d5f89bded7bd732bdcb Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Tue, 1 Oct 2024 23:08:01 +0200
Subject: [PATCH 009/232] Remove unnecessary specific entries in
build.properties
---
tests/org.eclipse.e4.ui.bindings.tests/build.properties | 1 -
tests/org.eclipse.e4.ui.tests.css.core/build.properties | 1 -
tests/org.eclipse.e4.ui.tests.css.swt/build.properties | 1 -
tests/org.eclipse.jface.tests/build.properties | 1 -
4 files changed, 4 deletions(-)
diff --git a/tests/org.eclipse.e4.ui.bindings.tests/build.properties b/tests/org.eclipse.e4.ui.bindings.tests/build.properties
index a1c320b5699..d5c9867dc83 100644
--- a/tests/org.eclipse.e4.ui.bindings.tests/build.properties
+++ b/tests/org.eclipse.e4.ui.bindings.tests/build.properties
@@ -18,6 +18,5 @@ bin.includes = META-INF/,\
.,\
test.xml,\
about.html,\
- OSGI-INF/l10n/bundle.properties,\
OSGI-INF/
src.includes = about.html
diff --git a/tests/org.eclipse.e4.ui.tests.css.core/build.properties b/tests/org.eclipse.e4.ui.tests.css.core/build.properties
index bcbe3860e57..94e47dbb4f4 100644
--- a/tests/org.eclipse.e4.ui.tests.css.core/build.properties
+++ b/tests/org.eclipse.e4.ui.tests.css.core/build.properties
@@ -18,7 +18,6 @@ bin.includes = META-INF/,\
.,\
test.xml,\
about.html,\
- OSGI-INF/l10n/bundle.properties,\
OSGI-INF/
src.includes = about.html
diff --git a/tests/org.eclipse.e4.ui.tests.css.swt/build.properties b/tests/org.eclipse.e4.ui.tests.css.swt/build.properties
index bcbe3860e57..94e47dbb4f4 100644
--- a/tests/org.eclipse.e4.ui.tests.css.swt/build.properties
+++ b/tests/org.eclipse.e4.ui.tests.css.swt/build.properties
@@ -18,7 +18,6 @@ bin.includes = META-INF/,\
.,\
test.xml,\
about.html,\
- OSGI-INF/l10n/bundle.properties,\
OSGI-INF/
src.includes = about.html
diff --git a/tests/org.eclipse.jface.tests/build.properties b/tests/org.eclipse.jface.tests/build.properties
index 96fe2729107..f667fb9998e 100644
--- a/tests/org.eclipse.jface.tests/build.properties
+++ b/tests/org.eclipse.jface.tests/build.properties
@@ -5,7 +5,6 @@ bin.includes = META-INF/,\
test.xml,\
icons/,\
about.html,\
- OSGI-INF/l10n/bundle.properties,\
OSGI-INF/
# Maven properties, see https://github.com/eclipse/tycho/wiki/Tycho-Pomless
pom.model.property.testClass = org.eclipse.jface.tests.AllTests
From 2cab7ac6993b02ccd5ec3ef0e48cc23aa774772a Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Tue, 1 Oct 2024 21:13:38 +0000
Subject: [PATCH 010/232] Version bump(s) for 4.34 stream
---
tests/org.eclipse.e4.ui.bindings.tests/META-INF/MANIFEST.MF | 2 +-
tests/org.eclipse.e4.ui.tests.css.core/META-INF/MANIFEST.MF | 2 +-
tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/org.eclipse.e4.ui.bindings.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.e4.ui.bindings.tests/META-INF/MANIFEST.MF
index c5cc87cc36a..e2ebcebc1f6 100644
--- a/tests/org.eclipse.e4.ui.bindings.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.e4.ui.bindings.tests/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.e4.ui.bindings.tests
-Bundle-Version: 0.14.200.qualifier
+Bundle-Version: 0.14.300.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-17
Import-Package: org.eclipse.e4.core.commands,
org.eclipse.e4.ui.services,
diff --git a/tests/org.eclipse.e4.ui.tests.css.core/META-INF/MANIFEST.MF b/tests/org.eclipse.e4.ui.tests.css.core/META-INF/MANIFEST.MF
index dd9cac31a5d..ed3fab0bc63 100644
--- a/tests/org.eclipse.e4.ui.tests.css.core/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.e4.ui.tests.css.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.e4.ui.tests.css.core
-Bundle-Version: 1.302.500.qualifier
+Bundle-Version: 1.302.600.qualifier
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.swt,
org.eclipse.e4.ui.css.core,
diff --git a/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF b/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF
index 59d1e681092..4ec7e3a71c5 100644
--- a/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.e4.ui.tests.css.swt/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.e4.ui.tests.css.swt; singleton:=true
-Bundle-Version: 0.12.600.qualifier
+Bundle-Version: 0.12.700.qualifier
Require-Bundle: org.eclipse.e4.ui.css.core,
org.eclipse.e4.ui.css.swt,
org.eclipse.e4.ui.css.swt.theme;bundle-version="0.9.1",
From 901a83e4792fc4fd2dafa4bc344187947e8dba3e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 2 Oct 2024 11:45:17 +0200
Subject: [PATCH 011/232] IWorkbenchPageTest: delete project after shutdown
To avoid error messages about missing file after testOpenEditors3()
---
.../org/eclipse/ui/tests/api/IWorkbenchPageTest.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchPageTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchPageTest.java
index e2f7224ec80..a9cfd33280e 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchPageTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchPageTest.java
@@ -169,11 +169,11 @@ protected void doSetUp() throws Exception {
@Override
protected void doTearDown() throws Exception {
Platform.removeLogListener(openAndHideListener);
+ super.doTearDown();
if (proj != null) {
FileUtil.deleteProject(proj);
proj = null;
}
- super.doTearDown();
}
/**
From 1b2426fb86ef9b34d28327cbc5f9d19e476c1bd4 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Wed, 2 Oct 2024 13:14:24 +0200
Subject: [PATCH 012/232] Find/replace logic: proper replace for
case-insensitive matches
When using find/replace (via overlay or dialog) in incremental mode, if
the currently found element is only a case-insensitive match with the
current search string, a replace operation will perform an unnecessary
additional search and thus replace the next matching element. The reason
is a comparison for whether the currently found string exactly matches
the search string, not ignoring the casing.
This change adapts the behavior to properly consider case-sensitivity
when performing replace operations. It also adds according regression
tests.
---
.../findandreplace/FindReplaceLogic.java | 5 +-
.../findandreplace/FindReplaceLogicTest.java | 54 +++++++++++++++++--
2 files changed, 54 insertions(+), 5 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogic.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogic.java
index 812787f7a86..a6a69c6c3b4 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogic.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogic.java
@@ -568,7 +568,10 @@ private boolean isFindStringSelected() {
Pattern pattern = Pattern.compile(findString, patternFlags);
return pattern.matcher(selectedString).find();
} else {
- return getCurrentSelection().equals(findString);
+ if (isAvailableAndActive(SearchOptions.CASE_SENSITIVE)) {
+ return getCurrentSelection().equals(findString);
+ }
+ return getCurrentSelection().equalsIgnoreCase(findString);
}
}
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogicTest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogicTest.java
index fd8c772c839..df6d786d9a8 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogicTest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceLogicTest.java
@@ -348,25 +348,71 @@ public void testPerformSelectAndReplaceBackward() {
}
@Test
- public void testPerformReplaceAndFind() {
+ public void testPerformReplaceAndFind_caseInsensitive() {
TextViewer textViewer= setupTextViewer("HelloWorld!");
IFindReplaceLogic findReplaceLogic= setupFindReplaceLogicObject(textViewer);
findReplaceLogic.activate(SearchOptions.FORWARD);
+ setFindAndReplaceString(findReplaceLogic, "", " ");
+
+ boolean status= findReplaceLogic.performReplaceAndFind();
+ assertTrue("replace should have been performed", status);
+ assertThat(textViewer.getDocument().get(), equalTo("Hello World!"));
+ assertThat(findReplaceLogic.getTarget().getSelectionText(), equalTo(""));
+ expectStatusEmpty(findReplaceLogic);
+
+ setFindAndReplaceString(findReplaceLogic, "", " ");
+ status= findReplaceLogic.performReplaceAndFind();
+ assertTrue("replace should have been performed", status);
+ assertThat(textViewer.getDocument().get(), equalTo("Hello World !"));
+ expectStatusIsCode(findReplaceLogic, FindStatus.StatusCode.NO_MATCH);
+
+ status= findReplaceLogic.performReplaceAndFind();
+ assertFalse("replace should not have been performed", status);
+ assertEquals("Text shouldn't have been changed", "Hello World !", textViewer.getDocument().get());
+ expectStatusIsCode(findReplaceLogic, FindStatus.StatusCode.NO_MATCH);
+ }
+
+ @Test
+ public void testPerformReplaceAndFind_caseSensitive() {
+ TextViewer textViewer= setupTextViewer("HelloWorld!");
+ IFindReplaceLogic findReplaceLogic= setupFindReplaceLogicObject(textViewer);
+ findReplaceLogic.activate(SearchOptions.FORWARD);
+ findReplaceLogic.activate(SearchOptions.CASE_SENSITIVE);
setFindAndReplaceString(findReplaceLogic, "", " ");
boolean status= findReplaceLogic.performReplaceAndFind();
- assertThat(status, is(true));
+ assertTrue("replace should have been performed", status);
+ assertThat(textViewer.getDocument().get(), equalTo("HelloWorld !"));
+ assertThat(findReplaceLogic.getTarget().getSelectionText(), equalTo(" "));
+
+ status= findReplaceLogic.performReplaceAndFind();
+ assertFalse("replace should not have been performed", status);
+ assertThat(textViewer.getDocument().get(), equalTo("HelloWorld !"));
+ assertThat(findReplaceLogic.getTarget().getSelectionText(), equalTo(" "));
+ }
+
+ @Test
+ public void testPerformReplaceAndFind_caseSensitiveAndIncremental() {
+ TextViewer textViewer= setupTextViewer("HelloWorld!");
+ IFindReplaceLogic findReplaceLogic= setupFindReplaceLogicObject(textViewer);
+ findReplaceLogic.activate(SearchOptions.FORWARD);
+ findReplaceLogic.activate(SearchOptions.INCREMENTAL);
+ setFindAndReplaceString(findReplaceLogic, "", " ");
+
+ boolean status= findReplaceLogic.performReplaceAndFind();
+ assertTrue("replace should have been performed", status);
assertThat(textViewer.getDocument().get(), equalTo("Hello World!"));
assertThat(findReplaceLogic.getTarget().getSelectionText(), equalTo(""));
expectStatusEmpty(findReplaceLogic);
+ setFindAndReplaceString(findReplaceLogic, "", " ");
status= findReplaceLogic.performReplaceAndFind();
- assertThat(status, is(true));
+ assertTrue("replace should have been performed", status);
assertThat(textViewer.getDocument().get(), equalTo("Hello World !"));
expectStatusIsCode(findReplaceLogic, FindStatus.StatusCode.NO_MATCH);
status= findReplaceLogic.performReplaceAndFind();
- assertEquals("Status wasn't correctly returned", false, status);
+ assertFalse("replace should not have been performed", status);
assertEquals("Text shouldn't have been changed", "Hello World !", textViewer.getDocument().get());
expectStatusIsCode(findReplaceLogic, FindStatus.StatusCode.NO_MATCH);
}
From cc2462147fc92fe2cf6da1f07a297abb695bff2f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 2 Oct 2024 14:15:39 +0200
Subject: [PATCH 013/232] ResourceInitialSelectionTest: fix deleting resources
#294
Concurrent "Decoration Calculation" sometimes prevented Project from
deleting on Windows OS.
https://github.com/eclipse-platform/eclipse.platform.ui/issues/294
---
.../ui/tests/dialogs/ResourceInitialSelectionTest.java | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java
index 0ffe9d0be6e..9dc75c3a025 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java
@@ -31,12 +31,14 @@
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.FilteredResourcesSelectionDialog;
+import org.eclipse.ui.internal.decorators.DecoratorManager;
import org.eclipse.ui.tests.harness.util.DisplayHelper;
import org.eclipse.ui.tests.harness.util.UITestCase;
import org.junit.Test;
@@ -381,6 +383,8 @@ protected void doTearDown() throws Exception {
}
if (project != null) {
try {
+ Job.getJobManager().wakeUp(DecoratorManager.FAMILY_DECORATE);
+ Job.getJobManager().join(DecoratorManager.FAMILY_DECORATE, null);
project.delete(true, null);
} catch (Exception e) {
// try to get a stacktrace which jobs still has project open so that it can not
From ef8188ec72a6b92d79043c86f71ed97eac804f4f Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Tue, 1 Oct 2024 23:07:25 +0200
Subject: [PATCH 014/232] Simplify DirtyFileSearchParticipantServiceTracker
---
...tyFileSearchParticipantServiceTracker.java | 49 ++++++-------------
1 file changed, 15 insertions(+), 34 deletions(-)
diff --git a/bundles/org.eclipse.search.core/search/org/eclipse/search/internal/core/DirtyFileSearchParticipantServiceTracker.java b/bundles/org.eclipse.search.core/search/org/eclipse/search/internal/core/DirtyFileSearchParticipantServiceTracker.java
index 613b2d1b017..f256e5c2bed 100644
--- a/bundles/org.eclipse.search.core/search/org/eclipse/search/internal/core/DirtyFileSearchParticipantServiceTracker.java
+++ b/bundles/org.eclipse.search.core/search/org/eclipse/search/internal/core/DirtyFileSearchParticipantServiceTracker.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Red Hat Inc and others.
+ * Copyright (c) 2023, 2024 Red Hat Inc and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -16,57 +16,38 @@
import java.text.MessageFormat;
import java.util.Arrays;
import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.Comparator;
+import java.util.Optional;
import org.osgi.framework.BundleContext;
import org.osgi.framework.InvalidSyntaxException;
import org.osgi.framework.ServiceReference;
import org.osgi.util.tracker.ServiceTracker;
-import org.eclipse.core.resources.IFile;
-
-import org.eclipse.jface.text.IDocument;
-
import org.eclipse.search.internal.core.text.DirtyFileProvider;
-public class DirtyFileSearchParticipantServiceTracker
- extends ServiceTracker {
+public class DirtyFileSearchParticipantServiceTracker extends ServiceTracker {
private static final String PROPERTY_WEIGHT = "weight"; //$NON-NLS-1$
- public DirtyFileSearchParticipantServiceTracker(BundleContext context)
- throws InvalidSyntaxException {
+
+ public DirtyFileSearchParticipantServiceTracker(BundleContext context) throws InvalidSyntaxException {
super(context, context.createFilter(MessageFormat.format("(&(objectClass={0}))", //$NON-NLS-1$
DirtyFileProvider.class.getCanonicalName())), null);
}
+ private final static Comparator> BY_WEIGHT = Comparator.comparing(
+ o -> o.getProperty(PROPERTY_WEIGHT), //
+ Comparator.nullsFirst(Comparator.comparing(Integer.class::isInstance) // false[] allRefs = getServiceReferences();
if (allRefs != null && allRefs.length > 0) {
- List> l = Arrays.asList(allRefs);
- Collections.sort(l, (o1, o2) -> {
- Object o1Weight = o1.getProperty(PROPERTY_WEIGHT);
- Object o2Weight = o2.getProperty(PROPERTY_WEIGHT);
- int o1Val = o1Weight == null ? 0
- : o1Weight instanceof Integer ? ((Integer) o1Weight).intValue() : 0;
- int o2Val = o2Weight == null ? 0
- : o2Weight instanceof Integer ? ((Integer) o2Weight).intValue() : 0;
- return o2Val - o1Val;
- });
- if (l.size() > 0) {
- return getService(l.get(0));
+ Optional> reference = Arrays.stream(allRefs).max(BY_WEIGHT);
+ if (reference.isPresent()) {
+ return getService(reference.get());
}
}
- return new DirtyFileProvider() {
- @SuppressWarnings("unchecked")
- @Override
- public Map dirtyFiles() {
- return Collections.EMPTY_MAP;
- }
- };
- }
-
- public void dispose() {
- close();
+ return Collections::emptyMap;
}
}
From e37086d25ca8ad46f85dae63ba5ef6268ba42a26 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Thu, 3 Oct 2024 13:30:22 +0200
Subject: [PATCH 015/232] Find/replace overlay: avoid attempt to set focus
while disposing overlay
When closing a find/replace overlay, the SWT dispose operations try to
set focus to some remaining widget. The HistoryTextWrapper tries to pass
this operation to the contained Text widget without validating it for
already being disposed (which is the case when closing the overlay),
thus potentially leading to exception.
This change ensures that before trying to set focus on the Text widget
of a HistoryTextWrapper that widget is validated for not being disposed.
---
.../internal/findandreplace/overlay/HistoryTextWrapper.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/HistoryTextWrapper.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/HistoryTextWrapper.java
index 9b13ca93f51..afd66ac03c0 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/HistoryTextWrapper.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/HistoryTextWrapper.java
@@ -192,7 +192,10 @@ public void setForeground(Color color) {
@Override
public boolean forceFocus() {
- return textBar.forceFocus();
+ if (!textBar.isDisposed()) {
+ return textBar.forceFocus();
+ }
+ return false;
}
@Override
From c777660e94fd2b4331cf9775ce75bba549b9c17b Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Thu, 3 Oct 2024 09:17:03 +0200
Subject: [PATCH 016/232] Find/replace UI tests: unify focus validation
The find/replace UI tests currently validate for proper focus only in
specific situations, usually restricted to when running on GTK. On the
one hand, this makes debugging more difficult in case the focus was not
properly set in the beginning, e.g., because the workbench window was
not active when the test started. On the other hand, it makes the test
execution more prone to be indeterministic and platform-specific, as
GTK-specific code is involved.
This change provides three improvements to mitigate these issues:
- It ensures that the workbench window is active when test execution
starts
- It validates that the find/replace UI (overlay/dialog) has focus every
time it is opened during test execution
- It gets rid of GTK-specific focus validation
---
.../findandreplace/FindReplaceTestUtil.java | 24 +++++++++++++++++++
.../findandreplace/FindReplaceUITest.java | 23 +++++-------------
.../overlay/FindReplaceOverlayTest.java | 5 +++-
.../findandreplace/overlay/OverlayAccess.java | 2 +-
.../tests/FindReplaceDialogTest.java | 11 ++++-----
5 files changed, 40 insertions(+), 25 deletions(-)
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceTestUtil.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceTestUtil.java
index 77c515c1c0f..945d2ccfb3a 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceTestUtil.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceTestUtil.java
@@ -13,10 +13,16 @@
*******************************************************************************/
package org.eclipse.ui.internal.findandreplace;
+import static org.junit.Assert.fail;
+
+import java.util.function.Supplier;
+
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.workbench.texteditor.tests.ScreenshotTest;
+
public final class FindReplaceTestUtil {
private FindReplaceTestUtil() {
@@ -36,4 +42,22 @@ public static void runEventQueue() {
}
}
+ public static void waitForFocus(Supplier hasFocusValidator, String testName) {
+ int focusAttempts= 0;
+ while (!hasFocusValidator.get() && focusAttempts < 10) {
+ focusAttempts++;
+ PlatformUI.getWorkbench().getDisplay().readAndDispatch();
+ if (!hasFocusValidator.get()) {
+ try {
+ Thread.sleep(50);
+ } catch (InterruptedException e) {
+ }
+ }
+ }
+ if (!hasFocusValidator.get()) {
+ String screenshotPath= ScreenshotTest.takeScreenshot(FindReplaceUITest.class, testName, System.out);
+ fail("The find/replace UI did not receive focus. Screenshot: " + screenshotPath);
+ }
+ }
+
}
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceUITest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceUITest.java
index 6b3a0a4127a..f943211d545 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceUITest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/FindReplaceUITest.java
@@ -13,23 +13,20 @@
*******************************************************************************/
package org.eclipse.ui.internal.findandreplace;
-import static org.eclipse.ui.internal.findandreplace.FindReplaceTestUtil.runEventQueue;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
import java.util.ResourceBundle;
import org.junit.After;
+import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.TestName;
import org.eclipse.swt.SWT;
-import org.eclipse.jface.util.Util;
-
import org.eclipse.jface.text.Document;
import org.eclipse.jface.text.IFindReplaceTarget;
import org.eclipse.jface.text.TextSelection;
@@ -37,8 +34,6 @@
import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.workbench.texteditor.tests.ScreenshotTest;
-
import org.eclipse.ui.texteditor.FindReplaceAction;
public abstract class FindReplaceUITest {
@@ -51,6 +46,11 @@ public abstract class FindReplaceUITest
private AccessType dialog;
+ @Before
+ public final void ensureWorkbenchWindowIsActive() {
+ PlatformUI.getWorkbench().getWorkbenchWindows()[0].getShell().forceActive();
+ }
+
protected FindReplaceAction getFindReplaceAction() {
return findReplaceAction;
}
@@ -78,16 +78,6 @@ protected void reopenFindReplaceUIForTextViewer() {
dialog= openUIFromTextViewer(fTextViewer);
}
- protected final void ensureHasFocusOnGTK() {
- if (Util.isGtk()) {
- runEventQueue();
- if (!dialog.hasFocus()) {
- String screenshotPath= ScreenshotTest.takeScreenshot(FindReplaceUITest.class, testName.getMethodName(), System.out);
- fail("this test does not work on GTK unless the runtime workbench has focus. Screenshot: " + screenshotPath);
- }
- }
- }
-
protected abstract AccessType openUIFromTextViewer(TextViewer viewer);
@After
@@ -159,7 +149,6 @@ public void testShiftEnterReversesSearchDirection() {
dialog.select(SearchOptions.INCREMENTAL);
dialog.setFindText("line");
- ensureHasFocusOnGTK();
IFindReplaceTarget target= getFindReplaceTarget();
assertEquals(0, (target.getSelection()).x);
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java
index f9dda34774d..c19210ac315 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlayTest.java
@@ -13,6 +13,7 @@
*******************************************************************************/
package org.eclipse.ui.internal.findandreplace.overlay;
+import static org.eclipse.ui.internal.findandreplace.FindReplaceTestUtil.waitForFocus;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertEquals;
@@ -46,7 +47,9 @@ public OverlayAccess openUIFromTextViewer(TextViewer viewer) {
Accessor actionAccessor= new Accessor(getFindReplaceAction(), FindReplaceAction.class);
actionAccessor.invoke("showOverlayInEditor", null);
FindReplaceOverlay overlay= (FindReplaceOverlay) actionAccessor.get("overlay");
- return new OverlayAccess(getFindReplaceTarget(), overlay);
+ OverlayAccess uiAccess= new OverlayAccess(getFindReplaceTarget(), overlay);
+ waitForFocus(uiAccess::hasFocus, testName.getMethodName());
+ return uiAccess;
}
@Test
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
index 51450754661..342087b7cb3 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
@@ -102,7 +102,7 @@ private void restoreInitialConfiguration() {
public void closeAndRestore() {
restoreInitialConfiguration();
assertInitialConfiguration();
- overlay.close();
+ close();
}
@Override
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java
index 2fa0fb63b03..5e846f760de 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/FindReplaceDialogTest.java
@@ -14,6 +14,7 @@
package org.eclipse.ui.workbench.texteditor.tests;
import static org.eclipse.ui.internal.findandreplace.FindReplaceTestUtil.runEventQueue;
+import static org.eclipse.ui.internal.findandreplace.FindReplaceTestUtil.waitForFocus;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertEquals;
@@ -52,7 +53,9 @@ public DialogAccess openUIFromTextViewer(TextViewer viewer) {
Accessor fFindReplaceDialogStubAccessor= new Accessor(fFindReplaceDialogStub, "org.eclipse.ui.texteditor.FindReplaceAction$FindReplaceDialogStub", getClass().getClassLoader());
Dialog dialog= (Dialog) fFindReplaceDialogStubAccessor.invoke("getDialog", null);
- return new DialogAccess(getFindReplaceTarget(), dialog);
+ DialogAccess uiAccess= new DialogAccess(getFindReplaceTarget(), dialog);
+ waitForFocus(uiAccess::hasFocus, testName.getMethodName());
+ return uiAccess;
}
@Test
@@ -65,8 +68,6 @@ public void testFocusNotChangedWhenEnterPressed() {
dialog.getFindCombo().setFocus();
dialog.setFindText("line");
dialog.simulateKeyboardInteractionInFindInputField(SWT.CR, false);
- ensureHasFocusOnGTK();
-
assertTrue(dialog.getFindCombo().isFocusControl());
Button wrapCheckBox= dialog.getButtonForSearchOption(SearchOptions.WRAP);
@@ -86,9 +87,8 @@ public void testFocusNotChangedWhenButtonMnemonicPressed() {
initializeTextViewerWithFindReplaceUI("");
DialogAccess dialog= getDialog();
-
dialog.setFindText("line");
- ensureHasFocusOnGTK();
+ runEventQueue();
Button wrapCheckBox= dialog.getButtonForSearchOption(SearchOptions.WRAP);
wrapCheckBox.setFocus();
@@ -122,7 +122,6 @@ public void testShiftEnterReversesSearchDirectionDialogSpecific() {
DialogAccess dialog= getDialog();
dialog.setFindText("line");
- ensureHasFocusOnGTK();
IFindReplaceTarget target= getFindReplaceTarget();
dialog.simulateKeyboardInteractionInFindInputField(SWT.CR, false);
From bcd1e38156f53a6022f015127d0ba3bdfd580525 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Sat, 7 Sep 2024 10:38:29 +0200
Subject: [PATCH 017/232] Correct contract of Window#getShell()
Currently, Window#getShell() only states to return null if the shell has
not been created yet. It will, however, also return null if the Window
has been closed. The contract of Window#close() only states that the
shell will be disposed, but not that #getShell() will return null
afterwards as well. This change improves the explicit contract with this
information. It has been part of the implicit contract anyway, since it
is the behavior ever since the class and method exist.
---
.../src/org/eclipse/jface/window/Window.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.jface/src/org/eclipse/jface/window/Window.java b/bundles/org.eclipse.jface/src/org/eclipse/jface/window/Window.java
index 2c4706007a7..5b0aecf214a 100644
--- a/bundles/org.eclipse.jface/src/org/eclipse/jface/window/Window.java
+++ b/bundles/org.eclipse.jface/src/org/eclipse/jface/window/Window.java
@@ -655,8 +655,8 @@ public int getReturnCode() {
/**
* Returns this window's shell.
*
- * @return this window's shell, or null if this window's
- * shell has not been created yet
+ * @return this window's shell, or null if this window's shell has
+ * not been created yet or if this window has been closed
*/
@Override
public Shell getShell() {
From 73b531480a210eb24f454497d931d07ca87c7ffa Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Sat, 7 Sep 2024 11:19:34 +0200
Subject: [PATCH 018/232] Bump version of org.eclipse.jface for 4.34 stream
---
bundles/org.eclipse.jface/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.jface/META-INF/MANIFEST.MF b/bundles/org.eclipse.jface/META-INF/MANIFEST.MF
index 8191e53d6e7..de20b5090a8 100644
--- a/bundles/org.eclipse.jface/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.jface/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.jface;singleton:=true
-Bundle-Version: 3.35.0.qualifier
+Bundle-Version: 3.35.100.qualifier
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Export-Package: org.eclipse.jface,
From ebbc32d9c0408a0f5aa7bc6ab0372a807d9d39cd Mon Sep 17 00:00:00 2001
From: Ed Merks
Date: Fri, 4 Oct 2024 11:28:54 +0200
Subject: [PATCH 019/232] ProjectionAnnotationModel.expandAll should tolerate
the empty selection
- ITextSelection.emptySelection has offset and length -1 so those values
need to be tolerated downstream, included in the recent-optimized
ProjectionAnnotationModel.expandAll method.
https://github.com/eclipse-platform/eclipse.platform.ui/issues/2257
---
.../text/source/projection/ProjectionAnnotationModel.java | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java b/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
index 892d917d301..e82e6011089 100644
--- a/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
+++ b/bundles/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
@@ -147,6 +147,10 @@ public boolean collapseAll(int offset, int length) {
*/
protected boolean expandAll(int offset, int length, boolean fireModelChanged) {
+ if (offset < 0 || length < 0) {
+ return false;
+ }
+
boolean expanding= false;
Iterator iterator= getAnnotationIterator(offset, length, true, true);
From 7b0f77639c0177bcc380d315b0f79cc00e150053 Mon Sep 17 00:00:00 2001
From: Matthias Becker
Date: Fri, 20 Sep 2024 14:02:25 +0200
Subject: [PATCH 020/232] Don't run the automatic registration during test
execution
If the IDE is running because we are executing automated tests it
doesn't make sense to run this registration job.
Fixes : https://github.com/eclipse-platform/eclipse.platform.ui/issues/2245
---
.../ide/application/IDEWorkbenchAdvisor.java | 2 +-
.../ide/application/JUnitTestUtil.java | 59 +++++++++++++++++++
2 files changed, 60 insertions(+), 1 deletion(-)
create mode 100644 bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/JUnitTestUtil.java
diff --git a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEWorkbenchAdvisor.java b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEWorkbenchAdvisor.java
index 9052cfa1563..ceda5e16222 100644
--- a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEWorkbenchAdvisor.java
+++ b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEWorkbenchAdvisor.java
@@ -226,7 +226,7 @@ public void initialize(IWorkbenchConfigurer configurer) {
jfaceComparatorIsSet = true;
}
- if (!Platform.inDevelopmentMode()) {
+ if (!Platform.inDevelopmentMode() && !JUnitTestUtil.isJunitTestRunning()) {
new AutoRegisterSchemeHandlersJob().schedule();
}
}
diff --git a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/JUnitTestUtil.java b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/JUnitTestUtil.java
new file mode 100644
index 00000000000..df055af922b
--- /dev/null
+++ b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/JUnitTestUtil.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2024 SAP SE.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Matthias Becker / Sebastian Ratz - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.ui.internal.ide.application;
+
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.ServiceCaller;
+import org.eclipse.osgi.service.environment.EnvironmentInfo;
+
+public class JUnitTestUtil {
+ private static Boolean cachedIsJunitTestRunning = null;
+
+ public static boolean isJunitTestRunning() {
+ if (cachedIsJunitTestRunning == null) {
+ try {
+ if (Platform.isRunning()) {
+ AtomicBoolean result = new AtomicBoolean();
+ cachedIsJunitTestRunning = ServiceCaller.callOnce(JUnitTestUtil.class, EnvironmentInfo.class, envInfo -> {
+ String application = envInfo.getProperty("eclipse.application"); //$NON-NLS-1$
+ result.set(application != null && Set.of( //
+ // see org.eclipse.pde.internal.launching.IPDEConstants
+ "org.eclipse.pde.junit.runtime.nonuithreadtestapplication", // //$NON-NLS-1$
+ "org.eclipse.pde.junit.runtime.uitestapplication", // //$NON-NLS-1$
+ "org.eclipse.pde.junit.runtime.coretestapplication", // //$NON-NLS-1$
+ // bundle "org.eclipse.test" (Platform tests)
+ "org.eclipse.test.uitestapplication", //$NON-NLS-1$
+ "org.eclipse.test.coretestapplication", // //$NON-NLS-1$
+ // see org.eclipse.tycho.surefire.AbstractTestMojo
+ "org.eclipse.tycho.surefire.osgibooter.uitest", //$NON-NLS-1$
+ "org.eclipse.tycho.surefire.osgibooter.headlesstest") // //$NON-NLS-1$
+ .contains(application));
+ });
+ cachedIsJunitTestRunning = result.get();
+ } else {
+ cachedIsJunitTestRunning = true; // probably
+ }
+ } catch (Throwable t) {
+ // log
+ cachedIsJunitTestRunning = false;
+ }
+ }
+
+ return cachedIsJunitTestRunning;
+ }
+
+}
\ No newline at end of file
From 2a523839813b20be41480d42e43e4ba42bd87bae Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Mon, 7 Oct 2024 00:29:13 +0200
Subject: [PATCH 021/232] [Oomph-Setup] Add eclipse.platform.ui configuration
setup
Additionally add a styled and drag&drop-able Oomph Configuration button
and clean-up the build instructions.
Part of https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/issues/2430
---
README.md | 10 ++-
releng/org.eclipse.ui.releng/.project | 2 +-
.../platformUIConfiguration.setup | 86 +++++++++++++++++++
releng/org.eclipse.ui.releng/platformUi.setup | 5 ++
4 files changed, 99 insertions(+), 4 deletions(-)
create mode 100644 releng/org.eclipse.ui.releng/platformUIConfiguration.setup
diff --git a/README.md b/README.md
index 05e96f95a81..6a3a3792008 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,11 @@ For more information, refer to the [Eclipse Platform project page](https://proje
Contributions are most welcome. There are many ways to contribute, from entering high quality bug reports, to contributing code or documentation changes.
-For a complete guide, see the https://github.com/eclipse-platform/.github/blob/main/CONTRIBUTING.md.
+For a complete guide, see the [CONTRIBUTING](https://github.com/eclipse-platform/.github/blob/main/CONTRIBUTING.md) page.
+
+[](
+https://www.eclipse.org/setups/installer/?url=https://raw.githubusercontent.com/eclipse-platform/eclipse.platform.ui/master/releng/org.eclipse.ui.releng/platformUIConfiguration.setup&show=true
+"Click to open Eclipse-Installer Auto Launch or drag into your running installer")
## Test Dependencies
@@ -27,10 +31,10 @@ Please install them by installing "Eclipse Test Framework" from the [current rel
## How to Build on the Command Line
-You need Maven 3.8.x installed. After this you can run the build via the following command:
+You need Maven 3.9.x installed. After this you can run the build via the following command:
```
-mvn clean verify -Pbuild-individual-bundles
+mvn clean verify
```
diff --git a/releng/org.eclipse.ui.releng/.project b/releng/org.eclipse.ui.releng/.project
index f866cdcb5e5..f9964ce782d 100644
--- a/releng/org.eclipse.ui.releng/.project
+++ b/releng/org.eclipse.ui.releng/.project
@@ -1,6 +1,6 @@
- org.eclipse.ui.releng
+ org.eclipse.platform.ui.setup
diff --git a/releng/org.eclipse.ui.releng/platformUIConfiguration.setup b/releng/org.eclipse.ui.releng/platformUIConfiguration.setup
new file mode 100644
index 00000000000..b21105c330c
--- /dev/null
+++ b/releng/org.eclipse.ui.releng/platformUIConfiguration.setup
@@ -0,0 +1,86 @@
+
+
+
+
+ https://www.eclipse.org/downloads/images/committers.png
+
+
+ Eclipse Platform UI
+
+
+
+
+
+ The Eclipse Platform UI installation provides the latest tools needed to work with the project's source code.
+
+
+
+
+
+
+ record
+
+
+
+
+
+
+
+
+
+
+
+ The Eclipse Platform UI workspace provides all the source code of the project.
+
+
+ <p>
+ The <code>Eclipse Platform UI</code> configuration provisions a dedicated development environment for the complete set of projects that comprise the Eclipse Platform UI,
+ i.e. the projects that are contained in the <a href="https://github.com/eclipse-platform/eclipse.platform.ui">eclipse.platform.ui</a> repository.
+ </p>
+ <p>
+ The installation is based on the latest successful integration build of the <code>Eclipse Platform SDK</code>,
+ the PDE target platform, like the installation, is also based on the latest integration build,
+ and the API baseline is based on the most recent release.
+ <p>
+ </p>
+ Please <a href="https://wiki.eclipse.org/Eclipse_Platform_SDK_Provisioning">read the tutorial instructions</a> for more details.
+ </p>
+
+
diff --git a/releng/org.eclipse.ui.releng/platformUi.setup b/releng/org.eclipse.ui.releng/platformUi.setup
index ec3a3b5ff6c..2debd24fcdd 100644
--- a/releng/org.eclipse.ui.releng/platformUi.setup
+++ b/releng/org.eclipse.ui.releng/platformUi.setup
@@ -13,6 +13,11 @@
xsi:schemaLocation="http://www.eclipse.org/oomph/setup/git/1.0 https://raw.githubusercontent.com/eclipse-oomph/oomph/master/setups/models/Git.ecore http://www.eclipse.org/oomph/predicates/1.0 https://raw.githubusercontent.com/eclipse-oomph/oomph/master/setups/models/Predicates.ecore http://www.eclipse.org/oomph/setup/targlets/1.0 https://raw.githubusercontent.com/eclipse-oomph/oomph/master/setups/models/SetupTarglets.ecore http://www.eclipse.org/oomph/setup/workingsets/1.0 https://raw.githubusercontent.com/eclipse-oomph/oomph/master/setups/models/SetupWorkingSets.ecore http://www.eclipse.org/oomph/workingsets/1.0 https://raw.githubusercontent.com/eclipse-oomph/oomph/master/setups/models/WorkingSets.ecore"
name="ui"
label="UI">
+
+
+
Date: Mon, 7 Oct 2024 20:30:25 +0200
Subject: [PATCH 022/232] [Build] Remove build.properties for not built
'releng' folder
---
releng/build.properties | 1 -
1 file changed, 1 deletion(-)
delete mode 100644 releng/build.properties
diff --git a/releng/build.properties b/releng/build.properties
deleted file mode 100644
index b824bbfc4a7..00000000000
--- a/releng/build.properties
+++ /dev/null
@@ -1 +0,0 @@
-pom.model.artifactId=ui-releng
\ No newline at end of file
From cc770ec69b1d6b26c91f001ab7dbf9ac1e8d53ee Mon Sep 17 00:00:00 2001
From: Andrey Loskutov
Date: Tue, 1 Oct 2024 14:38:23 +0200
Subject: [PATCH 023/232] Removed bash editor, added javax.inject
---
releng/org.eclipse.ui.releng/platformUiTools.p2f | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/releng/org.eclipse.ui.releng/platformUiTools.p2f b/releng/org.eclipse.ui.releng/platformUiTools.p2f
index d5290928074..f1c81eb9e1c 100644
--- a/releng/org.eclipse.ui.releng/platformUiTools.p2f
+++ b/releng/org.eclipse.ui.releng/platformUiTools.p2f
@@ -22,6 +22,11 @@
+
+
+
+
+
@@ -97,11 +102,6 @@
-
-
-
-
-
From c3eba42437be71b5be2bbf793bcc9dca90337e0d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Tue, 8 Oct 2024 12:49:33 +0200
Subject: [PATCH 024/232] ContributedPartRenderer$1.setFocus: prevent NPE #2367
during PartRenderingEngineTests
https://github.com/eclipse-platform/eclipse.platform.ui/issues/2367
---
.../ui/workbench/renderers/swt/ContributedPartRenderer.java | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/ContributedPartRenderer.java b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/ContributedPartRenderer.java
index b751024b6ac..dcbc5ef566f 100644
--- a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/ContributedPartRenderer.java
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/ContributedPartRenderer.java
@@ -103,8 +103,10 @@ public boolean setFocus() {
Object object = part.getObject();
if (object != null && isEnabled()) {
IPresentationEngine pe = part.getContext().get(IPresentationEngine.class);
- pe.focusGui(part);
- return true;
+ if (pe != null) {
+ pe.focusGui(part);
+ return true;
+ }
}
return super.setFocus();
} finally {
From 7d29a593fa1c5eb9cc1568dcf73fb59798bc0ddc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Tue, 8 Oct 2024 12:59:42 +0200
Subject: [PATCH 025/232] [tests] log a TestException instead of
RuntimeException
nightly logfile is flooded with intentional RuntimeException that are
hard to distinguish from unintentional exceptions.
---
.../e4/ui/tests/application/ClientEditor.java | 3 ++-
.../tests/application/EPartServiceTest.java | 11 ++++----
.../tests/model/test/util/TestException.java | 25 +++++++++++++++++++
.../e4/ui/tests/workbench/SampleView.java | 5 ++--
4 files changed, 36 insertions(+), 8 deletions(-)
create mode 100644 tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/model/test/util/TestException.java
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/ClientEditor.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/ClientEditor.java
index d170db46c26..79f4a59502e 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/ClientEditor.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/ClientEditor.java
@@ -18,6 +18,7 @@
import org.eclipse.e4.ui.di.Focus;
import org.eclipse.e4.ui.di.Persist;
import org.eclipse.e4.ui.model.application.ui.MDirtyable;
+import org.eclipse.e4.ui.tests.model.test.util.TestException;
public class ClientEditor {
@@ -43,7 +44,7 @@ void delegateFocus() {
void doSave() {
saveCalled = true;
if (throwException) {
- throw new RuntimeException();
+ throw new TestException();
}
dirtyable.setDirty(false);
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java
index bc7bc7faa16..b443c1999a1 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java
@@ -43,6 +43,7 @@
import org.eclipse.e4.ui.model.application.ui.basic.MWindow;
import org.eclipse.e4.ui.model.application.ui.basic.MWindowElement;
import org.eclipse.e4.ui.services.IServiceConstants;
+import org.eclipse.e4.ui.tests.model.test.util.TestException;
import org.eclipse.e4.ui.tests.workbench.TargetedView;
import org.eclipse.e4.ui.workbench.modeling.EModelService;
import org.eclipse.e4.ui.workbench.modeling.EPartService;
@@ -10103,27 +10104,27 @@ static class ExceptionListener implements IPartListener {
@Override
public void partActivated(MPart part) {
- throw new RuntimeException();
+ throw new TestException();
}
@Override
public void partBroughtToTop(MPart part) {
- throw new RuntimeException();
+ throw new TestException();
}
@Override
public void partDeactivated(MPart part) {
- throw new RuntimeException();
+ throw new TestException();
}
@Override
public void partHidden(MPart part) {
- throw new RuntimeException();
+ throw new TestException();
}
@Override
public void partVisible(MPart part) {
- throw new RuntimeException();
+ throw new TestException();
}
}
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/model/test/util/TestException.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/model/test/util/TestException.java
new file mode 100644
index 00000000000..2002a0cb172
--- /dev/null
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/model/test/util/TestException.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Joerg Kubitz and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Joerg Kubitz - initial API and implementation
+ ******************************************************************************/
+
+package org.eclipse.e4.ui.tests.model.test.util;
+
+public class TestException extends RuntimeException {
+
+ private static final long serialVersionUID = 1L;
+
+ public TestException() {
+ super("Intentional TestException. Ignore me in the logfile.");
+ }
+
+}
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/SampleView.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/SampleView.java
index 92a43d8dc33..53eb07efdc5 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/SampleView.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/SampleView.java
@@ -22,6 +22,7 @@
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.eclipse.e4.ui.di.PersistState;
import org.eclipse.e4.ui.services.IServiceConstants;
+import org.eclipse.e4.ui.tests.model.test.util.TestException;
import org.eclipse.jface.layout.GridLayoutFactory;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.LabelProvider;
@@ -57,7 +58,7 @@ public SampleView(Composite parent, final IEclipseContext outputContext,
parent.addDisposeListener(e -> {
if (errorOnWidgetDisposal) {
- throw new RuntimeException();
+ throw new TestException();
}
});
@@ -154,7 +155,7 @@ void preDestroy() {
nullParentContext = context.getParent() == null;
if (errorOnPreDestroy) {
- throw new RuntimeException();
+ throw new TestException();
}
}
From 6f8d42607df60eb32cd8ca18c02260b18924d455 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 9 Oct 2024 14:55:07 +0200
Subject: [PATCH 026/232] WorkingSetActionProvider: fix "Widget is disposed"
as logged during LabelProviderTest
asyncExec can happen when viewer is already disposed
---
.../navigator/resources/actions/WorkingSetActionProvider.java | 3 +++
1 file changed, 3 insertions(+)
diff --git a/bundles/org.eclipse.ui.navigator.resources/src/org/eclipse/ui/internal/navigator/resources/actions/WorkingSetActionProvider.java b/bundles/org.eclipse.ui.navigator.resources/src/org/eclipse/ui/internal/navigator/resources/actions/WorkingSetActionProvider.java
index 5dcf02e7325..48fb4040805 100644
--- a/bundles/org.eclipse.ui.navigator.resources/src/org/eclipse/ui/internal/navigator/resources/actions/WorkingSetActionProvider.java
+++ b/bundles/org.eclipse.ui.navigator.resources/src/org/eclipse/ui/internal/navigator/resources/actions/WorkingSetActionProvider.java
@@ -329,6 +329,9 @@ public void restoreState(final IMemento aMemento) {
// Need to run this async to avoid being reentered when processing a selection change
viewer.getControl().getShell().getDisplay().asyncExec(() -> {
+ if (viewer.getControl().isDisposed()) {
+ return;
+ }
boolean showWorkingSets = true;
if (aMemento != null) {
Integer showWorkingSetsInt = aMemento
From b85d17ee53c2ff0a6df7586db73b5082715dcbb3 Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Wed, 9 Oct 2024 13:00:31 +0000
Subject: [PATCH 027/232] Version bump(s) for 4.34 stream
---
bundles/org.eclipse.ui.navigator.resources/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.navigator.resources/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui.navigator.resources/META-INF/MANIFEST.MF
index 4f37678762d..5e9f968e313 100644
--- a/bundles/org.eclipse.ui.navigator.resources/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui.navigator.resources/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Plugin.name
Bundle-SymbolicName: org.eclipse.ui.navigator.resources; singleton:=true
-Bundle-Version: 3.9.400.qualifier
+Bundle-Version: 3.9.500.qualifier
Bundle-Activator: org.eclipse.ui.internal.navigator.resources.plugin.WorkbenchNavigatorPlugin
Bundle-Vendor: %Plugin.providerName
Bundle-Localization: plugin
From 72ec5a41cd65447384505d67729fcefed1c51170 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 9 Oct 2024 14:51:58 +0200
Subject: [PATCH 028/232] [test] TestLabelProvider: reduce font not disposed
warnings
to a single "SWT Resource was not properly disposed"
during LabelProviderTest
(and fixed the font to be not bold)
---
.../org/eclipse/ui/tests/navigator/NavigatorTestBase.java | 2 +-
.../ui/tests/navigator/extension/TestLabelProvider.java | 7 +++----
.../tests/navigator/extension/TestLabelProviderBlank.java | 2 --
.../tests/navigator/extension/TestLabelProviderBlue.java | 2 --
.../tests/navigator/extension/TestLabelProviderCyan.java | 2 --
.../navigator/extension/TestLabelProviderPlainGreen.java | 2 --
.../navigator/extension/TestLabelProviderPlainRed.java | 2 --
.../navigator/extension/TestLabelProviderStyledGreen.java | 2 --
.../navigator/extension/TestLabelProviderStyledRed.java | 2 --
9 files changed, 4 insertions(+), 19 deletions(-)
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/NavigatorTestBase.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/NavigatorTestBase.java
index a151fe42545..009c5644759 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/NavigatorTestBase.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/NavigatorTestBase.java
@@ -402,7 +402,7 @@ protected void checkItems(TreeItem[] rootItems, TestLabelProvider tlp, boolean a
}
assertEquals(tlp.backgroundColor, rootItem.getBackground(0));
assertEquals(TestLabelProvider.toForegroundColor(tlp.backgroundColor), rootItem.getForeground(0));
- assertEquals(tlp.font, rootItem.getFont(0));
+ assertEquals(TestLabelProvider.font, rootItem.getFont(0));
assertEquals(tlp.image, rootItem.getImage(0));
if (all) {
checkItems(rootItem.getItems(), tlp, all, text);
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProvider.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProvider.java
index 3342017c47e..e5e228d6717 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProvider.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProvider.java
@@ -42,7 +42,7 @@ public abstract class TestLabelProvider extends LabelProvider implements
public Image image;
- public Font font;
+ public static final Font font = new Font(Display.getDefault(), new FontData());
private Font boldFont;
@@ -170,9 +170,8 @@ public void dispose() {
_runnable.run();
boldFont.dispose();
boldFont = null;
-
-// font.dispose();
-// font = null;
+ // font can not disposed here because the TestLabelProviders are used by its
+ // static instances
}
}
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlank.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlank.java
index 18f24e1ccb0..aff50ca2bf3 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlank.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlank.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -32,7 +31,6 @@ public class TestLabelProviderBlank extends TestStyledLabelProvider {
protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_RED);
backgroundColorName = "Red";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_OBJ_ADD);
instance = this;
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlue.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlue.java
index eeebb869329..f8df866eeb0 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlue.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderBlue.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -32,7 +31,6 @@ protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(
SWT.COLOR_BLUE);
backgroundColorName = "Blue";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_ETOOL_SAVE_EDIT);
instance = this;
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderCyan.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderCyan.java
index 88c752604d2..d14480eccb0 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderCyan.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderCyan.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -32,7 +31,6 @@ protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(
SWT.COLOR_CYAN);
backgroundColorName = "Cyan";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_DEF_VIEW);
instance = this;
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainGreen.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainGreen.java
index 1a22d87d454..ef8fd1e3db1 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainGreen.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainGreen.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -31,7 +30,6 @@ protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(
SWT.COLOR_GREEN);
backgroundColorName = "Green";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_ELCL_COLLAPSEALL);
instance = this;
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainRed.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainRed.java
index ef791d71701..8be8e8bd7f0 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainRed.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderPlainRed.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -31,7 +30,6 @@ protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(
SWT.COLOR_RED);
backgroundColorName = "Red";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_ELCL_REMOVE);
instance = this;
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledGreen.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledGreen.java
index d48c3f3263f..fed548b28a5 100755
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledGreen.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledGreen.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -31,7 +30,6 @@ protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(
SWT.COLOR_GREEN);
backgroundColorName = "Green";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_ELCL_COLLAPSEALL);
instance = this;
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledRed.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledRed.java
index d666742ad43..2e8593cce81 100755
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledRed.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestLabelProviderStyledRed.java
@@ -15,7 +15,6 @@
package org.eclipse.ui.tests.navigator.extension;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
@@ -31,7 +30,6 @@ protected void initSubclass() {
backgroundColor = Display.getCurrent().getSystemColor(
SWT.COLOR_RED);
backgroundColorName = "Red";
- font = new Font(Display.getDefault(), boldFontData);
image = PlatformUI.getWorkbench().getSharedImages().getImage(
ISharedImages.IMG_ELCL_REMOVE);
instance = this;
From 1e895cc6a63e8ff8098ecd2976c6b5e0212c7557 Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Wed, 9 Oct 2024 12:57:57 +0000
Subject: [PATCH 029/232] Version bump(s) for 4.34 stream
---
tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF b/tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF
index fc5f685c4e6..30b05fff0f3 100644
--- a/tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.ui.tests.navigator/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %bundlename
Bundle-SymbolicName: org.eclipse.ui.tests.navigator;singleton:=true
-Bundle-Version: 3.7.500.qualifier
+Bundle-Version: 3.7.600.qualifier
Bundle-Localization: plugin
Require-Bundle: org.eclipse.core.resources,
org.eclipse.core.runtime;bundle-version="[3.29.0,4.0.0)",
From 11631040334f663cab56b2de9e516ce349a97447 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 9 Oct 2024 15:45:02 +0200
Subject: [PATCH 030/232] UITestCase.fail(String, Throwable): append the
throwable as cause
---
.../src/org/eclipse/ui/tests/harness/util/UITestCase.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java
index f2d5f5a0e12..4ebc7ed06f2 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java
@@ -115,7 +115,7 @@ public static void fail(String message, Throwable e) {
write(status, 0);
} else
e.printStackTrace();
- fail(message + ": " + e);
+ throw new AssertionError(message, e);
}
private static void indent(OutputStream output, int indent) {
From b945db18aa8d977db4c16ce119f9b725bc76b857 Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Wed, 9 Oct 2024 13:49:46 +0000
Subject: [PATCH 031/232] Version bump(s) for 4.34 stream
---
tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF b/tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF
index 08849c0c87c..ed65721730f 100644
--- a/tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.ui.tests.harness/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Harness Plug-in
Bundle-SymbolicName: org.eclipse.ui.tests.harness;singleton:=true
-Bundle-Version: 1.10.400.qualifier
+Bundle-Version: 1.10.500.qualifier
Eclipse-BundleShape: dir
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
From d5815f367b626162880500ed936005a67a1b9684 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 9 Oct 2024 16:32:27 +0200
Subject: [PATCH 032/232] [ui.tests] log a TestException instead of
RuntimeException
Nightly org.eclipse.ui.tests.UiTestSuite.txt contains intentional
RuntimeException that are hard to distinguish from unintentional
exceptions.
---
.../ui/tests/api/BadElementFactory.java | 4 +--
.../ui/tests/api/IWorkingSetManagerTest.java | 2 +-
.../eclipse/ui/tests/api/TestException.java | 25 +++++++++++++++++++
3 files changed, 28 insertions(+), 3 deletions(-)
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/TestException.java
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/BadElementFactory.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/BadElementFactory.java
index 48d342c3574..d6db6832cd3 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/BadElementFactory.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/BadElementFactory.java
@@ -72,7 +72,7 @@ public String getFactoryId() {
public void saveState(IMemento memento) {
if (shouldSaveFail) {
saveAttemptedWhileShouldFail = true;
- throw new RuntimeException();
+ throw new TestException();
}
}
@@ -83,7 +83,7 @@ public void saveState(IMemento memento) {
public IAdaptable createElement(IMemento memento) {
if (shouldFailOnCreateElement) {
elementCreationAttemptedWhileShouldFail = true;
- throw new RuntimeException();
+ throw new TestException();
}
return new BadElementInstance();
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java
index e251eaf394a..230472282f1 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java
@@ -419,7 +419,7 @@ public void testListenerSafety() throws Throwable {
final boolean[] result = new boolean[1];
// add a bogus listener that dies unexpectedly
IPropertyChangeListener badListener = event -> {
- throw new RuntimeException();
+ throw new TestException();
};
IPropertyChangeListener goodListener = event -> result[0] = true;
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/TestException.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/TestException.java
new file mode 100644
index 00000000000..f73593f7254
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/TestException.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Joerg Kubitz and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Joerg Kubitz - initial API and implementation
+ ******************************************************************************/
+
+package org.eclipse.ui.tests.api;
+
+public class TestException extends RuntimeException {
+
+ private static final long serialVersionUID = 1L;
+
+ public TestException() {
+ super("Intentional TestException. Ignore me in the logfile.");
+ }
+
+}
From a431d71a5081b9c486a23d5718c5b58e6bdcfc8b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Wed, 9 Oct 2024 16:18:42 +0200
Subject: [PATCH 033/232] PerspectiveSwitcher.ignoreEvent: fix NPE
perspSwitcherToolbar is null before createWidget() called
---
.../addons/perspectiveswitcher/PerspectiveSwitcher.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java
index 786bcadb323..077c0d1f1de 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java
@@ -334,7 +334,7 @@ public void getName(AccessibleEvent e) {
* @return true if the event is relevant, false if it can be ignored
*/
private boolean ignoreEvent(Object changedObj) {
- if (perspSwitcherToolControl == null || perspSwitcherToolbar.isDisposed()) {
+ if (perspSwitcherToolControl == null || perspSwitcherToolbar == null || perspSwitcherToolbar.isDisposed()) {
return true;
}
From 7c018efcc78804005e2779ed20e8dd8d852355ac Mon Sep 17 00:00:00 2001
From: Matthias Becker
Date: Tue, 8 Oct 2024 11:12:37 +0200
Subject: [PATCH 034/232] Fix failing StackRendererTest Test
Calling notifyListeners is not necessary any more.
Fixes: https://github.com/eclipse-platform/eclipse.platform.swt/issues/1515
---
.../e4/ui/workbench/renderers/swt/StackRendererTest.java | 4 ----
1 file changed, 4 deletions(-)
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
index 6cc804ce8eb..f4f0382841c 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRendererTest.java
@@ -49,14 +49,12 @@
import org.eclipse.e4.ui.tests.rules.WorkbenchContextRule;
import org.eclipse.e4.ui.workbench.UIEvents;
import org.eclipse.e4.ui.workbench.modeling.EModelService;
-import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Widget;
import org.junit.Before;
@@ -540,8 +538,6 @@ public void testOnboardingIsHiddenWhenEditorOpened() {
partStack.getChildren().add(part1);
partStack.setSelectedElement(part1);
- tabFolder.notifyListeners(SWT.Paint, new Event());
-
expected = new Rectangle(StackRenderer.ONBOARDING_SPACING, StackRenderer.ONBOARDING_TOP_SPACING, 0, 0);
assertEquals(expected, outerOnboardingComposite.getBounds());
}
From d50e66d0458c2359cda0bde574fb3cfa91f64e04 Mon Sep 17 00:00:00 2001
From: Enda O Brien
Date: Thu, 10 Oct 2024 11:04:55 +0100
Subject: [PATCH 035/232] Squashed commit of the following:
commit f67c61a8757768bfb724ef802ec1a69251ec1a15
Author: Enda O Brien
Date: Tue Sep 24 14:40:50 2024 +0100
579498 filter dialog types #144
Squashed commit of the following:
commit 24db6db5a6b31ad65d6f3a0f92b53e6cd709621d
Author: Enda O Brien
Date: Fri Sep 20 13:19:55 2024 +0100
579498 filter dialog types #144
Squashed commit of the following:
commit 94f352d0a8a1154c9781beb5c8de3e5199c1f1e3
Author: Enda O Brien
Date: Thu Apr 4 17:07:02 2024 +0100
Fixed a couple of warnings in test code
commit 49a195d9a2f882d65ef67a3784cc653b3f1bcbe4
Author: Enda O Brien
Date: Wed Aug 24 15:54:38 2022 +0100
put add and addAll back in previous order
commit 7dd8032edbd80b8cc0e5887f66800b497d2bd9b5
Author: Enda O Brien
Date: Wed Aug 24 15:11:23 2022 +0100
Moved copyright to be first lines in files
commit 87763b5ed2ee0b382a8d67d2d5acd0d71b76a1a1
Author: Enda O Brien
Date: Wed Aug 24 14:41:46 2022 +0100
Modified copyright message in test code to include my name
commit 1b08d4a240da3ceb00bed57fc3a8a61395529af5
Author: Enda O Brien
Date: Wed Aug 24 14:09:12 2022 +0100
updated documentation of markerSupport.exsd
commit 579fca05713788e3b11e7c071d64bbc639aae612
Author: Enda O Brien
Date: Wed Aug 24 12:04:44 2022 +0100
Added copyright notice to test code
commit 1271c95c57fafe27fca715d2cd2afa81e271a552
Author: Enda O Brien
Date: Wed Aug 24 11:49:13 2022 +0100
Fixed whitespace differences
commit 36e50cd1c5de661421665bd4cb1c2a10a7cd119b
Author: Enda O Brien
Date: Thu Jun 9 14:16:44 2022 +0100
Test code for application attribute on marker type reference
commit 01940b2a4d97603cd04e129aa8435afe62e12618
Author: Enda O Brien
Date: Thu Jun 9 10:57:55 2022 +0100
Added application attribute to type reference in marker content generator
---
.../schema/markerSupport.exsd | 20 +++
.../MarkerSupportInternalUtilities.java | 21 +++
.../internal/ContentGeneratorDescriptor.java | 23 ++-
.../ui/tests/NoApplicationAttribTestView.java | 30 ++++
.../eclipse/ui/tests/SubTypeOnlyTestView.java | 29 ++++
.../ui/tests/TypeAndSubTypeTestView.java | 29 ++++
.../eclipse/ui/tests/TypeOnlyTestView.java | 31 ++++
.../ui/tests/internal/InternalTestSuite.java | 2 +
.../ui/tests/markers/MarkerTypeTests.java | 141 ++++++++++++++++++
tests/org.eclipse.ui.tests/plugin.xml | 52 ++++++-
10 files changed, 374 insertions(+), 4 deletions(-)
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/NoApplicationAttribTestView.java
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/SubTypeOnlyTestView.java
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeAndSubTypeTestView.java
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeOnlyTestView.java
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerTypeTests.java
diff --git a/bundles/org.eclipse.ui.ide/schema/markerSupport.exsd b/bundles/org.eclipse.ui.ide/schema/markerSupport.exsd
index 02e3f15ca26..d9d9ded7f2f 100644
--- a/bundles/org.eclipse.ui.ide/schema/markerSupport.exsd
+++ b/bundles/org.eclipse.ui.ide/schema/markerSupport.exsd
@@ -192,6 +192,26 @@ ON_ANY_IN_SAME_CONTAINER: on any item with the same top level container as the s
+
+
+
+ The application attribute describes how the reference should be applied.
+ i.e. Does it refer to type only, type and subtypes or subtypes only.
+ It is optionally included.
+ If it is not specified it defaults to typeAndSubTypes.
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerSupportInternalUtilities.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerSupportInternalUtilities.java
index b86038cdd7d..adcc3a58511 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerSupportInternalUtilities.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerSupportInternalUtilities.java
@@ -11,6 +11,7 @@
* Contributors:
* IBM Corporation - initial API and implementation
* Lars Vogel - Bug 430694
+ * Enda O'Brien, Pilz Ireland - PR #144
******************************************************************************/
package org.eclipse.ui.internal.views.markers;
@@ -71,6 +72,26 @@ public class MarkerSupportInternalUtilities {
*/
public static final String ATTRIBUTE_ID = "id"; //$NON-NLS-1$
+ /**
+ * The application attribute from a configuration element.
+ */
+ public static final String APPLICATION = "application"; //$NON-NLS-1$
+
+ /**
+ * The sub type only attribute value from the application attribute.
+ */
+ public static final String SUB_TYPES_ONLY = "subTypesOnly"; //$NON-NLS-1$
+
+ /**
+ * The type only attribute value from the application attribute.
+ */
+ public static final String TYPE_ONLY = "typeOnly"; //$NON-NLS-1$
+
+ /**
+ * The type and subtype attribute value from the application attribute.
+ */
+ public static final String TYPE_AND_SUBTYPE = "typeAndSubTypes"; //$NON-NLS-1$
+
/**
* The name attribute name from a configuration element.
*/
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java
index 9b1242f4c78..49f25fcdb7a 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java
@@ -10,6 +10,7 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
+ * Enda O'Brien, Pilz Ireland - PR #144
******************************************************************************/
package org.eclipse.ui.views.markers.internal;
@@ -190,9 +191,25 @@ public Collection getMarkerTypes() {
IConfigurationElement[] markerTypeElements = configurationElement.getChildren(MarkerSupportRegistry.MARKER_TYPE_REFERENCE);
for (IConfigurationElement configElement : markerTypeElements) {
String elementName = configElement.getAttribute(MarkerSupportInternalUtilities.ATTRIBUTE_ID);
- MarkerType[] types = MarkerTypesModel.getInstance().getType(elementName).getAllSubTypes();
- markerTypes.addAll(Arrays.asList(types));
- markerTypes.add(MarkerTypesModel.getInstance().getType(elementName));
+
+ String application = configElement.getAttribute(MarkerSupportInternalUtilities.APPLICATION) == null
+ ? MarkerSupportInternalUtilities.TYPE_AND_SUBTYPE
+ : configElement.getAttribute(MarkerSupportInternalUtilities.APPLICATION);
+
+ switch (application) {
+ case MarkerSupportInternalUtilities.TYPE_ONLY:
+ markerTypes.add(MarkerTypesModel.getInstance().getType(elementName));
+ break;
+ case MarkerSupportInternalUtilities.SUB_TYPES_ONLY:
+ markerTypes.addAll(
+ Arrays.asList(MarkerTypesModel.getInstance().getType(elementName).getAllSubTypes()));
+ break;
+ case MarkerSupportInternalUtilities.TYPE_AND_SUBTYPE:
+ default:
+ markerTypes.addAll(
+ Arrays.asList(MarkerTypesModel.getInstance().getType(elementName).getAllSubTypes()));
+ markerTypes.add(MarkerTypesModel.getInstance().getType(elementName));
+ }
}
if (markerTypes.isEmpty()) {
MarkerType[] types = MarkerTypesModel.getInstance().getType(IMarker.PROBLEM).getAllSubTypes();
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/NoApplicationAttribTestView.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/NoApplicationAttribTestView.java
new file mode 100644
index 00000000000..a60b374fc75
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/NoApplicationAttribTestView.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Enda O'Brien and others.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which accompanies this distribution,
+ * and is available at https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors: Enda O'Brien, Pilz Ireland - PR #144
+ *******************************************************************************/
+package org.eclipse.ui.tests;
+
+import org.eclipse.ui.views.markers.MarkerSupportView;
+
+/**
+ * A test view that does not define the markerTypeReference application
+ * attribute in its content generator (CONTENT_GEN_ID).
+ *
+ */
+public class NoApplicationAttribTestView extends MarkerSupportView {
+ public static final String ID = "org.eclipse.ui.tests.noApplicationAttribTestView";
+
+ static final String CONTENT_GEN_ID = "org.eclipse.ui.tests.noApplicationAttribTestViewContentGenerator";
+
+ public NoApplicationAttribTestView() {
+ super(CONTENT_GEN_ID);
+ }
+
+}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/SubTypeOnlyTestView.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/SubTypeOnlyTestView.java
new file mode 100644
index 00000000000..6701562072b
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/SubTypeOnlyTestView.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Enda O'Brien and others.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which accompanies this distribution,
+ * and is available at https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors: Enda O'Brien, Pilz Ireland - PR #144
+ *******************************************************************************/
+package org.eclipse.ui.tests;
+
+import org.eclipse.ui.views.markers.MarkerSupportView;
+
+/**
+ * A test view that defines a markerTypeReference application attribute of
+ * subTypesOnly in it content generator (CONTENT_GEN_ID).
+ */
+public class SubTypeOnlyTestView extends MarkerSupportView {
+ public static final String ID = "org.eclipse.ui.tests.subTypeOnlyTestView";
+
+ static final String CONTENT_GEN_ID = "org.eclipse.ui.tests.subTypeOnlyTestViewContentGenerator";
+
+ public SubTypeOnlyTestView() {
+ super(CONTENT_GEN_ID);
+ }
+
+}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeAndSubTypeTestView.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeAndSubTypeTestView.java
new file mode 100644
index 00000000000..b7c2990e6bc
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeAndSubTypeTestView.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Enda O'Brien and others.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which accompanies this distribution,
+ * and is available at https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors: Enda O'Brien, Pilz Ireland - PR #144
+ *******************************************************************************/
+package org.eclipse.ui.tests;
+
+import org.eclipse.ui.views.markers.MarkerSupportView;
+
+/**
+ * A test view that defines a markerTypeReference application attribute of
+ * typeAndSubTypes in it content generator (CONTENT_GEN_ID).
+ */
+public class TypeAndSubTypeTestView extends MarkerSupportView {
+ public static final String ID = "org.eclipse.ui.tests.typeAndSubTypeTestView";
+
+ static final String CONTENT_GEN_ID = "org.eclipse.ui.tests.typeAndSubTypeTestViewContentGenerator";
+
+ public TypeAndSubTypeTestView() {
+ super(CONTENT_GEN_ID);
+ }
+
+}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeOnlyTestView.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeOnlyTestView.java
new file mode 100644
index 00000000000..a571845293e
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/TypeOnlyTestView.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Enda O'Brien and others.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which accompanies this distribution,
+ * and is available at https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors: Enda O'Brien, Pilz Ireland - PR #144
+ *******************************************************************************/
+package org.eclipse.ui.tests;
+
+import org.eclipse.ui.views.markers.MarkerSupportView;
+
+/**
+ * A test view that defines a markerTypeReference application attribute of
+ * typeOnly in it content generator (CONTENT_GEN_ID).
+ *
+ */
+public class TypeOnlyTestView extends MarkerSupportView {
+
+ public static final String ID = "org.eclipse.ui.tests.typeOnlyTestView";
+
+ static final String CONTENT_GEN_ID = "org.eclipse.ui.tests.typeOnlyTestViewContentGenerator";
+
+ public TypeOnlyTestView() {
+ super(CONTENT_GEN_ID);
+ }
+
+}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/internal/InternalTestSuite.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/internal/InternalTestSuite.java
index d0b5f349c67..fe2b505df10 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/internal/InternalTestSuite.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/internal/InternalTestSuite.java
@@ -25,6 +25,7 @@
import org.eclipse.ui.tests.markers.MarkerSupportRegistryTests;
import org.eclipse.ui.tests.markers.MarkerSupportViewTest;
import org.eclipse.ui.tests.markers.MarkerTesterTest;
+import org.eclipse.ui.tests.markers.MarkerTypeTests;
import org.eclipse.ui.tests.markers.MarkerViewTests;
import org.eclipse.ui.tests.markers.MarkerViewUtilTest;
import org.eclipse.ui.tests.markers.ResourceMappingMarkersTest;
@@ -68,5 +69,6 @@
LargeFileLimitsPreferenceHandlerTest.class,
WorkbookEditorsHandlerTest.class,
ScopeAreaTest.class,
+ MarkerTypeTests.class
})
public class InternalTestSuite {}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerTypeTests.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerTypeTests.java
new file mode 100644
index 00000000000..9f03f537bb1
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerTypeTests.java
@@ -0,0 +1,141 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Enda O'Brien and others.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which accompanies this distribution,
+ * and is available at https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors: Enda O'Brien, Pilz Ireland - PR #144
+ *******************************************************************************/
+package org.eclipse.ui.tests.markers;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.lang.reflect.Field;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
+
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.internal.views.markers.ExtendedMarkersView;
+import org.eclipse.ui.internal.views.markers.MarkerContentGenerator;
+import org.eclipse.ui.tests.NoApplicationAttribTestView;
+import org.eclipse.ui.tests.SubTypeOnlyTestView;
+import org.eclipse.ui.tests.TypeAndSubTypeTestView;
+import org.eclipse.ui.tests.TypeOnlyTestView;
+import org.eclipse.ui.views.markers.MarkerSupportView;
+import org.eclipse.ui.views.markers.internal.ContentGeneratorDescriptor;
+import org.eclipse.ui.views.markers.internal.MarkerType;
+import org.eclipse.ui.views.markers.internal.MarkerTypesModel;
+import org.junit.Test;
+
+public class MarkerTypeTests {
+
+ static final String PROBLEM_MARKER = "org.eclipse.core.resources.problemmarker";
+
+ @Test
+ public void canIncludeTypeOnly() throws Exception {
+ MarkerSupportView view = (MarkerSupportView) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getActivePage().showView(TypeOnlyTestView.ID);
+
+ MarkerContentGenerator generator = getMarkerContentGenerator(view);
+ Collection filterDialogTypes = getMarkerTypes(generator);
+
+ assertEquals(1, filterDialogTypes.size());
+ assertEquals(PROBLEM_MARKER, filterDialogTypes.stream().map(type -> type.getId()).findFirst().get());
+ }
+
+ @Test
+ public void canIncludeTypeAndSubTypes() throws Exception {
+ MarkerSupportView view = (MarkerSupportView) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getActivePage().showView(TypeAndSubTypeTestView.ID);
+
+ MarkerContentGenerator generator = getMarkerContentGenerator(view);
+ Collection filterDialogTypes = getMarkerTypes(generator);
+
+ Collection markerTypes = new HashSet<>();
+ markerTypes.add(MarkerTypesModel.getInstance().getType(PROBLEM_MARKER));
+ markerTypes.addAll(Arrays.asList(MarkerTypesModel.getInstance().getType(PROBLEM_MARKER).getAllSubTypes()));
+
+ assertEquals(markerTypes.size(), filterDialogTypes.size());
+ assertEquals(PROBLEM_MARKER, filterDialogTypes.stream().map(type -> type.getId())
+ .filter(s -> s.equals(PROBLEM_MARKER)).findFirst().get());
+
+ for (MarkerType type : markerTypes) {
+ assertTrue(filterDialogTypes.contains(type));
+ }
+ }
+
+ @Test
+ public void canIncludeSubtypesOnly() throws Exception {
+ MarkerSupportView view = (MarkerSupportView) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getActivePage().showView(SubTypeOnlyTestView.ID);
+
+ MarkerContentGenerator generator = getMarkerContentGenerator(view);
+ Collection filterDialogTypes = getMarkerTypes(generator);
+
+ Collection markerTypes = new HashSet<>();
+ markerTypes.addAll(Arrays.asList(MarkerTypesModel.getInstance().getType(PROBLEM_MARKER).getAllSubTypes()));
+
+ assertEquals(markerTypes.size(), filterDialogTypes.size());
+ assertTrue(PROBLEM_MARKER, filterDialogTypes.stream().map(type -> type.getId())
+ .filter(s -> s.equals(PROBLEM_MARKER)).findFirst().isEmpty());
+ for (MarkerType type : markerTypes) {
+ assertTrue(filterDialogTypes.contains(type));
+ }
+ }
+
+ @Test
+ public void typeAndSubTypesIsDefault() throws Exception {
+ MarkerSupportView view = (MarkerSupportView) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getActivePage().showView(NoApplicationAttribTestView.ID);
+
+ MarkerContentGenerator generator = getMarkerContentGenerator(view);
+ Collection filterDialogTypes = getMarkerTypes(generator);
+
+ Collection markerTypes = new HashSet<>();
+ markerTypes.add(MarkerTypesModel.getInstance().getType(PROBLEM_MARKER));
+ markerTypes.addAll(Arrays.asList(MarkerTypesModel.getInstance().getType(PROBLEM_MARKER).getAllSubTypes()));
+
+ assertEquals(markerTypes.size(), filterDialogTypes.size());
+ assertEquals(PROBLEM_MARKER, filterDialogTypes.stream().map(type -> type.getId())
+ .filter(s -> s.equals(PROBLEM_MARKER)).findFirst().get());
+
+ for (MarkerType type : markerTypes) {
+ assertTrue(filterDialogTypes.contains(type));
+ }
+ }
+
+ public static MarkerContentGenerator getMarkerContentGenerator(MarkerSupportView view) {
+ MarkerContentGenerator generator = null;
+ try {
+ Field fieldGenerator = ExtendedMarkersView.class.getDeclaredField("generator");
+ fieldGenerator.setAccessible(true);
+ generator = (MarkerContentGenerator) fieldGenerator.get(view);
+ } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
+ }
+ return generator;
+ }
+
+ @SuppressWarnings("unchecked")
+ public static Collection getMarkerTypes(MarkerContentGenerator generator) {
+ Collection selectedTypesCollection = null;
+ try {
+ Field generatorDescriptor = MarkerContentGenerator.class.getDeclaredField("generatorDescriptor");
+ generatorDescriptor.setAccessible(true);
+
+ ContentGeneratorDescriptor contentGeneratorDescriptor = (ContentGeneratorDescriptor) generatorDescriptor
+ .get(generator);
+
+ Field markerTypesField = ContentGeneratorDescriptor.class.getDeclaredField("markerTypes");
+ markerTypesField.setAccessible(true);
+
+ selectedTypesCollection = (Collection) markerTypesField.get(contentGeneratorDescriptor);
+ } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
+ }
+ return selectedTypesCollection;
+ }
+}
diff --git a/tests/org.eclipse.ui.tests/plugin.xml b/tests/org.eclipse.ui.tests/plugin.xml
index 3c15b5d245a..814b4507d30 100644
--- a/tests/org.eclipse.ui.tests/plugin.xml
+++ b/tests/org.eclipse.ui.tests/plugin.xml
@@ -190,7 +190,26 @@
class="org.eclipse.ui.tests.api.workbenchpart.ViewWithCreateControlsException"
id="org.eclipse.ui.tests.api.workbenchpart.ViewWithCreateControlsException">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From 86f9d93b57a516ff49499f4367fd7b9c2dbe92c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Thu, 10 Oct 2024 13:51:37 +0200
Subject: [PATCH 036/232] ImportExistingProjectsWizardTest: fix leaked Shells
#2379
https://github.com/eclipse-platform/eclipse.platform.ui/issues/2379
---
.../ui/tests/harness/util/UITestCase.java | 13 ++++++-----
.../ImportExistingProjectsWizardTest.java | 23 +++++++++++++------
2 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java
index 4ebc7ed06f2..436b0f884bc 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/UITestCase.java
@@ -21,6 +21,7 @@
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
import org.eclipse.core.resources.ResourcesPlugin;
@@ -30,7 +31,6 @@
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferenceMemento;
-import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ShellEvent;
import org.eclipse.swt.events.ShellListener;
import org.eclipse.swt.widgets.Display;
@@ -75,6 +75,7 @@ public static IAdaptable getPageInput() {
private final CloseTestWindowsRule closeTestWindows = new CloseTestWindowsRule();
protected IWorkbench fWorkbench;
+ private Set preExistingShells;
/** Preference helper to restore changed preference values after test run. */
private final PreferenceMemento prefMemento = new PreferenceMemento();
@@ -180,6 +181,7 @@ public final void setUp() throws Exception {
super.setUp();
closeTestWindows.before();
fWorkbench = PlatformUI.getWorkbench();
+ this.preExistingShells = Set.of(fWorkbench.getDisplay().getShells());
String name = runningTest != null ? runningTest : this.getName();
trace(TestRunLogUtil.formatTestStartMessage(name));
doSetUp();
@@ -212,18 +214,17 @@ public final void tearDown() throws Exception {
trace(TestRunLogUtil.formatTestFinishedMessage(name));
prefMemento.resetPreferences();
doTearDown();
- fWorkbench = null;
- // Check for modal shell leak.
+ // Check for shell leak.
List leakedModalShellTitles = new ArrayList<>();
- Shell[] shells = PlatformUI.getWorkbench().getDisplay().getShells();
+ Shell[] shells = fWorkbench.getDisplay().getShells();
for (Shell shell : shells) {
- if (!shell.isDisposed() && shell.isVisible()
- && (shell.getStyle() & (SWT.APPLICATION_MODAL | SWT.PRIMARY_MODAL | SWT.SYSTEM_MODAL)) != 0) {
+ if (!shell.isDisposed() && !preExistingShells.contains(shell)) {
leakedModalShellTitles.add(shell.getText());
shell.close();
}
}
+ fWorkbench = null;
assertEquals("Test leaked modal shell: [" + String.join(", ", leakedModalShellTitles) + "]", 0,
leakedModalShellTitles.size());
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java
index 4149e8089b6..80b17938d83 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java
@@ -56,7 +56,6 @@
import org.eclipse.ui.internal.wizards.datatransfer.WizardProjectsImportPage.ProjectRecord;
import org.eclipse.ui.tests.TestPlugin;
import org.eclipse.ui.tests.datatransfer.ImportTestUtils.TestBuilder;
-import org.eclipse.ui.tests.harness.util.DialogCheck;
import org.eclipse.ui.tests.harness.util.FileUtil;
import org.eclipse.ui.tests.harness.util.UITestCase;
import org.eclipse.ui.wizards.datatransfer.ExternalProjectImportWizard;
@@ -86,6 +85,8 @@ public class ImportExistingProjectsWizardTest extends UITestCase {
private String zipLocation = null;
+ private WizardDialog dialog;
+
private boolean originalRefreshSetting;
public ImportExistingProjectsWizardTest() {
@@ -93,7 +94,7 @@ public ImportExistingProjectsWizardTest() {
}
private Shell getShell() {
- return DialogCheck.getShell();
+ return PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
}
@Override
@@ -109,6 +110,11 @@ protected void doSetUp() throws Exception {
@Override
protected void doTearDown() throws Exception {
+ if (dialog != null) {
+ dialog.close();
+ dialog = null;
+ }
+
IWorkspaceRoot wsRoot = ResourcesPlugin.getWorkspace().getRoot();
IProject[] projects = wsRoot.getProjects();
for (int i = projects.length - 1; i >= 0; i--) {
@@ -799,8 +805,6 @@ public void test14InitialValue() throws IOException, CoreException {
wpip = getExternalImportWizard(null);
selectedProjects = wpip.getProjectRecords();
assertEquals(0, selectedProjects.length);
-
-
}
@Test
@@ -900,7 +904,6 @@ private String copyZipLocation(String zipLocation) throws IOException {
return ImportTestUtils.copyZipLocation(zipLocation, ARCHIVE_HELLOWORLD);
}
-
private WizardProjectsImportPage getNewWizard() {
ImportExportWizard wizard = new ImportExportWizard(
ImportExportWizard.IMPORT);
@@ -920,7 +923,10 @@ private WizardProjectsImportPage getNewWizard() {
Shell shell = getShell();
- WizardDialog dialog = new WizardDialog(shell, wizard);
+ if (dialog != null) {
+ dialog.close();
+ }
+ dialog = new WizardDialog(shell, wizard);
dialog.create();
dialog.getShell().setSize(Math.max(100, dialog.getShell().getSize().x),
100);
@@ -1176,7 +1182,10 @@ private WizardProjectsImportPage getExternalImportWizard(String initialPath) {
ExternalProjectImportWizard wizard = new ExternalProjectImportWizard(
initialPath);
wizard.init(getWorkbench(), null);
- WizardDialog dialog = new WizardDialog(getShell(), wizard);
+ if (dialog != null) {
+ dialog.close();
+ }
+ dialog = new WizardDialog(getShell(), wizard);
dialog.create();
dialog.getShell().setSize(Math.max(100, dialog.getShell().getSize().x),
From 3cddf27b51b4c0ba38e1aad5f6ac0714433f4b36 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Thu, 10 Oct 2024 14:36:09 +0200
Subject: [PATCH 037/232] MarkerViewTests: fix leaked Shell
https://github.com/eclipse-platform/eclipse.platform.ui/issues/2379
---
.../org/eclipse/ui/tests/markers/MarkerViewTests.java | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewTests.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewTests.java
index 77782ed8ef4..6efcc2e7a25 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewTests.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewTests.java
@@ -46,9 +46,9 @@ public void testOpenView() {
IWorkbenchPage page = window.getActivePage();
try {
- page.showView(IPageLayout.ID_BOOKMARKS);
- page.showView(IPageLayout.ID_PROBLEM_VIEW);
- page.showView(IPageLayout.ID_TASK_LIST);
+ page.hideView(page.showView(IPageLayout.ID_BOOKMARKS));
+ page.hideView(page.showView(IPageLayout.ID_PROBLEM_VIEW));
+ page.hideView(page.showView(IPageLayout.ID_TASK_LIST));
} catch (PartInitException e) {
assertTrue(e.getLocalizedMessage(), false);
return;
From 83bf6708ffa207579c07fa6250f8957bc110df32 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Thu, 10 Oct 2024 14:43:20 +0200
Subject: [PATCH 038/232] ImportExistingArchiveProjectFilterTest: fix leaked
shells
https://github.com/eclipse-platform/eclipse.platform.ui/issues/2379
---
.../ImportExistingArchiveProjectFilterTest.java | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingArchiveProjectFilterTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingArchiveProjectFilterTest.java
index 1aff6631812..5132ead15f5 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingArchiveProjectFilterTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingArchiveProjectFilterTest.java
@@ -40,13 +40,13 @@
import org.eclipse.ui.IPageLayout;
import org.eclipse.ui.IViewPart;
import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.internal.WorkbenchPlugin;
import org.eclipse.ui.internal.dialogs.ImportExportWizard;
import org.eclipse.ui.internal.wizards.datatransfer.WizardProjectsImportPage;
import org.eclipse.ui.internal.wizards.datatransfer.WizardProjectsImportPage.ProjectRecord;
import org.eclipse.ui.navigator.resources.ProjectExplorer;
import org.eclipse.ui.tests.TestPlugin;
-import org.eclipse.ui.tests.harness.util.DialogCheck;
import org.eclipse.ui.tests.harness.util.EmptyPerspective;
import org.eclipse.ui.tests.harness.util.FileUtil;
import org.eclipse.ui.tests.harness.util.UITestCase;
@@ -66,6 +66,10 @@ public ImportExistingArchiveProjectFilterTest() {
@Override
protected void doTearDown() throws Exception {
+ if (dialog != null) {
+ dialog.close();
+ dialog = null;
+ }
IWorkspaceRoot wsRoot = ResourcesPlugin.getWorkspace().getRoot();
IProject[] projects = wsRoot.getProjects();
for (int i = projects.length - 1; i >= 0; i--) {
@@ -158,6 +162,7 @@ private void processElementAndChildren(Object element, ITreeContentProvider cont
}
}
+ private WizardDialog dialog;
public WizardProjectsImportPage getNewWizard() {
ImportExportWizard wizard = new ImportExportWizard(ImportExportWizard.IMPORT);
wizard.init(getWorkbench(), null);
@@ -173,7 +178,10 @@ public WizardProjectsImportPage getNewWizard() {
Shell shell = getShell();
- WizardDialog dialog = new WizardDialog(shell, wizard);
+ if (dialog != null) {
+ dialog.close();
+ }
+ dialog = new WizardDialog(shell, wizard);
dialog.create();
dialog.getShell().setSize(Math.max(100, dialog.getShell().getSize().x), 100);
@@ -185,6 +193,6 @@ public WizardProjectsImportPage getNewWizard() {
}
private Shell getShell() {
- return DialogCheck.getShell();
+ return PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
}
}
From 4e0740d71ca4f8160f2272a4b4afb17dca79bbf9 Mon Sep 17 00:00:00 2001
From: Ed Merks
Date: Thu, 10 Oct 2024 16:46:01 +0200
Subject: [PATCH 039/232] Remove include of org.apache.xmlgraphics from
org.eclipse.e4.rcp feature
- This is to avoid needing to touch the feature when this 3rd party
dependency is updated in the target platform.
---
features/org.eclipse.e4.rcp/feature.xml | 4 ----
1 file changed, 4 deletions(-)
diff --git a/features/org.eclipse.e4.rcp/feature.xml b/features/org.eclipse.e4.rcp/feature.xml
index 82b63373cb5..1c784e56640 100644
--- a/features/org.eclipse.e4.rcp/feature.xml
+++ b/features/org.eclipse.e4.rcp/feature.xml
@@ -76,10 +76,6 @@
id="org.eclipse.e4.core.contexts"
version="0.0.0"/>
-
-
From aec1a42f5b0787fde27ceef0cb1638be990cbf55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Thu, 10 Oct 2024 15:11:08 +0200
Subject: [PATCH 040/232] MarkerViewUtilTest: fix leaked shells
https://github.com/eclipse-platform/eclipse.platform.ui/issues/2379
---
.../org/eclipse/ui/tests/markers/MarkerViewUtilTest.java | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewUtilTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewUtilTest.java
index 599f47e29fe..f33c4065931 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewUtilTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerViewUtilTest.java
@@ -91,6 +91,7 @@ public void testShowMarkers() throws CoreException {
boolean visible = page.isPartVisible(part);
assertEquals(true, result);
assertEquals(true, visible);
+ page.hideView(part);
result = MarkerViewUtil.showMarkers(page,
new IMarker[] { someBookmarkMarker, someProblemMarker, someTaskMarker }, true);
@@ -98,6 +99,7 @@ public void testShowMarkers() throws CoreException {
visible = page.isPartVisible(part);
assertEquals(true, result);
assertEquals(true, visible);
+ page.hideView(part);
result = MarkerViewUtil.showMarkers(page,
new IMarker[] { someProblemMarker, someTaskMarker, someBookmarkMarker }, true);
@@ -112,5 +114,6 @@ public void testShowMarkers() throws CoreException {
visible = page.isPartVisible(part);
assertEquals(true, result);
assertEquals(true, visible);
+ page.hideView(part);
}
}
From 646fe5c34ff613f7189265d927b7147e73f6d55f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Thu, 10 Oct 2024 15:53:07 +0200
Subject: [PATCH 041/232] MarkerComparator.saveState: fix
ArrayIndexOutOfBoundsException
as logged during UiTestSuite
---
.../eclipse/ui/internal/views/markers/MarkerComparator.java | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerComparator.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerComparator.java
index e84d3254602..1f6f876d76a 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerComparator.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerComparator.java
@@ -187,7 +187,9 @@ void restore(IMemento memento) {
* Save the current sort field in the memento.
*/
void saveState(IMemento memento) {
- memento.putString(PRIMARY_SORT_FIELD_TAG, MarkerSupportInternalUtilities.getId(fields[0]));
+ if (fields != null && fields.length > 0) {
+ memento.putString(PRIMARY_SORT_FIELD_TAG, MarkerSupportInternalUtilities.getId(fields[0]));
+ }
Iterator descendingIterator = descendingFields.iterator();
while (descendingIterator.hasNext()) {
memento.createChild(DESCENDING_FIELDS, (MarkerSupportInternalUtilities.getId(descendingIterator.next())));
From 859c687e49ebfd77fce60277ec1725111bffb92f Mon Sep 17 00:00:00 2001
From: Dietrich Travkin
Date: Thu, 15 Aug 2024 17:37:23 +0200
Subject: [PATCH 042/232] Load marker content generator details from extensions
#2193
This change adds missing functionality for the extension
'markerContentGeneratorExtension'. So far, ContentGeneratorDescriptor
supports this extension with only getFilterReferences().
I.e. ContentGeneratorDescriptor only lists filter references
of extensions, on top of its own filter references.
With this change, getAllFields(), getInitialVisible() and getMarkerTypes()
are also aggregating values for ContentGeneratorDescriptor
and its extensions.
As a result, e.g. the problems view and markers view can be extended
with new columns. For example, an issue ID and URL to a detailed problem
description.
Fixes: #2193
---
.../internal/ContentGeneratorDescriptor.java | 51 ++++++++++++-
.../tests/markers/MarkerSupportViewTest.java | 73 +++++++++++++++++++
.../tests/markers/ProblemKeyMarkerField.java | 16 ++++
tests/org.eclipse.ui.tests/plugin.xml | 72 +++++++++++++++++-
4 files changed, 207 insertions(+), 5 deletions(-)
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ProblemKeyMarkerField.java
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java
index 49f25fcdb7a..5a9e453b8cb 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ContentGeneratorDescriptor.java
@@ -21,6 +21,7 @@
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.List;
import java.util.Map;
import java.util.TreeSet;
import java.util.stream.Stream;
@@ -45,8 +46,10 @@ public class ContentGeneratorDescriptor {
private IConfigurationElement configurationElement;
private MarkerField[] allFields;
+ private MarkerField[] allFieldsWithExtensions;
private Collection markerTypes;
private MarkerField[] initialVisible;
+ private MarkerField[] initialVisibleWithExtensions;
private Collection groups;
private Collection generatorExtensions = new ArrayList<>();
private Map allTypesTable;
@@ -79,6 +82,7 @@ private void addDefinedGroups(Collection groupss) {
*/
public void addExtensions(Collection extensions) {
generatorExtensions = extensions;
+ clearCaches();
}
/**
@@ -97,7 +101,7 @@ private void addGroupsFrom(IConfigurationElement element, Collection selectedTypes) {
- return selectedTypes.containsAll(markerTypes);
+ return selectedTypes.containsAll(getMarkerTypes());
}
/**
@@ -106,7 +110,14 @@ public boolean allTypesSelected(Collection selectedTypes) {
* @return {@link MarkerField}[]
*/
public MarkerField[] getAllFields() {
- return allFields;
+ if (allFieldsWithExtensions == null) {
+ List fields = new ArrayList<>();
+ fields.addAll(Arrays.asList(allFields));
+ getExtensionsDescriptorsStream().map(d -> Arrays.asList(d.getAllFields())).flatMap(Collection::stream)
+ .forEach(fields::add);
+ allFieldsWithExtensions = fields.toArray(MarkerField[]::new);
+ }
+ return allFieldsWithExtensions;
}
/**
@@ -157,7 +168,14 @@ public String getId() {
* @return {@link MarkerField}[]
*/
public MarkerField[] getInitialVisible() {
- return initialVisible;
+ if (initialVisibleWithExtensions == null) {
+ List fields = new ArrayList<>();
+ fields.addAll(Arrays.asList(initialVisible));
+ getExtensionsDescriptorsStream().map(d -> Arrays.asList(d.getInitialVisible())).flatMap(Collection::stream)
+ .forEach(fields::add);
+ initialVisibleWithExtensions = fields.toArray(MarkerField[]::new);
+ }
+ return initialVisibleWithExtensions;
}
/**
@@ -215,6 +233,8 @@ public Collection getMarkerTypes() {
MarkerType[] types = MarkerTypesModel.getInstance().getType(IMarker.PROBLEM).getAllSubTypes();
markerTypes.addAll(Arrays.asList(types));
}
+ getExtensionsDescriptorsStream().map(ContentGeneratorDescriptor::getMarkerTypes).flatMap(Collection::stream)
+ .forEach(markerTypes::add);
}
return markerTypes;
}
@@ -247,7 +267,7 @@ public Map getTypesTable() {
if (allTypesTable == null) {
allTypesTable = new HashMap<>();
- Iterator allIterator = markerTypes.iterator();
+ Iterator allIterator = getMarkerTypes().iterator();
while (allIterator.hasNext()) {
MarkerType next = allIterator.next();
allTypesTable.put(next.getId(), next);
@@ -294,5 +314,28 @@ public void initializeFromConfigurationElement(
*/
public void removeExtension(IConfigurationElement element) {
generatorExtensions.remove(element);
+ clearCaches();
+ }
+
+ private void clearCaches() {
+ allFieldsWithExtensions = null;
+ initialVisibleWithExtensions = null;
+ markerTypes = null;
+ groups = null;
+ allTypesTable = null;
}
+
+ private Stream getExtensionsDescriptorsStream() {
+ if (generatorExtensions != null) {
+ MarkerSupportRegistry registry = MarkerSupportRegistry.getInstance();
+ return generatorExtensions.stream()
+ .map(extensionConfigElem -> extensionConfigElem
+ .getAttribute(MarkerSupportInternalUtilities.ATTRIBUTE_ID))
+ .filter(id -> id != null && !id.isBlank())
+ .map(contentGeneratorId -> registry.getContentGenDescriptor(contentGeneratorId))
+ .filter(generator -> generator != null);
+ }
+ return Stream.empty();
+ }
+
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerSupportViewTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerSupportViewTest.java
index ada02ad47e2..b76f1895892 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerSupportViewTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkerSupportViewTest.java
@@ -14,7 +14,11 @@
import java.lang.reflect.Field;
import java.lang.reflect.Method;
+import java.util.Arrays;
import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
import org.eclipse.jface.viewers.CheckboxTableViewer;
import org.eclipse.swt.widgets.Button;
@@ -25,8 +29,13 @@
import org.eclipse.ui.internal.views.markers.FiltersConfigurationDialog;
import org.eclipse.ui.internal.views.markers.MarkerContentGenerator;
import org.eclipse.ui.tests.harness.util.UITestCase;
+import org.eclipse.ui.views.markers.MarkerField;
import org.eclipse.ui.views.markers.MarkerSupportView;
+import org.eclipse.ui.views.markers.internal.ContentGeneratorDescriptor;
+import org.eclipse.ui.views.markers.internal.MarkerGroup;
import org.eclipse.ui.views.markers.internal.MarkerMessages;
+import org.eclipse.ui.views.markers.internal.MarkerSupportRegistry;
+import org.eclipse.ui.views.markers.internal.MarkerType;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -125,6 +134,70 @@ public void limitDisabled() throws Exception {
assertFalse(isLimitEnabled);
}
+ @Test
+ public void markerContentGeneratorExtensionLoaded() throws Exception {
+ MarkerSupportView view = (MarkerSupportView) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getActivePage().showView(PROBLEM_VIEW_ID);
+
+ MarkerContentGenerator generator = getMarkerContentGenerator(view);
+ ContentGeneratorDescriptor descriptor = MarkerSupportRegistry.getInstance()
+ .getContentGenDescriptor(generator.getId());
+
+ assertNotNull(descriptor);
+
+ MarkerField[] allFields = descriptor.getAllFields();
+ List allFieldNames = mapToNames(allFields);
+ String fieldName1 = "Problem Key";
+ String fieldName2 = "Problem Key V2";
+
+ assertTrue(
+ "Expected loading marker field '" + fieldName1
+ + "' from marker content generator extensions, but got only " + allFieldNames,
+ allFieldNames.contains(fieldName1));
+ assertTrue(
+ "Expected recursively loading marker field '" + fieldName2
+ + "' from marker content generator extensions, but got only " + allFieldNames,
+ allFieldNames.contains(fieldName2));
+
+ MarkerField[] initiallyVisibleFields = descriptor.getInitialVisible();
+ List initiallyVisibleFieldNames = mapToNames(initiallyVisibleFields);
+
+ assertTrue("Expected marker field '" + fieldName1
+ + "' from marker content generator extension being visible according to 'visible' attribute in the extension,"
+ + " but only the following marker fields are visible " + initiallyVisibleFieldNames,
+ initiallyVisibleFieldNames.contains(fieldName1));
+ assertFalse("Expected marker field '" + fieldName2
+ + "' from marker content generator extension being not visible according to 'visible' attribute in the extension,"
+ + " but the following marker fields are visible " + initiallyVisibleFieldNames,
+ initiallyVisibleFieldNames.contains(fieldName2));
+
+ String markerTypeId = "org.eclipse.ui.tests.markers.artificial.problem";
+ MarkerType markerTypeFromExtension = descriptor.getType(markerTypeId);
+ List markerTypeIds = descriptor.getMarkerTypes().stream().map(MarkerType::getId)
+ .collect(Collectors.toList());
+
+ assertNotNull("Marker type with id '" + markerTypeId + "' not loaded from marker content generator extension.",
+ markerTypeFromExtension);
+ assertTrue("Expected marker type id '" + markerTypeId + "' being in marker types list, but we have only "
+ + markerTypeIds, markerTypeIds.contains(markerTypeId));
+
+ Collection groups = descriptor.getMarkerGroups();
+ List groupIds = groups.stream().map(MarkerGroup::getId).collect(Collectors.toList());
+ String groupId = "org.eclipse.ui.tests.test.extended";
+
+ assertTrue("Expected loading group id '" + groupId
+ + "' from marker content generator extension, but got only the following group ids: " + groupIds,
+ groupIds.contains(groupId));
+ }
+
+ private List mapToNames(MarkerField[] markerFields) {
+ if (markerFields == null || markerFields.length == 0) {
+ return Collections.emptyList();
+ }
+
+ return Arrays.stream(markerFields).map(mf -> mf.getName()).collect(Collectors.toList());
+ }
+
public static MarkerContentGenerator getMarkerContentGenerator(MarkerSupportView view) {
MarkerContentGenerator generator = null;
try {
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ProblemKeyMarkerField.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ProblemKeyMarkerField.java
new file mode 100644
index 00000000000..cfdcdba4822
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ProblemKeyMarkerField.java
@@ -0,0 +1,16 @@
+package org.eclipse.ui.tests.markers;
+
+import org.eclipse.ui.views.markers.MarkerField;
+import org.eclipse.ui.views.markers.MarkerItem;
+
+public class ProblemKeyMarkerField extends MarkerField {
+
+ @Override
+ public String getValue(MarkerItem item) {
+ if (item == null) {
+ return "";
+ }
+ return item.getAttributeValue("problemKey", "");
+ }
+
+}
diff --git a/tests/org.eclipse.ui.tests/plugin.xml b/tests/org.eclipse.ui.tests/plugin.xml
index 814b4507d30..6350e67b8c6 100644
--- a/tests/org.eclipse.ui.tests/plugin.xml
+++ b/tests/org.eclipse.ui.tests/plugin.xml
@@ -3461,7 +3461,58 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From a0221165f4dd0884ff217e0e01b531c0e8349b20 Mon Sep 17 00:00:00 2001
From: Christopher Hermann
Date: Thu, 10 Oct 2024 14:37:33 +0200
Subject: [PATCH 043/232] StickyScrollingHandlerTest: Improve expectation to
the throttler
The calls to the lines provider should be throttled. Expect at least one call and at most 3 calls.
Fixes: #2190
---
.../stickyscroll/StickyScrollingHandlerTest.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
index 5d82241ae01..3fc500fae2d 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
@@ -20,8 +20,9 @@
import static org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants.EDITOR_TAB_WIDTH;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.atLeastOnce;
+import static org.mockito.Mockito.atMost;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -159,8 +160,10 @@ public void testThrottledExecution() throws InterruptedException {
waitInUi(300);
- // Call to lines provider should be throttled
- verify(linesProvider, times(2)).getStickyLines(sourceViewer, stickyLinesProperties);
+ // Call to lines provider should be throttled, at least one and at most
+ // 3 calls expected
+ verify(linesProvider, atMost(3)).getStickyLines(sourceViewer, stickyLinesProperties);
+ verify(linesProvider, atLeastOnce()).getStickyLines(sourceViewer, stickyLinesProperties);
}
private void waitInUi(int ms) throws InterruptedException {
From 090a18aec3e9d75934621666af2e04f520979bea Mon Sep 17 00:00:00 2001
From: "Praveen S.K"
Date: Thu, 19 Sep 2024 14:42:55 +0530
Subject: [PATCH 044/232] Improve "Close mode" settings in Editor Preference
Make more clear that these two setting belong together.
Change-Id: Idf0c683df571ae124e8166e4dcf6bb9536debbb3
---
.../ui/internal/WorkbenchMessages.java | 2 +-
.../dialogs/EditorsPreferencePage.java | 32 ++++++++++---------
.../eclipse/ui/internal/messages.properties | 8 ++---
3 files changed, 22 insertions(+), 20 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
index dbddbbb6b6b..f6acb4d73df 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
@@ -744,7 +744,7 @@ public class WorkbenchMessages extends NLS {
// ==============================================================================
public static String PinEditorAction_toolTip;
public static String WorkbenchPreference_reuseEditors;
- public static String WorkbenchPreference_reuseEditorsThreshold;
+ public static String WorkbenchPreference_reuseEditors_closing;
public static String WorkbenchPreference_reuseEditorsThresholdError;
public static String WorkbenchPreference_recentFiles;
public static String WorkbenchPreference_recentFilesError;
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
index 401b1fc62e0..9705291e8cb 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
@@ -18,12 +18,15 @@
import static org.eclipse.swt.events.SelectionListener.widgetSelectedAdapter;
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.layout.GridLayoutFactory;
import org.eclipse.jface.preference.FieldEditor;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.IntegerFieldEditor;
import org.eclipse.jface.preference.PreferencePage;
import org.eclipse.jface.preference.StringFieldEditor;
import org.eclipse.jface.util.IPropertyChangeListener;
+import org.eclipse.jface.widgets.LabelFactory;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
@@ -46,7 +49,6 @@
* The Editors preference page of the workbench.
*/
public class EditorsPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
- private static final int REUSE_INDENT = 20;
protected Composite editorReuseGroup;
@@ -213,11 +215,7 @@ protected void updateValidState() {
*/
protected void createEditorReuseGroup(Composite composite) {
editorReuseGroup = new Composite(composite, SWT.LEFT);
- GridLayout layout = new GridLayout();
- // Line up with other entries in preference page
- layout.marginWidth = 0;
- layout.marginHeight = 0;
- editorReuseGroup.setLayout(layout);
+ editorReuseGroup.setLayout(GridLayoutFactory.fillDefaults().numColumns(3).spacing(0, 0).create());
editorReuseGroup.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL));
reuseEditors = new Button(editorReuseGroup, SWT.CHECK);
@@ -232,20 +230,22 @@ protected void createEditorReuseGroup(Composite composite) {
}));
editorReuseIndentGroup = new Composite(editorReuseGroup, SWT.LEFT);
- GridLayout indentLayout = new GridLayout();
- indentLayout.marginLeft = REUSE_INDENT;
- indentLayout.marginWidth = 0;
- editorReuseIndentGroup.setLayout(indentLayout);
- editorReuseIndentGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
+ editorReuseIndentGroup.setLayout(GridLayoutFactory.fillDefaults().create());
+ editorReuseIndentGroup
+ .setLayoutData(GridDataFactory.fillDefaults().grab(false, false).create());
editorReuseThresholdGroup = new Composite(editorReuseIndentGroup, SWT.LEFT);
- layout = new GridLayout();
+ GridLayout layout = new GridLayout();
layout.marginWidth = 0;
editorReuseThresholdGroup.setLayout(layout);
- editorReuseThresholdGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
+ GridData gridData = GridDataFactory.fillDefaults().grab(true, false).create();
+ gridData.widthHint = 35;
+ editorReuseThresholdGroup
+ .setLayoutData(gridData);
- reuseEditorsThreshold = new IntegerFieldEditor(IPreferenceConstants.REUSE_EDITORS,
- WorkbenchMessages.WorkbenchPreference_reuseEditorsThreshold, editorReuseThresholdGroup);
+ reuseEditorsThreshold = new IntegerFieldEditor(IPreferenceConstants.REUSE_EDITORS, "", //$NON-NLS-1$
+ editorReuseThresholdGroup);
+ reuseEditorsThreshold.getLabelControl(editorReuseThresholdGroup).dispose();
reuseEditorsThreshold.setPreferenceStore(WorkbenchPlugin.getDefault().getPreferenceStore());
reuseEditorsThreshold.setPage(this);
@@ -258,6 +258,8 @@ protected void createEditorReuseGroup(Composite composite) {
reuseEditorsThreshold.getTextControl(editorReuseThresholdGroup).setEnabled(reuseEditors.getSelection());
reuseEditorsThreshold.setPropertyChangeListener(validityChangeListener);
+ LabelFactory.newLabel(SWT.NONE).text(WorkbenchMessages.WorkbenchPreference_reuseEditors_closing)
+ .create(editorReuseGroup);
}
/**
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index 62751910b19..a0d3827e92c 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -493,10 +493,10 @@ OpenPerspectiveDialogAction_tooltip=Open Perspective
#---- General Preferences----
PreferencePage_noDescription = (No description available)
-PreferencePageParameterValues_pageLabelSeparator = \ >\
+PreferencePageParameterValues_pageLabelSeparator = \ >\
ThemingEnabled = E&nable theming
ThemeChangeWarningText = Restart for the theme changes to take full effect
-ThemeChangeWarningTitle = Theme Changed
+ThemeChangeWarningTitle = Theme Changed
# --- Workbench -----
WorkbenchPreference_openMode=Open mode
WorkbenchPreference_doubleClick=D&ouble click
@@ -729,8 +729,8 @@ PageLayout_missingRefPart=Referenced part does not exist yet: {0}.
# Keys used in the reuse editor which is released as experimental.
# ==============================================================================
PinEditorAction_toolTip=Pin Editor
-WorkbenchPreference_reuseEditors=&Close editors automatically
-WorkbenchPreference_reuseEditorsThreshold=Number of opened editors before closi&ng:
+WorkbenchPreference_reuseEditors=&Close editors if there are more than
+WorkbenchPreference_reuseEditors_closing=editors open
WorkbenchPreference_reuseEditorsThresholdError=The number of opened editors should be more than 0.
WorkbenchPreference_recentFiles=Size of &recently opened files list:
WorkbenchPreference_recentFilesError=The size of the recently opened files list should be between 0 and {0}.
From 78c9a1c60a876e6e2c9163edb867c2df620054e9 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Mon, 9 Sep 2024 09:14:06 +0200
Subject: [PATCH 045/232] Find/replace overlay: replace shell with integrated
composite #2099
The FindReplaceOverlay is currently realized as a separate shell (more
precisely, a JFace Dialog), which is placed at a proper position on top
of the workbench shell. This has some drawback:
- It has to manually adapt to movements of the parent shell or the
target part/widget
- It has to manually hide and show depending on visibility changes of
the target part/widget
- It does not follow events of the target immediately, i.e., movements
are always some milliseconds behind, minimize/maximize
operations/animations are not synchronous etc.
- It does not locate properly when the platform uses Wayland, as manual
shell positioning is not possible there
This change replaces the dialog-based implementation of the
FindReplaceOverlay with an in-place composite-based implementation. A
composite is created in the target widget and placed relative to this
composite. In consequence, the overlay automatically follows all move,
resize, hide/show operations of the target widget.
Fixes https://github.com/eclipse-platform/eclipse.platform.swt/issues/1447
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2099
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2246
---
.../overlay/FindReplaceOverlay.java | 548 +++++++-----------
.../ui/texteditor/FindReplaceAction.java | 2 +-
.../findandreplace/overlay/OverlayAccess.java | 26 +-
3 files changed, 221 insertions(+), 355 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 2abad115952..a6ae0d007f1 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -13,32 +13,29 @@
*******************************************************************************/
package org.eclipse.ui.internal.findandreplace.overlay;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.util.List;
-import java.util.function.Consumer;
+import java.util.concurrent.atomic.AtomicReference;
import org.osgi.framework.FrameworkUtil;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.BusyIndicator;
import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.ControlEvent;
import org.eclipse.swt.events.ControlListener;
import org.eclipse.swt.events.FocusEvent;
import org.eclipse.swt.events.FocusListener;
import org.eclipse.swt.events.KeyListener;
import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.events.ShellAdapter;
-import org.eclipse.swt.events.ShellEvent;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGBA;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.ScrollBar;
import org.eclipse.swt.widgets.Scrollable;
import org.eclipse.swt.widgets.Shell;
@@ -46,25 +43,22 @@
import org.eclipse.swt.widgets.ToolItem;
import org.eclipse.swt.widgets.Widget;
+import org.eclipse.core.runtime.Status;
+
import org.eclipse.jface.bindings.keys.KeyStroke;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.dialogs.IPageChangedListener;
-import org.eclipse.jface.dialogs.PageChangedEvent;
import org.eclipse.jface.fieldassist.TextContentAdapter;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.layout.GridLayoutFactory;
import org.eclipse.jface.resource.JFaceColors;
-import org.eclipse.jface.window.Window;
import org.eclipse.jface.text.FindReplaceDocumentAdapter;
import org.eclipse.jface.text.FindReplaceDocumentAdapterContentProposalProvider;
import org.eclipse.jface.text.IFindReplaceTarget;
import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.ui.IPartListener2;
import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.fieldassist.ContentAssistCommandAdapter;
import org.eclipse.ui.internal.findandreplace.FindReplaceLogic;
@@ -72,13 +66,14 @@
import org.eclipse.ui.internal.findandreplace.HistoryStore;
import org.eclipse.ui.internal.findandreplace.SearchOptions;
import org.eclipse.ui.internal.findandreplace.status.IFindReplaceStatus;
-import org.eclipse.ui.part.MultiPageEditorSite;
+import org.eclipse.ui.internal.texteditor.TextEditorPlugin;
+import org.eclipse.ui.texteditor.AbstractTextEditor;
import org.eclipse.ui.texteditor.IAbstractTextEditorHelpContextIds;
import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
import org.eclipse.ui.texteditor.StatusTextEditor;
-public class FindReplaceOverlay extends Dialog {
+public class FindReplaceOverlay {
private final class KeyboardShortcuts {
private static final List SEARCH_FORWARD = List.of( //
KeyStroke.getInstance(SWT.CR), KeyStroke.getInstance(SWT.KEYPAD_CR));
@@ -89,11 +84,11 @@ private final class KeyboardShortcuts {
private static final List OPTION_CASE_SENSITIVE = List.of( //
KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'C'), KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'c'));
private static final List OPTION_WHOLE_WORD = List.of( //
- KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'W'), KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'w'));
+ KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'D'), KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'd'));
private static final List OPTION_REGEX = List.of( //
KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'P'), KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'p'));
private static final List OPTION_SEARCH_IN_SELECTION = List.of( //
- KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'A'), KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'a'));
+ KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'I'), KeyStroke.getInstance(SWT.MOD1 | SWT.SHIFT, 'i'));
private static final List CLOSE = List.of( //
KeyStroke.getInstance(SWT.ESC), KeyStroke.getInstance(SWT.MOD1, 'F'),
KeyStroke.getInstance(SWT.MOD1, 'f'));
@@ -112,10 +107,10 @@ private final class KeyboardShortcuts {
private FindReplaceLogic findReplaceLogic;
private final IWorkbenchPart targetPart;
- private boolean overlayOpen;
private boolean replaceBarOpen;
- private Composite container;
+ private final Composite targetControl;
+ private Composite containerControl;
private AccessibleToolBar replaceToggleTools;
private ToolItem replaceToggle;
@@ -133,7 +128,6 @@ private final class KeyboardShortcuts {
private ToolItem searchForwardButton;
private ToolItem selectAllButton;
private AccessibleToolBar closeTools;
- private ToolItem closeButton;
private Composite replaceContainer;
private Composite replaceBarContainer;
@@ -142,26 +136,32 @@ private final class KeyboardShortcuts {
private ToolItem replaceButton;
private ToolItem replaceAllButton;
- private Color backgroundToUse;
+ private Color widgetBackgroundColor;
+ private Color overlayBackgroundColor;
private Color normalTextForegroundColor;
private boolean positionAtTop = true;
- private final TargetPartVisibilityHandler targetPartVisibilityHandler;
private ContentAssistCommandAdapter contentAssistSearchField, contentAssistReplaceField;
public FindReplaceOverlay(Shell parent, IWorkbenchPart part, IFindReplaceTarget target) {
- super(parent);
+ targetPart = part;
+ targetControl = getTargetControl(parent, part);
createFindReplaceLogic(target);
+ createContainerAndSearchControls(targetControl);
+ containerControl.setVisible(false);
+ PlatformUI.getWorkbench().getHelpSystem().setHelp(containerControl,
+ IAbstractTextEditorHelpContextIds.FIND_REPLACE_OVERLAY);
+ }
- setShellStyle(SWT.MODELESS);
- setBlockOnOpen(false);
- targetPart = part;
- targetPartVisibilityHandler = new TargetPartVisibilityHandler(targetPart, this::asyncExecIfOpen, this::close,
- this::updatePlacementAndVisibility);
+ private static Composite getTargetControl(Shell targetShell, IWorkbenchPart targetPart) {
+ if (targetPart instanceof StatusTextEditor textEditor) {
+ return textEditor.getAdapter(ITextViewer.class).getTextWidget();
+ } else {
+ return targetShell;
+ }
}
- @Override
- protected boolean isResizable() {
- return false;
+ private boolean insertedInTargetParent() {
+ return targetControl instanceof StyledText;
}
private void createFindReplaceLogic(IFindReplaceTarget target) {
@@ -177,8 +177,12 @@ private void createFindReplaceLogic(IFindReplaceTarget target) {
findReplaceLogic.activate(SearchOptions.FORWARD);
}
+ public Composite getContainerControl() {
+ return containerControl;
+ }
+
private void performReplaceAll() {
- BusyIndicator.showWhile(getShell() != null ? getShell().getDisplay() : Display.getCurrent(),
+ BusyIndicator.showWhile(containerControl.getShell() != null ? containerControl.getShell().getDisplay() : Display.getCurrent(),
findReplaceLogic::performReplaceAll);
evaluateFindReplaceStatus();
replaceBar.storeHistory();
@@ -186,142 +190,28 @@ private void performReplaceAll() {
}
private void performSelectAll() {
- BusyIndicator.showWhile(getShell() != null ? getShell().getDisplay() : Display.getCurrent(),
+ BusyIndicator.showWhile(containerControl.getShell() != null ? containerControl.getShell().getDisplay() : Display.getCurrent(),
findReplaceLogic::performSelectAll);
searchBar.storeHistory();
}
- private ControlListener shellMovementListener = new ControlListener() {
- @Override
- public void controlMoved(ControlEvent e) {
- asyncExecIfOpen(FindReplaceOverlay.this::updatePlacementAndVisibility);
- }
-
- @Override
- public void controlResized(ControlEvent e) {
- asyncExecIfOpen(FindReplaceOverlay.this::updatePlacementAndVisibility);
- }
- };
-
- private Listener targetRelocationListener = __ -> asyncExecIfOpen(
- FindReplaceOverlay.this::updatePlacementAndVisibility);
+ private ControlListener targetMovementListener = ControlListener
+ .controlResizedAdapter(__ -> asyncExecIfOpen(FindReplaceOverlay.this::updatePlacementAndVisibility));
private void asyncExecIfOpen(Runnable operation) {
- Shell shell = getShell();
- if (shell != null) {
- shell.getDisplay().asyncExec(() -> {
- if (getShell() != null) {
+ if (!containerControl.isDisposed() && containerControl.isVisible()) {
+ containerControl.getDisplay().asyncExec(() -> {
+ if (containerControl != null || containerControl.isDisposed()) {
operation.run();
}
});
}
}
- private ShellAdapter overlayDeactivationListener = new ShellAdapter() {
- @Override
- public void shellActivated(ShellEvent e) {
- // Do nothing
- }
-
- @Override
- public void shellDeactivated(ShellEvent e) {
+ private FocusListener targetFocusListener = FocusListener.focusGainedAdapter(__ -> {
removeSearchScope();
searchBar.storeHistory();
- }
- };
-
- private static class TargetPartVisibilityHandler implements IPartListener2, IPageChangedListener {
- private final IWorkbenchPart targetPart;
- private final IWorkbenchPart topLevelPart;
- private final Consumer asyncExecIfOpen;
- private final Runnable closeCallback;
- private final Runnable placementUpdateCallback;
-
- private boolean isTopLevelVisible = true;
- private boolean isNestedLevelVisible = true;
-
- TargetPartVisibilityHandler(IWorkbenchPart targetPart, Consumer asyncExecIfOpen,
- Runnable closeCallback,
- Runnable placementUpdateCallback) {
- this.targetPart = targetPart;
- this.asyncExecIfOpen = asyncExecIfOpen;
- this.closeCallback = closeCallback;
- this.placementUpdateCallback = placementUpdateCallback;
- if (targetPart != null && targetPart.getSite() instanceof MultiPageEditorSite multiEditorSite) {
- topLevelPart = multiEditorSite.getMultiPageEditor();
- } else {
- topLevelPart = targetPart;
- }
- }
-
- @Override
- public void partBroughtToTop(IWorkbenchPartReference partRef) {
- if (partRef.getPart(false) == topLevelPart && !isTopLevelVisible) {
- this.isTopLevelVisible = true;
- asyncExecIfOpen.accept(this::adaptToPartActivationChange);
- }
- }
-
- @Override
- public void partVisible(IWorkbenchPartReference partRef) {
- if (partRef.getPart(false) == topLevelPart && !isTopLevelVisible) {
- this.isTopLevelVisible = true;
- asyncExecIfOpen.accept(this::adaptToPartActivationChange);
- }
- }
-
- @Override
- public void partHidden(IWorkbenchPartReference partRef) {
- if (partRef.getPart(false) == topLevelPart && isTopLevelVisible) {
- this.isTopLevelVisible = false;
- asyncExecIfOpen.accept(this::adaptToPartActivationChange);
- }
- }
-
- @Override
- public void partClosed(IWorkbenchPartReference partRef) {
- if (partRef.getPart(false) == topLevelPart) {
- closeCallback.run();
- }
- }
-
- @Override
- public void pageChanged(PageChangedEvent event) {
- if (event.getSource() == topLevelPart) {
- boolean isPageVisible = event.getSelectedPage() == targetPart;
- if (isNestedLevelVisible != isPageVisible) {
- this.isNestedLevelVisible = isPageVisible;
- asyncExecIfOpen.accept(this::adaptToPartActivationChange);
- }
- }
- }
-
- private void adaptToPartActivationChange() {
- if (targetPart.getSite().getPart() == null) {
- return;
- }
- placementUpdateCallback.run();
-
- if (!isTargetVisible()) {
- targetPart.getSite().getShell().setActive();
- targetPart.setFocus();
- asyncExecIfOpen.accept(this::focusTargetWidget);
- }
- }
-
- private void focusTargetWidget() {
- if (targetPart.getSite().getPart() == null) {
- return;
- }
- if (targetPart instanceof StatusTextEditor textEditor) {
- textEditor.getAdapter(ITextViewer.class).getTextWidget().forceFocus();
- }
- }
-
- public boolean isTargetVisible() {
- return isTopLevelVisible && isNestedLevelVisible;
- }
- }
+ });
private KeyListener closeOnTargetEscapeListener = KeyListener.keyPressedAdapter(c -> {
if (c.keyCode == SWT.ESC) {
@@ -341,10 +231,9 @@ private static IDialogSettings getDialogSettings() {
return settings;
}
- @Override
- public boolean close() {
- if (!overlayOpen) {
- return true;
+ public void close() {
+ if (containerControl.isDisposed() || !containerControl.isVisible()) {
+ return;
}
if (targetPart != null) {
targetPart.setFocus();
@@ -352,32 +241,24 @@ public boolean close() {
storeOverlaySettings();
findReplaceLogic.activate(SearchOptions.GLOBAL);
- overlayOpen = false;
- replaceBarOpen = false;
unbindListeners();
- container.dispose();
- return super.close();
+ containerControl.setVisible(false);
}
- @Override
- public int open() {
- int returnCode = Window.OK;
- if (!overlayOpen) {
- returnCode = super.open();
+ public void open() {
+ if (!containerControl.isVisible()) {
+ containerControl.setVisible(true);
bindListeners();
restoreOverlaySettings();
}
- overlayOpen = true;
- applyOverlayColors(backgroundToUse, true);
assignIDs();
- updateFromTargetSelection();
- searchBar.forceFocus();
-
- getShell().layout();
+ containerControl.layout();
+ containerControl.moveAbove(null);
updatePlacementAndVisibility();
updateContentAssistAvailability();
- return returnCode;
+ searchBar.setFocus();
+ updateFromTargetSelection();
}
private void storeOverlaySettings() {
@@ -386,9 +267,7 @@ private void storeOverlaySettings() {
private void restoreOverlaySettings() {
Boolean shouldOpenReplaceBar = getDialogSettings().getBoolean(REPLACE_BAR_OPEN_DIALOG_SETTING);
- if (shouldOpenReplaceBar) {
- toggleReplace();
- }
+ setReplaceVisible(shouldOpenReplaceBar);
}
@SuppressWarnings("nls")
@@ -410,84 +289,27 @@ private void assignIDs() {
}
}
- private void applyOverlayColors(Color color, boolean tryToColorReplaceBar) {
- closeTools.setBackground(color);
- closeButton.setBackground(color);
-
- searchTools.setBackground(color);
- searchInSelectionButton.setBackground(color);
- wholeWordSearchButton.setBackground(color);
- regexSearchButton.setBackground(color);
- caseSensitiveSearchButton.setBackground(color);
- selectAllButton.setBackground(color);
- searchBackwardButton.setBackground(color);
- searchForwardButton.setBackground(color);
-
- searchBarContainer.setBackground(color);
- searchBar.setBackground(color);
- searchContainer.setBackground(color);
-
- if (replaceBarOpen && tryToColorReplaceBar) {
- replaceContainer.setBackground(color);
- replaceBar.setBackground(color);
- replaceBarContainer.setBackground(color);
- replaceTools.setBackground(color);
- replaceAllButton.setBackground(color);
- replaceButton.setBackground(color);
- }
- }
-
private void unbindListeners() {
- getShell().removeShellListener(overlayDeactivationListener);
- if (targetPart != null && targetPart instanceof StatusTextEditor textEditor) {
- Control targetWidget = textEditor.getAdapter(ITextViewer.class).getTextWidget();
- if (targetWidget != null) {
- targetWidget.getShell().removeControlListener(shellMovementListener);
- targetWidget.removeListener(SWT.Move, targetRelocationListener);
- targetWidget.removeListener(SWT.Resize, targetRelocationListener);
- targetWidget.removeKeyListener(closeOnTargetEscapeListener);
- targetPart.getSite().getPage().removePartListener(targetPartVisibilityHandler);
- }
- }
+ targetControl.removeFocusListener(targetFocusListener);
+ targetControl.removeControlListener(targetMovementListener);
+ targetControl.removeKeyListener(closeOnTargetEscapeListener);
}
private void bindListeners() {
- getShell().addShellListener(overlayDeactivationListener);
- if (targetPart instanceof StatusTextEditor textEditor) {
- Control targetWidget = textEditor.getAdapter(ITextViewer.class).getTextWidget();
-
- targetWidget.getShell().addControlListener(shellMovementListener);
- targetWidget.addListener(SWT.Move, targetRelocationListener);
- targetWidget.addListener(SWT.Resize, targetRelocationListener);
- targetWidget.addKeyListener(closeOnTargetEscapeListener);
- targetPart.getSite().getPage().addPartListener(targetPartVisibilityHandler);
- }
- }
-
- @Override
- public Control createContents(Composite parent) {
- PlatformUI.getWorkbench().getHelpSystem().setHelp(getShell(),
- IAbstractTextEditorHelpContextIds.FIND_REPLACE_OVERLAY);
-
- backgroundToUse = new Color(getShell().getDisplay(), new RGBA(0, 0, 0, 0));
- return createDialog(parent);
+ targetControl.addFocusListener(targetFocusListener);
+ targetControl.addControlListener(targetMovementListener);
+ targetControl.addKeyListener(closeOnTargetEscapeListener);
}
- private Control createDialog(final Composite parent) {
- createMainContainer(parent);
-
+ private void createContainerAndSearchControls(Composite parent) {
+ if (insertedInTargetParent()) {
+ parent = parent.getParent();
+ }
retrieveBackgroundColor();
-
- createFindContainer();
- createSearchBar();
- createSearchTools();
- createCloseTools();
+ createMainContainer(parent);
initializeSearchShortcutHandlers();
- container.layout();
-
- applyDialogFont(container);
- return container;
+ containerControl.layout();
}
private void initializeSearchShortcutHandlers() {
@@ -498,24 +320,89 @@ private void initializeSearchShortcutHandlers() {
/**
* HACK: In order to not introduce a hard-coded color, we need to retrieve the
- * color of the "SWT.SEARCH"-Text. Since that search-bar has a border, we don't
- * want to have it in our own form. Instead, we create such a bar at start-up,
- * grab it's color and then immediately dispose of that bar.
+ * background color of text widgets and composite to color those widgets that
+ * would otherwise inherit non-fitting custom colors from the containing
+ * StyledText.
*/
private void retrieveBackgroundColor() {
if (targetPart instanceof StatusTextEditor textEditor) {
Control targetWidget = textEditor.getAdapter(ITextViewer.class).getTextWidget();
- backgroundToUse = targetWidget.getBackground();
+ widgetBackgroundColor = targetWidget.getBackground();
normalTextForegroundColor = targetWidget.getForeground();
} else {
- Text textBarForRetrievingTheRightColor = new Text(container, SWT.SINGLE | SWT.SEARCH);
- container.layout();
- backgroundToUse = textBarForRetrievingTheRightColor.getBackground();
+ Text textBarForRetrievingTheRightColor = new Text(targetControl.getShell(), SWT.SINGLE | SWT.SEARCH);
+ targetControl.getShell().layout();
+ widgetBackgroundColor = textBarForRetrievingTheRightColor.getBackground();
normalTextForegroundColor = textBarForRetrievingTheRightColor.getForeground();
textBarForRetrievingTheRightColor.dispose();
}
+ overlayBackgroundColor = retrieveDefaultCompositeBackground();
+ }
+
+ private Color retrieveDefaultCompositeBackground() {
+ AtomicReference colorReference = new AtomicReference<>();
+ Dialog dummyDialogForColorRetrieval = new Dialog(targetControl.getShell()) {
+ @Override
+ public void create() {
+ super.create();
+ colorReference.set(getContents().getBackground());
+ }
+
+ };
+ dummyDialogForColorRetrieval.create();
+ dummyDialogForColorRetrieval.close();
+ return colorReference.get();
+ }
+
+ /**
+ * A composite with a fixed background color, not adapting to theming.
+ */
+ private class FixedColorComposite extends Composite {
+ private Color fixColor;
+
+ public FixedColorComposite(Composite parent, int style, Color backgroundColor) {
+ super(parent, style);
+ this.fixColor = backgroundColor;
+ setBackground(backgroundColor);
+ }
+
+ @Override
+ public void setBackground(Color unusedColor) {
+ super.setBackground(fixColor);
+ }
+ }
+
+ private void createMainContainer(final Composite parent) {
+ containerControl = new FixedColorComposite(parent, SWT.NONE, overlayBackgroundColor);
+ GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(containerControl);
+ GridLayoutFactory.fillDefaults().numColumns(2).equalWidth(false).margins(2, 2).spacing(2, 0)
+ .applyTo(containerControl);
+
+ createReplaceToggle();
+ createContentsContainer();
+ }
+
+ private void createReplaceToggle() {
+ replaceToggleTools = new AccessibleToolBar(containerControl);
+ GridDataFactory.fillDefaults().grab(false, true).align(GridData.FILL, GridData.FILL)
+ .applyTo(replaceToggleTools);
+ replaceToggleTools.addMouseListener(MouseListener.mouseDownAdapter(__ -> setReplaceVisible(!replaceBarOpen)));
+
+ replaceToggle = new AccessibleToolItemBuilder(replaceToggleTools)
+ .withShortcuts(KeyboardShortcuts.TOGGLE_REPLACE)
+ .withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_OPEN_REPLACE_AREA))
+ .withToolTipText(FindReplaceMessages.FindReplaceOverlay_replaceToggle_toolTip)
+ .withOperation(() -> setReplaceVisible(!replaceBarOpen)).withShortcuts(KeyboardShortcuts.TOGGLE_REPLACE)
+ .build();
}
+ private void createContentsContainer() {
+ contentGroup = new FixedColorComposite(containerControl, SWT.NONE, overlayBackgroundColor);
+ GridLayoutFactory.fillDefaults().numColumns(1).equalWidth(false).spacing(0, 2).applyTo(contentGroup);
+ GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(contentGroup);
+
+ createSearchContainer();
+ }
private void createSearchTools() {
searchTools = new AccessibleToolBar(searchContainer);
@@ -553,7 +440,8 @@ private void createCloseTools() {
closeTools = new AccessibleToolBar(searchContainer);
GridDataFactory.fillDefaults().grab(false, true).align(GridData.END, GridData.END).applyTo(closeTools);
- closeButton = new AccessibleToolItemBuilder(closeTools).withStyleBits(SWT.PUSH)
+ // Close button
+ new AccessibleToolItemBuilder(closeTools).withStyleBits(SWT.PUSH)
.withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_CLOSE))
.withToolTipText(FindReplaceMessages.FindReplaceOverlay_closeButton_toolTip) //
.withOperation(this::close)
@@ -608,7 +496,7 @@ private void createWholeWordsButton() {
}
private void createReplaceTools() {
- Color warningColor = JFaceColors.getErrorText(getShell().getDisplay());
+ Color warningColor = JFaceColors.getErrorText(containerControl.getShell().getDisplay());
replaceTools = new AccessibleToolBar(replaceContainer);
@@ -647,6 +535,10 @@ private ContentAssistCommandAdapter createContentAssistField(HistoryTextWrapper
}
private void createSearchBar() {
+ searchBarContainer = new Composite(searchContainer, SWT.NONE);
+ GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(searchBarContainer);
+ GridLayoutFactory.fillDefaults().numColumns(1).applyTo(searchBarContainer);
+
HistoryStore searchHistory = new HistoryStore(getDialogSettings(), "searchhistory", //$NON-NLS-1$
HISTORY_SIZE);
searchBar = new HistoryTextWrapper(searchHistory, searchBarContainer, SWT.SINGLE);
@@ -664,11 +556,32 @@ private void createSearchBar() {
@Override
public void focusGained(FocusEvent e) {
findReplaceLogic.resetIncrementalBaseLocation();
+ setTextEditorActionsActivated(false);
}
@Override
public void focusLost(FocusEvent e) {
showUserFeedback(normalTextForegroundColor, false);
+ setTextEditorActionsActivated(true);
+ }
+
+ /*
+ * Adapted from
+ * org.eclipse.jdt.internal.ui.javaeditor.JavaEditor#setActionsActivated(
+ * boolean)
+ */
+ private void setTextEditorActionsActivated(boolean state) {
+ if (!(targetPart instanceof AbstractTextEditor)) {
+ return;
+ }
+ try {
+ Method method = AbstractTextEditor.class.getDeclaredMethod("setActionActivation", boolean.class); //$NON-NLS-1$
+ method.setAccessible(true);
+ method.invoke(targetPart, Boolean.valueOf(state));
+ } catch (IllegalArgumentException | InvocationTargetException | IllegalAccessException | SecurityException | NoSuchMethodException ex) {
+ TextEditorPlugin.getDefault().getLog()
+ .log(Status.error("cannot (de-)activate actions for text editor", ex)); //$NON-NLS-1$
+ }
}
});
@@ -682,6 +595,10 @@ private void updateIncrementalSearch() {
}
private void createReplaceBar() {
+ replaceBarContainer = new Composite(replaceContainer, SWT.NONE);
+ GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.END).applyTo(replaceBarContainer);
+ GridLayoutFactory.fillDefaults().numColumns(1).equalWidth(false).applyTo(replaceBarContainer);
+
HistoryStore replaceHistory = new HistoryStore(getDialogSettings(), "replacehistory", HISTORY_SIZE); //$NON-NLS-1$
replaceBar = new HistoryTextWrapper(replaceHistory, replaceBarContainer, SWT.SINGLE);
GridDataFactory.fillDefaults().grab(true, false).align(SWT.FILL, SWT.END).applyTo(replaceBar);
@@ -696,63 +613,35 @@ private void createReplaceBar() {
contentAssistReplaceField = createContentAssistField(replaceBar, false);
}
- private void createFindContainer() {
- searchContainer = new Composite(contentGroup, SWT.NONE);
+ private void createSearchContainer() {
+ searchContainer = new FixedColorComposite(contentGroup, SWT.NONE, widgetBackgroundColor);
GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(searchContainer);
GridLayoutFactory.fillDefaults().numColumns(3).extendedMargins(4, 4, 3, 5).equalWidth(false)
.applyTo(searchContainer);
- searchContainer.setBackground(getShell().getDisplay().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));
- searchBarContainer = new Composite(searchContainer, SWT.NONE);
- GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(searchBarContainer);
- GridLayoutFactory.fillDefaults().numColumns(1).applyTo(searchBarContainer);
+
+ createSearchBar();
+ createSearchTools();
+ createCloseTools();
}
private void createReplaceContainer() {
- replaceContainer = new Composite(contentGroup, SWT.NONE);
+ replaceContainer = new FixedColorComposite(contentGroup, SWT.NONE, widgetBackgroundColor);
GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(replaceContainer);
- GridLayoutFactory.fillDefaults().margins(0, 1).numColumns(2).extendedMargins(4, 4, 3, 5).equalWidth(false)
+ GridLayoutFactory.fillDefaults().margins(0, 0).numColumns(2).extendedMargins(4, 4, 3, 5).equalWidth(false)
.applyTo(replaceContainer);
- replaceContainer.setBackground(getShell().getDisplay().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));
- replaceBarContainer = new Composite(replaceContainer, SWT.NONE);
- GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.END).applyTo(replaceBarContainer);
- GridLayoutFactory.fillDefaults().numColumns(1).equalWidth(false).applyTo(replaceBarContainer);
- }
-
- private void createMainContainer(final Composite parent) {
- container = new Composite(parent, SWT.NONE);
- GridLayoutFactory.fillDefaults().numColumns(2).equalWidth(false).margins(2, 2).spacing(2, 0).applyTo(container);
- GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(container);
-
- createReplaceToggle();
-
- contentGroup = new Composite(container, SWT.NULL);
- GridLayoutFactory.fillDefaults().numColumns(1).equalWidth(false).spacing(2, 3).applyTo(contentGroup);
- GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(contentGroup);
- }
- private void createReplaceToggle() {
- replaceToggleTools = new AccessibleToolBar(container);
- GridDataFactory.fillDefaults().grab(false, true).align(GridData.FILL, GridData.FILL)
- .applyTo(replaceToggleTools);
- replaceToggleTools.addMouseListener(MouseListener.mouseDownAdapter(__ -> toggleReplace()));
-
- replaceToggle = new AccessibleToolItemBuilder(replaceToggleTools)
- .withShortcuts(KeyboardShortcuts.TOGGLE_REPLACE)
- .withImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_OPEN_REPLACE_AREA))
- .withToolTipText(FindReplaceMessages.FindReplaceOverlay_replaceToggle_toolTip)
- .withOperation(this::toggleReplace).build();
+ createReplaceBar();
+ createReplaceTools();
}
- private void toggleReplace() {
- if (!replaceBarOpen && findReplaceLogic.getTarget().isEditable()) {
+ private void setReplaceVisible(boolean visible) {
+ if (findReplaceLogic.getTarget().isEditable() && visible) {
createReplaceDialog();
replaceToggle.setImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_CLOSE_REPLACE_AREA));
} else {
hideReplace();
replaceToggle.setImage(FindReplaceOverlayImages.get(FindReplaceOverlayImages.KEY_OPEN_REPLACE_AREA));
}
- replaceToggle.setSelection(false); // We don't want the button to look "locked in", so don't
- // use it's selectionState
updateContentAssistAvailability();
}
@@ -773,12 +662,9 @@ private void createReplaceDialog() {
}
replaceBarOpen = true;
createReplaceContainer();
- createReplaceBar();
- createReplaceTools();
initializeReplaceShortcutHandlers();
updatePlacementAndVisibility();
- applyOverlayColors(backgroundToUse, true);
assignIDs();
replaceBar.forceFocus();
}
@@ -873,33 +759,13 @@ private void repositionTextSelection() {
}
private void updatePlacementAndVisibility() {
- if (!targetPartVisibilityHandler.isTargetVisible()) {
- getShell().setVisible(false);
- return;
- }
- if (isInvalidTargetShell()) {
- asyncExecIfOpen(() -> {
- if (isInvalidTargetShell()) {
- close();
- setParentShell(targetPart.getSite().getShell());
- open();
- targetPart.setFocus();
- }
- });
- return;
- }
- getShell().requestLayout();
- if (!(targetPart instanceof StatusTextEditor textEditor)) {
- return;
- }
-
- Control targetWidget = textEditor.getAdapter(ITextViewer.class).getTextWidget();
- if (!okayToUse(targetWidget)) {
+ if (!okayToUse(targetControl)) {
this.close();
return;
}
- Rectangle targetControlBounds = calculateAbsoluteControlBounds(targetWidget);
+ containerControl.requestLayout();
+ Rectangle targetControlBounds = calculateControlBounds(targetControl);
Rectangle overlayBounds = calculateDesiredOverlayBounds(targetControlBounds);
updatePosition(overlayBounds);
configureDisplayedWidgetsForWidth(overlayBounds.width);
@@ -908,21 +774,16 @@ private void updatePlacementAndVisibility() {
repositionTextSelection();
}
- private boolean isInvalidTargetPart() {
- return targetPart == null || targetPart.getSite() == null || targetPart.getSite().getShell() == null;
- }
-
- private boolean isInvalidTargetShell() {
- if (isInvalidTargetPart()) {
- return false;
+ private Rectangle calculateControlBounds(Control control) {
+ Rectangle controlBounds = control.getBounds();
+ int width = controlBounds.width;
+ int height = controlBounds.height;
+ int x = 0;
+ int y = 0;
+ if (insertedInTargetParent()) {
+ x = controlBounds.x;
+ y = controlBounds.y;
}
- return !targetPart.getSite().getShell().equals(getShell().getParent());
- }
-
- private Rectangle calculateAbsoluteControlBounds(Control control) {
- Rectangle localControlBounds = control.getBounds();
- int width = localControlBounds.width;
- int height = localControlBounds.height;
if (control instanceof Scrollable scrollable) {
ScrollBar verticalBar = scrollable.getVerticalBar();
ScrollBar horizontalBar = scrollable.getHorizontalBar();
@@ -936,13 +797,12 @@ private Rectangle calculateAbsoluteControlBounds(Control control) {
if (control instanceof StyledText styledText) {
width -= styledText.getRightMargin();
}
- Point absoluteControlPosition = control.toDisplay(0, 0);
- return new Rectangle(absoluteControlPosition.x, absoluteControlPosition.y, width, height);
+ return new Rectangle(x, y, width, height);
}
private Rectangle calculateDesiredOverlayBounds(Rectangle targetControlBounds) {
int width = getIdealOverlayWidth(targetControlBounds);
- int height = container.computeSize(SWT.DEFAULT, SWT.DEFAULT).y;
+ int height = containerControl.computeSize(SWT.DEFAULT, SWT.DEFAULT).y;
int x = targetControlBounds.x + targetControlBounds.width - width;
int y = targetControlBounds.y;
@@ -954,9 +814,9 @@ private Rectangle calculateDesiredOverlayBounds(Rectangle targetControlBounds) {
}
private void updatePosition(Rectangle overlayBounds) {
- getShell().setSize(new Point(overlayBounds.width, overlayBounds.height));
- getShell().setLocation(new Point(overlayBounds.x, overlayBounds.y));
- getShell().layout(true);
+ containerControl.setSize(new Point(overlayBounds.width, overlayBounds.height));
+ containerControl.setLocation(new Point(overlayBounds.x, overlayBounds.y));
+ containerControl.layout(true);
}
private void updateVisibility(Rectangle targetControlBounds, Rectangle overlayBounds) {
@@ -967,9 +827,8 @@ private void updateVisibility(Rectangle targetControlBounds, Rectangle overlayBo
} else {
shallBeVisible = overlayBounds.y >= targetControlBounds.y;
}
- Shell shell = getShell();
- if (shallBeVisible != shell.isVisible()) {
- shell.setVisible(shallBeVisible);
+ if (shallBeVisible != containerControl.isVisible()) {
+ containerControl.setVisible(shallBeVisible);
}
}
@@ -1009,7 +868,7 @@ private void updateFromTargetSelection() {
}
private void evaluateFindReplaceStatus() {
- Color warningColor = JFaceColors.getErrorText(getShell().getDisplay());
+ Color warningColor = JFaceColors.getErrorText(containerControl.getShell().getDisplay());
IFindReplaceStatus status = findReplaceLogic.getStatus();
if (!status.wasSuccessful()) {
@@ -1041,7 +900,7 @@ private static boolean okayToUse(Widget widget) {
public void setPositionToTop(boolean shouldPositionOverlayOnTop) {
positionAtTop = shouldPositionOverlayOnTop;
- if (overlayOpen) {
+ if (containerControl != null && containerControl.isVisible()) {
updatePlacementAndVisibility();
}
}
@@ -1061,4 +920,5 @@ private void setContentAssistsEnablement(boolean enable) {
private void updateContentAssistAvailability() {
setContentAssistsEnablement(findReplaceLogic.isAvailableAndActive(SearchOptions.REGEX));
}
+
}
\ No newline at end of file
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceAction.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceAction.java
index e6ba4778444..41b617821c7 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceAction.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceAction.java
@@ -429,7 +429,7 @@ private void showOverlayInEditor() {
overlay.setPositionToTop(shouldPositionOverlayOnTop());
hookDialogPreferenceListener();
- overlay.getShell().addDisposeListener(__ -> removeDialogPreferenceListener());
+ overlay.getContainerControl().addDisposeListener(__ -> removeDialogPreferenceListener());
}
@Override
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
index 342087b7cb3..ae07a9643ec 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/internal/findandreplace/overlay/OverlayAccess.java
@@ -24,9 +24,9 @@
import java.util.stream.Collectors;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.ToolItem;
import org.eclipse.jface.text.IFindReplaceTarget;
@@ -63,13 +63,10 @@ class OverlayAccess implements IFindReplaceUIAccess {
private final FindReplaceOverlay overlay;
- private final Shell shell;
-
OverlayAccess(IFindReplaceTarget findReplaceTarget, FindReplaceOverlay findReplaceOverlay) {
this.findReplaceTarget= findReplaceTarget;
overlay= findReplaceOverlay;
- shell= overlay.getShell();
- WidgetExtractor widgetExtractor= new WidgetExtractor(FindReplaceOverlay.ID_DATA_KEY, shell);
+ WidgetExtractor widgetExtractor= new WidgetExtractor(FindReplaceOverlay.ID_DATA_KEY, findReplaceOverlay.getContainerControl());
find= widgetExtractor.findHistoryTextWrapper("searchInput");
caseSensitive= widgetExtractor.findToolItem("caseSensitiveSearch");
wholeWord= widgetExtractor.findToolItem("wholeWordSearch");
@@ -83,13 +80,17 @@ class OverlayAccess implements IFindReplaceUIAccess {
private void extractReplaceWidgets() {
if (!isReplaceDialogOpen() && Objects.nonNull(openReplaceDialog)) {
- WidgetExtractor widgetExtractor= new WidgetExtractor(FindReplaceOverlay.ID_DATA_KEY, shell);
+ WidgetExtractor widgetExtractor= new WidgetExtractor(FindReplaceOverlay.ID_DATA_KEY, getContainerControl());
replace= widgetExtractor.findHistoryTextWrapper("replaceInput");
replaceButton= widgetExtractor.findToolItem("replaceOne");
replaceAllButton= widgetExtractor.findToolItem("replaceAll");
}
}
+ private Composite getContainerControl() {
+ return overlay.getContainerControl();
+ }
+
private void restoreInitialConfiguration() {
find.setText("");
select(SearchOptions.GLOBAL);
@@ -309,14 +310,19 @@ public void assertEnabled(SearchOptions option) {
@Override
public boolean isShown() {
- return !shell.isDisposed() && shell.isVisible();
+ return getContainerControl().isVisible();
}
@Override
public boolean hasFocus() {
- Control focusControl= shell.getDisplay().getFocusControl();
- Shell focusControlShell= focusControl != null ? focusControl.getShell() : null;
- return focusControlShell == shell;
+ Control focusControl= getContainerControl().getDisplay().getFocusControl();
+ while (focusControl != null) {
+ if (getContainerControl() == focusControl) {
+ return true;
+ }
+ focusControl= focusControl.getParent();
+ }
+ return false;
}
}
From 545ac677314f6c4228218560d24e461bfdc13a86 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Fri, 11 Oct 2024 14:21:40 +0200
Subject: [PATCH 046/232] TestRunLogUtil: add stacktrace to stdout
Otherwise it's hard to tell which test failed when/first if errors are
collected in other logfiles only.
---
.../org/eclipse/ui/tests/harness/util/TestRunLogUtil.java | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/TestRunLogUtil.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/TestRunLogUtil.java
index 9d997926a72..83b4d6771cb 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/TestRunLogUtil.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/TestRunLogUtil.java
@@ -40,6 +40,12 @@ protected void starting(Description description) {
System.out.println(formatTestStartMessage(description.getMethodName()));
}
+ @Override
+ protected void failed(Throwable e, Description description) {
+ System.out.println(description.getMethodName() + " failed:");
+ e.printStackTrace(System.out);
+ }
+
@Override
protected void finished(Description description) {
System.out.println(formatTestFinishedMessage(description.getMethodName()));
From 6d7fa3929c55384cf2962847586baed3973e4697 Mon Sep 17 00:00:00 2001
From: Ed Merks
Date: Fri, 11 Oct 2024 06:11:24 +0200
Subject: [PATCH 047/232] Increase InternalDialog width hint from 50 characters
to 70 characters
---
.../eclipse/ui/internal/statushandlers/InternalDialog.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/InternalDialog.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/InternalDialog.java
index c7a7560de45..fbd51b76f40 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/InternalDialog.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/InternalDialog.java
@@ -239,7 +239,7 @@ private void createTitleArea(Composite parent) {
titleImageLabel.setLayoutData(layoutData);
GridData messageData = new GridData(SWT.FILL, SWT.FILL, true, true);
- messageData.widthHint = convertWidthInCharsToPixels(50);
+ messageData.widthHint = convertWidthInCharsToPixels(70);
mainMessageLabel = new Label(titleArea, SWT.WRAP);
mainMessageLabel.setLayoutData(messageData);
// main message set up early, to address bug 222391
@@ -602,7 +602,7 @@ private Composite createSingleStatusDisplayArea(Composite parent) {
// label that wraps
singleStatusLabel = new Label(singleStatusParent, SWT.WRAP);
GridData labelLayoutData = new GridData(SWT.FILL, SWT.FILL, true, true);
- labelLayoutData.widthHint = convertWidthInCharsToPixels(50);
+ labelLayoutData.widthHint = convertWidthInCharsToPixels(70);
singleStatusLabel.setLayoutData(labelLayoutData);
// main message set up early, to address bug 222391
singleStatusLabel.setText(getLabelProviderWrapper().getColumnText(getCurrentStatusAdapter(), 0));
From dea7b79dd7366084f864ffa56bab39ffde30f228 Mon Sep 17 00:00:00 2001
From: Maximilian Wittmer
Date: Mon, 2 Sep 2024 13:14:51 +0200
Subject: [PATCH 048/232] SearchHistoryMenu: improve scrolling through
selection with arrow keys
Scrolling through the selection of the Search History now correctly
starts at the first item and cycles through the boundaries (ie.
scrolling down from the last item returns correctly to the first item of
the list)
fixes #2139
---
.../overlay/SearchHistoryMenu.java | 59 ++++++++++++++-----
1 file changed, 45 insertions(+), 14 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/SearchHistoryMenu.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/SearchHistoryMenu.java
index 4360d900f91..4c7d127ae52 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/SearchHistoryMenu.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/SearchHistoryMenu.java
@@ -54,6 +54,7 @@ public void shellDeactivated(ShellEvent e) {
private int width;
private Table table;
private TableColumn column;
+ private int selectedIndexInTable = -1;
public SearchHistoryMenu(Shell parent, HistoryStore history, Consumer historyEntrySelectedCallback) {
super(parent);
@@ -92,28 +93,58 @@ public Control createContents(Composite parent) {
return table;
}
+ private void moveSelectionInTable(int indexShift) {
+ selectedIndexInTable += indexShift;
+ if (selectedIndexInTable < 0) {
+ selectedIndexInTable = table.getItemCount() - 1;
+ } else if (selectedIndexInTable > table.getItemCount() - 1) {
+ selectedIndexInTable = 0;
+ }
+ table.setSelection(selectedIndexInTable);
+ historyEntrySelectedCallback.accept(table.getSelection()[0].getText());
+ }
+
private void attachTableListeners() {
- table.addSelectionListener(SelectionListener.widgetSelectedAdapter(e -> {
- TableItem[] selection = table.getSelection();
- if (selection.length == 0) {
- historyEntrySelectedCallback.accept(null);
- return;
+ table.addListener(SWT.MouseMove, event -> {
+ Point point = new Point(event.x, event.y);
+ TableItem item = table.getItem(point);
+ if (item != null) {
+ table.setSelection(item);
+ selectedIndexInTable = table.getSelectionIndex();
}
- String text = selection[0].getText();
- if (text != null) {
- historyEntrySelectedCallback.accept(text);
+ });
+ table.addKeyListener(KeyListener.keyPressedAdapter(e -> {
+ if (e.keyCode == SWT.ARROW_DOWN) {
+ moveSelectionInTable(1);
+ e.doit = false;
+ } else if (e.keyCode == SWT.ARROW_UP) {
+ moveSelectionInTable(-1);
+ e.doit = false;
+ } else if (e.keyCode == SWT.CR || e.keyCode == SWT.KEYPAD_CR) {
+ notifyParentOfSelectionInput();
+ close();
}
- historyEntrySelectedCallback.accept(null);
+ }));
+ table.addSelectionListener(SelectionListener.widgetSelectedAdapter(e -> {
+ notifyParentOfSelectionInput();
}));
table.addMouseListener(MouseListener.mouseDownAdapter(e -> {
table.notifyListeners(SWT.Selection, null);
close();
}));
- table.addKeyListener(KeyListener.keyPressedAdapter(e -> {
- if (e.keyCode == SWT.CR || e.keyCode == SWT.KEYPAD_CR) {
- close();
- }
- }));
+ }
+
+ private void notifyParentOfSelectionInput() {
+ TableItem[] selection = table.getSelection();
+ if (selection.length == 0) {
+ historyEntrySelectedCallback.accept(null);
+ return;
+ }
+ String text = selection[0].getText();
+ if (text != null) {
+ historyEntrySelectedCallback.accept(text);
+ }
+ historyEntrySelectedCallback.accept(null);
}
private void positionShell() {
From 1eead54aac4c037be1bbc08870ccf27aa870cfc8 Mon Sep 17 00:00:00 2001
From: Ed Merks
Date: Sat, 12 Oct 2024 16:35:36 +0200
Subject: [PATCH 049/232] PreferencePageParameterValues_pageLabelSeparator add
trailing space
- This property is supposed to have a training space which was specified
by `\ ` but the space as removed which then continues the property value
onto the next line which is not the desired effect and results in the
ThemingEnabled property being missing.
---
.../Eclipse UI/org/eclipse/ui/internal/messages.properties | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index a0d3827e92c..5b4f163b81c 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -493,7 +493,7 @@ OpenPerspectiveDialogAction_tooltip=Open Perspective
#---- General Preferences----
PreferencePage_noDescription = (No description available)
-PreferencePageParameterValues_pageLabelSeparator = \ >\
+PreferencePageParameterValues_pageLabelSeparator = \ >\
ThemingEnabled = E&nable theming
ThemeChangeWarningText = Restart for the theme changes to take full effect
ThemeChangeWarningTitle = Theme Changed
From 52d1a353369c6c93a9138144601bf601876fe79b Mon Sep 17 00:00:00 2001
From: raghucssit
Date: Tue, 1 Oct 2024 13:24:05 +0200
Subject: [PATCH 050/232] Improve workspace lock error dialog.
Write workspace lock info like user, host, java process id, display
properties onto a new file .lock_info if the lock was successful.
Read the current lock data in case of lock was unsuccessful and show it
in error dialog.
If the .lock_info does not exist or the file has no info then nothing is
shown. For older eclipse versions.
see https://github.com/eclipse-platform/eclipse.platform.ui/issues/2343
---
.../ide/application/IDEApplication.java | 208 +++++++++++++++++-
.../ui/internal/ide/IDEWorkbenchMessages.java | 6 +
.../ui/internal/ide/messages.properties | 6 +
3 files changed, 218 insertions(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
index 394cf65cfe9..5deff13b81f 100644
--- a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
+++ b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
@@ -25,8 +25,11 @@
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
+import java.net.InetAddress;
import java.net.MalformedURLException;
import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Path;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Properties;
@@ -49,7 +52,11 @@
import org.eclipse.osgi.service.datalocation.Location;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.PlatformUI;
@@ -79,6 +86,22 @@ public class IDEApplication implements IApplication, IExecutableExtension {
private static final String VERSION_FILENAME = "version.ini"; //$NON-NLS-1$
+ private static final String LOCK_INFO_FILENAME = ".lock_info"; //$NON-NLS-1$
+
+ private static final String DISPLAY_VAR = "DISPLAY"; //$NON-NLS-1$
+
+ private static final String HOST_NAME_VAR = "HOSTNAME"; //$NON-NLS-1$
+
+ private static final String PROCESS_ID = "process-id"; //$NON-NLS-1$
+
+ private static final String DISPLAY = "display"; //$NON-NLS-1$
+
+ private static final String HOST = "host"; //$NON-NLS-1$
+
+ private static final String USER = "user"; //$NON-NLS-1$
+
+ private static final String USER_NAME = "user.name"; //$NON-NLS-1$
+
// Use the branding plug-in of the platform feature since this is most likely
// to change on an update of the IDE.
private static final String WORKSPACE_CHECK_REFERENCE_BUNDLE_NAME = "org.eclipse.platform"; //$NON-NLS-1$
@@ -225,6 +248,7 @@ protected Object checkInstanceLocation(Shell shell, Map applicationArguments) {
try {
if (instanceLoc.lock()) {
writeWorkspaceVersion();
+ writeWsLockInfo(instanceLoc.getURL());
return null;
}
@@ -237,10 +261,19 @@ protected Object checkInstanceLocation(Shell shell, Map applicationArguments) {
if (isDevLaunchMode(applicationArguments)) {
return EXIT_WORKSPACE_LOCKED;
}
+
+ String wsLockedError = NLS.bind(IDEWorkbenchMessages.IDEApplication_workspaceCannotLockMessage,
+ workspaceDirectory.getAbsolutePath());
+ // check if there is a lock info then append it to error message.
+ String lockInfo = getWorkspaceLockInfo(instanceLoc.getURL());
+ if (lockInfo != null && !lockInfo.isBlank()) {
+ wsLockedError = wsLockedError + System.lineSeparator() + System.lineSeparator()
+ + NLS.bind(IDEWorkbenchMessages.IDEApplication_Ws_Lock_Owner_Message, lockInfo);
+ }
MessageDialog.openError(
shell,
IDEWorkbenchMessages.IDEApplication_workspaceCannotLockTitle,
- NLS.bind(IDEWorkbenchMessages.IDEApplication_workspaceCannotLockMessage, workspaceDirectory.getAbsolutePath()));
+ wsLockedError);
} else {
MessageDialog.openError(
shell,
@@ -313,6 +346,7 @@ protected Object checkInstanceLocation(Shell shell, Map applicationArguments) {
if (instanceLoc.set(workspaceUrl, true)) {
launchData.writePersistedData();
writeWorkspaceVersion();
+ writeWsLockInfo(instanceLoc.getURL());
return null;
}
} catch (IllegalStateException e) {
@@ -332,10 +366,28 @@ protected Object checkInstanceLocation(Shell shell, Map applicationArguments) {
// by this point it has been determined that the workspace is
// already in use -- force the user to choose again
+
+ String lockInfo = getWorkspaceLockInfo(workspaceUrl);
+
MessageDialog dialog = new MessageDialog(null, IDEWorkbenchMessages.IDEApplication_workspaceInUseTitle,
null, NLS.bind(IDEWorkbenchMessages.IDEApplication_workspaceInUseMessage, workspaceUrl.getFile()),
MessageDialog.ERROR, 1, IDEWorkbenchMessages.IDEApplication_workspaceInUse_Retry,
- IDEWorkbenchMessages.IDEApplication_workspaceInUse_Choose);
+ IDEWorkbenchMessages.IDEApplication_workspaceInUse_Choose) {
+ @Override
+ protected Control createCustomArea(Composite parent) {
+ if (lockInfo == null || lockInfo.isBlank()) {
+ return null;
+ }
+
+ Composite container = new Composite(parent, SWT.NONE);
+ container.setLayout(new FillLayout());
+
+ Label multiLineText = new Label(container, SWT.NONE);
+ multiLineText.setText(NLS.bind(IDEWorkbenchMessages.IDEApplication_Ws_Lock_Owner_Message, lockInfo));
+
+ return container;
+ }
+ };
// the return value influences the next loop's iteration
returnValue = dialog.open();
// Remember the locked workspace as recent workspace
@@ -343,6 +395,158 @@ protected Object checkInstanceLocation(Shell shell, Map applicationArguments) {
}
}
+ /**
+ * Read workspace lock file and parse all the properties present. Based on the
+ * eclipse version and operating system some or all the properties may not
+ * present. In such scenario it will return empty string.
+ *
+ * @return Previous lock owner details.
+ */
+ protected String getWorkspaceLockInfo(URL workspaceUrl) {
+ try {
+ File lockFile = getLockInfoFile(workspaceUrl);
+ if (!lockFile.exists()) {
+ return null;
+ }
+
+ StringBuilder sb = new StringBuilder();
+ Properties props = new Properties();
+ try (FileInputStream is = new FileInputStream(lockFile)) {
+ props.load(is);
+ String prop = props.getProperty(USER);
+ if (prop != null) {
+ sb.append(NLS.bind(IDEWorkbenchMessages.IDEApplication_Ws_Lock_Owner_User, prop));
+ }
+ prop = props.getProperty(HOST);
+ if (prop != null) {
+ sb.append(NLS.bind(IDEWorkbenchMessages.IDEApplication_Ws_Lock_Owner_Host, prop));
+ }
+ prop = props.getProperty(DISPLAY);
+ if (prop != null) {
+ sb.append(NLS.bind(IDEWorkbenchMessages.IDEApplication_Ws_Lock_Owner_Disp, prop));
+ }
+ prop = props.getProperty(PROCESS_ID);
+ if (prop != null) {
+ sb.append(NLS.bind(IDEWorkbenchMessages.IDEApplication_Ws_Lock_Owner_P_Id, prop));
+ }
+ return sb.toString();
+ }
+ } catch (Exception e) {
+ IDEWorkbenchPlugin.log("Could not read lock info file: ", e); //$NON-NLS-1$
+
+ }
+ return null;
+ }
+
+ /**
+ * Write lock owner details onto workspace lock file. Data includes user, host,
+ * display and current java process id.
+ *
+ * @param instanceLoc
+ */
+ protected void writeWsLockInfo(URL workspaceUrl) {
+ Properties props = new Properties();
+
+ String user = System.getProperty(USER_NAME);
+ if (user != null) {
+ props.setProperty(USER, user);
+ }
+ String host = getHostName();
+ if (host != null) {
+ props.setProperty(HOST, host);
+ }
+ String display = getDisplay();
+ if (display != null) {
+ props.setProperty(DISPLAY, display);
+ }
+ String pid = getProcessId();
+ if (pid != null) {
+ props.setProperty(PROCESS_ID, pid);
+ }
+
+ if (props.isEmpty()) {
+ return;
+ }
+
+ try (OutputStream output = new FileOutputStream(createLockInfoFile(workspaceUrl))) {
+ props.store(output, null);
+ } catch (Exception e) {
+ IDEWorkbenchPlugin.log("Could not write lock info file", e); //$NON-NLS-1$
+ }
+ }
+
+ private String getDisplay() {
+ String displayEnv = null;
+ try {
+ displayEnv = System.getenv(DISPLAY_VAR);
+ } catch (Exception e) {
+ IDEWorkbenchPlugin.log("Failed to read DISPLAY variable.", e); //$NON-NLS-1$
+ }
+ return displayEnv;
+ }
+
+ private String getProcessId() {
+ Long pid = null;
+ try {
+ pid = ProcessHandle.current().pid();
+ } catch (Exception e) {
+ IDEWorkbenchPlugin.log("Failed to read Java process id.", e); //$NON-NLS-1$
+ }
+ return pid != null ? pid.toString() : null;
+ }
+
+ private String getHostName() {
+ String hostName = null;
+
+ // Try fast approach first. Some OS(Like Linux) has HOSTNAME environment
+ // variable set.
+ try {
+ hostName = System.getenv(HOST_NAME_VAR);
+ if (hostName != null && !hostName.isEmpty()) {
+ return hostName;
+ }
+ } catch (Exception e) {
+ // Ignore here because we will try another method in the next step.
+ }
+
+ try {
+ hostName = InetAddress.getLocalHost().getHostName();
+ } catch (Exception e) {
+ IDEWorkbenchPlugin.log("Failed to read host name.", e); //$NON-NLS-1$
+ }
+ return hostName;
+ }
+
+ /**
+ * Returns the .lock_info file. Does not check if it exists.
+ *
+ * @param workspaceUrl
+ * @return .lock_info file.
+ */
+ private File getLockInfoFile(URL workspaceUrl) {
+ Path lockInfoPath = Path.of(workspaceUrl.getPath(), METADATA_FOLDER, LOCK_INFO_FILENAME);
+ return lockInfoPath.toFile();
+ }
+
+ /**
+ * Creates the .lock_info file if it does not exist.
+ *
+ * @param workspaceUrl
+ * @return .lock_info file.
+ */
+ private File createLockInfoFile(URL workspaceUrl) throws Exception {
+ File lockInfoFile = getLockInfoFile(workspaceUrl);
+
+ if (lockInfoFile.exists())
+ return lockInfoFile;
+
+ Path createdPath = Files.createFile(lockInfoFile.toPath());
+ if (createdPath != null) {
+ return createdPath.toFile();
+ }
+ return null;
+ }
+
@SuppressWarnings("rawtypes")
private static boolean isDevLaunchMode(Map args) {
// see org.eclipse.pde.internal.core.PluginPathFinder.isDevLaunchMode()
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java
index 78700035350..d7e7a933f04 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java
@@ -1147,6 +1147,12 @@ public class IDEWorkbenchMessages extends NLS {
public static String WorkbenchPreference_maxSimultaneousBuilds;
public static String WorkbenchPreference_maxSimultaneousBuildIntervalError;
+ public static String IDEApplication_Ws_Lock_Owner_User;
+ public static String IDEApplication_Ws_Lock_Owner_Host;
+ public static String IDEApplication_Ws_Lock_Owner_Disp;
+ public static String IDEApplication_Ws_Lock_Owner_P_Id;
+ public static String IDEApplication_Ws_Lock_Owner_Message;
+
static {
// load message values from bundle file
NLS.initializeMessages(BUNDLE_NAME, IDEWorkbenchMessages.class);
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/messages.properties b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/messages.properties
index 3f9b127093c..7bff4752fb9 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/messages.properties
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/messages.properties
@@ -1150,3 +1150,9 @@ OpenDelayedUrlAction_title=Open URL
editorAssociationOverride_error_couldNotCreate_message=The ''{0}'' extension from plug-in ''{1}'' to the ''org.eclipse.ui.ide.editorAssociationOverride'' extension point failed to load the editor association override class.
editorAssociationOverride_error_invalidElementName_message=An extension from plug-in ''{0}'' to the ''org.eclipse.ui.ide.editorAssociationOverride'' extension point was ignored because it contains the following invalid element: ''{1}''.
editorAssociationOverride_error_invalidExtension_message=The ''{0}'' extension from plug-in ''{1}'' to the ''org.eclipse.ui.ide.editorAssociationOverride'' extension point will be ignored because it contains invalid attributes.
+
+IDEApplication_Ws_Lock_Owner_User=User:\t\t{0}\n
+IDEApplication_Ws_Lock_Owner_Host=Host:\t\t{0}\n
+IDEApplication_Ws_Lock_Owner_Disp=Display:\t\t{0}\n
+IDEApplication_Ws_Lock_Owner_P_Id=Process ID:\t{0}\n
+IDEApplication_Ws_Lock_Owner_Message=Workspace lock is currently held by:\n{0}
From 7587ea1d05bcbbf36ddc8e08d28d571f886cda45 Mon Sep 17 00:00:00 2001
From: jannisCode
Date: Tue, 8 Oct 2024 10:15:08 +0200
Subject: [PATCH 051/232] Changed the functionality of the regex search with
control decorations
---
.../internal/ui/text/TextSearchPage.java | 34 +++-----
.../overlay/FindReplaceOverlay.java | 16 ++++
.../ui/texteditor/FindReplaceDialog.java | 57 +++++++++----
bundles/org.eclipse.ui/META-INF/MANIFEST.MF | 2 +-
.../eclipse/ui/internal/SearchDecoration.java | 82 +++++++++++++++++++
5 files changed, 151 insertions(+), 40 deletions(-)
create mode 100644 bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java
diff --git a/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchPage.java b/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchPage.java
index 194abb008ce..8ea2e10b37f 100644
--- a/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchPage.java
+++ b/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchPage.java
@@ -54,7 +54,7 @@
import org.eclipse.jface.dialogs.ErrorDialog;
import org.eclipse.jface.dialogs.IDialogSettings;
import org.eclipse.jface.fieldassist.ComboContentAdapter;
-import org.eclipse.jface.resource.JFaceColors;
+import org.eclipse.jface.fieldassist.ControlDecoration;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.text.FindReplaceDocumentAdapter;
@@ -68,6 +68,7 @@
import org.eclipse.ui.IWorkingSetManager;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.fieldassist.ContentAssistCommandAdapter;
+import org.eclipse.ui.internal.SearchDecoration;
import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
@@ -140,8 +141,7 @@ public class TextSearchPage extends DialogPage implements ISearchPage, IReplaceP
*/
private String[] fPreviousExtensions;
private Label fFileNamePatternDescription;
-
-
+ private ControlDecoration fPatternDecoration;
private static class SearchPatternData {
public final boolean isCaseSensitive;
public final boolean isRegExSearch;
@@ -450,6 +450,7 @@ public void setVisible(boolean visible) {
}
final void updateOKStatus() {
+ fPatternDecoration.hide();
boolean regexStatus= validateRegex();
getContainer().setPerformActionEnabled(regexStatus);
}
@@ -479,24 +480,19 @@ public void createControl(Composite parent) {
setControl(result);
Dialog.applyDialogFont(result);
PlatformUI.getWorkbench().getHelpSystem().setHelp(result, ISearchHelpContextIds.TEXT_SEARCH_PAGE);
-}
+ }
private boolean validateRegex() {
+
if (fIsRegExCheckbox.getSelection()) {
try {
PatternConstructor.createPattern(fPattern.getText(), fIsCaseSensitive, true);
} catch (PatternSyntaxException e) {
- String locMessage= e.getLocalizedMessage();
- int i= 0;
- while (i < locMessage.length() && "\n\r".indexOf(locMessage.charAt(i)) == -1) { //$NON-NLS-1$
- i++;
- }
- statusMessage(true, locMessage.substring(0, i)); // only take first line
+ SearchDecoration.validateRegex(fPattern.getText(), fPatternDecoration);
return false;
}
- statusMessage(false, ""); //$NON-NLS-1$
} else {
- statusMessage(false, SearchMessages.SearchPage_containingText_hint);
+ fPatternDecoration.hide();
}
return true;
}
@@ -512,6 +508,8 @@ private void addTextPatternControls(Composite group) {
// Pattern combo
fPattern= new Combo(group, SWT.SINGLE | SWT.BORDER);
+ fPatternDecoration = new ControlDecoration(fPattern, SWT.BOTTOM | SWT.LEFT);
+
// Not done here to prevent page from resizing
// fPattern.setItems(getPreviousSearchPatterns());
fPattern.addSelectionListener(new SelectionAdapter() {
@@ -561,7 +559,6 @@ public void widgetSelected(SelectionEvent e) {
public void widgetSelected(SelectionEvent e) {
fIsRegExSearch= fIsRegExCheckbox.getSelection();
updateOKStatus();
-
writeConfiguration();
fPatterFieldContentAssist.setEnabled(fIsRegExSearch);
fIsWholeWordCheckbox.setEnabled(!fIsRegExSearch);
@@ -860,15 +857,4 @@ private void writeConfiguration() {
}
- private void statusMessage(boolean error, String message) {
- fStatusLabel.setText(message);
- if (error) {
- fStatusLabel.setForeground(JFaceColors.getErrorText(fStatusLabel.getDisplay()));
- }
- else {
- // use same color as another label to respect styling
- fStatusLabel.setForeground(fFileNamePatternDescription.getForeground());
- }
- }
-
}
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index a6ae0d007f1..907a34d2a49 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -48,6 +48,7 @@
import org.eclipse.jface.bindings.keys.KeyStroke;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.fieldassist.ControlDecoration;
import org.eclipse.jface.fieldassist.TextContentAdapter;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.layout.GridLayoutFactory;
@@ -61,6 +62,7 @@
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.fieldassist.ContentAssistCommandAdapter;
+import org.eclipse.ui.internal.SearchDecoration;
import org.eclipse.ui.internal.findandreplace.FindReplaceLogic;
import org.eclipse.ui.internal.findandreplace.FindReplaceMessages;
import org.eclipse.ui.internal.findandreplace.HistoryStore;
@@ -140,6 +142,7 @@ private final class KeyboardShortcuts {
private Color overlayBackgroundColor;
private Color normalTextForegroundColor;
private boolean positionAtTop = true;
+ private ControlDecoration searchBarDecoration;
private ContentAssistCommandAdapter contentAssistSearchField, contentAssistReplaceField;
public FindReplaceOverlay(Shell parent, IWorkbenchPart part, IFindReplaceTarget target) {
@@ -469,6 +472,7 @@ private void createRegexSearchButton() {
wholeWordSearchButton.setEnabled(findReplaceLogic.isAvailable(SearchOptions.WHOLE_WORD));
updateIncrementalSearch();
updateContentAssistAvailability();
+ decorate();
}).withShortcuts(KeyboardShortcuts.OPTION_REGEX).build();
regexSearchButton.setSelection(findReplaceLogic.isActive(SearchOptions.REGEX));
}
@@ -542,6 +546,7 @@ private void createSearchBar() {
HistoryStore searchHistory = new HistoryStore(getDialogSettings(), "searchhistory", //$NON-NLS-1$
HISTORY_SIZE);
searchBar = new HistoryTextWrapper(searchHistory, searchBarContainer, SWT.SINGLE);
+ searchBarDecoration = new ControlDecoration(searchBar, SWT.BOTTOM | SWT.LEFT);
GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(searchBar);
searchBar.forceFocus();
searchBar.selectAll();
@@ -587,6 +592,9 @@ private void setTextEditorActionsActivated(boolean state) {
});
searchBar.setMessage(FindReplaceMessages.FindReplaceOverlay_searchBar_message);
contentAssistSearchField = createContentAssistField(searchBar, true);
+ searchBar.addModifyListener(Event -> {
+ decorate();
+ });
}
private void updateIncrementalSearch() {
@@ -921,4 +929,12 @@ private void updateContentAssistAvailability() {
setContentAssistsEnablement(findReplaceLogic.isAvailableAndActive(SearchOptions.REGEX));
}
+ private void decorate() {
+ if (regexSearchButton.getSelection()) {
+ SearchDecoration.validateRegex(getFindString(), searchBarDecoration);
+ } else {
+ searchBarDecoration.hide();
+ }
+ }
+
}
\ No newline at end of file
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
index 2ab91df8d15..d71941d293f 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
@@ -49,6 +49,7 @@
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogSettings;
import org.eclipse.jface.fieldassist.ComboContentAdapter;
+import org.eclipse.jface.fieldassist.ControlDecoration;
import org.eclipse.jface.fieldassist.FieldDecoration;
import org.eclipse.jface.fieldassist.FieldDecorationRegistry;
import org.eclipse.jface.resource.JFaceColors;
@@ -64,6 +65,7 @@
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.fieldassist.ContentAssistCommandAdapter;
+import org.eclipse.ui.internal.SearchDecoration;
import org.eclipse.ui.internal.findandreplace.FindReplaceLogic;
import org.eclipse.ui.internal.findandreplace.FindReplaceLogicMessageGenerator;
import org.eclipse.ui.internal.findandreplace.FindReplaceMessages;
@@ -71,6 +73,7 @@
import org.eclipse.ui.internal.findandreplace.IFindReplaceLogic;
import org.eclipse.ui.internal.findandreplace.SearchOptions;
import org.eclipse.ui.internal.findandreplace.status.IFindReplaceStatus;
+import org.eclipse.ui.internal.findandreplace.status.InvalidRegExStatus;
import org.eclipse.ui.internal.texteditor.SWTUtil;
/**
@@ -147,7 +150,10 @@ public void modifyText(ModifyEvent e) {
fIgnoreNextEvent = false;
return;
}
- evaluateFindReplaceStatus();
+ modificationHandler.run();
+ fFindField.addModifyListener(event -> {
+ decorate();
+ });
updateButtonState(!findReplaceLogic.isActive(SearchOptions.INCREMENTAL));
}
@@ -178,6 +184,7 @@ public void modifyText(ModifyEvent e) {
private Button fReplaceSelectionButton, fReplaceFindButton, fFindNextButton, fReplaceAllButton, fSelectAllButton;
private Combo fFindField, fReplaceField;
private InputModifyListener fFindModifyListener, fReplaceModifyListener;
+ private boolean regexOk = true;
/**
* Find and replace command adapters.
@@ -196,6 +203,7 @@ public void modifyText(ModifyEvent e) {
* @since 3.0
*/
private boolean fGiveFocusToFindField = true;
+ private ControlDecoration fFindFieldDecoration;
/**
* Holds the mnemonic/button pairs for all buttons.
@@ -310,6 +318,7 @@ public void widgetSelected(SelectionEvent e) {
writeSelection();
updateButtonState(!somethingFound);
+
updateFindHistory();
evaluateFindReplaceStatus();
}
@@ -345,6 +354,7 @@ public void widgetSelected(SelectionEvent e) {
evaluateFindReplaceStatus();
}
});
+
setGridData(fReplaceFindButton, SWT.FILL, false, SWT.FILL, false);
fReplaceSelectionButton = makeButton(panel, FindReplaceMessages.FindReplace_ReplaceSelectionButton_label, 104,
@@ -634,6 +644,8 @@ private Composite createInputPanel(Composite parent) {
FindReplaceDocumentAdapterContentProposalProvider findProposer = new FindReplaceDocumentAdapterContentProposalProvider(
true);
fFindField = new Combo(panel, SWT.DROP_DOWN | SWT.BORDER);
+ fFindFieldDecoration = new ControlDecoration(fFindField, SWT.BOTTOM | SWT.LEFT);
+
fContentAssistFindField = new ContentAssistCommandAdapter(fFindField, contentAdapter, findProposer,
ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS, new char[0], true);
setGridData(fFindField, SWT.FILL, true, SWT.CENTER, false);
@@ -750,6 +762,10 @@ public void widgetDefaultSelected(SelectionEvent e) {
@Override
public void widgetSelected(SelectionEvent e) {
boolean newState = fIsRegExCheckBox.getSelection();
+ decorate();
+ if (!newState) {
+ regexOk = true;
+ }
setupFindReplaceLogic();
storeSettings();
updateButtonState();
@@ -1050,9 +1066,10 @@ private void addDecorationMargin(Control control) {
if (!(layoutData instanceof GridData))
return;
GridData gd = (GridData) layoutData;
- FieldDecoration dec = FieldDecorationRegistry.getDefault()
+
+ FieldDecoration fieldDecoration = FieldDecorationRegistry.getDefault()
.getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL);
- gd.horizontalIndent = dec.getImage().getBounds().width;
+ gd.horizontalIndent = fieldDecoration.getImage().getBounds().width;
}
/**
@@ -1092,8 +1109,9 @@ private void updateButtonState(boolean disableReplace) {
|| !isRegExSearchAvailableAndActive;
fWholeWordCheckBox.setEnabled(findReplaceLogic.isAvailable(SearchOptions.WHOLE_WORD));
- fFindNextButton.setEnabled(enable && isFindStringSet);
- fSelectAllButton.setEnabled(enable && isFindStringSet && (target instanceof IFindReplaceTargetExtension4));
+ fFindNextButton.setEnabled(enable && isFindStringSet && regexOk);
+ fSelectAllButton.setEnabled(
+ enable && isFindStringSet && (target instanceof IFindReplaceTargetExtension4) && regexOk);
fReplaceSelectionButton.setEnabled(
!disableReplace && enable && isTargetEditable && hasActiveSelection && isSelectionGoodForReplace);
fReplaceFindButton.setEnabled(!disableReplace && enable && isTargetEditable && isFindStringSet
@@ -1102,7 +1120,6 @@ private void updateButtonState(boolean disableReplace) {
}
}
-
/**
* Updates the given combo with the given content.
*
@@ -1335,19 +1352,29 @@ private void activateInFindReplaceLogicIf(SearchOptions option, boolean shouldAc
}
}
- /**
- * Evaluate the status of the FindReplaceLogic object.
- */
+ private void decorate() {
+ if (fIsRegExCheckBox.getSelection()) {
+ regexOk = SearchDecoration.validateRegex(fFindField.getText(), fFindFieldDecoration);
+ updateButtonState(regexOk);
+
+ } else {
+ fFindFieldDecoration.hide();
+ }
+ }
+
private void evaluateFindReplaceStatus() {
IFindReplaceStatus status = findReplaceLogic.getStatus();
- String dialogMessage = status.accept(new FindReplaceLogicMessageGenerator());
- fStatusLabel.setText(dialogMessage);
- if (status.isInputValid()) {
- fStatusLabel.setForeground(fReplaceLabel.getForeground());
- } else {
- fStatusLabel.setForeground(JFaceColors.getErrorText(fStatusLabel.getDisplay()));
+ if (!(status instanceof InvalidRegExStatus)) {
+ String dialogMessage = status.accept(new FindReplaceLogicMessageGenerator());
+ fStatusLabel.setText(dialogMessage);
+ if (status.isInputValid()) {
+ fStatusLabel.setForeground(fReplaceLabel.getForeground());
+ } else {
+ fStatusLabel.setForeground(JFaceColors.getErrorText(fStatusLabel.getDisplay()));
+ }
}
+
}
private String getCurrentSelection() {
diff --git a/bundles/org.eclipse.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui/META-INF/MANIFEST.MF
index 165143157ed..df02157e273 100644
--- a/bundles/org.eclipse.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui/META-INF/MANIFEST.MF
@@ -7,7 +7,7 @@ Bundle-Activator: org.eclipse.ui.internal.UIPlugin
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %Plugin.providerName
Bundle-Localization: plugin
-Export-Package: org.eclipse.ui.internal;x-internal:=true
+Export-Package: org.eclipse.ui.internal;x-friends:="org.eclipse.ui.workbench.texteditor,org.eclipse.search"
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.29.0,4.0.0)",
org.eclipse.swt;bundle-version="[3.126.0,4.0.0)";visibility:=reexport,
org.eclipse.jface;bundle-version="[3.34.0,4.0.0)";visibility:=reexport,
diff --git a/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java b/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java
new file mode 100644
index 00000000000..47e4e148356
--- /dev/null
+++ b/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java
@@ -0,0 +1,82 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Vector Informatik GmbH and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vector Informatik GmbH - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.ui.internal;
+
+import java.util.regex.Pattern;
+import java.util.regex.PatternSyntaxException;
+
+import org.eclipse.jface.fieldassist.ControlDecoration;
+import org.eclipse.jface.fieldassist.FieldDecorationRegistry;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * This class contains methods to validate and decorate search fields.
+ */
+public class SearchDecoration {
+
+ private SearchDecoration() {
+ // avoid instantiation
+ }
+
+ /**
+ * Validate the given regular expression and change the control decoration
+ * accordingly. If the expression is invalid then the decoration will show an
+ * error icon and a message and if the expression is valid then the decoration
+ * will be hidden.
+ *
+ * @param regex The regular expression to be validated.
+ * @param targetDecoration The control decoration that will show the result of
+ * the validation.
+ */
+ public static boolean validateRegex(String regex, ControlDecoration targetDecoration) {
+ String errorMessage = getValidationError(regex);
+ if (errorMessage.isEmpty()) {
+ targetDecoration.hide();
+ return true;
+
+ }
+
+ Image decorationImage = FieldDecorationRegistry.getDefault()
+ .getFieldDecoration(FieldDecorationRegistry.DEC_ERROR).getImage();
+ targetDecoration.setImage(decorationImage);
+ targetDecoration.setDescriptionText(errorMessage);
+ targetDecoration.show();
+ return false;
+ }
+
+ /**
+ * Validate a regular expression.
+ *
+ * @return The appropriate error message if the regex is invalid or an empty
+ * string if the regex is valid.
+ */
+ private static String getValidationError(String regex) {
+ try {
+ Pattern.compile(regex);
+ return ""; //$NON-NLS-1$
+ } catch (PatternSyntaxException e) {
+ String message = e.getLocalizedMessage();
+
+ // Only preserve the first line of the original error message.
+ int i = 0;
+ while (i < message.length() && "\n\r".indexOf(message.charAt(i)) == -1) { //$NON-NLS-1$
+ i++;
+ }
+
+ return message.substring(0, i);
+ }
+ }
+
+}
\ No newline at end of file
From a2c40f5313fb4f9927ab7048d96b54b158fbd920 Mon Sep 17 00:00:00 2001
From: Madhumitha M V
Date: Mon, 23 Sep 2024 17:06:57 +0530
Subject: [PATCH 052/232] Light (Preview) theme: Change to bg of vertical bar
in editor
Vertical bar next to the scroll bar in editor had white background
color.
This has been reverted back to grey.
---
bundles/org.eclipse.ui.themes/css/e4_preview_gtk.css | 2 +-
bundles/org.eclipse.ui.themes/css/e4_preview_mac.css | 3 +--
bundles/org.eclipse.ui.themes/css/e4_preview_win.css | 2 +-
3 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/bundles/org.eclipse.ui.themes/css/e4_preview_gtk.css b/bundles/org.eclipse.ui.themes/css/e4_preview_gtk.css
index c8dd132df1d..afa55f73283 100644
--- a/bundles/org.eclipse.ui.themes/css/e4_preview_gtk.css
+++ b/bundles/org.eclipse.ui.themes/css/e4_preview_gtk.css
@@ -122,7 +122,7 @@ CTabFolder.MArea {
}
CTabFolder Canvas {
- background-color: #ffffff;
+ background-color: #f8f8f8;
}
.MTrimBar#org-eclipse-ui-main-toolbar {
diff --git a/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css b/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css
index 3a869957874..b426954c9d4 100644
--- a/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css
+++ b/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css
@@ -95,9 +95,8 @@ ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_TEXT_COLOR {
}
CTabFolder Canvas {
- background-color: rgb(255, 255, 255);
+ background-color: #f8f8f8;
}
-
.MTrimBar#org-eclipse-ui-trim-status {
background-color: #f8f8f8;
diff --git a/bundles/org.eclipse.ui.themes/css/e4_preview_win.css b/bundles/org.eclipse.ui.themes/css/e4_preview_win.css
index 713844c0a8d..9b30f814d06 100644
--- a/bundles/org.eclipse.ui.themes/css/e4_preview_win.css
+++ b/bundles/org.eclipse.ui.themes/css/e4_preview_win.css
@@ -96,7 +96,7 @@ CTabFolder.MArea {
}
CTabFolder Canvas {
- background-color: #ffffff;
+ background-color: #f8f8f8;
}
.MTrimBar#org-eclipse-ui-main-toolbar {
From 3ffdfe3defcf17b1097ac3c9f5b7f485e02fde38 Mon Sep 17 00:00:00 2001
From: fedejeanne
Date: Tue, 15 Oct 2024 13:17:58 +0200
Subject: [PATCH 053/232] Increase left margins in F&R overlay
Allow for the error icon to appear completely when necessary e.g. when
searching for an invalid regular expression.
---
.../internal/findandreplace/overlay/FindReplaceOverlay.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 907a34d2a49..551fc8e6562 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -624,7 +624,7 @@ private void createReplaceBar() {
private void createSearchContainer() {
searchContainer = new FixedColorComposite(contentGroup, SWT.NONE, widgetBackgroundColor);
GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(searchContainer);
- GridLayoutFactory.fillDefaults().numColumns(3).extendedMargins(4, 4, 3, 5).equalWidth(false)
+ GridLayoutFactory.fillDefaults().numColumns(3).extendedMargins(7, 4, 3, 5).equalWidth(false)
.applyTo(searchContainer);
createSearchBar();
@@ -635,7 +635,7 @@ private void createSearchContainer() {
private void createReplaceContainer() {
replaceContainer = new FixedColorComposite(contentGroup, SWT.NONE, widgetBackgroundColor);
GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(replaceContainer);
- GridLayoutFactory.fillDefaults().margins(0, 0).numColumns(2).extendedMargins(4, 4, 3, 5).equalWidth(false)
+ GridLayoutFactory.fillDefaults().margins(0, 0).numColumns(2).extendedMargins(7, 4, 3, 5).equalWidth(false)
.applyTo(replaceContainer);
createReplaceBar();
From 1ee6274d656d785e24dd3438e1720a9da7cb862b Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Mon, 14 Oct 2024 22:58:41 +0200
Subject: [PATCH 054/232] [Build] Fix archiving of log files in Jenkins
pipeline
and other minor clean-ups of the Jenkinsfile.
Remove explicit declaration of properties that are already defined in
the eclipse-platform-parent/pom.xml
---
Jenkinsfile | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/Jenkinsfile b/Jenkinsfile
index c7f47a2d0bd..18c24bf47ea 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -14,24 +14,25 @@ pipeline {
stages {
stage('Build') {
steps {
- wrap([$class: 'Xvnc', useXauthority: true]) {
+ xvnc(useXauthority: true) {
sh """
mvn clean verify --batch-mode --fail-at-end -Dmaven.repo.local=$WORKSPACE/.m2/repository \
-Pbree-libs -Papi-check -Pjavadoc \
- -Dmaven.test.failure.ignore=true \
+ -Dmaven.test.failure.ignore=true \
-Dcompare-version-with-baselines.skip=false \
- -Dproject.build.sourceEncoding=UTF-8 \
-Dorg.slf4j.simpleLogger.showDateTime=true -Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss.SSS \
- -DtrimStackTrace=false
+ -DtrimStackTrace=false
"""
}
}
post {
always {
- archiveArtifacts artifacts: '*.log,*/target/work/data/.metadata/*.log,*/tests/target/work/data/.metadata/*.log,apiAnalyzer-workspace/.metadata/*.log', allowEmptyArchive: true
+ archiveArtifacts artifacts: '*.log,**/target/**/*.log', allowEmptyArchive: true
junit '**/target/surefire-reports/TEST-*.xml'
discoverGitReferenceBuild referenceJob: 'eclipse.platform.ui/master'
- recordIssues publishAllIssues:false, ignoreQualityGate:true, tool: eclipse(name: 'Compiler and API Tools', pattern: '**/target/compilelogs/*.xml'), qualityGates: [[threshold: 1, type: 'DELTA', unstable: true]]
+ recordIssues(publishAllIssues:false, ignoreQualityGate:true,
+ tool: eclipse(name: 'Compiler and API Tools', pattern: '**/target/compilelogs/*.xml'),
+ qualityGates: [[threshold: 1, type: 'DELTA', unstable: true]])
recordIssues publishAllIssues:false, tools: [mavenConsole(), javaDoc()]
}
}
From 946e3b3b3e04bd505738d62ee8d7748848b1b511 Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Sun, 29 Sep 2024 23:48:58 +0200
Subject: [PATCH 055/232] Generated all OSGi Declarative Services component
files by PDE-DS/Tycho
Remove the now generated OSGi Declarative Services component-xml files
from git.
Resolve wildcards in Service-Component header.
---
.../.settings/org.eclipse.pde.ds.annotations.prefs | 7 +++++++
bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF | 2 +-
bundles/org.eclipse.e4.ui.progress/OSGI-INF/progress.xml | 8 --------
.../internal/ProgressServiceCreationFunction.java | 5 +++++
bundles/org.eclipse.search/.project | 5 +++++
.../.settings/org.eclipse.pde.ds.annotations.prefs | 7 +++++++
bundles/org.eclipse.search/META-INF/MANIFEST.MF | 2 +-
.../org.eclipse.search/OSGI-INF/dirtyEditorService.xml | 8 --------
.../internal/ui/text/DirtyFileSearchParticipant.java | 3 +++
examples/org.eclipse.e4.demo.cssbridge/.gitignore | 1 +
.../.settings/org.eclipse.pde.ds.annotations.prefs | 7 +++++++
.../org.eclipse.e4.demo.cssbridge/META-INF/MANIFEST.MF | 2 +-
.../OSGI-INF/mailservice.xml | 7 -------
examples/org.eclipse.e4.demo.cssbridge/build.properties | 1 -
.../e4/demo/cssbridge/internal/core/DummyMailService.java | 2 ++
15 files changed, 40 insertions(+), 27 deletions(-)
create mode 100644 bundles/org.eclipse.e4.ui.progress/.settings/org.eclipse.pde.ds.annotations.prefs
delete mode 100644 bundles/org.eclipse.e4.ui.progress/OSGI-INF/progress.xml
create mode 100644 bundles/org.eclipse.search/.settings/org.eclipse.pde.ds.annotations.prefs
delete mode 100644 bundles/org.eclipse.search/OSGI-INF/dirtyEditorService.xml
create mode 100644 examples/org.eclipse.e4.demo.cssbridge/.gitignore
create mode 100644 examples/org.eclipse.e4.demo.cssbridge/.settings/org.eclipse.pde.ds.annotations.prefs
delete mode 100644 examples/org.eclipse.e4.demo.cssbridge/OSGI-INF/mailservice.xml
diff --git a/bundles/org.eclipse.e4.ui.progress/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.ui.progress/.settings/org.eclipse.pde.ds.annotations.prefs
new file mode 100644
index 00000000000..5faf08b7d5c
--- /dev/null
+++ b/bundles/org.eclipse.e4.ui.progress/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -0,0 +1,7 @@
+dsVersion=V1_4
+eclipse.preferences.version=1
+enabled=true
+generateBundleActivationPolicyLazy=true
+path=OSGI-INF
+validationErrorLevel=error
+validationErrorLevel.missingImplicitUnbindMethod=error
diff --git a/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF
index ee8ae932c12..d96b1bb7f13 100644
--- a/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF
@@ -21,5 +21,5 @@ Import-Package: jakarta.annotation;version="[2.1.0,3.0.0)",
Bundle-RequiredExecutionEnvironment: JavaSE-17
Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.e4.ui.progress
-Service-Component: OSGI-INF/progress.xml
+Service-Component: OSGI-INF/org.eclipse.e4.ui.progress.internal.ProgressServiceCreationFunction.xml
Automatic-Module-Name: org.eclipse.e4.ui.progress
diff --git a/bundles/org.eclipse.e4.ui.progress/OSGI-INF/progress.xml b/bundles/org.eclipse.e4.ui.progress/OSGI-INF/progress.xml
deleted file mode 100644
index 125fe58ab4f..00000000000
--- a/bundles/org.eclipse.e4.ui.progress/OSGI-INF/progress.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressServiceCreationFunction.java b/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressServiceCreationFunction.java
index 2d527637a74..421367f7f54 100644
--- a/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressServiceCreationFunction.java
+++ b/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressServiceCreationFunction.java
@@ -16,8 +16,13 @@
import org.eclipse.e4.core.contexts.ContextFunction;
import org.eclipse.e4.core.contexts.ContextInjectionFactory;
+import org.eclipse.e4.core.contexts.IContextFunction;
import org.eclipse.e4.core.contexts.IEclipseContext;
+import org.eclipse.e4.ui.progress.IProgressService;
+import org.osgi.service.component.annotations.Component;
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(IProgressService.class)
public class ProgressServiceCreationFunction extends ContextFunction {
@Override
diff --git a/bundles/org.eclipse.search/.project b/bundles/org.eclipse.search/.project
index 35821137d43..88541630343 100644
--- a/bundles/org.eclipse.search/.project
+++ b/bundles/org.eclipse.search/.project
@@ -25,6 +25,11 @@
+
+ org.eclipse.pde.ds.core.builder
+
+
+ org.eclipse.jdt.core.javanature
diff --git a/bundles/org.eclipse.search/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.search/.settings/org.eclipse.pde.ds.annotations.prefs
new file mode 100644
index 00000000000..5faf08b7d5c
--- /dev/null
+++ b/bundles/org.eclipse.search/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -0,0 +1,7 @@
+dsVersion=V1_4
+eclipse.preferences.version=1
+enabled=true
+generateBundleActivationPolicyLazy=true
+path=OSGI-INF
+validationErrorLevel=error
+validationErrorLevel.missingImplicitUnbindMethod=error
diff --git a/bundles/org.eclipse.search/META-INF/MANIFEST.MF b/bundles/org.eclipse.search/META-INF/MANIFEST.MF
index 1f073adf212..54eb0583c69 100644
--- a/bundles/org.eclipse.search/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.search/META-INF/MANIFEST.MF
@@ -32,4 +32,4 @@ Require-Bundle:
org.eclipse.search.core;bundle-version="[3.16.0,4.0.0)";visibility:=reexport
Bundle-RequiredExecutionEnvironment: JavaSE-17
Automatic-Module-Name: org.eclipse.search
-Service-Component: OSGI-INF/*.xml
+Service-Component: OSGI-INF/org.eclipse.search.internal.ui.text.DirtyFileSearchParticipant.xml
diff --git a/bundles/org.eclipse.search/OSGI-INF/dirtyEditorService.xml b/bundles/org.eclipse.search/OSGI-INF/dirtyEditorService.xml
deleted file mode 100644
index b7b26d54aa6..00000000000
--- a/bundles/org.eclipse.search/OSGI-INF/dirtyEditorService.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/DirtyFileSearchParticipant.java b/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/DirtyFileSearchParticipant.java
index b7e293f90b2..9d5eea4ff7b 100644
--- a/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/DirtyFileSearchParticipant.java
+++ b/bundles/org.eclipse.search/search/org/eclipse/search/internal/ui/text/DirtyFileSearchParticipant.java
@@ -16,6 +16,8 @@
import java.util.HashMap;
import java.util.Map;
+import org.osgi.service.component.annotations.Component;
+
import org.eclipse.core.resources.IFile;
import org.eclipse.core.filebuffers.FileBuffers;
@@ -38,6 +40,7 @@
import org.eclipse.search.internal.core.text.DirtyFileProvider;
+@Component(service = DirtyFileProvider.class, immediate = false, property = { "weight:Integer=100" })
public class DirtyFileSearchParticipant implements DirtyFileProvider {
@Override
diff --git a/examples/org.eclipse.e4.demo.cssbridge/.gitignore b/examples/org.eclipse.e4.demo.cssbridge/.gitignore
new file mode 100644
index 00000000000..7bec98dd976
--- /dev/null
+++ b/examples/org.eclipse.e4.demo.cssbridge/.gitignore
@@ -0,0 +1 @@
+/OSGI-INF/org.eclipse.*.xml
diff --git a/examples/org.eclipse.e4.demo.cssbridge/.settings/org.eclipse.pde.ds.annotations.prefs b/examples/org.eclipse.e4.demo.cssbridge/.settings/org.eclipse.pde.ds.annotations.prefs
new file mode 100644
index 00000000000..5faf08b7d5c
--- /dev/null
+++ b/examples/org.eclipse.e4.demo.cssbridge/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -0,0 +1,7 @@
+dsVersion=V1_4
+eclipse.preferences.version=1
+enabled=true
+generateBundleActivationPolicyLazy=true
+path=OSGI-INF
+validationErrorLevel=error
+validationErrorLevel.missingImplicitUnbindMethod=error
diff --git a/examples/org.eclipse.e4.demo.cssbridge/META-INF/MANIFEST.MF b/examples/org.eclipse.e4.demo.cssbridge/META-INF/MANIFEST.MF
index b93bb3f58fe..0de3cb3e103 100644
--- a/examples/org.eclipse.e4.demo.cssbridge/META-INF/MANIFEST.MF
+++ b/examples/org.eclipse.e4.demo.cssbridge/META-INF/MANIFEST.MF
@@ -15,7 +15,7 @@ Export-Package: org.eclipse.e4.demo.cssbridge.core,
org.eclipse.e4.demo.cssbridge.ui.views,
org.eclipse.e4.demo.cssbridge.util
Bundle-ActivationPolicy: lazy
-Service-Component: OSGI-INF/mailservice.xml
+Service-Component: OSGI-INF/org.eclipse.e4.demo.cssbridge.internal.core.DummyMailService.xml
Automatic-Module-Name: org.eclipse.e4.demo.cssbridge
Bundle-Vendor: %Bundle-Vendor
Bundle-Localization: plugin
diff --git a/examples/org.eclipse.e4.demo.cssbridge/OSGI-INF/mailservice.xml b/examples/org.eclipse.e4.demo.cssbridge/OSGI-INF/mailservice.xml
deleted file mode 100644
index a1d21b6f739..00000000000
--- a/examples/org.eclipse.e4.demo.cssbridge/OSGI-INF/mailservice.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/examples/org.eclipse.e4.demo.cssbridge/build.properties b/examples/org.eclipse.e4.demo.cssbridge/build.properties
index baec4a9632c..ac7c8ebc08a 100644
--- a/examples/org.eclipse.e4.demo.cssbridge/build.properties
+++ b/examples/org.eclipse.e4.demo.cssbridge/build.properties
@@ -3,7 +3,6 @@ bin.includes = plugin.xml,\
.,\
icons/,\
splash.bmp,\
- OSGI-INF/mailservice.xml,\
OSGI-INF/,\
plugin.properties
output.. = bin/
diff --git a/examples/org.eclipse.e4.demo.cssbridge/src/org/eclipse/e4/demo/cssbridge/internal/core/DummyMailService.java b/examples/org.eclipse.e4.demo.cssbridge/src/org/eclipse/e4/demo/cssbridge/internal/core/DummyMailService.java
index f381317d44d..65fb1cc4870 100644
--- a/examples/org.eclipse.e4.demo.cssbridge/src/org/eclipse/e4/demo/cssbridge/internal/core/DummyMailService.java
+++ b/examples/org.eclipse.e4.demo.cssbridge/src/org/eclipse/e4/demo/cssbridge/internal/core/DummyMailService.java
@@ -26,7 +26,9 @@
import org.eclipse.e4.demo.cssbridge.model.Importance;
import org.eclipse.e4.demo.cssbridge.model.Mail;
import org.eclipse.e4.demo.cssbridge.util.MailBuilder;
+import org.osgi.service.component.annotations.Component;
+@Component(service = IMailService.class)
public class DummyMailService implements IMailService {
private static final String MAILBOX_NAME = "me@this.com";
From 662929bf5557534120d7be059d52a96913c0e47b Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Sat, 12 Oct 2024 16:42:52 +0200
Subject: [PATCH 056/232] Use new @IContextFunction.ServiceContextKey component
property type
and @org.osgi.service.event.propertytypes.EventTopics where applicable.
---
.../.settings/org.eclipse.pde.ds.annotations.prefs | 2 +-
.../internal/CommandServiceCreationFunction.java | 5 +++--
.../internal/HandlerServiceCreationFunction.java | 5 +++--
.../.settings/org.eclipse.pde.ds.annotations.prefs | 2 +-
.../internal/BindingServiceCreationFunction.java | 5 +++--
.../.settings/org.eclipse.pde.ds.annotations.prefs | 2 +-
.../e4/ui/services/events/EventBrokerFactory.java | 8 +++-----
.../.settings/org.eclipse.pde.ds.annotations.prefs | 2 +-
.../workbench/swt/MenuServiceCreationFunction.java | 5 +++--
.../workbench/swt/StatusReporterCreationFunction.java | 8 ++++----
.../.settings/org.eclipse.pde.ds.annotations.prefs | 2 +-
bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF | 3 ++-
.../ui/internal/LocaleChangeServiceContextFunction.java | 8 ++++----
.../workbench/ExtensionTrackeContextFunction.java | 9 +++++----
.../internal/workbench/PartServiceCreationFunction.java | 5 +++--
.../ui/internal/workbench/ProgressMonitorFunction.java | 5 +++--
docs/Eclipse4_RCP_Contexts.md | 3 ++-
17 files changed, 43 insertions(+), 36 deletions(-)
diff --git a/bundles/org.eclipse.e4.core.commands/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.core.commands/.settings/org.eclipse.pde.ds.annotations.prefs
index 38f9eecff8e..5faf08b7d5c 100644
--- a/bundles/org.eclipse.e4.core.commands/.settings/org.eclipse.pde.ds.annotations.prefs
+++ b/bundles/org.eclipse.e4.core.commands/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -1,4 +1,4 @@
-dsVersion=V1_3
+dsVersion=V1_4
eclipse.preferences.version=1
enabled=true
generateBundleActivationPolicyLazy=true
diff --git a/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/CommandServiceCreationFunction.java b/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/CommandServiceCreationFunction.java
index 1043905db4d..a835f6869a7 100644
--- a/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/CommandServiceCreationFunction.java
+++ b/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/CommandServiceCreationFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2014 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -21,7 +21,8 @@
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.osgi.service.component.annotations.Component;
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.core.commands.ECommandService")
+@Component(service = IContextFunction.class )
+@IContextFunction.ServiceContextKey(org.eclipse.e4.core.commands.ECommandService.class)
public class CommandServiceCreationFunction extends ContextFunction {
/**
* A context key (value "rootContext") that identifies the root of this context chain. It does
diff --git a/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/HandlerServiceCreationFunction.java b/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/HandlerServiceCreationFunction.java
index 7be328b931e..eaf19909968 100644
--- a/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/HandlerServiceCreationFunction.java
+++ b/bundles/org.eclipse.e4.core.commands/src/org/eclipse/e4/core/commands/internal/HandlerServiceCreationFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2013 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -20,7 +20,8 @@
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.osgi.service.component.annotations.Component;
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.core.commands.EHandlerService")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(org.eclipse.e4.core.commands.EHandlerService.class)
public class HandlerServiceCreationFunction extends ContextFunction {
@Override
diff --git a/bundles/org.eclipse.e4.ui.bindings/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.ui.bindings/.settings/org.eclipse.pde.ds.annotations.prefs
index 38f9eecff8e..5faf08b7d5c 100644
--- a/bundles/org.eclipse.e4.ui.bindings/.settings/org.eclipse.pde.ds.annotations.prefs
+++ b/bundles/org.eclipse.e4.ui.bindings/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -1,4 +1,4 @@
-dsVersion=V1_3
+dsVersion=V1_4
eclipse.preferences.version=1
enabled=true
generateBundleActivationPolicyLazy=true
diff --git a/bundles/org.eclipse.e4.ui.bindings/src/org/eclipse/e4/ui/bindings/internal/BindingServiceCreationFunction.java b/bundles/org.eclipse.e4.ui.bindings/src/org/eclipse/e4/ui/bindings/internal/BindingServiceCreationFunction.java
index 6e996fcda1d..e96f6ee7c5f 100644
--- a/bundles/org.eclipse.e4.ui.bindings/src/org/eclipse/e4/ui/bindings/internal/BindingServiceCreationFunction.java
+++ b/bundles/org.eclipse.e4.ui.bindings/src/org/eclipse/e4/ui/bindings/internal/BindingServiceCreationFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2014 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -20,7 +20,8 @@
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.osgi.service.component.annotations.Component;
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.ui.bindings.EBindingService")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(org.eclipse.e4.ui.bindings.EBindingService.class)
public class BindingServiceCreationFunction extends ContextFunction {
@Override
diff --git a/bundles/org.eclipse.e4.ui.services/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.ui.services/.settings/org.eclipse.pde.ds.annotations.prefs
index 38f9eecff8e..5faf08b7d5c 100644
--- a/bundles/org.eclipse.e4.ui.services/.settings/org.eclipse.pde.ds.annotations.prefs
+++ b/bundles/org.eclipse.e4.ui.services/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -1,4 +1,4 @@
-dsVersion=V1_3
+dsVersion=V1_4
eclipse.preferences.version=1
enabled=true
generateBundleActivationPolicyLazy=true
diff --git a/bundles/org.eclipse.e4.ui.services/src/org/eclipse/e4/ui/services/events/EventBrokerFactory.java b/bundles/org.eclipse.e4.ui.services/src/org/eclipse/e4/ui/services/events/EventBrokerFactory.java
index ff99ee48454..efd74d1599e 100644
--- a/bundles/org.eclipse.e4.ui.services/src/org/eclipse/e4/ui/services/events/EventBrokerFactory.java
+++ b/bundles/org.eclipse.e4.ui.services/src/org/eclipse/e4/ui/services/events/EventBrokerFactory.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2016 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -23,12 +23,11 @@
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.event.EventAdmin;
-
-
/**
* Use this class to obtain an instance of {@link IEventBroker}.
*/
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.core.services.events.IEventBroker")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(IEventBroker.class)
public class EventBrokerFactory extends ContextFunction {
// mandatory static reference to EventAdmin to ensure it is available before
@@ -50,4 +49,3 @@ public Object compute(IEclipseContext context, String contextKey) {
return broker;
}
}
-
diff --git a/bundles/org.eclipse.e4.ui.workbench.swt/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.ui.workbench.swt/.settings/org.eclipse.pde.ds.annotations.prefs
index 73a356b6d05..b5c60ed2648 100644
--- a/bundles/org.eclipse.e4.ui.workbench.swt/.settings/org.eclipse.pde.ds.annotations.prefs
+++ b/bundles/org.eclipse.e4.ui.workbench.swt/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -1,5 +1,5 @@
classpath=true
-dsVersion=V1_3
+dsVersion=V1_4
eclipse.preferences.version=1
enabled=true
generateBundleActivationPolicyLazy=true
diff --git a/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/MenuServiceCreationFunction.java b/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/MenuServiceCreationFunction.java
index 5b86b0c82ef..5aa63815560 100644
--- a/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/MenuServiceCreationFunction.java
+++ b/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/MenuServiceCreationFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2010, 2016 IBM Corporation and others.
+ * Copyright (c) 2010, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -20,7 +20,8 @@
import org.eclipse.e4.core.di.InjectionException;
import org.osgi.service.component.annotations.Component;
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.ui.services.EMenuService")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(org.eclipse.e4.ui.services.EMenuService.class)
public class MenuServiceCreationFunction extends ContextFunction {
@Override
diff --git a/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/StatusReporterCreationFunction.java b/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/StatusReporterCreationFunction.java
index fdc8204fa7e..444e3a80bab 100644
--- a/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/StatusReporterCreationFunction.java
+++ b/bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/internal/workbench/swt/StatusReporterCreationFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2010, 2016 IBM Corporation and others.
+ * Copyright (c) 2010, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -19,13 +19,13 @@
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.osgi.service.component.annotations.Component;
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.core.services.statusreporter.StatusReporter")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(org.eclipse.e4.core.services.statusreporter.StatusReporter.class)
public class StatusReporterCreationFunction extends ContextFunction {
@Override
public Object compute(IEclipseContext context, String contextKey) {
- return ContextInjectionFactory.make(WorkbenchStatusReporter.class,
- context);
+ return ContextInjectionFactory.make(WorkbenchStatusReporter.class, context);
}
}
diff --git a/bundles/org.eclipse.e4.ui.workbench/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.ui.workbench/.settings/org.eclipse.pde.ds.annotations.prefs
index 73a356b6d05..b5c60ed2648 100644
--- a/bundles/org.eclipse.e4.ui.workbench/.settings/org.eclipse.pde.ds.annotations.prefs
+++ b/bundles/org.eclipse.e4.ui.workbench/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -1,5 +1,5 @@
classpath=true
-dsVersion=V1_3
+dsVersion=V1_4
eclipse.preferences.version=1
enabled=true
generateBundleActivationPolicyLazy=true
diff --git a/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF
index f4f1df6ffe7..c1ecef66f7a 100644
--- a/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF
@@ -37,7 +37,8 @@ Export-Package: org.eclipse.e4.ui.internal.workbench;
Bundle-Activator: org.eclipse.e4.ui.internal.workbench.Activator
Import-Package: jakarta.annotation;version="[2.1.0,3.0.0)",
jakarta.inject;version="[2.0.0,3.0.0)",
- org.osgi.service.event;version="[1.3.0,2.0.0)"
+ org.osgi.service.event;version="[1.3.0,2.0.0)",
+ org.osgi.service.event.propertytypes;version="[1.4.0,2.0.0)"
Require-Capability: osgi.extender;
filter:="(&(osgi.extender=osgi.component)(version>=1.2)(!(version>=2.0)))",
osgi.service;
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/LocaleChangeServiceContextFunction.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/LocaleChangeServiceContextFunction.java
index 36873f12350..717f56de302 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/LocaleChangeServiceContextFunction.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/LocaleChangeServiceContextFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2016 Dirk Fauth and others.
+ * Copyright (c) 2013, 2024 Dirk Fauth and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -24,13 +24,13 @@
/**
* Context function to provide the LocaleChangeServiceImpl to the application context.
*/
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.core.services.nls.ILocaleChangeService")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(ILocaleChangeService.class)
public class LocaleChangeServiceContextFunction extends ContextFunction {
@Override
public Object compute(IEclipseContext context, String contextKey) {
- ILocaleChangeService lcService = ContextInjectionFactory.make(
- LocaleChangeServiceImpl.class, context);
+ ILocaleChangeService lcService = ContextInjectionFactory.make(LocaleChangeServiceImpl.class, context);
// add the new object to the application context
MApplication application = context.get(MApplication.class);
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ExtensionTrackeContextFunction.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ExtensionTrackeContextFunction.java
index 949b7b4d6ec..6f5b03b94ad 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ExtensionTrackeContextFunction.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ExtensionTrackeContextFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2022 Christoph Läubrich and others.
+ * Copyright (c) 2022, 2024 Christoph Läubrich and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -27,10 +27,11 @@
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.event.Event;
import org.osgi.service.event.EventHandler;
+import org.osgi.service.event.propertytypes.EventTopics;
-@Component(service = IContextFunction.class, property = {
- "service.context.key=org.eclipse.core.runtime.dynamichelpers.IExtensionTracker",
- "event.topics=" + IEclipseContext.TOPIC_DISPOSE })
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(IExtensionTracker.class)
+@EventTopics(IEclipseContext.TOPIC_DISPOSE)
public class ExtensionTrackeContextFunction extends ContextFunction implements EventHandler {
@Reference
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceCreationFunction.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceCreationFunction.java
index cb474b0557d..8380b5a3aa6 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceCreationFunction.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceCreationFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2016 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -24,7 +24,8 @@
import org.eclipse.e4.ui.model.application.ui.basic.MWindow;
import org.osgi.service.component.annotations.Component;
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.ui.workbench.modeling.EPartService")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(org.eclipse.e4.ui.workbench.modeling.EPartService.class)
public class PartServiceCreationFunction extends ContextFunction {
@Override
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ProgressMonitorFunction.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ProgressMonitorFunction.java
index f074349c24e..afbdd6ffb1d 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ProgressMonitorFunction.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ProgressMonitorFunction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2016 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -24,7 +24,8 @@
* used near the root of a context tree to provide a reasonable default monitor for cases where more
* specific contexts have not provided one.
*/
-@Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.core.runtime.IProgressMonitor")
+@Component(service = IContextFunction.class)
+@IContextFunction.ServiceContextKey(org.eclipse.core.runtime.IProgressMonitor.class)
public class ProgressMonitorFunction extends ContextFunction {
@Override
diff --git a/docs/Eclipse4_RCP_Contexts.md b/docs/Eclipse4_RCP_Contexts.md
index 57ec1aff16a..7e7a3d09a83 100644
--- a/docs/Eclipse4_RCP_Contexts.md
+++ b/docs/Eclipse4_RCP_Contexts.md
@@ -194,7 +194,8 @@ These contexts — and the services requested — are bounded by the lifecycle o
This approach exposes a context function as the implementation of a service defined OSGi Declarative Services.
This pattern is used for creating the _IEventBroker_, using the new DS annotations support.
- @Component(service = IContextFunction.class, property = "service.context.key=org.eclipse.e4.core.services.events.IEventBroker")
+ @Component(service = IContextFunction.class)
+ @IContextFunction.ServiceContextKey(org.eclipse.e4.core.services.events.IEventBroker.class)
public class EventBrokerFactory extends ContextFunction {
@Override
public Object compute(IEclipseContext context, String contextKey) {
From d6a50a4e0db5085fd539b0183f48bc73fb42b476 Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Sun, 13 Oct 2024 18:38:21 +0000
Subject: [PATCH 057/232] Version bump(s) for 4.34 stream
---
bundles/org.eclipse.e4.core.commands/META-INF/MANIFEST.MF | 2 +-
bundles/org.eclipse.e4.ui.bindings/META-INF/MANIFEST.MF | 2 +-
bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF | 2 +-
bundles/org.eclipse.e4.ui.services/META-INF/MANIFEST.MF | 2 +-
bundles/org.eclipse.e4.ui.workbench.swt/META-INF/MANIFEST.MF | 2 +-
bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/bundles/org.eclipse.e4.core.commands/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.core.commands/META-INF/MANIFEST.MF
index 045111c86dd..fa4a0d9df40 100644
--- a/bundles/org.eclipse.e4.core.commands/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.core.commands/META-INF/MANIFEST.MF
@@ -4,7 +4,7 @@ Bundle-SymbolicName: org.eclipse.e4.core.commands;singleton:=true
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
-Bundle-Version: 1.1.400.qualifier
+Bundle-Version: 1.1.500.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-17
Import-Package: jakarta.annotation;version="[2.1.0,3.0.0)",
jakarta.inject;version="[2.0.0,3.0.0)",
diff --git a/bundles/org.eclipse.e4.ui.bindings/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.bindings/META-INF/MANIFEST.MF
index 75e53af6bb0..71afdef993d 100644
--- a/bundles/org.eclipse.e4.ui.bindings/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.bindings/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.e4.ui.bindings;singleton:=true
-Bundle-Version: 0.14.400.qualifier
+Bundle-Version: 0.14.500.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF
index d96b1bb7f13..35c9b4571fa 100644
--- a/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.progress/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.e4.ui.progress;singleton:=true
-Bundle-Version: 0.4.600.qualifier
+Bundle-Version: 0.4.700.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.e4.ui.services/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.services/META-INF/MANIFEST.MF
index 7995d6f3ad1..885b29de149 100644
--- a/bundles/org.eclipse.e4.ui.services/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.services/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.e4.ui.services;singleton:=true
-Bundle-Version: 1.6.300.qualifier
+Bundle-Version: 1.6.400.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.e4.ui.workbench.swt/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.workbench.swt/META-INF/MANIFEST.MF
index 3322d6b5719..c15044ab336 100644
--- a/bundles/org.eclipse.e4.ui.workbench.swt/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.workbench.swt/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.e4.ui.workbench.swt;singleton:=true
-Bundle-Version: 0.17.500.qualifier
+Bundle-Version: 0.17.600.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF
index c1ecef66f7a..6fbedd6f1f6 100644
--- a/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.workbench/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.e4.ui.workbench;singleton:=true
-Bundle-Version: 1.15.500.qualifier
+Bundle-Version: 1.15.600.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
From 9bd3284d67ef8703bb29453a12dca20520a96c61 Mon Sep 17 00:00:00 2001
From: Tobias Melcher
Date: Mon, 14 Oct 2024 17:36:26 +0200
Subject: [PATCH 058/232] make "Text editor code mining color" configurable in
preferences
introduce a new entry in preference page
"General"->"Appearance"->"Colors and Fonts" so that code mining color
can be configured by the end user
Introduce a slightly brighter default color for code minings in the dark
theme.
---
.../jface/text/source/AnnotationPainter.java | 20 +++++++++++
.../inlined/InlinedAnnotationSupport.java | 6 +++-
.../org.eclipse.ui.editors/build.properties | 3 +-
.../css/e4-dark_preferencestyle.css | 5 +++
.../org.eclipse.ui.editors/plugin.properties | 4 +++
bundles/org.eclipse.ui.editors/plugin.xml | 22 ++++++++++++
.../AbstractDecoratedTextEditor.java | 5 +++
...ecoratedTextEditorPreferenceConstants.java | 11 ++++--
.../SourceViewerDecorationSupport.java | 36 ++++++++++++++++++-
9 files changed, 107 insertions(+), 5 deletions(-)
create mode 100644 bundles/org.eclipse.ui.editors/css/e4-dark_preferencestyle.css
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationPainter.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationPainter.java
index 230eba927e8..27d85d1ea12 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationPainter.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationPainter.java
@@ -444,6 +444,12 @@ private static class Decoration {
*/
private ReusableRegion fReusableRegion= new ReusableRegion();
+ /**
+ * Color used to draw inline annotations.
+ * @since 3.26
+ */
+ private Color fInlineAnnotationColor;
+
/**
* Creates a new annotation painter for the given source viewer and with the
* given annotation access. The painter is not initialized, i.e. no
@@ -1647,4 +1653,18 @@ public void paint(int reason) {
@Override
public void setPositionManager(IPaintPositionManager manager) {
}
+
+ /**
+ * @since 3.26
+ */
+ public void setInlineAnnotationColor(Color color) {
+ fInlineAnnotationColor= color;
+ }
+
+ /**
+ * @since 3.26
+ */
+ public Color getInlineAnnotationColor() {
+ return fInlineAnnotationColor;
+ }
}
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java
index 79e301468f6..2674b836fe8 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/inlined/InlinedAnnotationSupport.java
@@ -366,7 +366,11 @@ public void install(ISourceViewer viewer, AnnotationPainter painter) {
visibleLines= new VisibleLines();
text.addMouseListener(fMouseTracker);
text.addMouseMoveListener(fMouseTracker);
- setColor(text.getDisplay().getSystemColor(SWT.COLOR_DARK_GRAY));
+ Color c= painter.getInlineAnnotationColor();
+ if (c == null) {
+ c= text.getDisplay().getSystemColor(SWT.COLOR_DARK_GRAY);
+ }
+ setColor(c);
GC gc= new GC(viewer.getTextWidget());
gc.setFont(viewer.getTextWidget().getFont());
fFontMetrics= gc.getFontMetrics();
diff --git a/bundles/org.eclipse.ui.editors/build.properties b/bundles/org.eclipse.ui.editors/build.properties
index 0ef8172705b..c9f92ace430 100644
--- a/bundles/org.eclipse.ui.editors/build.properties
+++ b/bundles/org.eclipse.ui.editors/build.properties
@@ -16,7 +16,8 @@ bin.includes = .,\
plugin.properties,\
about.html,\
icons/,\
- META-INF/
+ META-INF/,\
+ css/
src.includes = about.html,\
schema/
diff --git a/bundles/org.eclipse.ui.editors/css/e4-dark_preferencestyle.css b/bundles/org.eclipse.ui.editors/css/e4-dark_preferencestyle.css
new file mode 100644
index 00000000000..cd132d91109
--- /dev/null
+++ b/bundles/org.eclipse.ui.editors/css/e4-dark_preferencestyle.css
@@ -0,0 +1,5 @@
+
+IEclipsePreferences#org-eclipse-ui-workbench:org-eclipse-ui-editors {
+ preferences:
+ 'org.eclipse.ui.editors.inlineAnnotationColor=155,155,155'
+}
diff --git a/bundles/org.eclipse.ui.editors/plugin.properties b/bundles/org.eclipse.ui.editors/plugin.properties
index 5a246191f2b..777af9dbb87 100644
--- a/bundles/org.eclipse.ui.editors/plugin.properties
+++ b/bundles/org.eclipse.ui.editors/plugin.properties
@@ -151,3 +151,7 @@ HyperlinkDetectorsPreferencePage= Hyperlinking
#--- Unused label ---
dummy=
+
+#--- color definition for code mining annotations
+TEXT_EDITOR_CODE_MINING_COLOR= Text editor code mining color
+TEXT_EDITOR_CODE_MINING_COLOR_DESCRIPTION= The default color used for text editor code mining annotations.
diff --git a/bundles/org.eclipse.ui.editors/plugin.xml b/bundles/org.eclipse.ui.editors/plugin.xml
index e69aca3a288..b5365d84f23 100644
--- a/bundles/org.eclipse.ui.editors/plugin.xml
+++ b/bundles/org.eclipse.ui.editors/plugin.xml
@@ -1119,6 +1119,16 @@
label="test"
value="232,232,232">
+
+
+ %TEXT_EDITOR_CODE_MINING_COLOR_DESCRIPTION
+
+
@@ -1161,4 +1171,16 @@
id="org.eclipse.ui.internal.editors.annotationCodeMiningProvider">
+
+
+
+
+
+
+
+
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditor.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditor.java
index 60999aab116..e0b8c449331 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditor.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditor.java
@@ -196,6 +196,10 @@ public abstract class AbstractDecoratedTextEditor extends StatusTextEditor {
* Preference key for highlight color of current line.
*/
private final static String CURRENT_LINE_COLOR= AbstractDecoratedTextEditorPreferenceConstants.EDITOR_CURRENT_LINE_COLOR;
+ /**
+ * Preference key for inline annotation color
+ */
+ private final static String INLINE_ANNOTATION_COLOR= AbstractDecoratedTextEditorPreferenceConstants.EDITOR_INLINE_ANNOTATION_COLOR;
/**
* Preference key for showing print margin ruler.
*/
@@ -456,6 +460,7 @@ protected void configureSourceViewerDecorationSupport(SourceViewerDecorationSupp
support.setCursorLinePainterPreferenceKeys(CURRENT_LINE, CURRENT_LINE_COLOR);
support.setMarginPainterPreferenceKeys(PRINT_MARGIN, PRINT_MARGIN_COLOR, PRINT_MARGIN_COLUMN);
+ support.setInlineAnnotationColorPreferenceKey(INLINE_ANNOTATION_COLOR);
}
/*
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java
index ebae43ed79c..aa9904f0b20 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java
@@ -71,11 +71,18 @@ private AbstractDecoratedTextEditorPreferenceConstants() {
*/
public final static String EDITOR_CURRENT_LINE_COLOR= "currentLineColor"; //$NON-NLS-1$
+ /**
+ * A named preference that holds the color used to render the text editor inline annotation
+ *
+ * @since 3.18
+ */
+ public final static String EDITOR_INLINE_ANNOTATION_COLOR= "org.eclipse.ui.editors.inlineAnnotationColor"; //$NON-NLS-1$
+
/**
* A named preference that holds the number of spaces used per tab in the text editor.
*
- * Value is of type int: positive int value specifying the number of
- * spaces per tab.
+ * Value is of type int: positive int value specifying the number of spaces per
+ * tab.
*
*/
public final static String EDITOR_TAB_WIDTH= "tabWidth"; //$NON-NLS-1$
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java
index 53888f2c335..d55b8998127 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java
@@ -26,6 +26,8 @@
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferenceConverter;
+import org.eclipse.jface.resource.ColorRegistry;
+import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.jface.util.IPropertyChangeListener;
import org.eclipse.jface.util.PropertyChangeEvent;
@@ -45,6 +47,7 @@
import org.eclipse.jface.text.source.ISourceViewer;
import org.eclipse.jface.text.source.ISourceViewerExtension5;
import org.eclipse.jface.text.source.MatchingCharacterPainter;
+import org.eclipse.jface.text.source.inlined.AbstractInlinedAnnotation;
@@ -210,6 +213,8 @@ public void draw(Annotation annotation, GC gc, StyledText textWidget, int offset
private MatchingCharacterPainter fMatchingCharacterPainter;
/** The character painter's pair matcher */
private ICharacterPairMatcher fCharacterPairMatcher;
+ /** The inline annotation color key */
+ private String fInlineAnnotationColorKey;
/** Map with annotation type preference per annotation type */
private Map
+ *
+ * @deprecated Instead annotate the component with the
+ * {@link Beforefragment @Beforefragment(true|false)} component
+ * property type
*/
+ @Deprecated(forRemoval = true, since = "1.16")
String BEFORE_FRAGMENT_PROPERTY_PREFIX = "beforefragment:Boolean="; //$NON-NLS-1$
+
+ /**
+ * An OSGi service component property type used to specify the value of the
+ * {@code beforeFragment} attribute , which specifies if the processor has to be
+ * invoked before model fragments are added. If not specified it defaults to
+ * {@code true}.
+ *
+ * @since 1.16
+ * @see #BEFORE_FRAGMENT_PROPERTY_KEY
+ */
+ @ComponentPropertyType
+ @Target(ElementType.TYPE)
+ @interface Beforefragment {
+ boolean value() default true;
+ }
+
/**
* Service property key for specifying the apply attribute, which defines in
- * which case a processor is run. If not specified it defaults to always.
+ * which case a processor is run. If not specified it defaults to
+ * {@code always}.
*/
String APPLY_PROPERTY_KEY = "apply"; //$NON-NLS-1$
/**
@@ -59,8 +84,30 @@ public interface IModelProcessorContribution {
* Component annotation:
* @Component(property = { IModelProcessorContribution.APPLY_PROPERTY_PREFIX + "initial" })
*
+ *
+ * @deprecated Instead annotate the component with the {@link Apply @Apply(<
+ * a-value >)} component property type
*/
+ @Deprecated(forRemoval = true, since = "1.16")
String APPLY_PROPERTY_PREFIX = "apply="; //$NON-NLS-1$
+
+ /**
+ * An OSGi service component property type used to specify the {@code apply}
+ * attribute, which defines in which case a processor is run. If not specified
+ * it defaults to {@code always}.
+ *
+ * @since 1.16
+ * @see #APPLY_PROPERTY_KEY
+ * @see #APPLY_ALWAYS
+ * @see #APPLY_INITIAL
+ *
+ */
+ @ComponentPropertyType
+ @Target(ElementType.TYPE)
+ @interface Apply {
+ String value() default APPLY_ALWAYS;
+ }
+
/**
* Value for the apply attribute. If set the processor is executed
* each time the application is started.
From 2945d5b01c14230e3ef86d2d393b77b98af0eb5e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Sat, 19 Oct 2024 10:52:52 +0300
Subject: [PATCH 067/232] Fail build on javadoc errors
Fix broken javadoc to allow build to finish to finish with this setting.
---
.../org/eclipse/ui/internal/ide/application/IDEApplication.java | 2 --
pom.xml | 1 +
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
index 5deff13b81f..4ff4f850f2e 100644
--- a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
+++ b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
@@ -441,8 +441,6 @@ protected String getWorkspaceLockInfo(URL workspaceUrl) {
/**
* Write lock owner details onto workspace lock file. Data includes user, host,
* display and current java process id.
- *
- * @param instanceLoc
*/
protected void writeWsLockInfo(URL workspaceUrl) {
Properties props = new Properties();
diff --git a/pom.xml b/pom.xml
index 768d1c99e04..f3691ecb8e5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,6 +29,7 @@
${tests.ignoredWarnings}truetrue
+ true
From 54479d7ac8174005f40d77e5e6f304202225d5fa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Sat, 19 Oct 2024 16:29:32 +0300
Subject: [PATCH 068/232] Fix javadoc.
Broken by
https://github.com/eclipse-platform/eclipse.platform.ui/pull/2396
---
.../e4/ui/workbench/modeling/IModelProcessorContribution.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/modeling/IModelProcessorContribution.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/modeling/IModelProcessorContribution.java
index fef64231ecb..65e9cd3b409 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/modeling/IModelProcessorContribution.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/workbench/modeling/IModelProcessorContribution.java
@@ -85,8 +85,8 @@ public interface IModelProcessorContribution {
* @Component(property = { IModelProcessorContribution.APPLY_PROPERTY_PREFIX + "initial" })
*
*
- * @deprecated Instead annotate the component with the {@link Apply @Apply(<
- * a-value >)} component property type
+ * @deprecated Instead annotate the component with the {@link Apply @Apply(<
+ * a-value >)} component property type
*/
@Deprecated(forRemoval = true, since = "1.16")
String APPLY_PROPERTY_PREFIX = "apply="; //$NON-NLS-1$
From c9c9ec7e4128995f0f366e476b990cbf96f8fa64 Mon Sep 17 00:00:00 2001
From: Andrey Loskutov
Date: Mon, 21 Oct 2024 09:32:23 +0200
Subject: [PATCH 069/232] Fix API errors by updating bundle versions
Regression from commit 9bd3284 / #2400
Also updated version range on bundle with increased version.
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2430
---
bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF | 4 ++--
.../AbstractDecoratedTextEditorPreferenceConstants.java | 2 +-
.../org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF | 2 +-
.../eclipse/ui/texteditor/SourceViewerDecorationSupport.java | 2 +-
4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF
index e3cf47afb07..8e42f706134 100644
--- a/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.ui.editors; singleton:=true
-Bundle-Version: 3.18.100.qualifier
+Bundle-Version: 3.19.0.qualifier
Bundle-Activator: org.eclipse.ui.internal.editors.text.EditorsPlugin
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
@@ -24,7 +24,7 @@ Require-Bundle:
org.eclipse.ui;bundle-version="[3.204.0,4.0.0)",
org.eclipse.jface.text;bundle-version="[3.24.0,4.0.0)",
org.eclipse.ui.workbench;bundle-version="[3.130.0,4.0.0)",
- org.eclipse.ui.workbench.texteditor;bundle-version="[3.17.0,4.0.0)",
+ org.eclipse.ui.workbench.texteditor;bundle-version="[3.19.0,4.0.0)",
org.eclipse.core.filebuffers;bundle-version="[3.8.0,4.0.0)";visibility:=reexport,
org.eclipse.core.resources;bundle-version="[3.19.0,4.0.0)",
org.eclipse.core.filesystem;bundle-version="[1.10.0,2.0.0)",
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java
index aa9904f0b20..59555ff9880 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditorPreferenceConstants.java
@@ -74,7 +74,7 @@ private AbstractDecoratedTextEditorPreferenceConstants() {
/**
* A named preference that holds the color used to render the text editor inline annotation
*
- * @since 3.18
+ * @since 3.19
*/
public final static String EDITOR_INLINE_ANNOTATION_COLOR= "org.eclipse.ui.editors.inlineAnnotationColor"; //$NON-NLS-1$
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF
index b58b26bfbfc..c904670b20c 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui.workbench.texteditor/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.ui.workbench.texteditor; singleton:=true
-Bundle-Version: 3.18.100.qualifier
+Bundle-Version: 3.19.0.qualifier
Bundle-Activator: org.eclipse.ui.internal.texteditor.TextEditorPlugin
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java
index 29e64653200..deb6a18b4c5 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java
@@ -450,7 +450,7 @@ public void setMarginPainterPreferenceKeys(String enableKey, String colorKey, St
/**
* Set inline annotation color key.
*
- * @since 3.18
+ * @since 3.19
*/
public void setInlineAnnotationColorPreferenceKey(String inlineAnnotationColor) {
fInlineAnnotationColorKey = inlineAnnotationColor;
From 9f38380d6290adba422490f4a1d5c2c8b15ed0b8 Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Sat, 19 Oct 2024 09:51:01 +0200
Subject: [PATCH 070/232] Fix lock path computation on Windows and minor
simplifications
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2423
---
.../ide/application/IDEApplication.java | 37 ++++++++++---------
1 file changed, 19 insertions(+), 18 deletions(-)
diff --git a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
index 4ff4f850f2e..c77bbbb1010 100644
--- a/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
+++ b/bundles/org.eclipse.ui.ide.application/src/org/eclipse/ui/internal/ide/application/IDEApplication.java
@@ -24,9 +24,11 @@
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.MalformedURLException;
+import java.net.URISyntaxException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -40,6 +42,7 @@
import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.URIUtil;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.equinox.app.IApplication;
@@ -86,7 +89,7 @@ public class IDEApplication implements IApplication, IExecutableExtension {
private static final String VERSION_FILENAME = "version.ini"; //$NON-NLS-1$
- private static final String LOCK_INFO_FILENAME = ".lock_info"; //$NON-NLS-1$
+ private static final Path LOCK_INFO_FILE = Path.of(METADATA_FOLDER, ".lock_info"); //$NON-NLS-1$
private static final String DISPLAY_VAR = "DISPLAY"; //$NON-NLS-1$
@@ -404,14 +407,14 @@ protected Control createCustomArea(Composite parent) {
*/
protected String getWorkspaceLockInfo(URL workspaceUrl) {
try {
- File lockFile = getLockInfoFile(workspaceUrl);
- if (!lockFile.exists()) {
+ Path lockFile = getLockInfoFile(workspaceUrl);
+ if (!Files.exists(lockFile)) {
return null;
}
StringBuilder sb = new StringBuilder();
Properties props = new Properties();
- try (FileInputStream is = new FileInputStream(lockFile)) {
+ try (InputStream is = Files.newInputStream(lockFile)) {
props.load(is);
String prop = props.getProperty(USER);
if (prop != null) {
@@ -466,7 +469,7 @@ protected void writeWsLockInfo(URL workspaceUrl) {
return;
}
- try (OutputStream output = new FileOutputStream(createLockInfoFile(workspaceUrl))) {
+ try (OutputStream output = Files.newOutputStream(createLockInfoFile(workspaceUrl))) {
props.store(output, null);
} catch (Exception e) {
IDEWorkbenchPlugin.log("Could not write lock info file", e); //$NON-NLS-1$
@@ -521,9 +524,12 @@ private String getHostName() {
* @param workspaceUrl
* @return .lock_info file.
*/
- private File getLockInfoFile(URL workspaceUrl) {
- Path lockInfoPath = Path.of(workspaceUrl.getPath(), METADATA_FOLDER, LOCK_INFO_FILENAME);
- return lockInfoPath.toFile();
+ private static Path getLockInfoFile(URL workspaceUrl) {
+ try {
+ return Path.of(URIUtil.toURI(workspaceUrl)).resolve(LOCK_INFO_FILE);
+ } catch (URISyntaxException e) {
+ throw new IllegalArgumentException(e);
+ }
}
/**
@@ -532,17 +538,12 @@ private File getLockInfoFile(URL workspaceUrl) {
* @param workspaceUrl
* @return .lock_info file.
*/
- private File createLockInfoFile(URL workspaceUrl) throws Exception {
- File lockInfoFile = getLockInfoFile(workspaceUrl);
-
- if (lockInfoFile.exists())
- return lockInfoFile;
-
- Path createdPath = Files.createFile(lockInfoFile.toPath());
- if (createdPath != null) {
- return createdPath.toFile();
+ private static Path createLockInfoFile(URL workspaceUrl) throws Exception {
+ Path lockInfoFile = getLockInfoFile(workspaceUrl);
+ if (!Files.exists(lockInfoFile)) {
+ Files.createFile(lockInfoFile);
}
- return null;
+ return lockInfoFile;
}
@SuppressWarnings("rawtypes")
From 0a3c1fd31e73bc5bb8bd6a94f86922d30456b4f2 Mon Sep 17 00:00:00 2001
From: Feilim Breatnach
Date: Thu, 10 Oct 2024 16:04:25 +0100
Subject: [PATCH 071/232] Modify the 'Close Active Editors' (plural) handler to
add support for parts which represent an Editor and are contributed via eg.
PartDescriptors in a Model Fragment. Associated with Issue#2176. Include
JUnit test.
---
.../eclipse/ui/internal/CloseAllHandler.java | 70 +++++
.../eclipse/ui/tests/api/ApiTestSuite.java | 4 +-
.../ui/tests/e4/CloseAllHandlerTest.java | 282 ++++++++++++++++++
.../org/eclipse/ui/tests/e4/DummyEditor.java | 17 ++
4 files changed, 372 insertions(+), 1 deletion(-)
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
create mode 100644 tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/DummyEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllHandler.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllHandler.java
index 7a431c14292..45d8d0b5a95 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllHandler.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllHandler.java
@@ -14,18 +14,32 @@
package org.eclipse.ui.internal;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.expressions.EvaluationResult;
import org.eclipse.core.expressions.Expression;
import org.eclipse.core.expressions.ExpressionInfo;
import org.eclipse.core.expressions.IEvaluationContext;
+import org.eclipse.e4.ui.model.application.MApplication;
+import org.eclipse.e4.ui.model.application.ui.basic.MPart;
+import org.eclipse.e4.ui.workbench.IWorkbench;
+import org.eclipse.e4.ui.workbench.modeling.EModelService;
+import org.eclipse.e4.ui.workbench.modeling.EPartService;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.ISources;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.handlers.HandlerUtil;
+import org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.FrameworkUtil;
+import org.osgi.framework.ServiceReference;
/**
* Closes all active editors
@@ -48,6 +62,25 @@ public Object execute(ExecutionEvent event) throws ExecutionException {
IWorkbenchPage page = window.getActivePage();
if (page != null) {
page.closeAllEditors(true);
+
+ // close parts representing editors which were contributed via
+ // eg. model fragment(s)
+ Collection partsTaggedAsEditor = getContributedPartsTaggedAsEditor();
+ if (!partsTaggedAsEditor.isEmpty()) {
+ MApplication application = getApplicationModel();
+ EPartService partService = application.getContext().get(EPartService.class);
+ if (partService != null) {
+ for (MPart part : partsTaggedAsEditor) {
+ if (partService.savePart(part, true)) {
+ partService.hidePart(part);
+ }
+ }
+ // ensure the EnabledWhenExpression evaluation is performed
+ // otherwise the 'Close All Editors' will still appear enabled until
+ // the user clicks/selects a different part
+ getEvaluationService().requestEvaluation(ISources.ACTIVE_PART_NAME);
+ }
+ }
}
return null;
@@ -69,6 +102,12 @@ public EvaluationResult evaluate(IEvaluationContext context) {
if (refArray != null && refArray.length > 0) {
return EvaluationResult.TRUE;
}
+
+ // determine if we have any part contributions via model fragment
+ // which were tagged as being an 'Editor' (and which are to be rendered)
+ if (!getContributedPartsTaggedAsEditor().isEmpty()) {
+ return EvaluationResult.TRUE;
+ }
}
}
return EvaluationResult.FALSE;
@@ -83,4 +122,35 @@ public void collectExpressionInfo(ExpressionInfo info) {
}
return enabledWhen;
}
+
+ /**
+ * Collects part contributions from the application model which are not
+ * associated with compatibility layer editors, and are instead parts
+ * contributed via eg. model fragment, and which were tagged as representing an
+ * Editor, via the {@link Workbench#EDITOR_TAG} tag.
+ *
+ * @return a collection of (closable) part contributions from the application
+ * model, tagged as 'Editor' and not containing the parts associated
+ * with compatibility layer editors. Returns an empty collection if none
+ * are found
+ */
+ private Collection getContributedPartsTaggedAsEditor() {
+ MApplication application = getApplicationModel();
+ EModelService modelService = application.getContext().get(EModelService.class);
+
+ List partsTaggedAsEditor = modelService != null
+ ? modelService.findElements(application, null, MPart.class, Arrays.asList(Workbench.EDITOR_TAG))
+ : Collections.emptyList();
+
+ // remove parts which we wish to ignore: compatibility layer editors,
+ // non-closable parts, non-rendered parts
+ return partsTaggedAsEditor.stream().filter(p -> !CompatibilityEditor.MODEL_ELEMENT_ID.equals(p.getElementId())
+ && p.isCloseable() && p.isToBeRendered()).collect(Collectors.toSet());
+ }
+
+ private MApplication getApplicationModel() {
+ BundleContext bundleContext = FrameworkUtil.getBundle(IWorkbench.class).getBundleContext();
+ ServiceReference reference = bundleContext.getServiceReference(IWorkbench.class);
+ return bundleContext.getService(reference).getApplication();
+ }
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/ApiTestSuite.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/ApiTestSuite.java
index abc15b31936..661ea136d4b 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/ApiTestSuite.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/ApiTestSuite.java
@@ -21,6 +21,7 @@
import org.eclipse.ui.tests.api.workbenchpart.OverriddenTitleTest;
import org.eclipse.ui.tests.api.workbenchpart.RawIViewPartTest;
import org.eclipse.ui.tests.api.workbenchpart.ViewPartTitleTest;
+import org.eclipse.ui.tests.e4.CloseAllHandlerTest;
import org.eclipse.ui.tests.ide.api.FileEditorInputTest;
import org.eclipse.ui.tests.ide.api.IDETest;
import org.eclipse.ui.tests.ide.api.IDETest2;
@@ -83,7 +84,8 @@
SaveablesListTest.class,
PerspectiveExtensionReaderTest.class,
ModeledPageLayoutTest.class,
- WorkbenchPluginTest.class
+ WorkbenchPluginTest.class,
+ CloseAllHandlerTest.class
})
public class ApiTestSuite {
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
new file mode 100644
index 00000000000..194726c5d62
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
@@ -0,0 +1,282 @@
+/*******************************************************************************
+* Copyright (c) 2024 Feilim Breatnach and others.
+*
+* This program and the accompanying materials are made available under the
+* terms of the Eclipse Public License 2.0 which accompanies this distribution,
+* and is available at https://www.eclipse.org/legal/epl-2.0/
+*
+* SPDX-License-Identifier: EPL-2.0
+*
+* Contributors: Feilim Breatnach, Pilz Ireland - PR #2360
+*******************************************************************************/
+
+package org.eclipse.ui.tests.e4;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.Optional;
+
+import org.eclipse.core.commands.Command;
+import org.eclipse.core.commands.ParameterizedCommand;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IStorage;
+import org.eclipse.e4.core.commands.ECommandService;
+import org.eclipse.e4.core.commands.EHandlerService;
+import org.eclipse.e4.core.contexts.IEclipseContext;
+import org.eclipse.e4.ui.model.application.MApplication;
+import org.eclipse.e4.ui.model.application.descriptor.basic.MPartDescriptor;
+import org.eclipse.e4.ui.model.application.ui.advanced.MArea;
+import org.eclipse.e4.ui.model.application.ui.basic.MPart;
+import org.eclipse.e4.ui.model.application.ui.basic.MPartSashContainer;
+import org.eclipse.e4.ui.model.application.ui.basic.MPartSashContainerElement;
+import org.eclipse.e4.ui.model.application.ui.basic.MPartStack;
+import org.eclipse.e4.ui.workbench.IWorkbench;
+import org.eclipse.e4.ui.workbench.modeling.EModelService;
+import org.eclipse.e4.ui.workbench.modeling.EPartService;
+import org.eclipse.e4.ui.workbench.modeling.EPartService.PartState;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.IPageLayout;
+import org.eclipse.ui.IPersistableElement;
+import org.eclipse.ui.ISources;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.internal.CloseAllHandler;
+import org.eclipse.ui.internal.Workbench;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.FrameworkUtil;
+import org.osgi.framework.ServiceReference;
+
+/**
+ * Tests the enabled when and execution logic within the
+ * {@link CloseAllHandler}.
+ */
+public class CloseAllHandlerTest {
+
+ private IEclipseContext applicationContext;
+ private MApplication application;
+ private EModelService modelService;
+ private EPartService partService;
+
+ private static final String TEST_COMPATIBILITY_LAYER_EDITOR_ID = "org.eclipse.ui.tests.TitleTestEditor"; //$NON-NLS-1$
+ private static final String CLOSE_ALL_EDITORS_COMMAND_ID = "org.eclipse.ui.file.closeAll"; //$NON-NLS-1$
+ private static final String DUMMY_E4_PART_ID = "e4_dummy_part_editor"; //$NON-NLS-1$
+
+ @Before
+ public void setUp() throws Exception {
+ application = getApplicationModel();
+ applicationContext = application.getContext();
+ modelService = applicationContext.get(EModelService.class);
+ partService = application.getContext().get(EPartService.class);
+ }
+
+ private MApplication getApplicationModel() {
+ BundleContext bundleContext = FrameworkUtil.getBundle(IWorkbench.class).getBundleContext();
+ ServiceReference reference = bundleContext.getServiceReference(IWorkbench.class);
+ return bundleContext.getService(reference).getApplication();
+ }
+
+ /**
+ * Tests the enabled when and execution logic within the
+ * {@link CloseAllHandler}.
+ *
+ * Scenario 1: E4 style part contribution which is tagged as representing an
+ * 'editor' is closed via the handler (and the enablement of handler is
+ * checked).
+ *
+ * Scenario 2: compatibility layer type editor is closed via the handler (and
+ * the enablement of handler is checked).
+ *
+ * Scenario 3: a mix of an open compatibility layer type editor *and* an E4
+ * style part contribution which is tagged as representing an 'editor' are both
+ * closed via the handler (and the enablement of handler is checked).
+ */
+ @Test
+ public void testCloseMixedEditorTypes() {
+ EHandlerService handlerService = application.getContext().get(EHandlerService.class);
+ ECommandService commandService = application.getContext().get(ECommandService.class);
+
+ Command closeAllCommand = commandService.getCommand(CLOSE_ALL_EDITORS_COMMAND_ID);
+ final ParameterizedCommand parameterizedCommand = ParameterizedCommand.generateCommand(closeAllCommand,
+ Collections.EMPTY_MAP);
+
+ // verify the close all editors handler enabledment is false (no editors are
+ // open yet!)
+ boolean canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertFalse(canExecute);
+
+ // scenario 1: e4 part descriptor contribution
+ MPartDescriptor partDescriptor = createDummyPartDescriptor();
+ application.getDescriptors().add(partDescriptor);
+
+ // open our e4 part which represents an editor
+ MPart dummyPart = createAndOpenE4Part(partDescriptor);
+
+ // verify the close all handler is enabled now (since dummy editor has been
+ // opened)
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertTrue(canExecute);
+
+ // close all editors (dummy editor should close!)
+ dummyPart = partService.findPart(DUMMY_E4_PART_ID);
+ Assert.assertNotNull(dummyPart);
+ handlerService.executeHandler(parameterizedCommand);
+ dummyPart = partService.findPart(DUMMY_E4_PART_ID);
+ Assert.assertNull(dummyPart);
+
+ // verify the close all handler is *not* enabled now (since dummy editor has
+ // been closed)
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertFalse(canExecute);
+
+ // scenario 2: open a compatibility layer editor
+ IFileEditorInput input = new DummyFileEditorInput();
+ Object activeWindow = applicationContext.getActive(ISources.ACTIVE_WORKBENCH_WINDOW_NAME);
+ Assert.assertTrue("Active workbench window not found.", activeWindow instanceof IWorkbenchWindow);
+ IWorkbenchWindow window = (IWorkbenchWindow) activeWindow;
+ try {
+ window.getActivePage().openEditor(input, TEST_COMPATIBILITY_LAYER_EDITOR_ID);
+ } catch (PartInitException e) {
+ Assert.fail("Test Compatibility Editor could not be opened. Further testing cannot complete.");
+ }
+
+ // verify the close all handler is enabled now (since a dummy compatibility
+ // layer editor has been opened)
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertTrue(canExecute);
+
+ IEditorPart compatEditor = window.getActivePage().findEditor(input);
+ Assert.assertNotNull(compatEditor);
+ handlerService.executeHandler(parameterizedCommand);
+ compatEditor = window.getActivePage().findEditor(input);
+ Assert.assertNull(compatEditor);
+
+ // verify the close all handler is *not* enabled now (since compatibility layer
+ // editor has been closed)
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertFalse(canExecute);
+
+ // scenario 3:
+ // finally: re-open both the compatibility layer editor *and* the dummy e4 part
+ // which represents an editor, and verify they are *both* closed when we invoked
+ // the close all editors handler
+ dummyPart = createAndOpenE4Part(partDescriptor);
+ try {
+ window.getActivePage().openEditor(input, TEST_COMPATIBILITY_LAYER_EDITOR_ID);
+ } catch (PartInitException e) {
+ Assert.fail("Test Compatibility Editor could not be opened. Further testing cannot complete.");
+ }
+ compatEditor = window.getActivePage().findEditor(input);
+ Assert.assertNotNull(compatEditor);
+ dummyPart = partService.findPart(DUMMY_E4_PART_ID);
+ Assert.assertNotNull(dummyPart);
+
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertTrue(canExecute);
+
+ // close all editors
+ handlerService.executeHandler(parameterizedCommand);
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ Assert.assertFalse(canExecute);
+
+ // verify they are all closed
+ compatEditor = window.getActivePage().findEditor(input);
+ Assert.assertNull(compatEditor);
+ dummyPart = partService.findPart(DUMMY_E4_PART_ID);
+ Assert.assertNull(dummyPart);
+ }
+
+ private MPart createAndOpenE4Part(MPartDescriptor partDescriptor) {
+ Optional primaryPartStack = findPrimaryConfiguationAreaPartStack(application, modelService);
+
+ if (primaryPartStack.isEmpty()) {
+ Assert.fail("Test cannot proceed as the primary part stack could not be found in the application.");
+ }
+
+ MPart dummyPart = partService.createPart(partDescriptor.getElementId());
+ primaryPartStack.get().getChildren().add(dummyPart);
+ partService.showPart(dummyPart.getElementId(), PartState.ACTIVATE);
+ partService.bringToTop(dummyPart);
+
+ return dummyPart;
+ }
+
+ private MPartDescriptor createDummyPartDescriptor() {
+ MPartDescriptor partDescriptor = modelService.createModelElement(MPartDescriptor.class);
+ partDescriptor.setAllowMultiple(true);
+ partDescriptor.setElementId(DUMMY_E4_PART_ID);
+ partDescriptor.setCloseable(true);
+ partDescriptor.setLabel(DUMMY_E4_PART_ID);
+ partDescriptor.getTags().add(Workbench.EDITOR_TAG);
+ partDescriptor.getTags().add(EPartService.REMOVE_ON_HIDE_TAG);
+ partDescriptor.setContributionURI("bundleclass://org.eclipse.ui.tests/org.eclipse.ui.tests.e4.DummyEditor");
+
+ return partDescriptor;
+ }
+
+ private Optional findPrimaryConfiguationAreaPartStack(MApplication application,
+ EModelService modelService) {
+ List areaCandidates = modelService.findElements(application,
+ IPageLayout.ID_EDITOR_AREA, MArea.class, null,
+ EModelService.IN_SHARED_ELEMENTS);
+ if (areaCandidates.size() == 1) {
+ MArea primaryArea = areaCandidates.get(0);
+ for (MPartSashContainerElement element : primaryArea.getChildren()) {
+ if (element instanceof MPartStack) {
+ return Optional.of((MPartStack) element);
+ } else if (element instanceof MPartSashContainer) {
+ return ((MPartSashContainer) element).getChildren().stream().filter(c -> c instanceof MPartStack)
+ .map(c -> (MPartStack) c).findFirst();
+ }
+ }
+ }
+
+ return Optional.empty();
+ }
+
+ private class DummyFileEditorInput implements IFileEditorInput {
+ @Override
+ public boolean exists() {
+ return true;
+ }
+
+ @Override
+ public ImageDescriptor getImageDescriptor() {
+ return null;
+ }
+
+ @Override
+ public String getName() {
+ return "MyInputFile";
+ }
+
+ @Override
+ public IPersistableElement getPersistable() {
+ return null;
+ }
+
+ @Override
+ public String getToolTipText() {
+ return "My Input File";
+ }
+
+ @Override
+ public T getAdapter(Class adapter) {
+ return null;
+ }
+
+ @Override
+ public IFile getFile() {
+ return null;
+ }
+
+ @Override
+ public IStorage getStorage() {
+ return null;
+ }
+ }
+}
\ No newline at end of file
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/DummyEditor.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/DummyEditor.java
new file mode 100644
index 00000000000..63c7db7cff1
--- /dev/null
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/DummyEditor.java
@@ -0,0 +1,17 @@
+/*******************************************************************************
+* Copyright (c) 2024 Feilim Breatnach and others.
+*
+* This program and the accompanying materials are made available under the
+* terms of the Eclipse Public License 2.0 which accompanies this distribution,
+* and is available at https://www.eclipse.org/legal/epl-2.0/
+*
+* SPDX-License-Identifier: EPL-2.0
+*
+* Contributors: Feilim Breatnach, Pilz Ireland - PR #2360
+*******************************************************************************/
+
+package org.eclipse.ui.tests.e4;
+
+public class DummyEditor {
+
+}
From 3b495022515ddb1864fe95067ce9eb19f4716a4b Mon Sep 17 00:00:00 2001
From: Deepika Udayagiri
Date: Tue, 13 Aug 2024 15:23:04 +0530
Subject: [PATCH 072/232] Moving TabFolderLayout into SWT.
Fixes https://github.com/eclipse-platform/eclipse.platform.swt/issues/1317
---
.../META-INF/MANIFEST.MF | 2 +-
.../editors/text/TabFolderLayout.java | 71 -------------------
bundles/org.eclipse.ui/META-INF/MANIFEST.MF | 2 +-
3 files changed, 2 insertions(+), 73 deletions(-)
delete mode 100644 bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TabFolderLayout.java
diff --git a/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF
index 8e42f706134..96c4987c88b 100644
--- a/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui.editors/META-INF/MANIFEST.MF
@@ -19,7 +19,7 @@ Export-Package:
Require-Bundle:
org.eclipse.core.runtime;bundle-version="[3.29.0,4.0.0)",
org.eclipse.core.expressions;bundle-version="[3.9.0,4.0.0)",
- org.eclipse.swt;bundle-version="[3.124.0,4.0.0)",
+ org.eclipse.swt;bundle-version="[3.128.0,4.0.0)",
org.eclipse.ui.ide;bundle-version="[3.21.0,4.0.0)",
org.eclipse.ui;bundle-version="[3.204.0,4.0.0)",
org.eclipse.jface.text;bundle-version="[3.24.0,4.0.0)",
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TabFolderLayout.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TabFolderLayout.java
deleted file mode 100644
index ba477d723a1..00000000000
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TabFolderLayout.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.internal.editors.text;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Layout;
-
-/**
- * This layout controls the position and size
- * of the children of a tab folder.
- *
- * @since 2.1
- */
-class TabFolderLayout extends Layout {
-
- /*
- * @see org.eclipse.swt.widgets.Layout#computeSize(org.eclipse.swt.widgets.Composite, int, int, boolean)
- */
- @Override
- protected Point computeSize (Composite composite, int wHint, int hHint, boolean flushCache) {
- if (wHint != SWT.DEFAULT && hHint != SWT.DEFAULT)
- return new Point(wHint, hHint);
-
- Control [] children = composite.getChildren ();
- int count = children.length;
- int maxWidth = 0, maxHeight = 0;
- for (int i=0; i
Date: Fri, 25 Oct 2024 12:40:47 +0300
Subject: [PATCH 073/232] Remove long time not needed ICU4J references in tests
These are not referenced at all thus simply deleted.
---
.../NumberToStringConverterTest.java | 11 -----
.../StringToNumberConverterTest.java | 11 -----
.../StringToNumberParserTestHarness.java | 45 +------------------
3 files changed, 1 insertion(+), 66 deletions(-)
diff --git a/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/NumberToStringConverterTest.java b/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/NumberToStringConverterTest.java
index 051b9ac427b..9eca1416736 100644
--- a/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/NumberToStringConverterTest.java
+++ b/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/NumberToStringConverterTest.java
@@ -17,7 +17,6 @@
import static org.junit.Assert.assertEquals;
-import java.lang.reflect.Constructor;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.text.Format;
@@ -127,16 +126,6 @@ public void testConvertBigIntegerToString() throws Exception {
assertEquals(expected, result);
}
- Class> icuBigDecimal = null;
- Constructor> icuBigDecimalCtr = null;
- {
- try {
- icuBigDecimal = Class.forName("com.ibm.icu.math.BigDecimal");
- icuBigDecimalCtr = icuBigDecimal.getConstructor(BigInteger.class, int.class);
- }
- catch(ClassNotFoundException | NoSuchMethodException e) {}
- }
-
@Test
public void testConvertBigDecimalToString() throws Exception {
NumberToStringConverter converter = NumberToStringConverter.fromBigDecimal();
diff --git a/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/StringToNumberConverterTest.java b/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/StringToNumberConverterTest.java
index efe2020a749..8ebd2d826ab 100644
--- a/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/StringToNumberConverterTest.java
+++ b/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/databinding/conversion/StringToNumberConverterTest.java
@@ -19,7 +19,6 @@
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertThrows;
-import java.lang.reflect.Constructor;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.text.Format;
@@ -83,16 +82,6 @@ public void testConvertsToBigInteger() throws Exception {
assertEquals(input, result);
}
- Class> icuBigDecimal = null;
- Constructor> icuBigDecimalCtr = null;
- {
- try {
- icuBigDecimal = Class.forName("com.ibm.icu.math.BigDecimal");
- icuBigDecimalCtr = icuBigDecimal.getConstructor(BigInteger.class, int.class);
- }
- catch(ClassNotFoundException | NoSuchMethodException e) {}
- }
-
@Test
public void testConvertsToBigDecimal() throws Exception {
StringToNumberConverter converter = StringToNumberConverter.toBigDecimal(numberFormat);
diff --git a/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/internal/databinding/conversion/StringToNumberParserTestHarness.java b/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/internal/databinding/conversion/StringToNumberParserTestHarness.java
index 2875ec2ec10..55dd6017ef3 100644
--- a/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/internal/databinding/conversion/StringToNumberParserTestHarness.java
+++ b/tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/internal/databinding/conversion/StringToNumberParserTestHarness.java
@@ -14,7 +14,6 @@
package org.eclipse.core.tests.internal.databinding.conversion;
-import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -152,49 +151,7 @@ public void testRanges() throws Exception {
assertFalse("invalid BigDecimal min", assertValid(bigDecimalMin));
assertFalse("invalid BigDecimal max", assertValid(bigDecimalMax));
- /**
- * The ICU4J plugin's NumberFormat will return it's own BigDecimal
- * implementation, com.ibm.icu.math.BigDecimal. The issue this causes is
- * that we can't reference this class as it's not part of the
- * replacement plugin. So in order to ensure that we handle Number's
- * that are not part of the JDK stub a number implemenation and ensure
- * that the double representation of this number is used.
- */
- class MyNumber extends Number {
- double value;
- int count;
-
- MyNumber(double value) {
- this.value = value;
- }
-
- private static final long serialVersionUID = 1L;
-
- @Override
- public double doubleValue() {
- count++;
- return value;
- }
-
- @Override
- public float floatValue() {
- return 0;
- }
-
- @Override
- public int intValue() {
- return 0;
- }
-
- @Override
- public long longValue() {
- return 0;
- }
- }
-
- MyNumber number = new MyNumber(1);
- assertEquals(0, number.count);
+ Number number = BigDecimal.valueOf((double) 1);
assertTrue(StringToNumberParser.inIntegerRange(number));
- assertTrue("double value retrieved", number.count > 0);
}
}
From 5c9af91e7f905d072d6ede14ed5041969281d3ef Mon Sep 17 00:00:00 2001
From: Christopher Hermann
Date: Thu, 10 Oct 2024 14:25:17 +0200
Subject: [PATCH 074/232] [StickyScrolling] Move complex line adaption to
central handler
Move sticky lines adaptation to the growing sticky lines control into the central sticky scrolling handler. This change simplifies the sticky lines provider, making implementations for specific languages more straightforward and maintainable.
Preparation for #2398
---
.../DefaultStickyLinesProvider.java | 85 +++--------------
.../stickyscroll/IStickyLinesProvider.java | 22 ++---
.../stickyscroll/StickyScrollingControl.java | 13 ++-
.../stickyscroll/StickyScrollingHandler.java | 45 ++++++++-
.../DefaultStickyLinesProviderTest.java | 93 +++----------------
.../StickyScrollingControlTest.java | 66 +++++++++++--
.../StickyScrollingHandlerTest.java | 73 ++++++++++++---
7 files changed, 211 insertions(+), 186 deletions(-)
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java
index f0f1370257f..c4281899d1e 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java
@@ -19,9 +19,6 @@
import org.eclipse.swt.custom.StyledText;
-import org.eclipse.jface.text.ITextViewerExtension5;
-import org.eclipse.jface.text.source.ISourceViewer;
-
/**
* This class provides sticky lines for the given source code in the source viewer. The
* implementation is completely based on indentation and therefore works by default for several
@@ -36,83 +33,31 @@ public class DefaultStickyLinesProvider implements IStickyLinesProvider {
private StickyLinesProperties fProperties;
@Override
- public List getStickyLines(ISourceViewer sourceViewer, StickyLinesProperties properties) {
- if (sourceViewer.getTopIndex() == 0) {
- return Collections.emptyList();
- }
-
+ public List getStickyLines(StyledText textWidget, int lineNumber, StickyLinesProperties properties) {
this.fProperties= properties;
LinkedList stickyLines= new LinkedList<>();
try {
- StyledText textWidget= sourceViewer.getTextWidget();
- int startLine= textWidget.getTopIndex();
+ int startIndetation= getStartIndentation(lineNumber, textWidget);
- calculateStickyLinesForLineNumber(stickyLines, sourceViewer, startLine);
- calculateStickyLinesUnderStickyLineControl(stickyLines, sourceViewer, startLine);
- } catch (IllegalArgumentException e) {
- stickyLines.clear();
- }
+ for (int i= lineNumber, previousIndetation= startIndetation; i >= 0; i--) {
+ String line= textWidget.getLine(i);
+ int indentation= getIndentation(line);
- return stickyLines;
- }
+ if (indentation == IGNORE_LINE_INDENTATION) {
+ continue;
+ }
- private void calculateStickyLinesForLineNumber(LinkedList stickyLines, ISourceViewer sourceViewer, int lineNumber) {
- StyledText textWidget= sourceViewer.getTextWidget();
- int startIndetation= getStartIndentation(lineNumber, textWidget);
-
- for (int i= lineNumber, previousIndetation= startIndetation; i >= 0; i--) {
- String line= textWidget.getLine(i);
- int indentation= getIndentation(line);
-
- if (indentation == IGNORE_LINE_INDENTATION) {
- continue;
- }
-
- if (indentation < previousIndetation) {
- previousIndetation= indentation;
- stickyLines.addFirst(new StickyLine(line, mapLineNumberToSourceViewerLine(i, sourceViewer)));
- }
- }
- }
-
- private void calculateStickyLinesUnderStickyLineControl(LinkedList stickyLines, ISourceViewer sourceViewer, int startLine) {
- int firstBelowControl= startLine + stickyLines.size();
- StyledText textWidget= sourceViewer.getTextWidget();
- int lineCount= textWidget.getLineCount();
-
- for (int i= startLine; i < firstBelowControl && i < lineCount; i++) {
-
- String line= textWidget.getLine(i);
- int indentation= getIndentation(line);
- if (indentation == IGNORE_LINE_INDENTATION) {
- continue;
- }
-
- while (!stickyLines.isEmpty() && indentation <= getLastStickyLineIndentation(stickyLines) && i < firstBelowControl) {
- stickyLines.removeLast();
- firstBelowControl--;
- }
-
- String nextContentLine= getNextContentLine(i, textWidget);
- if (getIndentation(nextContentLine) > indentation && i < firstBelowControl) {
- stickyLines.addLast(new StickyLine(line, mapLineNumberToSourceViewerLine(i, sourceViewer)));
- firstBelowControl++;
- continue;
+ if (indentation < previousIndetation) {
+ previousIndetation= indentation;
+ stickyLines.addFirst(new StickyLine(line, i));
+ }
}
+ } catch (IllegalArgumentException e) {
+ stickyLines.clear();
}
- }
- private int getLastStickyLineIndentation(LinkedList stickyLines) {
- String text= stickyLines.getLast().text();
- return getIndentation(text);
- }
-
- private int mapLineNumberToSourceViewerLine(int lineNumber, ISourceViewer sourceViewer) {
- if (sourceViewer instanceof ITextViewerExtension5 extension) {
- return extension.widgetLine2ModelLine(lineNumber);
- }
- return lineNumber;
+ return stickyLines;
}
private int getStartIndentation(int startFromLine, StyledText styledText) {
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java
index 677ae114cd3..522f16cbe4f 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java
@@ -20,7 +20,7 @@
import org.eclipse.jface.text.source.ISourceViewer;
/**
- * A sticky lines provider calculates the sticky lines for a given source viewer. The sticky lines
+ * A sticky lines provider calculates the sticky lines for a given text widget. The sticky lines
* will be displayed in the top area of the editor.
*
* TODO move to public package and add since 3.19
@@ -28,26 +28,24 @@
public interface IStickyLinesProvider {
/**
- * Calculate the sticky lines for the source code of the given sourceViewer. Specific
- * properties, such as the tabWidht can be retrieved from the
+ * Calculate the sticky lines for the source code of the given textWidget. Specific properties,
+ * such as the tabWidht and the source viewer, can be retrieved from the
* properties.
*
- * @param sourceViewer The source viewer containing the source code and information about the
- * first visible line
+ * @param textWidget The text widget containing the source code
+ * @param lineNumber The line number to calculate the sticky lines for
+ * @param properties Properties for additional information
* @return The list of sticky lines to show
- *
- * @see ISourceViewer#getTopIndex()
- * @see ISourceViewer#getTextWidget()
- * @see StyledText#getTopIndex()
*/
- public List getStickyLines(ISourceViewer sourceViewer, StickyLinesProperties properties);
+ public List getStickyLines(StyledText textWidget, int lineNumber, StickyLinesProperties properties);
/**
- * Properties required to calculate the sticky lines.
+ * Additional properties and access in order to calculate the sticky lines.
*
* @param tabWith The with of a tab
+ * @param sourceViewer The sourceViewer to access additional information
*/
- record StickyLinesProperties(int tabWith) {
+ record StickyLinesProperties(int tabWith, ISourceViewer sourceViewer) {
}
}
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
index 414abd5c19c..51179e8c130 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
@@ -208,7 +208,8 @@ private void updateStickyScrollingControls() {
for (int i= 0; i < getNumberStickyLines(); i++) {
StickyLine stickyLine= stickyLines.get(i);
stickyLineTextJoiner.add(stickyLine.text());
- stickyLineNumberJoiner.add(fillLineNumberWithLeadingSpaces(stickyLine.lineNumber() + 1));
+ int lineNumber= getSourceViewerLineNumber(stickyLine.lineNumber());
+ stickyLineNumberJoiner.add(fillLineNumberWithLeadingSpaces(lineNumber + 1));
}
String newStickyLineText= stickyLineTextJoiner.toString();
@@ -223,6 +224,13 @@ private void updateStickyScrollingControls() {
}
}
+ private int getSourceViewerLineNumber(int i) {
+ if (sourceViewer instanceof ITextViewerExtension5 extension) {
+ return extension.widgetLine2ModelLine(i);
+ }
+ return i;
+ }
+
private String fillLineNumberWithLeadingSpaces(int lineNumber) {
int lineCount= sourceViewer.getDocument().getNumberOfLines();
int lineNumberLength= String.valueOf(lineCount).length();
@@ -257,9 +265,6 @@ private void styleStickyLines() {
private List getStickyLineStyleRanges(StickyLine stickyLine, int stickyLineTextOffset) {
int lineNumber= stickyLine.lineNumber();
- if (sourceViewer instanceof ITextViewerExtension5 extension) {
- lineNumber= extension.modelLine2WidgetLine(lineNumber);
- }
try {
StyledText textWidget= sourceViewer.getTextWidget();
int offsetAtLine= textWidget.getOffsetAtLine(lineNumber);
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java
index 432ee38f381..df2ea6bee66 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java
@@ -22,8 +22,10 @@
import java.time.Duration;
import java.util.Collections;
+import java.util.LinkedList;
import java.util.List;
+import org.eclipse.swt.custom.StyledText;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.RGB;
@@ -138,7 +140,7 @@ private StickyScrollingControlSettings loadControlSettings(IPreferenceStore stor
private StickyLinesProperties loadStickyLinesProperties(IPreferenceStore store) {
int tabWidth= store.getInt(EDITOR_TAB_WIDTH);
- return new StickyLinesProperties(tabWidth);
+ return new StickyLinesProperties(tabWidth, sourceViewer);
}
@Override
@@ -151,13 +153,52 @@ public void viewportChanged(int newVerticalOffset) {
}
private void calculateAndShowStickyLines() {
- List stickyLines= stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines= Collections.emptyList();
+
+ StyledText textWidget= sourceViewer.getTextWidget();
+ int startLine= textWidget.getTopIndex();
+
+ if (startLine > 0) {
+ stickyLines= stickyLinesProvider.getStickyLines(textWidget, startLine, stickyLinesProperties);
+ }
+
if (stickyLines == null) {
stickyLines= Collections.emptyList();
}
+
+ stickyLines= adaptStickyLinesToVisibleArea(stickyLines, startLine);
+
stickyScrollingControl.setStickyLines(stickyLines);
}
+ private List adaptStickyLinesToVisibleArea(List stickyLines, int startLine) {
+ if (stickyLines.isEmpty()) {
+ return stickyLines;
+ }
+
+ LinkedList adaptedStickyLines= new LinkedList<>(stickyLines);
+
+ int firstVisibleLine= startLine + adaptedStickyLines.size();
+ StyledText textWidget= sourceViewer.getTextWidget();
+ int maximumLines= textWidget.getLineCount();
+
+ for (int i= startLine + 1; i <= firstVisibleLine && i < maximumLines; i++) {
+ List stickyLinesInLineI= stickyLinesProvider.getStickyLines(textWidget, i, stickyLinesProperties);
+
+ if (stickyLinesInLineI.size() > adaptedStickyLines.size()) {
+ adaptedStickyLines= new LinkedList<>(stickyLinesInLineI);
+ firstVisibleLine= startLine + adaptedStickyLines.size();
+ }
+
+ while (stickyLinesInLineI.size() < adaptedStickyLines.size() && i < firstVisibleLine) {
+ adaptedStickyLines.removeLast();
+ firstVisibleLine--;
+ }
+ }
+
+ return adaptedStickyLines;
+ }
+
/**
* Uninstalls the sticky scrolling handler from the source viewer. This completely disposes the
* {@link StickyScrollingControl} and removes all corresponding listeners.
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java
index 5e9fd440589..afd782d5f91 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java
@@ -25,13 +25,9 @@
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewerExtension5;
-import org.eclipse.jface.text.source.IVerticalRuler;
import org.eclipse.jface.text.source.SourceViewer;
import org.eclipse.ui.internal.texteditor.stickyscroll.IStickyLinesProvider.StickyLinesProperties;
@@ -50,12 +46,12 @@ public void setup() {
sourceViewer = new SourceViewer(shell, null, SWT.None);
stickyLinesProvider = new DefaultStickyLinesProvider();
textWidget = sourceViewer.getTextWidget();
- stickyLinesProperties = new StickyLinesProperties(4);
+ stickyLinesProperties = new StickyLinesProperties(4, sourceViewer);
}
@Test
public void testEmptySourceCode() {
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 0, stickyLinesProperties);
assertThat(stickyLines, is(empty()));
}
@@ -67,7 +63,7 @@ public void testSingleStickyLine() {
line 2<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 1, stickyLinesProperties);
assertThat(stickyLines, contains(new StickyLine("line 1", 0)));
}
@@ -81,9 +77,9 @@ public void testLineUnderStickyLine() {
line 4""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 1, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2<", 1)));
+ assertThat(stickyLines, contains(new StickyLine("line 1", 0)));
}
@Test
@@ -95,7 +91,7 @@ public void testNewStickyRoot() {
line 4<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
assertThat(stickyLines, contains(new StickyLine("line 3", 2)));
}
@@ -110,24 +106,23 @@ public void testIgnoreEmptyLines() {
line 3<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 4, stickyLinesProperties);
assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2", 2)));
}
@Test
public void testLinesWithTabs() {
- stickyLinesProperties = new StickyLinesProperties(2);
+ stickyLinesProperties = new StickyLinesProperties(2, sourceViewer);
String text = """
line 1
\tline 2
\t\tline 3<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 2, stickyLinesProperties);
assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine("\tline 2", 1)));
-
}
@Test
@@ -141,10 +136,9 @@ public void testStartAtEmptyLineWithNext() {
textWidget.setText(text);
textWidget.setTopIndex(3);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2", 2)));
-
}
@Test
@@ -152,42 +146,14 @@ public void testStartAtEmptyLineWithPrevious() {
String text = """
line 1
line 2
- line 3<
- line 4""";
- setText(text);
-
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
-
- assertThat(stickyLines, contains(new StickyLine("line 1", 0)));
- }
-
- @Test
- public void testRemoveStickyLines() {
- String text = """
- line 1
- line 2
- line 3
- line 4<""";
- setText(text);
-
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
-
- assertThat(stickyLines, contains(new StickyLine("line 3", 2)));
- }
-
- @Test
- public void testSourceViewerWithDifferentModelAndWindgetLines() {
- sourceViewer = new SourceViewerLineMapping(shell, null, SWT.None);
- textWidget = sourceViewer.getTextWidget();
+ line 3
- String text = """
- line 1
- line 2<""";
+ line 4""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(sourceViewer, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 42)));
+ assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2", 1)));
}
/**
@@ -196,37 +162,6 @@ public void testSourceViewerWithDifferentModelAndWindgetLines() {
*/
private void setText(String text) {
textWidget.setText(text);
-
- String[] lines = text.split("\n");
- for (int i = 0; i < lines.length; i++) {
- if (lines[i].contains(String.valueOf("<"))) {
- textWidget.setTopIndex(i);
- return;
- }
- }
- }
-
- private class SourceViewerLineMapping extends SourceViewer implements ITextViewerExtension5 {
-
- public SourceViewerLineMapping(Composite parent, IVerticalRuler ruler, int styles) {
- super(parent, ruler, styles);
- }
-
- @Override
- public IRegion[] getCoveredModelRanges(IRegion modelRange) {
- return null;
- }
-
- @Override
- public boolean exposeModelRange(IRegion modelRange) {
- return false;
- }
-
- @Override
- public int widgetLine2ModelLine(int widgetLine) {
- return 42;
- }
-
}
}
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
index 031e3cfa623..2d0999e6b4d 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
@@ -43,6 +43,8 @@
import org.eclipse.swt.widgets.Shell;
import org.eclipse.jface.text.Document;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.ITextViewerExtension5;
import org.eclipse.jface.text.source.IVerticalRuler;
import org.eclipse.jface.text.source.SourceViewer;
@@ -56,6 +58,7 @@ public class StickyScrollingControlTest {
private Color separatorColor;
private StickyScrollingControl stickyScrollingControl;
private IVerticalRuler ruler;
+ private StickyScrollingControlSettings settings;
@Before
public void setup() {
@@ -71,8 +74,8 @@ public void setup() {
hoverColor = new Color(1, 1, 1);
backgroundColor = new Color(2, 2, 2);
separatorColor = new Color(3, 3, 3);
- StickyScrollingControlSettings settings = new StickyScrollingControlSettings(2, lineNumberColor, hoverColor,
- backgroundColor, separatorColor, true);
+ settings = new StickyScrollingControlSettings(2, lineNumberColor, hoverColor, backgroundColor, separatorColor,
+ true);
stickyScrollingControl = new StickyScrollingControl(sourceViewer, ruler, settings, null);
}
@@ -98,6 +101,30 @@ public void testShowStickyLineTexts() {
assertEquals(expStickyLineText, stickyLineText.getText());
}
+ @Test
+ public void testShowStickyLineTextsWithSourceViewerMapping() {
+ shell.dispose();
+ shell = new Shell(Display.getDefault());
+ shell.setSize(200, 200);
+ shell.setLayout(new FillLayout());
+
+ sourceViewer = new SourceViewerLineMapping(shell, ruler, SWT.V_SCROLL | SWT.H_SCROLL);
+ sourceViewer.setDocument(new Document());
+ sourceViewer.getTextWidget().setBounds(0, 0, 200, 200);
+
+ stickyScrollingControl = new StickyScrollingControl(sourceViewer, ruler, settings, null);
+
+ List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
+ stickyScrollingControl.setStickyLines(stickyLines);
+
+ StyledText stickyLineNumber = getStickyLineNumber();
+ String expLineNumber = "52" + System.lineSeparator() + "62";
+ assertEquals(expLineNumber, stickyLineNumber.getText());
+ StyledText stickyLineText = getStickyLineText();
+ String expStickyLineText = "line 10" + System.lineSeparator() + "line 20";
+ assertEquals(expStickyLineText, stickyLineText.getText());
+ }
+
@Test
public void testCorrectColorsApplied() {
List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
@@ -119,8 +146,8 @@ public void testLimitStickyLinesCount() {
List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
stickyScrollingControl.setStickyLines(stickyLines);
- StickyScrollingControlSettings settings = new StickyScrollingControlSettings(1, lineNumberColor, hoverColor,
- backgroundColor, separatorColor, true);
+ settings = new StickyScrollingControlSettings(1, lineNumberColor, hoverColor, backgroundColor, separatorColor,
+ true);
stickyScrollingControl.applySettings(settings);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -147,8 +174,8 @@ public void testCopyStyleRanges() {
@Test
public void testWithoutVerticalRuler() {
sourceViewer = new SourceViewer(shell, null, SWT.None);
- StickyScrollingControlSettings settings = new StickyScrollingControlSettings(5, lineNumberColor, hoverColor,
- backgroundColor, separatorColor, true);
+ settings = new StickyScrollingControlSettings(5, lineNumberColor, hoverColor, backgroundColor, separatorColor,
+ true);
stickyScrollingControl = new StickyScrollingControl(sourceViewer, settings);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -164,8 +191,8 @@ public void testWithoutLineNumber() {
StyledText stickyLineNumber = getStickyLineNumber();
assertThat(stickyLineNumber.getLeftMargin(), greaterThan(0));
- StickyScrollingControlSettings settings = new StickyScrollingControlSettings(5, lineNumberColor, hoverColor,
- backgroundColor, separatorColor, false);
+ settings = new StickyScrollingControlSettings(5, lineNumberColor, hoverColor, backgroundColor, separatorColor,
+ false);
stickyScrollingControl.applySettings(settings);
stickyLineNumber = getStickyLineNumber();
@@ -419,4 +446,27 @@ private void drainDisplayEventQueue() {
}
}
+ private class SourceViewerLineMapping extends SourceViewer implements ITextViewerExtension5 {
+
+ public SourceViewerLineMapping(Composite parent, IVerticalRuler ruler, int styles) {
+ super(parent, ruler, styles);
+ }
+
+ @Override
+ public IRegion[] getCoveredModelRanges(IRegion modelRange) {
+ return null;
+ }
+
+ @Override
+ public boolean exposeModelRange(IRegion modelRange) {
+ return false;
+ }
+
+ @Override
+ public int widgetLine2ModelLine(int widgetLine) {
+ return widgetLine + 42;
+ }
+
+ }
+
}
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
index 3fc500fae2d..2b84f4a86d9 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
@@ -20,9 +20,12 @@
import static org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants.EDITOR_TAB_WIDTH;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.atMost;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -62,14 +65,19 @@ public class StickyScrollingHandlerTest {
private IStickyLinesProvider linesProvider;
private StickyScrollingHandler stickyScrollingHandler;
private StickyLinesProperties stickyLinesProperties;
+ private StyledText textWidget;
@Before
public void setup() {
shell = new Shell(Display.getDefault());
+ shell.setBounds(0, 0, 200, 80);
ruler = new CompositeRuler();
sourceViewer = new SourceViewer(shell, ruler, SWT.None);
sourceViewer.setDocument(new Document());
- sourceViewer.getTextWidget().setBounds(0, 0, 200, 200);
+ sourceViewer.getTextWidget().setBounds(0, 0, 200, 100);
+ textWidget = sourceViewer.getTextWidget();
+ textWidget.setText("first 1 \nline 2 \nline 3 \nline 4 \nline 5 \nline 6 \nline 7 \nline 8 \nline 9 \nline 10");
+ textWidget.setTopIndex(1);
lineNumberColor = new Color(0, 0, 0);
hoverColor = new Color(1, 1, 1);
@@ -78,7 +86,7 @@ public void setup() {
linesProvider = mock(IStickyLinesProvider.class);
stickyScrollingHandler = new StickyScrollingHandler(sourceViewer, ruler, store, linesProvider);
- stickyLinesProperties = new StickyLinesProperties(4);
+ stickyLinesProperties = new StickyLinesProperties(4, sourceViewer);
}
@After
@@ -88,7 +96,7 @@ public void teardown() {
@Test
public void testShowStickyLines() {
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9)));
stickyScrollingHandler.viewportChanged(100);
@@ -101,6 +109,19 @@ public void testShowStickyLines() {
assertEquals(expStickyLineText, stickyLineText.getText());
}
+ @Test
+ public void testDontCalculateStickyLinesForFirstLine() {
+ textWidget.setTopIndex(0);
+
+ stickyScrollingHandler.viewportChanged(100);
+
+ StyledText stickyLineNumber = getStickyLineNumber();
+ assertEquals("", stickyLineNumber.getText());
+ StyledText stickyLineText = getStickyLineText();
+ assertEquals("", stickyLineText.getText());
+ verify(linesProvider, never()).getStickyLines(any(), anyInt(), any());
+ }
+
@Test
public void testUnistallStickyLines() {
Canvas stickyControlCanvas = getStickyControlCanvas(this.shell);
@@ -112,7 +133,7 @@ public void testUnistallStickyLines() {
@Test
public void testPreferencesLoaded() {
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9)));
stickyScrollingHandler.viewportChanged(100);
@@ -123,7 +144,9 @@ public void testPreferencesLoaded() {
@Test
public void testPreferencesUpdated() {
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
+ .thenReturn(List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19)));
+ when(linesProvider.getStickyLines(textWidget, 2, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19)));
stickyScrollingHandler.viewportChanged(100);
@@ -141,13 +164,13 @@ public void testPreferencesUpdated() {
@Test
public void testThrottledExecution() throws InterruptedException {
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9)));
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9)));
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9)));
- when(linesProvider.getStickyLines(sourceViewer, stickyLinesProperties))
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
.thenReturn(List.of(new StickyLine("line 10", 9)));
stickyScrollingHandler.viewportChanged(100);
@@ -162,8 +185,36 @@ public void testThrottledExecution() throws InterruptedException {
// Call to lines provider should be throttled, at least one and at most
// 3 calls expected
- verify(linesProvider, atMost(3)).getStickyLines(sourceViewer, stickyLinesProperties);
- verify(linesProvider, atLeastOnce()).getStickyLines(sourceViewer, stickyLinesProperties);
+ verify(linesProvider, atMost(3)).getStickyLines(textWidget, 1, stickyLinesProperties);
+ verify(linesProvider, atLeastOnce()).getStickyLines(textWidget, 1, stickyLinesProperties);
+ }
+
+ @Test
+ public void testRemoveStickyLines() {
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
+ .thenReturn(List.of(new StickyLine("line 1", 0), new StickyLine("line 2", 1)));
+ when(linesProvider.getStickyLines(textWidget, 2, stickyLinesProperties))
+ .thenReturn(List.of(new StickyLine("line 3", 2)));
+
+ stickyScrollingHandler.viewportChanged(100);
+
+ StyledText stickyLineText = getStickyLineText();
+ String expStickyLineText = "line 1";
+ assertEquals(expStickyLineText, stickyLineText.getText());
+ }
+
+ @Test
+ public void testLineUnderStickyLine() {
+ when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
+ .thenReturn(List.of(new StickyLine("line 1", 0)));
+ when(linesProvider.getStickyLines(textWidget, 2, stickyLinesProperties))
+ .thenReturn(List.of(new StickyLine("line 1", 0), new StickyLine("line 2", 1)));
+
+ stickyScrollingHandler.viewportChanged(100);
+
+ StyledText stickyLineText = getStickyLineText();
+ String expStickyLineText = "line 1" + System.lineSeparator() + "line 2";
+ assertEquals(expStickyLineText, stickyLineText.getText());
}
private void waitInUi(int ms) throws InterruptedException {
From 55038906f2f7d5200d26b7c044d6c499fc7692ad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Fri, 25 Oct 2024 14:33:05 +0300
Subject: [PATCH 075/232] Convert ProgressTestCase to pure JUnit 4
Unstable test on MacOS verification build which should hopefully get a
bit more stable with "less" extra things being done by the tests.
---
.../tests/progress/ProgressContantsTest.java | 23 ++++++--------
.../ui/tests/progress/ProgressTestCase.java | 31 ++++++++++---------
.../ui/tests/progress/ProgressViewTests.java | 25 +++++++--------
3 files changed, 37 insertions(+), 42 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressContantsTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressContantsTest.java
index 53444f47202..b2dfd7b485d 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressContantsTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressContantsTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2017 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -15,6 +15,14 @@
package org.eclipse.ui.tests.progress;
+import static org.eclipse.ui.tests.harness.util.UITestCase.processEvents;
+import static org.eclipse.ui.tests.harness.util.UITestCase.processEventsUntil;
+import static org.eclipse.ui.tests.harness.util.UITestCase.waitForJobs;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
@@ -38,14 +46,7 @@
import org.eclipse.ui.progress.IProgressConstants2;
import org.eclipse.ui.tests.TestPlugin;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-/**
- * @since 3.6
- * @author Prakash G.R. (grprakash@in.ibm.com)
- */
-@RunWith(JUnit4.class)
+
public class ProgressContantsTest extends ProgressTestCase {
/**
@@ -68,10 +69,6 @@ public boolean belongsTo(Object family) {
}
}
- public ProgressContantsTest() {
- super(ProgressContantsTest.class.getSimpleName());
- }
-
@Test
public void testCommandProperty() throws Exception {
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressTestCase.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressTestCase.java
index 7ddda9cbe89..925efee4939 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressTestCase.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressTestCase.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2019 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -14,6 +14,9 @@
package org.eclipse.ui.tests.progress;
+import static org.eclipse.ui.tests.harness.util.UITestCase.processEvents;
+import static org.junit.Assert.assertNotNull;
+
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
@@ -25,33 +28,31 @@
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.internal.progress.FinishedJobs;
import org.eclipse.ui.internal.progress.ProgressView;
+import org.eclipse.ui.tests.harness.util.CloseTestWindowsRule;
import org.eclipse.ui.tests.harness.util.UITestCase;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
-/**
- * @since 3.6
- */
-public abstract class ProgressTestCase extends UITestCase {
+public abstract class ProgressTestCase {
protected ProgressView progressView;
protected IWorkbenchWindow window;
- public ProgressTestCase(String testName) {
- super(testName);
- }
+ @Rule
+ public final CloseTestWindowsRule closeTestWindows = new CloseTestWindowsRule();
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
- window = openTestWindow("org.eclipse.ui.resourcePerspective");
+ @Before
+ public void doSetUp() throws Exception {
+ window = UITestCase.openTestWindow("org.eclipse.ui.resourcePerspective");
// Remove progress info items before running the tests to prevent random
// failings
FinishedJobs.getInstance().clearAll();
}
- @Override
- protected void doTearDown() throws Exception {
- super.doTearDown();
+ @After
+ public void doTearDown() throws Exception {
// Remove progress info items
FinishedJobs.getInstance().clearAll();
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressViewTests.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressViewTests.java
index cd21a3e70f8..78128f0e126 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressViewTests.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/progress/ProgressViewTests.java
@@ -14,7 +14,11 @@
package org.eclipse.ui.tests.progress;
+import static org.eclipse.ui.tests.harness.util.UITestCase.processEvents;
+import static org.eclipse.ui.tests.harness.util.UITestCase.processEventsUntil;
import static org.junit.Assert.assertArrayEquals;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import java.util.ArrayList;
import java.util.Arrays;
@@ -33,29 +37,22 @@
import org.eclipse.ui.internal.progress.TaskInfo;
import org.eclipse.ui.progress.IProgressConstants;
import org.eclipse.ui.tests.TestPlugin;
+import org.junit.After;
+import org.junit.Before;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-/**
- * @since 3.6
- * @author Prakash G.R.
- */
-@RunWith(JUnit4.class)
-public class ProgressViewTests extends ProgressTestCase {
- public ProgressViewTests() {
- super(ProgressViewTests.class.getSimpleName());
- }
+public class ProgressViewTests extends ProgressTestCase {
@Override
- protected void doSetUp() throws Exception {
+ @Before
+ public void doSetUp() throws Exception {
super.doSetUp();
FinishedJobs.getInstance().clearAll();
}
@Override
- protected void doTearDown() throws Exception {
+ @After
+ public void doTearDown() throws Exception {
FinishedJobs.getInstance().clearAll();
super.doTearDown();
}
From e43dec220adca4231e5b4cd733d0d9cc237b1151 Mon Sep 17 00:00:00 2001
From: Ed Merks
Date: Fri, 25 Oct 2024 16:21:52 +0200
Subject: [PATCH 076/232] Increment to 3.207.0 because re-exported
org.eclipse.swt changed ranges
https://github.com/eclipse-platform/eclipse.platform.swt/issues/1317
---
bundles/org.eclipse.ui/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui/META-INF/MANIFEST.MF
index d7cfe55619b..c19e9d63918 100644
--- a/bundles/org.eclipse.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Plugin.name
Bundle-SymbolicName: org.eclipse.ui; singleton:=true
-Bundle-Version: 3.206.200.qualifier
+Bundle-Version: 3.207.0.qualifier
Bundle-Activator: org.eclipse.ui.internal.UIPlugin
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %Plugin.providerName
From 54849021b21ba173e6008f44d294423017ea456a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Fri, 25 Oct 2024 22:02:07 +0300
Subject: [PATCH 077/232] Simplify ResourceInitialSelectionTest access to
Display
---
.../ui/tests/dialogs/ResourceInitialSelectionTest.java | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java
index 620f0643267..68dee301d34 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dialogs/ResourceInitialSelectionTest.java
@@ -23,8 +23,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.Map;
-import java.util.Map.Entry;
import java.util.Set;
+import java.util.Map.Entry;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
@@ -34,7 +34,7 @@
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.ui.PlatformUI;
@@ -351,10 +351,10 @@ private void createProject() throws CoreException {
// Assert files have been properly created
- Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+ Display display = PlatformUI.getWorkbench().getDisplay();
for (String fileName : FILE_NAMES) {
- DisplayHelper.waitForCondition(shell.getDisplay(), 1000, () -> project.getFile(fileName).exists());
+ DisplayHelper.waitForCondition(display, 1000, () -> project.getFile(fileName).exists());
assertTrue("File was not created", project.getFile(fileName).exists());
}
}
From d4d7daac61f51a0e25875ffb436227472a6c8c30 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Sat, 26 Oct 2024 09:12:05 +0300
Subject: [PATCH 078/232] CloseAllHandlerTest cleanup
Use static imports and pattern matching to ease reading.
---
.../ui/tests/e4/CloseAllHandlerTest.java | 55 ++++++++++---------
1 file changed, 30 insertions(+), 25 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
index 194726c5d62..c3c0ad72f0c 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
@@ -12,6 +12,12 @@
package org.eclipse.ui.tests.e4;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
import java.util.Collections;
import java.util.List;
import java.util.Optional;
@@ -44,7 +50,6 @@
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.internal.CloseAllHandler;
import org.eclipse.ui.internal.Workbench;
-import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.osgi.framework.BundleContext;
@@ -102,12 +107,12 @@ public void testCloseMixedEditorTypes() {
Command closeAllCommand = commandService.getCommand(CLOSE_ALL_EDITORS_COMMAND_ID);
final ParameterizedCommand parameterizedCommand = ParameterizedCommand.generateCommand(closeAllCommand,
- Collections.EMPTY_MAP);
+ Collections.emptyMap());
// verify the close all editors handler enabledment is false (no editors are
// open yet!)
boolean canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertFalse(canExecute);
+ assertFalse(canExecute);
// scenario 1: e4 part descriptor contribution
MPartDescriptor partDescriptor = createDummyPartDescriptor();
@@ -119,46 +124,46 @@ public void testCloseMixedEditorTypes() {
// verify the close all handler is enabled now (since dummy editor has been
// opened)
canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertTrue(canExecute);
+ assertTrue(canExecute);
// close all editors (dummy editor should close!)
dummyPart = partService.findPart(DUMMY_E4_PART_ID);
- Assert.assertNotNull(dummyPart);
+ assertNotNull(dummyPart);
handlerService.executeHandler(parameterizedCommand);
dummyPart = partService.findPart(DUMMY_E4_PART_ID);
- Assert.assertNull(dummyPart);
+ assertNull(dummyPart);
// verify the close all handler is *not* enabled now (since dummy editor has
// been closed)
canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertFalse(canExecute);
+ assertFalse(canExecute);
// scenario 2: open a compatibility layer editor
IFileEditorInput input = new DummyFileEditorInput();
Object activeWindow = applicationContext.getActive(ISources.ACTIVE_WORKBENCH_WINDOW_NAME);
- Assert.assertTrue("Active workbench window not found.", activeWindow instanceof IWorkbenchWindow);
+ assertTrue("Active workbench window not found.", activeWindow instanceof IWorkbenchWindow);
IWorkbenchWindow window = (IWorkbenchWindow) activeWindow;
try {
window.getActivePage().openEditor(input, TEST_COMPATIBILITY_LAYER_EDITOR_ID);
} catch (PartInitException e) {
- Assert.fail("Test Compatibility Editor could not be opened. Further testing cannot complete.");
+ fail("Test Compatibility Editor could not be opened. Further testing cannot complete.");
}
// verify the close all handler is enabled now (since a dummy compatibility
// layer editor has been opened)
canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertTrue(canExecute);
+ assertTrue(canExecute);
IEditorPart compatEditor = window.getActivePage().findEditor(input);
- Assert.assertNotNull(compatEditor);
+ assertNotNull(compatEditor);
handlerService.executeHandler(parameterizedCommand);
compatEditor = window.getActivePage().findEditor(input);
- Assert.assertNull(compatEditor);
+ assertNull(compatEditor);
// verify the close all handler is *not* enabled now (since compatibility layer
// editor has been closed)
canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertFalse(canExecute);
+ assertFalse(canExecute);
// scenario 3:
// finally: re-open both the compatibility layer editor *and* the dummy e4 part
@@ -168,33 +173,33 @@ public void testCloseMixedEditorTypes() {
try {
window.getActivePage().openEditor(input, TEST_COMPATIBILITY_LAYER_EDITOR_ID);
} catch (PartInitException e) {
- Assert.fail("Test Compatibility Editor could not be opened. Further testing cannot complete.");
+ fail("Test Compatibility Editor could not be opened. Further testing cannot complete.");
}
compatEditor = window.getActivePage().findEditor(input);
- Assert.assertNotNull(compatEditor);
+ assertNotNull(compatEditor);
dummyPart = partService.findPart(DUMMY_E4_PART_ID);
- Assert.assertNotNull(dummyPart);
+ assertNotNull(dummyPart);
canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertTrue(canExecute);
+ assertTrue(canExecute);
// close all editors
handlerService.executeHandler(parameterizedCommand);
canExecute = handlerService.canExecute(parameterizedCommand);
- Assert.assertFalse(canExecute);
+ assertFalse(canExecute);
// verify they are all closed
compatEditor = window.getActivePage().findEditor(input);
- Assert.assertNull(compatEditor);
+ assertNull(compatEditor);
dummyPart = partService.findPart(DUMMY_E4_PART_ID);
- Assert.assertNull(dummyPart);
+ assertNull(dummyPart);
}
private MPart createAndOpenE4Part(MPartDescriptor partDescriptor) {
Optional primaryPartStack = findPrimaryConfiguationAreaPartStack(application, modelService);
if (primaryPartStack.isEmpty()) {
- Assert.fail("Test cannot proceed as the primary part stack could not be found in the application.");
+ fail("Test cannot proceed as the primary part stack could not be found in the application.");
}
MPart dummyPart = partService.createPart(partDescriptor.getElementId());
@@ -226,10 +231,10 @@ private Optional findPrimaryConfiguationAreaPartStack(MApplication a
if (areaCandidates.size() == 1) {
MArea primaryArea = areaCandidates.get(0);
for (MPartSashContainerElement element : primaryArea.getChildren()) {
- if (element instanceof MPartStack) {
- return Optional.of((MPartStack) element);
- } else if (element instanceof MPartSashContainer) {
- return ((MPartSashContainer) element).getChildren().stream().filter(c -> c instanceof MPartStack)
+ if (element instanceof MPartStack partStack) {
+ return Optional.of(partStack);
+ } else if (element instanceof MPartSashContainer sash) {
+ return sash.getChildren().stream().filter(c -> c instanceof MPartStack)
.map(c -> (MPartStack) c).findFirst();
}
}
From 9e0cb2a040fe4c6bdffaa90aa3ccbabc40434249 Mon Sep 17 00:00:00 2001
From: Matthias Becker
Date: Fri, 25 Oct 2024 15:07:16 +0200
Subject: [PATCH 079/232] Only set background color on tree if "linesVisible"
is false
On macOS setting "linesVisible" to true creates an zebra styled pattern
on the tree. If we now set the background color via CSS
on this tree that pattern would be gone. Setting the background color
via CSS on a tree that has "linesVisible" to false does not do any harm.
---
bundles/org.eclipse.ui.themes/css/e4_preview_mac.css | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css b/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css
index b426954c9d4..fe8cb0a1003 100644
--- a/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css
+++ b/bundles/org.eclipse.ui.themes/css/e4_preview_mac.css
@@ -103,7 +103,6 @@ CTabFolder Canvas {
}
.View Composite,
-.View Composite Tree,
.View Composite Label,
.View ToolBar,
.View Group,
@@ -145,6 +144,11 @@ CTabFolder Canvas {
swt-tabBackground-color: #ffffff;
}
+
+.View Composite Tree[swt-lines-visible=false]{
+ background-color: #f8f8f8;
+}
+
.View Composite PrependingAsteriskFilteredTree,
.View PrependingAsteriskFilteredTree Text,
.View Group Text,
From ec2d9bd0d374ee7c0a83051907b2195d05cfd3fb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Mon, 28 Oct 2024 09:45:35 +0200
Subject: [PATCH 080/232] Stop needlessly pass TestCase instance in harness
Convert the tests to plain JUnit4 while at them too.
---
.../ui/tests/harness/util/ActionUtil.java | 46 +++++++------------
.../eclipse/ui/tests/api/IActionBarsTest.java | 42 +++++++++--------
.../ui/tests/api/IActionDelegateTest.java | 24 +++++-----
.../tests/api/IEditorActionDelegateTest.java | 15 ++----
.../ui/tests/api/IViewActionDelegateTest.java | 15 ++----
.../IWorkbenchWindowActionDelegateTest.java | 17 +++----
6 files changed, 66 insertions(+), 93 deletions(-)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ActionUtil.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ActionUtil.java
index 463fc20734d..de37498d2b2 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ActionUtil.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ActionUtil.java
@@ -23,21 +23,17 @@
import org.eclipse.ui.internal.WorkbenchWindow;
import org.junit.Assert;
-import junit.framework.TestCase;
-
/**
- * ActionUtil contains methods to run actions
- * in the workbench.
+ * ActionUtil contains methods to run actions in the workbench.
*/
public class ActionUtil {
/**
* Runs an action contribution.
*
- * @param test the current test case
* @param item an action contribution item
*/
- public static void runAction(TestCase test, IContributionItem item) {
+ public static void runAction(IContributionItem item) {
Assert.assertTrue(item instanceof ActionContributionItem);
((ActionContributionItem) item).getAction().run();
}
@@ -46,18 +42,16 @@ public static void runAction(TestCase test, IContributionItem item) {
* Runs the first action found in a menu manager with a
* particular label.
*
- * @param test the current test case
* @param mgr the containing menu manager
* @param label the action label
*/
- public static void runActionWithLabel(TestCase test, IMenuManager mgr,
- String label) {
+ public static void runActionWithLabel(IMenuManager mgr, String label) {
IContributionItem[] items = mgr.getItems();
for (IContributionItem item : items) {
- if (item instanceof SubContributionItem)
- item = ((SubContributionItem) item).getInnerItem();
- if (item instanceof ActionContributionItem) {
- IAction action = ((ActionContributionItem) item).getAction();
+ if (item instanceof SubContributionItem subItem)
+ item = subItem.getInnerItem();
+ if (item instanceof ActionContributionItem actionContribItem) {
+ IAction action = actionContribItem.getAction();
if (label.equals(action.getText())) {
action.run();
return;
@@ -71,43 +65,37 @@ public static void runActionWithLabel(TestCase test, IMenuManager mgr,
* Runs the first action found in a window with a
* particular label.
*
- * @param test the current test case
* @param win the containing window
* @param label the action label
*/
- public static void runActionWithLabel(TestCase test, IWorkbenchWindow win,
- String label) {
+ public static void runActionWithLabel(IWorkbenchWindow win, String label) {
WorkbenchWindow realWin = (WorkbenchWindow) win;
IMenuManager mgr = realWin.getMenuBarManager();
- runActionWithLabel(test, mgr, label);
+ runActionWithLabel(mgr, label);
}
/**
* Runs an action identified by an id path in a
* menu manager.
*
- * @param test the current test case
* @param mgr the containing menu manager
*/
- public static void runActionUsingPath(TestCase test, IMenuManager mgr,
- String idPath) {
+ public static void runActionUsingPath(IMenuManager mgr, String idPath) {
IContributionItem item = mgr.findUsingPath(idPath);
Assert.assertNotNull(item);
- runAction(test, item);
+ runAction(item);
}
/**
* Runs an action identified by an id path in a
* window.
*
- * @param test the current test case
* @param win the containing window
*/
- public static void runActionUsingPath(TestCase test, IWorkbenchWindow win,
- String idPath) {
+ public static void runActionUsingPath(IWorkbenchWindow win, String idPath) {
WorkbenchWindow realWin = (WorkbenchWindow) win;
IMenuManager mgr = realWin.getMenuBarManager();
- runActionUsingPath(test, mgr, idPath);
+ runActionUsingPath(mgr, idPath);
}
/**
@@ -122,10 +110,10 @@ public static void runActionUsingPath(TestCase test, IWorkbenchWindow win,
public static IAction getActionWithLabel(IMenuManager mgr, String label) {
IContributionItem[] items = mgr.getItems();
for (IContributionItem item : items) {
- if (item instanceof SubContributionItem)
- item = ((SubContributionItem) item).getInnerItem();
- if (item instanceof ActionContributionItem) {
- IAction action = ((ActionContributionItem) item).getAction();
+ if (item instanceof SubContributionItem subItem)
+ item = subItem.getInnerItem();
+ if (item instanceof ActionContributionItem actionContribItem) {
+ IAction action = actionContribItem.getAction();
if (label.equals(action.getText())) {
return action;
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionBarsTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionBarsTest.java
index 0e140470dd3..5f448ff67d7 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionBarsTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionBarsTest.java
@@ -13,6 +13,13 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.eclipse.ui.tests.harness.util.UITestCase.openTestWindow;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
import org.eclipse.core.commands.NotEnabledException;
import org.eclipse.core.commands.NotHandledException;
import org.eclipse.jface.action.Action;
@@ -28,20 +35,22 @@
import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.internal.handlers.IActionCommandMappingService;
import org.eclipse.ui.tests.harness.util.ActionUtil;
-import org.eclipse.ui.tests.harness.util.UITestCase;
+import org.eclipse.ui.tests.harness.util.CloseTestWindowsRule;
+import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
/**
* Test the lifecycle of an action delegate.
*/
-@RunWith(JUnit4.class)
-public class IActionBarsTest extends UITestCase {
+public class IActionBarsTest {
+
+ private IWorkbenchWindow fWindow;
- protected IWorkbenchWindow fWindow;
+ private IWorkbenchPage fPage;
- protected IWorkbenchPage fPage;
+ @Rule
+ public final CloseTestWindowsRule closeTestWindows = new CloseTestWindowsRule();
private static class MockAction extends Action {
public boolean hasRun = false;
@@ -56,16 +65,9 @@ public void run() {
}
}
- /**
- * Constructor for IActionDelegateTest
- */
- public IActionBarsTest() {
- super(IActionBarsTest.class.getSimpleName());
- }
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
+ @Before
+ public void doSetUp() throws Exception {
fWindow = openTestWindow();
fPage = fWindow.getActivePage();
}
@@ -168,7 +170,7 @@ public void testSetGlobalActionHandler() throws Throwable {
runMatchingCommand(fWindow, ActionFactory.CUT.getId());
runMatchingCommand(fWindow, ActionFactory.UNDO.getId());
- ActionUtil.runActionUsingPath(this, fWindow,
+ ActionUtil.runActionUsingPath(fWindow,
IWorkbenchActionConstants.M_FILE + '/' + IWorkbenchActionConstants.QUIT);
assertTrue(cut.hasRun);
assertTrue(!copy.hasRun);
@@ -187,7 +189,7 @@ public void testSetGlobalActionHandler() throws Throwable {
cut.hasRun = copy.hasRun = undo.hasRun = quit.hasRun = false;
runMatchingCommand(fWindow, ActionFactory.CUT.getId());
runMatchingCommand(fWindow, ActionFactory.UNDO.getId());
- ActionUtil.runActionUsingPath(this, fWindow,
+ ActionUtil.runActionUsingPath(fWindow,
IWorkbenchActionConstants.M_FILE + '/' + IWorkbenchActionConstants.QUIT);
assertTrue(!cut.hasRun);
assertTrue(!copy.hasRun);
@@ -200,7 +202,7 @@ public void testSetGlobalActionHandler() throws Throwable {
cut.hasRun = copy.hasRun = undo.hasRun = quit.hasRun = false;
runMatchingCommand(fWindow, ActionFactory.CUT.getId());
runMatchingCommand(fWindow, ActionFactory.UNDO.getId());
- ActionUtil.runActionUsingPath(this, fWindow,
+ ActionUtil.runActionUsingPath(fWindow,
IWorkbenchActionConstants.M_FILE + '/' + IWorkbenchActionConstants.QUIT);
assertTrue(cut.hasRun);
assertTrue(!copy.hasRun);
@@ -219,7 +221,7 @@ private void runMatchingCommand(IWorkbenchWindow window, String actionId) {
// this is not a failure, just a condition to be checked by
// the test
} catch (Exception e) {
- fail("Failed to run " + commandId, e);
+ fail("Failed to run " + commandId);
}
}
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionDelegateTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionDelegateTest.java
index 853c3cc5ffc..e932ab85c4f 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionDelegateTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IActionDelegateTest.java
@@ -13,33 +13,35 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
import java.util.Arrays;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.tests.harness.util.CloseTestWindowsRule;
import org.eclipse.ui.tests.harness.util.UITestCase;
+import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
/**
* Test the lifecycle of an action delegate.
*/
-public abstract class IActionDelegateTest extends UITestCase {
+public abstract class IActionDelegateTest {
protected IWorkbenchWindow fWindow;
protected IWorkbenchPage fPage;
- /**
- * Constructor for IActionDelegateTest
- */
- public IActionDelegateTest(String testName) {
- super(testName);
- }
+ @Rule
+ public final CloseTestWindowsRule closeTestWindows = new CloseTestWindowsRule();
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
- fWindow = openTestWindow();
+ @Before
+ public void doSetUp() throws Exception {
+ fWindow = UITestCase.openTestWindow();
fPage = fWindow.getActivePage();
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorActionDelegateTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorActionDelegateTest.java
index d5d841e8965..c3060b4ff8a 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorActionDelegateTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorActionDelegateTest.java
@@ -13,6 +13,9 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.jface.action.IMenuManager;
@@ -21,26 +24,16 @@
import org.eclipse.ui.tests.harness.util.ActionUtil;
import org.eclipse.ui.tests.harness.util.FileUtil;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
/**
* Tests the lifecycle for an editor action delegate.
*/
-@RunWith(JUnit4.class)
public class IEditorActionDelegateTest extends IActionDelegateTest {
public static String EDITOR_ID = "org.eclipse.ui.tests.api.IEditorActionDelegateTest";
private MockEditorPart editor;
- /**
- * Constructor for IWorkbenchWindowActionDelegateTest
- */
- public IEditorActionDelegateTest() {
- super(IEditorActionDelegateTest.class.getSimpleName());
- }
-
@Test
public void testSetActiveEditor() throws Throwable {
// When an action delegate is run the
@@ -69,7 +62,7 @@ protected void runAction(Object widget) throws Throwable {
MockEditorActionBarContributor contributor = (MockEditorActionBarContributor) editor
.getEditorSite().getActionBarContributor();
IMenuManager mgr = contributor.getActionBars().getMenuManager();
- ActionUtil.runActionWithLabel(this, mgr, "Mock Action");
+ ActionUtil.runActionWithLabel(mgr, "Mock Action");
}
@Override
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IViewActionDelegateTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IViewActionDelegateTest.java
index d5bcbb517f2..5cfcaeac7a4 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IViewActionDelegateTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IViewActionDelegateTest.java
@@ -13,27 +13,20 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.ui.tests.harness.util.ActionUtil;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
/**
* Tests the lifecycle for a view action delegate.
*/
-@RunWith(JUnit4.class)
public class IViewActionDelegateTest extends IActionDelegateTest {
public static String TEST_VIEW_ID = "org.eclipse.ui.tests.api.IViewActionDelegateTest";
- /**
- * Constructor for IWorkbenchWindowActionDelegateTest
- */
- public IViewActionDelegateTest() {
- super(IViewActionDelegateTest.class.getSimpleName());
- }
-
@Test
public void testInit() throws Throwable {
// When an action delegate is run the
@@ -59,7 +52,7 @@ protected Object createActionWidget() throws Throwable {
protected void runAction(Object widget) throws Throwable {
MockViewPart view = (MockViewPart) widget;
IMenuManager mgr = view.getViewSite().getActionBars().getMenuManager();
- ActionUtil.runActionWithLabel(this, mgr, "Mock Action");
+ ActionUtil.runActionWithLabel(mgr, "Mock Action");
}
@Override
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchWindowActionDelegateTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchWindowActionDelegateTest.java
index 5c6ba6bbb0e..f82ca14b3e5 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchWindowActionDelegateTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkbenchWindowActionDelegateTest.java
@@ -13,6 +13,11 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
import java.util.Arrays;
import org.eclipse.ui.IActionDelegate2;
@@ -20,22 +25,12 @@
import org.eclipse.ui.tests.harness.util.ActionUtil;
import org.junit.Ignore;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
/**
* Tests the lifecycle for a window action delegate.
*/
-@RunWith(JUnit4.class)
public class IWorkbenchWindowActionDelegateTest extends IActionDelegateTest {
- /**
- * Constructor for IWorkbenchWindowActionDelegateTest
- */
- public IWorkbenchWindowActionDelegateTest() {
- super(IWorkbenchWindowActionDelegateTest.class.getSimpleName());
- }
-
@Test
@Override
public void testRun() throws Throwable {
@@ -123,7 +118,7 @@ protected Object createActionWidget() throws Throwable {
@Override
protected void runAction(Object widget) throws Throwable {
- ActionUtil.runActionWithLabel(this, fWindow, "Mock Action");
+ ActionUtil.runActionWithLabel(fWindow, "Mock Action");
}
@Override
From 4fbbe1b8f3c6653a50135152e641da20a79722dc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Mon, 28 Oct 2024 21:32:31 +0200
Subject: [PATCH 081/232] Get rid of ArrayUtil.equals(Object[], Object[])
Use JUnit's assertArrayEquals or JVM's Arrays.equals instead.
---
.../ui/tests/harness/util/ArrayUtil.java | 19 +-----
.../tests/api/IAggregateWorkingSetTest.java | 7 +--
.../ui/tests/api/IEditorRegistryTest.java | 4 +-
.../ui/tests/api/IWorkingSetManagerTest.java | 63 ++++++++-----------
.../eclipse/ui/tests/api/IWorkingSetTest.java | 19 +++---
5 files changed, 40 insertions(+), 72 deletions(-)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ArrayUtil.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ArrayUtil.java
index e978c78a8a4..df34123498c 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ArrayUtil.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/ArrayUtil.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -71,21 +71,4 @@ public static boolean contains(Object[] array, Object element) {
return false;
}
- /**
- * Returns whether two arrays are equal. They must
- * have the same size and the same contents.
- *
- * @param one the first array
- * @param two the second array
- * @return true if the array are equal,
- * false otherwise.
- */
- public static boolean equals(Object[] one, Object[] two) {
- if (one.length != two.length)
- return false;
- for (int i = 0; i < one.length; i++)
- if (one[i] != two[i])
- return false;
- return true;
- }
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IAggregateWorkingSetTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IAggregateWorkingSetTest.java
index cc90684354d..aa2c0e90864 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IAggregateWorkingSetTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IAggregateWorkingSetTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -34,7 +34,6 @@
import org.eclipse.ui.internal.AbstractWorkingSetManager;
import org.eclipse.ui.internal.AggregateWorkingSet;
import org.eclipse.ui.internal.IWorkbenchConstants;
-import org.eclipse.ui.tests.harness.util.ArrayUtil;
import org.eclipse.ui.tests.harness.util.UITestCase;
import org.junit.Ignore;
import org.junit.Test;
@@ -128,9 +127,7 @@ public void testGetElemets() throws Throwable {
//
//unexpected
- assertTrue(ArrayUtil.equals(
- new IAdaptable[] {},
- fWorkingSet.getElements()));
+ assertArrayEquals(new IAdaptable[] {}, fWorkingSet.getElements());
}
/**
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorRegistryTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorRegistryTest.java
index 6733337ba5a..62e6df4b6e6 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorRegistryTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IEditorRegistryTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2022 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -123,7 +123,7 @@ public void testGetEditors() throws Throwable {
assertEquals(editors[0].getId(), map[1]);
editors2 = fReg.getEditors(FileUtil.createFile(map[0], proj)
.getName());
- assertEquals(ArrayUtil.equals(editors, editors2), true);
+ assertArrayEquals(editors, editors2);
}
// there is no matching editor
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java
index 230472282f1..ed953d6b108 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetManagerTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -14,6 +14,10 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertArrayEquals;
+
+import java.util.Arrays;
+
import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.IAdaptable;
@@ -161,22 +165,19 @@ public void testAddPropertyChangeListener() throws Throwable {
public void testAddRecentWorkingSet() throws Throwable {
fWorkingSetManager.addRecentWorkingSet(fWorkingSet);
fWorkingSetManager.addWorkingSet(fWorkingSet);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getRecentWorkingSets());
IWorkingSet workingSet2 = fWorkingSetManager.createWorkingSet(
WORKING_SET_NAME_2, new IAdaptable[] { fWorkspace.getRoot() });
fWorkingSetManager.addRecentWorkingSet(workingSet2);
fWorkingSetManager.addWorkingSet(workingSet2);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { workingSet2,
- fWorkingSet }, fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { workingSet2, fWorkingSet }, fWorkingSetManager.getRecentWorkingSets());
}
@Test
public void testAddWorkingSet() throws Throwable {
fWorkingSetManager.addWorkingSet(fWorkingSet);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getWorkingSets());
boolean exceptionThrown = false;
try {
@@ -185,8 +186,7 @@ public void testAddWorkingSet() throws Throwable {
exceptionThrown = true;
}
assertTrue(exceptionThrown);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getWorkingSets());
}
@Test
@@ -194,14 +194,12 @@ public void testCreateWorkingSet() throws Throwable {
IWorkingSet workingSet2 = fWorkingSetManager.createWorkingSet(
WORKING_SET_NAME_2, new IAdaptable[] { fWorkspace.getRoot() });
assertEquals(WORKING_SET_NAME_2, workingSet2.getName());
- assertTrue(ArrayUtil.equals(new IAdaptable[] { fWorkspace.getRoot() },
- workingSet2.getElements()));
+ assertArrayEquals(new IAdaptable[] { fWorkspace.getRoot() }, workingSet2.getElements());
workingSet2 = fWorkingSetManager.createWorkingSet("",
new IAdaptable[] {});
assertEquals("", workingSet2.getName());
- assertTrue(ArrayUtil.equals(new IAdaptable[] {}, workingSet2
- .getElements()));
+ assertArrayEquals(new IAdaptable[] {}, workingSet2.getElements());
}
@Test
@@ -213,8 +211,7 @@ public void testCreateWorkingSetFromMemento() throws Throwable {
IWorkingSet restoredWorkingSet2 = fWorkingSetManager
.createWorkingSet(memento);
assertEquals(WORKING_SET_NAME_2, restoredWorkingSet2.getName());
- assertTrue(ArrayUtil.equals(new IAdaptable[] { fWorkspace.getRoot() },
- restoredWorkingSet2.getElements()));
+ assertArrayEquals(new IAdaptable[] { fWorkspace.getRoot() }, restoredWorkingSet2.getElements());
}
@Test
@@ -232,19 +229,16 @@ public void testGetRecentWorkingSets() throws Throwable {
fWorkingSetManager.addRecentWorkingSet(fWorkingSet);
fWorkingSetManager.addWorkingSet(fWorkingSet);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getRecentWorkingSets());
IWorkingSet workingSet2 = fWorkingSetManager.createWorkingSet(
WORKING_SET_NAME_2, new IAdaptable[] { fWorkspace.getRoot() });
fWorkingSetManager.addRecentWorkingSet(workingSet2);
fWorkingSetManager.addWorkingSet(workingSet2);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { workingSet2,
- fWorkingSet }, fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { workingSet2, fWorkingSet }, fWorkingSetManager.getRecentWorkingSets());
fWorkingSetManager.removeWorkingSet(workingSet2);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getRecentWorkingSets());
}
@Test
@@ -261,12 +255,12 @@ public void testRecentWorkingSetsLength() throws Throwable {
fWorkingSetManager.addWorkingSet(workingSet);
workingSets[9 - i] = workingSet;
}
- assertTrue(ArrayUtil.equals(workingSets, fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(workingSets, fWorkingSetManager.getRecentWorkingSets());
fWorkingSetManager.setRecentWorkingSetsLength(7);
IWorkingSet[] workingSets7 = new IWorkingSet[7];
System.arraycopy(workingSets, 0, workingSets7, 0, 7);
- assertTrue(ArrayUtil.equals(workingSets7, fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(workingSets7, fWorkingSetManager.getRecentWorkingSets());
fWorkingSetManager.setRecentWorkingSetsLength(9);
IWorkingSet[] workingSets9 = new IWorkingSet[9];
@@ -280,7 +274,7 @@ public void testRecentWorkingSetsLength() throws Throwable {
workingSets9[8 - i] = workingSet;
}
- assertTrue(ArrayUtil.equals(workingSets9, fWorkingSetManager.getRecentWorkingSets()));
+ assertArrayEquals(workingSets9, fWorkingSetManager.getRecentWorkingSets());
} finally {
if (oldMRULength > 0) {
fWorkingSetManager.setRecentWorkingSetsLength(oldMRULength);
@@ -302,20 +296,17 @@ public void testGetWorkingSet() throws Throwable {
@Test
public void testGetWorkingSets() throws Throwable {
- assertTrue(ArrayUtil.equals(new IWorkingSet[] {}, fWorkingSetManager
- .getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] {}, fWorkingSetManager.getWorkingSets());
fWorkingSetManager.addWorkingSet(fWorkingSet);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getWorkingSets());
try {
fWorkingSetManager.addWorkingSet(fWorkingSet);
fail("Added the same set twice");
} catch (RuntimeException exception) {
}
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- fWorkingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, fWorkingSetManager.getWorkingSets());
IWorkingSet workingSet2 = fWorkingSetManager.createWorkingSet(
WORKING_SET_NAME_2, new IAdaptable[] { fWorkspace.getRoot() });
@@ -369,16 +360,14 @@ public void testRemovePropertyChangeListener() throws Throwable {
@Test
public void testRemoveWorkingSet() throws Throwable {
fWorkingSetManager.removeWorkingSet(fWorkingSet);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] {}, fWorkingSetManager
- .getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] {}, fWorkingSetManager.getWorkingSets());
fWorkingSetManager.addWorkingSet(fWorkingSet);
IWorkingSet workingSet2 = fWorkingSetManager.createWorkingSet(
WORKING_SET_NAME_2, new IAdaptable[] { fWorkspace.getRoot() });
fWorkingSetManager.addWorkingSet(workingSet2);
fWorkingSetManager.removeWorkingSet(fWorkingSet);
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { workingSet2 },
- fWorkingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { workingSet2 }, fWorkingSetManager.getWorkingSets());
}
@Test
@@ -391,9 +380,7 @@ public void testRemoveWorkingSetAfterRename() throws Throwable {
String origName=fWorkingSet.getName();
/* check that workingSetManager contains "fWorkingSet"*/
- assertTrue(ArrayUtil.equals(
- new IWorkingSet[] { fWorkingSet },
- workingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, workingSetManager.getWorkingSets());
fWorkingSet.setName(" ");
assertEquals(" ", fWorkingSet.getName());
@@ -402,7 +389,7 @@ public void testRemoveWorkingSetAfterRename() throws Throwable {
workingSetManager.removeWorkingSet(fWorkingSet);
/* check that "fWorkingSet" was removed after rename*/
- if(!ArrayUtil.equals(new IWorkingSet[] {},
+ if (!Arrays.equals(new IWorkingSet[] {},
workingSetManager.getWorkingSets())){
/*Test Failure, report after restoring state*/
fWorkingSet.setName(origName);
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetTest.java
index e64552630ed..88751d432ac 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/IWorkingSetTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -13,6 +13,10 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertArrayEquals;
+
+import java.util.Arrays;
+
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IWorkspace;
@@ -24,7 +28,6 @@
import org.eclipse.ui.IWorkingSetManager;
import org.eclipse.ui.XMLMemento;
import org.eclipse.ui.internal.WorkingSet;
-import org.eclipse.ui.tests.harness.util.ArrayUtil;
import org.eclipse.ui.tests.harness.util.FileUtil;
import org.eclipse.ui.tests.harness.util.UITestCase;
import org.eclipse.ui.tests.menus.ObjectContributionClasses.IA;
@@ -101,7 +104,7 @@ public void testSetElements() throws Throwable {
IFile f1 = FileUtil.createFile("f1.txt", p1);
IAdaptable[] elements = new IAdaptable[] { f1, p1 };
fWorkingSet.setElements(elements);
- assertTrue(ArrayUtil.equals(elements, fWorkingSet.getElements()));
+ assertArrayEquals(elements, fWorkingSet.getElements());
fWorkingSet.setElements(new IAdaptable[] { f1 });
assertEquals(f1, fWorkingSet.getElements()[0]);
@@ -160,17 +163,16 @@ public void testNoDuplicateWorkingSetName() throws Throwable {
/*
* check that initially workingSetManager contains "fWorkingSet"
*/
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- workingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, workingSetManager.getWorkingSets());
IWorkingSet wSet = workingSetManager.createWorkingSet(
WORKING_SET_NAME_2, new IAdaptable[] {});
workingSetManager.addWorkingSet(wSet);
/* check that workingSetManager contains "fWorkingSet" and wSet */
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet, wSet },
+ assertTrue(Arrays.equals(new IWorkingSet[] { fWorkingSet, wSet },
workingSetManager.getWorkingSets())
- || ArrayUtil.equals(new IWorkingSet[] { wSet, fWorkingSet },
+ || Arrays.equals(new IWorkingSet[] { wSet, fWorkingSet },
workingSetManager.getWorkingSets()));
String sameName = fWorkingSet.getName();
@@ -198,8 +200,7 @@ public void testNoDuplicateWorkingSetNamesDifferentLabels()
/*
* check that initially workingSetManager contains "fWorkingSet"
*/
- assertTrue(ArrayUtil.equals(new IWorkingSet[] { fWorkingSet },
- workingSetManager.getWorkingSets()));
+ assertArrayEquals(new IWorkingSet[] { fWorkingSet }, workingSetManager.getWorkingSets());
String sameName = fWorkingSet.getName();
IWorkingSet wSet = workingSetManager.createWorkingSet(sameName,
From b0d7509c7e5e3ae29850bf761a5e5633f7695623 Mon Sep 17 00:00:00 2001
From: Maximilian Wittmer
Date: Tue, 15 Oct 2024 13:01:17 +0200
Subject: [PATCH 082/232] [FindNextAction] synchronize find history with
FindReplaceOverlay #2285
Synchronize search history with the FindReplaceOverlay,
FindReplaceDialog and FindNextAction.
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2285
---
.../internal/findandreplace/HistoryStore.java | 41 ++++++++++---------
.../overlay/FindReplaceOverlay.java | 13 +++---
.../eclipse/ui/texteditor/FindNextAction.java | 9 ++--
.../ui/texteditor/FindReplaceDialog.java | 8 ++--
4 files changed, 37 insertions(+), 34 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/HistoryStore.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/HistoryStore.java
index 2d5e063a745..d0d0ca022c3 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/HistoryStore.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/HistoryStore.java
@@ -28,7 +28,6 @@
public class HistoryStore {
private IDialogSettings settingsManager;
private int historySize;
- private List history;
private String sectionName;
/**
@@ -38,56 +37,58 @@ public class HistoryStore {
* @param historySize how many entries to keep in the history
*/
public HistoryStore(IDialogSettings settingsManager, String sectionName, int historySize) {
+ if (sectionName == null) {
+ throw new IllegalStateException("No section loaded"); //$NON-NLS-1$
+ }
+
this.settingsManager = settingsManager;
this.historySize = historySize;
- loadSection(sectionName);
+ this.sectionName = sectionName;
}
public Iterable get() {
- return history;
+ return getHistory();
}
public String get(int index) {
- return history.get(index);
+ return getHistory().get(index);
}
public void add(String historyItem) {
- if (sectionName == null) {
- throw new IllegalStateException("No section loaded"); //$NON-NLS-1$
- }
+ List history = getHistory();
if (historyItem != null && !historyItem.isEmpty()) {
history.add(0, historyItem);
}
-
- writeHistory();
+ write(history);
}
public void remove(String historyItem) {
+ List history = getHistory();
int indexInHistory = history.indexOf(historyItem);
if (indexInHistory >= 0) {
history.remove(indexInHistory);
}
+ write(history);
}
public boolean isEmpty() {
- return history.isEmpty();
+ return getHistory().isEmpty();
}
- private void loadSection(String newSectionName) {
- this.sectionName = newSectionName;
- history = new ArrayList<>();
-
- String[] newHistoryEntries = settingsManager.getArray(newSectionName);
- if (newHistoryEntries != null) {
- history.addAll(Arrays.asList(newHistoryEntries));
+ private List getHistory() {
+ String[] historyEntries = settingsManager.getArray(sectionName);
+ List result = new ArrayList<>();
+ if (historyEntries != null) {
+ result.addAll(Arrays.asList(historyEntries));
}
+ return result;
}
/**
* Writes the given history into the given dialog store.
*/
- private void writeHistory() {
+ private void write(List history) {
int itemCount = history.size();
Set distinctItems = new HashSet<>(itemCount);
for (int i = 0; i < itemCount; i++) {
@@ -110,10 +111,10 @@ private void writeHistory() {
}
public int indexOf(String entry) {
- return history.indexOf(entry);
+ return getHistory().indexOf(entry);
}
public int size() {
- return history.size();
+ return getHistory().size();
}
}
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 551fc8e6562..4472e94a6ec 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -71,6 +71,7 @@
import org.eclipse.ui.internal.texteditor.TextEditorPlugin;
import org.eclipse.ui.texteditor.AbstractTextEditor;
+import org.eclipse.ui.texteditor.FindReplaceAction;
import org.eclipse.ui.texteditor.IAbstractTextEditorHelpContextIds;
import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
import org.eclipse.ui.texteditor.StatusTextEditor;
@@ -228,10 +229,13 @@ private void asyncExecIfOpen(Runnable operation) {
*
* @return the dialog settings to be used
*/
- private static IDialogSettings getDialogSettings() {
+ private IDialogSettings getDialogSettings() {
IDialogSettings settings = PlatformUI
- .getDialogSettingsProvider(FrameworkUtil.getBundle(FindReplaceOverlay.class)).getDialogSettings();
- return settings;
+ .getDialogSettingsProvider(FrameworkUtil.getBundle(FindReplaceAction.class)).getDialogSettings();
+ IDialogSettings dialogSettings = settings.getSection(FindReplaceAction.class.getClass().getName());
+ if (dialogSettings == null)
+ dialogSettings = settings.addNewSection(FindReplaceAction.class.getClass().getName());
+ return dialogSettings;
}
public void close() {
@@ -542,8 +546,7 @@ private void createSearchBar() {
searchBarContainer = new Composite(searchContainer, SWT.NONE);
GridDataFactory.fillDefaults().grab(true, true).align(GridData.FILL, GridData.FILL).applyTo(searchBarContainer);
GridLayoutFactory.fillDefaults().numColumns(1).applyTo(searchBarContainer);
-
- HistoryStore searchHistory = new HistoryStore(getDialogSettings(), "searchhistory", //$NON-NLS-1$
+ HistoryStore searchHistory = new HistoryStore(getDialogSettings(), "findhistory", //$NON-NLS-1$
HISTORY_SIZE);
searchBar = new HistoryTextWrapper(searchHistory, searchBarContainer, SWT.SINGLE);
searchBarDecoration = new ControlDecoration(searchBar, SWT.BOTTOM | SWT.LEFT);
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindNextAction.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindNextAction.java
index 3fbe7f732c3..3755132e0ec 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindNextAction.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindNextAction.java
@@ -340,14 +340,13 @@ private int findAndSelect(int offset, String findString, boolean forwardSearch,
* @return the dialog settings to be used
*/
private IDialogSettings getDialogSettings() {
- IDialogSettings settings = PlatformUI.getDialogSettingsProvider(FrameworkUtil.getBundle(FindNextAction.class))
- .getDialogSettings();
- fDialogSettings= settings.getSection(FindReplaceDialog.class.getName());
+ IDialogSettings settings = PlatformUI
+ .getDialogSettingsProvider(FrameworkUtil.getBundle(FindReplaceAction.class)).getDialogSettings();
+ fDialogSettings = settings.getSection(FindReplaceAction.class.getClass().getName());
if (fDialogSettings == null)
- fDialogSettings= settings.addNewSection(FindReplaceDialog.class.getName());
+ fDialogSettings = settings.addNewSection(FindReplaceAction.class.getClass().getName());
return fDialogSettings;
}
-
/**
* Initializes itself from the dialog settings with the same state
* as at the previous invocation.
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
index d71941d293f..ee8ea79abb4 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java
@@ -318,7 +318,7 @@ public void widgetSelected(SelectionEvent e) {
writeSelection();
updateButtonState(!somethingFound);
-
+
updateFindHistory();
evaluateFindReplaceStatus();
}
@@ -1278,10 +1278,10 @@ private void setupSearchHistory() {
*/
private IDialogSettings getDialogSettings() {
IDialogSettings settings = PlatformUI
- .getDialogSettingsProvider(FrameworkUtil.getBundle(FindReplaceDialog.class)).getDialogSettings();
- fDialogSettings = settings.getSection(getClass().getName());
+ .getDialogSettingsProvider(FrameworkUtil.getBundle(FindReplaceAction.class)).getDialogSettings();
+ fDialogSettings = settings.getSection(FindReplaceAction.class.getClass().getName());
if (fDialogSettings == null)
- fDialogSettings = settings.addNewSection(getClass().getName());
+ fDialogSettings = settings.addNewSection(FindReplaceAction.class.getClass().getName());
return fDialogSettings;
}
From 857f51afcacca5692ad1bdfd83fa3af3640726ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Tue, 29 Oct 2024 11:31:10 +0200
Subject: [PATCH 083/232] Simplify o.e.ui.tests.harness
Make use of new Java and Eclipse APIs.
---
.../ui/tests/harness/util/DialogCheck.java | 46 ++++++-------------
.../ui/tests/harness/util/FileTool.java | 41 ++---------------
.../ui/tests/harness/util/FileUtil.java | 13 ++----
.../tests/navigator/GoBackForwardsTest.java | 7 +--
4 files changed, 25 insertions(+), 82 deletions(-)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java
index ee8e19180c6..1166a64b47a 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java
@@ -15,7 +15,7 @@
package org.eclipse.ui.tests.harness.util;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogConstants;
@@ -66,7 +66,7 @@ public static void assertDialog(Dialog dialog) {
getShell();
}
if (_verifyDialog.open(dialog) == IDialogConstants.NO_ID) {
- assertTrue(_verifyDialog.getFailureText(), false);
+ fail(_verifyDialog.getFailureText());
}
}
@@ -117,30 +117,28 @@ public static Shell getShell() {
private static void verifyCompositeText(Composite composite) {
Control children[] = composite.getChildren();
for (Control child : children) {
- if (child instanceof TabFolder) {
- TabFolder folder = (TabFolder) child;
+ if (child instanceof TabFolder folder) {
int numPages = folder.getItemCount();
for (int j = 0; j < numPages; j++) {
folder.setSelection(j);
}
- } else if (child instanceof CTabFolder) {
- CTabFolder folder = (CTabFolder) child;
+ } else if (child instanceof CTabFolder folder) {
int numPages = folder.getItemCount();
for (int j = 0; j < numPages; j++) {
folder.setSelection(j);
}
}
- else if (child instanceof Button) {
+ else if (child instanceof Button b) {
//verify the text if the child is a button
- verifyButtonText((Button) child);
+ verifyButtonText(b);
}
- else if (child instanceof Label) {
+ else if (child instanceof Label l) {
//child is not a button, maybe a label
- verifyLabelText((Label) child);
+ verifyLabelText(l);
}
- else if (child instanceof Composite) {
+ else if (child instanceof Composite comp) {
//child is not a label, make a recursive call if it is a composite
- verifyCompositeText((Composite) child);
+ verifyCompositeText(comp);
}
}
}
@@ -158,7 +156,7 @@ private static void verifyButtonText(Button button) {
//if (size.y/preferred.y) == X, then label spans X lines, so divide
//the calculated value of preferred.x by X
if (preferred.y * size.y > 0) {
- preferred.y /= countLines(button.getText()); //check for '\n\'
+ preferred.y /= button.getText().lines().count(); // check for '\n\'
if (size.y / preferred.y > 1) {
preferred.x /= (size.y / preferred.y);
}
@@ -170,7 +168,7 @@ private static void verifyButtonText(Button button) {
if (preferred.x > size.x) {
//close the dialog
button.getShell().dispose();
- assertTrue(message, false);
+ fail(message);
}
}
@@ -191,7 +189,7 @@ private static void verifyLabelText(Label label) {
//if (size.y/preferred.y) == X, then label spans X lines, so divide
//the calculated value of preferred.x by X
if (preferred.y * size.y > 0) {
- preferred.y /= countLines(label.getText());
+ preferred.y /= label.getText().lines().count();
if (size.y / preferred.y > 1) {
preferred.x /= (size.y / preferred.y);
}
@@ -202,24 +200,8 @@ private static void verifyLabelText(Label label) {
if (preferred.x > size.x) {
//close the dialog
label.getShell().dispose();
- assertTrue(message, false);
+ fail(message);
}
}
- /*
- * Counts the number of lines in a given String.
- * For example, if a string contains one (1) newline character,
- * a value of two (2) would be returned.
- * @param text The string to look through.
- * @return int the number of lines in text.
- */
- private static int countLines(String text) {
- int newLines = 1;
- for (int i = 0; i < text.length(); i++) {
- if (text.charAt(i) == '\n') {
- newLines++;
- }
- }
- return newLines;
- }
}
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileTool.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileTool.java
index d5f94ffabda..a5c01a16879 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileTool.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileTool.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -18,13 +18,10 @@
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
-import java.io.FileReader;
-import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
-import java.io.Writer;
import java.net.URL;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
@@ -37,10 +34,6 @@
public class FileTool {
- /**
- * A buffer.
- */
- private static byte[] buffer = new byte[8192];
/**
* Unzips the given zip file to the given destination directory
* extracting only those entries the pass through the given
@@ -64,7 +57,7 @@ public static void unzip(ZipFile zipFile, File dstDir) throws IOException {
File file = new File(dstDir, changeSeparator(entryName, '/', File.separatorChar));
file.getParentFile().mkdirs();
try (InputStream src = zipFile.getInputStream(entry); OutputStream dst= new FileOutputStream(file)){
- transferData(src, dst);
+ src.transferTo(dst);
}
}
} finally {
@@ -99,24 +92,7 @@ public static String changeSeparator(String path, char oldSeparator, char newSep
public static void transferData(File source, File destination) throws IOException {
destination.getParentFile().mkdirs();
try (InputStream is = new FileInputStream(source); OutputStream os = new FileOutputStream(destination)) {
- transferData(is, os);
- }
- }
- /**
- * Copies all bytes in the given source stream to
- * the given destination stream. Neither streams
- * are closed.
- *
- * @param source the given source stream
- * @param destination the given destination stream
- */
- public static void transferData(InputStream source, OutputStream destination) throws IOException {
- int bytesRead = 0;
- while(bytesRead != -1){
- bytesRead = source.read(buffer, 0, buffer.length);
- if(bytesRead != -1){
- destination.write(buffer, 0, bytesRead);
- }
+ is.transferTo(os);
}
}
@@ -151,12 +127,6 @@ public static File getFileInPlugin(Plugin plugin, IPath path) {
}
}
- public static StringBuilder readToBuilder(String fileName) throws IOException {
- try (FileReader reader = new FileReader(fileName)) {
- return readToBuilder(reader);
- }
- }
-
public static StringBuilder readToBuilder(Reader reader) throws IOException {
StringBuilder s = new StringBuilder();
try {
@@ -175,9 +145,4 @@ public static StringBuilder readToBuilder(Reader reader) throws IOException {
return s;
}
- public static void writeFromBuilder(String fileName, StringBuilder content) throws IOException {
- try (Writer writer = new FileWriter(fileName)) {
- writer.write(content.toString());
- }
- }
}
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileUtil.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileUtil.java
index 8c80473cd6d..015a1c51fc0 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileUtil.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/FileUtil.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -13,9 +13,6 @@
*******************************************************************************/
package org.eclipse.ui.tests.harness.util;
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
@@ -81,8 +78,8 @@ public static void createFolder(IFolder folder, boolean force, boolean local, IP
throws CoreException {
if (!folder.exists()) {
IContainer parent = folder.getParent();
- if (parent instanceof IFolder) {
- createFolder((IFolder) parent, force, local, null);
+ if (parent instanceof IFolder f) {
+ createFolder(f, force, local, null);
}
folder.create(force, local, monitor);
}
@@ -98,9 +95,7 @@ public static void createFolder(IFolder folder, boolean force, boolean local, IP
public static IFile createFile(String name, IProject proj) throws CoreException {
IFile file = proj.getFile(name);
if (!file.exists()) {
- String str = " ";
- InputStream in = new ByteArrayInputStream(str.getBytes());
- file.create(in, true, null);
+ file.create(" ".getBytes(), IResource.FORCE, null);
}
return file;
}
diff --git a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/GoBackForwardsTest.java b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/GoBackForwardsTest.java
index 53625dbba5d..1b248ded62f 100644
--- a/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/GoBackForwardsTest.java
+++ b/tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/GoBackForwardsTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -14,6 +14,8 @@
package org.eclipse.ui.tests.navigator;
import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
@@ -31,7 +33,6 @@
import org.eclipse.ui.intro.IIntroPart;
import org.eclipse.ui.part.FileEditorInput;
import org.eclipse.ui.tests.harness.util.EditorTestHelper;
-import org.eclipse.ui.tests.harness.util.FileTool;
import org.eclipse.ui.tests.harness.util.FileUtil;
import org.eclipse.ui.tests.harness.util.UITestCase;
import org.eclipse.ui.texteditor.AbstractTextEditor;
@@ -70,7 +71,7 @@ public void doSetUp() {
file = FileUtil.createFile(FILE_NAME, project);
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(FILE_CONTENTS);
- FileTool.writeFromBuilder(file.getLocation().toOSString(), stringBuilder);
+ Files.writeString(Paths.get(file.getLocation().toOSString()), stringBuilder);
project.refreshLocal(IResource.DEPTH_INFINITE, null);
} catch (CoreException e) {
fail("Should not throw an exception");
From 910b6fc38a3d532e14e78890837f29e3a3123619 Mon Sep 17 00:00:00 2001
From: Amartya Parijat
Date: Fri, 25 Oct 2024 12:31:28 +0200
Subject: [PATCH 084/232] Set Edge data directory to workspace on Windows
This contributes to adding the workspace address to the display data on
workbench initialization as the data directory used by Edge browser.
Contributes to
https://github.com/eclipse-platform/eclipse.platform.swt/issues/1013
---
.../org/eclipse/ui/internal/Workbench.java | 22 +++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
index 8e9a02ca0de..667f5c3ce79 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
@@ -37,6 +37,7 @@
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
+import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -74,6 +75,7 @@
import org.eclipse.core.runtime.ListenerList;
import org.eclipse.core.runtime.MultiStatus;
import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Platform.OS;
import org.eclipse.core.runtime.SafeRunner;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.SubMonitor;
@@ -140,6 +142,7 @@
import org.eclipse.jface.window.IShellProvider;
import org.eclipse.jface.window.Window;
import org.eclipse.osgi.internal.location.LocationHelper;
+import org.eclipse.osgi.service.datalocation.Location;
import org.eclipse.osgi.service.runnable.StartupMonitor;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
@@ -292,6 +295,8 @@ public final class Workbench extends EventManager implements IWorkbench, org.ecl
public static final String PROP_EXIT_CODE = "eclipse.exitcode"; //$NON-NLS-1$
private static final String CMD_DATA = "-data"; //$NON-NLS-1$
+ private static final String EDGE_USER_DATA_FOLDER = "org.eclipse.swt.internal.win32.Edge.userDataFolder"; //$NON-NLS-1$
+
private static final class StartupProgressBundleListener implements ServiceListener {
private final SubMonitor subMonitor;
@@ -451,6 +456,10 @@ public void serviceChanged(ServiceEvent event) {
private Workbench(Display display, final WorkbenchAdvisor advisor, MApplication app, IEclipseContext appContext) {
this.advisor = Objects.requireNonNull(advisor);
this.display = Objects.requireNonNull(display);
+ if (OS.isWindows()) {
+ setEdgeDataDirectory(this.display);
+ }
+
application = app;
e4Context = appContext;
@@ -510,6 +519,19 @@ public void eventLoopException(Throwable exception) {
new WorkbenchLocationService(IServiceScopes.WORKBENCH_SCOPE, this, null, null, null, null, 0));
}
+ private static void setEdgeDataDirectory(Display display) {
+ Location workspaceLocation = Platform.getInstanceLocation();
+ if (workspaceLocation == null) {
+ return;
+ }
+ try {
+ URI workspaceLocationURI = workspaceLocation.getURL().toURI();
+ display.setData(EDGE_USER_DATA_FOLDER, Paths.get(workspaceLocationURI).toString());
+ } catch (URISyntaxException e) {
+ WorkbenchPlugin.log("Invalid workspace location to be set for Edge browser.", e); //$NON-NLS-1$
+ }
+ }
+
/**
* Returns the one and only instance of the workbench, if there is one.
*
From 5e9c188fcd9d0feffdbee898d4b3729ac39a4471 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Tue, 29 Oct 2024 18:48:17 +0200
Subject: [PATCH 085/232] Fix CascadingTheme.keySet signature
There is no point in using raw Set as underlying data is not raw.
---
.../org/eclipse/ui/internal/themes/CascadingTheme.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingTheme.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingTheme.java
index a7bd34e6a9c..4eeb85dcb26 100755
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingTheme.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingTheme.java
@@ -102,7 +102,7 @@ public boolean getBoolean(String key) {
}
@Override
- public Set keySet() {
+ public Set keySet() {
return currentTheme.keySet();
}
From f7dd97bf6a7a9829b23d8cc296228931dc6f1b56 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Tue, 29 Oct 2024 23:15:57 +0200
Subject: [PATCH 086/232] Stabilize DynamicTest
* Redo assertions to use assertEquals for better reporting.
* Remove useless catch blocks with fails
* Use DisplayHelper to spin the event loop
---
.../ui/tests/activities/DynamicTest.java | 167 +++++++-----------
1 file changed, 65 insertions(+), 102 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/activities/DynamicTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/activities/DynamicTest.java
index 477a3b314c8..e39e3314405 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/activities/DynamicTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/activities/DynamicTest.java
@@ -15,8 +15,8 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
@@ -28,7 +28,6 @@
import org.eclipse.core.runtime.ContributorFactoryOSGi;
import org.eclipse.core.runtime.IContributor;
import org.eclipse.core.runtime.RegistryFactory;
-import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.activities.IActivity;
import org.eclipse.ui.activities.IActivityPatternBinding;
@@ -41,6 +40,7 @@
import org.eclipse.ui.activities.WorkbenchTriggerPointAdvisor;
import org.eclipse.ui.internal.activities.MutableActivityManager;
import org.eclipse.ui.tests.TestPlugin;
+import org.eclipse.ui.tests.harness.util.DisplayHelper;
import org.junit.Before;
import org.junit.Test;
@@ -92,9 +92,9 @@ public void init() {
*/
@Test
public void testSizes() {
- assertTrue(activityManager.getDefinedCategoryIds().size() == 6);
- assertTrue(activityManager.getDefinedActivityIds().size() == 18);
- assertTrue(activityManager.getEnabledActivityIds().size() == 3);
+ assertEquals(6, activityManager.getDefinedCategoryIds().size());
+ assertEquals(18, activityManager.getDefinedActivityIds().size());
+ assertEquals(3, activityManager.getEnabledActivityIds().size());
}
/**
@@ -103,20 +103,18 @@ public void testSizes() {
@Test
public void testActivityPatternBindings() {
IActivity first_activity = activityManager
- .getActivity((String) activityManager.getDefinedActivityIds()
- .toArray()[0]);
+ .getActivity(activityManager.getDefinedActivityIds()
+ .toArray(String[]::new)[0]);
Set initialPatternBindings = first_activity
.getActivityPatternBindings();
// Add pattern binding
String pattern = "org\\.eclipse\\.ui\\.myPattern/.*"; //$NON-NLS-1$
fixedModelRegistry.addActivityPatternBinding(first_activity.getId(),
pattern);
- assertFalse(initialPatternBindings.size() == first_activity
- .getActivityPatternBindings().size());
+ assertNotEquals(initialPatternBindings.size(), first_activity.getActivityPatternBindings().size());
// Remove pattern binding
fixedModelRegistry.removeActivityPatternBinding(pattern);
- assertTrue(initialPatternBindings.size() == first_activity
- .getActivityPatternBindings().size());
+ assertEquals(initialPatternBindings.size(), first_activity.getActivityPatternBindings().size());
}
/**
@@ -125,17 +123,16 @@ public void testActivityPatternBindings() {
@Test
public void testEnabledActivities() {
// Add an enabled activity
- Set compareSet;
Set copySet = new HashSet<>(activityManager.getEnabledActivityIds());
- copySet.add(activityManager.getDefinedActivityIds().toArray(new String[0])[0]);
+ copySet.add(activityManager.getDefinedActivityIds().toArray(String[]::new)[0]);
activityManager.setEnabledActivityIds(copySet);
- compareSet = activityManager.getEnabledActivityIds();
- assertTrue(compareSet.size() == copySet.size());
+ Set compareSet = activityManager.getEnabledActivityIds();
+ assertEquals(compareSet.size(), copySet.size());
// Remove an enabled activity
copySet.remove(activityManager.getDefinedActivityIds().toArray()[0]);
activityManager.setEnabledActivityIds(copySet);
compareSet = activityManager.getEnabledActivityIds();
- assertTrue(compareSet.size() == copySet.size());
+ assertEquals(compareSet.size(), copySet.size());
}
/**
@@ -161,8 +158,8 @@ public void testIdentifiersListener() {
IIdentifier activitiesIdentifier = activityManager
.getIdentifier("org.eclipse.pattern4"); //$NON-NLS-1$
Set identifiedActivities = activitiesIdentifier.getActivityIds(); // $NON-NLS-1$
- assertTrue(identifiedActivities.size() == 1);
- assertTrue(((String) identifiedActivities.toArray()[0])
+ assertEquals(1, identifiedActivities.size());
+ assertTrue(identifiedActivities.toArray(String[]::new)[0]
.equals("org.eclipse.activity4")); //$NON-NLS-1$
assertFalse(activitiesIdentifier.isEnabled());
// Disable Enabled activity
@@ -170,28 +167,28 @@ public void testIdentifiersListener() {
Set copySet = new HashSet<>(activityManager.getEnabledActivityIds());
copySet.remove(enabledIdentifier.getActivityIds().toArray()[0]);
activityManager.setEnabledActivityIds(copySet);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Enable Disabled activity
listenerType = 0;
copySet.add("org.eclipse.activity3"); //$NON-NLS-1$
activityManager.setEnabledActivityIds(copySet);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add pattern binding
listenerType = 1;
fixedModelRegistry.addActivityPatternBinding("org.eclipse.activity1", //$NON-NLS-1$
"org.eclipse.pattern3"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Test correctenesss of identifier
Set manipulatedIdentifiers = activityManager.getIdentifier(
"org.eclipse.pattern3").getActivityIds(); //$NON-NLS-1$
- assertTrue(manipulatedIdentifiers.size() == 2);
+ assertEquals(2, manipulatedIdentifiers.size());
// Remove pattern binding
listenerType = 1;
fixedModelRegistry.removeActivityPatternBinding("org.eclipse.pattern3"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
manipulatedIdentifiers = activityManager.getIdentifier(
"org.eclipse.pattern3").getActivityIds(); //$NON-NLS-1$
- assertTrue(manipulatedIdentifiers.size() == 1);
+ assertEquals(1, manipulatedIdentifiers.size());
}
/**
@@ -218,37 +215,37 @@ public void testActivityManagerListener() {
Set enabledSet = new HashSet<>(activityManager.getEnabledActivityIds());
enabledSet.add("org.eclipse.activity19"); //$NON-NLS-1$
activityManager.setEnabledActivityIds(enabledSet);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove an enabled activity
listenerType = 2;
enabledSet.remove("org.eclipse.activity19"); //$NON-NLS-1$
activityManager.setEnabledActivityIds(enabledSet);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add categroy
listenerType = 3;
fixedModelRegistry.addCategory("org.eclipse.category7", "Category 7"); //$NON-NLS-1$ //$NON-NLS-2$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove category
listenerType = 3;
fixedModelRegistry.removeCategory("org.eclipse.category7", //$NON-NLS-1$
"Category 7"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add activity
listenerType = 4;
fixedModelRegistry.addActivity("org.eclipse.activity19", "Activity 19"); //$NON-NLS-1$ //$NON-NLS-2$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove activity
listenerType = 4;
fixedModelRegistry.removeActivity("org.eclipse.activity19", //$NON-NLS-1$
"Activity 19"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
}
/**
* Test the activity listener.
*/
@Test
- public void testActivityListener() {
+ public void testActivityListener() throws NotDefinedException {
final String activity_to_listen_name = "Activity 18"; //$NON-NLS-1$
final IActivity activity_to_listen = activityManager
.getActivity("org.eclipse.activity18"); //$NON-NLS-1$
@@ -281,82 +278,74 @@ public void testActivityListener() {
// Remove activity and change name consequently
fixedModelRegistry.removeActivity(activity_to_listen.getId(),
activity_to_listen_name);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add activity
listenerType = 5;
fixedModelRegistry.addActivity(activity_to_listen.getId(),
activity_to_listen_name);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add to enabled activity
listenerType = 6;
Set enabledSet = new HashSet<>(activityManager.getEnabledActivityIds());
enabledSet.add(activity_to_listen.getId());
activityManager.setEnabledActivityIds(enabledSet);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove from enabled activity
listenerType = 6;
enabledSet.remove(activity_to_listen.getId());
activityManager.setEnabledActivityIds(enabledSet);
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add pattern binding
listenerType = 8;
fixedModelRegistry.addActivityPatternBinding("org.eclipse.activity18", //$NON-NLS-1$
"org.eclipse.pattern3"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove pattern binding
listenerType = 8;
fixedModelRegistry.removeActivityPatternBinding("org.eclipse.pattern3");//$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add activity activity binding as parent
listenerType = 9;
fixedModelRegistry.addActivityRequirementBinding(
"org.eclipse.activity9", //$NON-NLS-1$
activity_to_listen.getId());
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove activity activity binding as parent
listenerType = 9;
fixedModelRegistry.removeActivityRequirementBinding(
"org.eclipse.activity9", activity_to_listen.getId());//$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Update activity name
listenerType = 7;
fixedModelRegistry.updateActivityName(activity_to_listen.getId(),
"name_change"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Update activity description
listenerType = 10;
fixedModelRegistry.updateActivityDescription(
activity_to_listen.getId(), "description_change"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// check default enablement
listenerType = DEFAULT_ENABLED_CHANGED;
fixedModelRegistry.addDefaultEnabledActivity(activity_to_listen.getId());
- assertTrue(listenerType == -1);
- try {
- assertTrue(activity_to_listen.isDefaultEnabled());
- } catch (NotDefinedException e1) {
- fail(e1.getMessage());
- }
+ assertEquals(-1, listenerType);
+ assertTrue(activity_to_listen.isDefaultEnabled());
listenerType = DEFAULT_ENABLED_CHANGED;
fixedModelRegistry.removeDefaultEnabledActivity(activity_to_listen.getId());
- assertTrue(listenerType == -1);
- try {
- assertFalse(activity_to_listen.isDefaultEnabled());
- } catch (NotDefinedException e1) {
- fail(e1.getMessage());
- }
+ assertEquals(-1, listenerType);
+ assertFalse(activity_to_listen.isDefaultEnabled());
}
/**
* Test the category listener.
*/
@Test
- public void testCategoryListener() {
+ public void testCategoryListener() throws NotDefinedException {
final ICategory category_to_listen = activityManager
- .getCategory((String) activityManager.getDefinedCategoryIds()
- .toArray()[0]);
+ .getCategory(activityManager.getDefinedCategoryIds()
+ .toArray(String[]::new)[0]);
category_to_listen.addCategoryListener(categoryEvent -> {
switch (listenerType) {
case DEFINED_CHANGED:
@@ -375,57 +364,44 @@ public void testCategoryListener() {
listenerType = -1;
});
// Remove category, and change name
- try {
- fixedModelRegistry.removeCategory(category_to_listen.getId(),
+ fixedModelRegistry.removeCategory(category_to_listen.getId(),
category_to_listen.getName());
- } catch (NotDefinedException e) {
- e.printStackTrace(System.err);
- }
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add category
listenerType = 5;
fixedModelRegistry
.addCategory(category_to_listen.getId(), "Category 6"); //$NON-NLS-1$
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Add category activity binding
listenerType = 8;
- fixedModelRegistry.addCategoryActivityBinding((String) activityManager
- .getDefinedActivityIds().toArray()[4], category_to_listen
+ fixedModelRegistry.addCategoryActivityBinding(activityManager
+ .getDefinedActivityIds().toArray(String[]::new)[4], category_to_listen
.getId());
- assertTrue(listenerType == -1);
+ assertEquals(-1, listenerType);
// Remove activity activity binding
listenerType = 8;
fixedModelRegistry.removeCategoryActivityBinding(
- (String) activityManager.getDefinedActivityIds().toArray()[4],
+ activityManager.getDefinedActivityIds().toArray(String[]::new)[4],
category_to_listen.getId());
// Change category description
listenerType = 10;
fixedModelRegistry.updateCategoryDescription(
category_to_listen.getId(), "description_change"); //$NON-NLS-1$
- try {
- assertTrue(category_to_listen.getDescription().equals(
- "description_change")); //$NON-NLS-1$
- } catch (NotDefinedException e) {
- e.printStackTrace(System.err);
- }
- assertTrue(listenerType == -1);
+ assertTrue(category_to_listen.getDescription().equals("description_change")); //$NON-NLS-1$
+ assertEquals(-1, listenerType);
// Change category name
listenerType = 7;
fixedModelRegistry.updateCategoryName(category_to_listen.getId(),
"name_change"); //$NON-NLS-1$
- try {
- assertTrue(category_to_listen.getName().equals("name_change")); //$NON-NLS-1$
- } catch (NotDefinedException e) {
- e.printStackTrace(System.err);
- }
- assertTrue(listenerType == -1);
+ assertTrue(category_to_listen.getName().equals("name_change")); //$NON-NLS-1$
+ assertEquals(-1, listenerType);
}
/**
* Tests to ensure dynamism with regard to the extension registry.
*/
@Test
- public void testDynamicRegistry() {
+ public void testDynamicRegistry() throws NotDefinedException {
IWorkbenchActivitySupport was = PlatformUI.getWorkbench()
.getActivitySupport();
IActivity activity = was.getActivityManager().getActivity(
@@ -437,7 +413,10 @@ public void testDynamicRegistry() {
// set to true when the activity/category in question have had an event
// fired
final boolean[] registryChanged = new boolean[] { false, false };
- activity.addActivityListener(activityEvent -> registryChanged[0] = true);
+ activity.addActivityListener(activityEvent -> {
+ System.err.println("activityChanged");
+ registryChanged[0] = true;
+ });
category.addCategoryListener(categoryEvent -> {
System.err.println("categoryChanged");
registryChanged[1] = true;
@@ -458,24 +437,12 @@ public void testDynamicRegistry() {
InputStream is = new ByteArrayInputStream(bytes);
IContributor contrib = ContributorFactoryOSGi.createContributor(TestPlugin.getDefault().getBundle());
ExtensionRegistry registry = (ExtensionRegistry) RegistryFactory.getRegistry();
- if (!registry.addContribution(is, contrib, false, null, null, registry.getTemporaryUserToken())) {
- throw new RuntimeException();
- }
+ assertTrue(registry.addContribution(is, contrib, false, null, null, registry.getTemporaryUserToken()));
// spin the event loop and ensure that the changes come down the pipe.
// 20 seconds should be more than enough
- long endTime = System.currentTimeMillis() + 20000;
- while (!(registryChanged[0] && registryChanged[1])
- && System.currentTimeMillis() < endTime) {
-
- Display display = PlatformUI.getWorkbench().getDisplay();
- if (display != null && !display.isDisposed()) {
- while (display.readAndDispatch()) {
- }
- }
- display.sleep();
-
- }
+ DisplayHelper.waitForCondition(PlatformUI.getWorkbench().getDisplay(), 20000,
+ () -> registryChanged[0] && registryChanged[1]);
assertTrue("Activity Listener not called", registryChanged[0]);
assertTrue("Category Listener not called", registryChanged[1]);
@@ -490,11 +457,7 @@ public void testDynamicRegistry() {
.pattern());
assertEquals("dynamic.activity", patternBinding.getActivityId());
- try {
- assertTrue(activity.isDefaultEnabled());
- } catch (NotDefinedException e) {
- fail(e.getMessage());
- }
+ assertTrue(activity.isDefaultEnabled());
Set requirementBindings = activity.getActivityRequirementBindings();
assertEquals(1, requirementBindings.size());
From bbd9101ffd7f646fcdfafab2ddc66288758650a4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Wed, 30 Oct 2024 07:43:40 +0200
Subject: [PATCH 087/232] Fix DialogCheck ArithmeticException
Caused by
https://github.com/eclipse-platform/eclipse.platform.ui/pull/2457 doing
division by zero when button has no text but just image.
---
.../src/org/eclipse/ui/tests/harness/util/DialogCheck.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java
index 1166a64b47a..7be2ae1dccd 100644
--- a/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java
+++ b/tests/org.eclipse.ui.tests.harness/src/org/eclipse/ui/tests/harness/util/DialogCheck.java
@@ -156,7 +156,8 @@ private static void verifyButtonText(Button button) {
//if (size.y/preferred.y) == X, then label spans X lines, so divide
//the calculated value of preferred.x by X
if (preferred.y * size.y > 0) {
- preferred.y /= button.getText().lines().count(); // check for '\n\'
+ String buttonText = button.getText();
+ preferred.y /= buttonText.isEmpty() ? 1 : buttonText.lines().count(); // check for '\n\'
if (size.y / preferred.y > 1) {
preferred.x /= (size.y / preferred.y);
}
From de6e8e562b4404bc5946b1c1b207fe8be99b4404 Mon Sep 17 00:00:00 2001
From: fedejeanne
Date: Tue, 29 Oct 2024 14:10:09 +0100
Subject: [PATCH 088/232] Ignore missing versions on required bundles for Java
editor examples
Change the PDE preferences from "Warning" to "Ignore".
---
.../.settings/org.eclipse.pde.prefs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/examples/org.eclipse.ui.examples.javaeditor/.settings/org.eclipse.pde.prefs b/examples/org.eclipse.ui.examples.javaeditor/.settings/org.eclipse.pde.prefs
index d1046a83ac5..0b77bbf17aa 100644
--- a/examples/org.eclipse.ui.examples.javaeditor/.settings/org.eclipse.pde.prefs
+++ b/examples/org.eclipse.ui.examples.javaeditor/.settings/org.eclipse.pde.prefs
@@ -16,7 +16,7 @@ compilers.p.internal=1
compilers.p.missing-packages=0
compilers.p.missing-version-export-package=2
compilers.p.missing-version-import-package=2
-compilers.p.missing-version-require-bundle=1
+compilers.p.missing-version-require-bundle=2
compilers.p.no-required-att=0
compilers.p.not-externalized-att=1
compilers.p.unknown-attribute=0
From 76701fe20d207c4633b17f4633181d57cfb50fe5 Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Tue, 29 Oct 2024 13:17:11 +0000
Subject: [PATCH 089/232] Version bump(s) for 4.34 stream
---
.../org.eclipse.ui.examples.javaeditor/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/examples/org.eclipse.ui.examples.javaeditor/META-INF/MANIFEST.MF b/examples/org.eclipse.ui.examples.javaeditor/META-INF/MANIFEST.MF
index d2b442166d2..9f67ea8815d 100644
--- a/examples/org.eclipse.ui.examples.javaeditor/META-INF/MANIFEST.MF
+++ b/examples/org.eclipse.ui.examples.javaeditor/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.ui.examples.javaeditor; singleton:=true
-Bundle-Version: 3.4.300.qualifier
+Bundle-Version: 3.4.400.qualifier
Bundle-Activator: org.eclipse.ui.examples.javaeditor.JavaEditorExamplePlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
From ba43e78c4b65ce053f4b3cf0cbd8ac8f601f2a07 Mon Sep 17 00:00:00 2001
From: Feilim Breatnach
Date: Tue, 29 Oct 2024 16:55:32 +0000
Subject: [PATCH 090/232] An attempt at resolving a race condition/sporadic
test failure in the CloseAllHandlerTest by reordering some testing scenarios,
and making use of PlatformUI.getWorkbench().getActiveWorkbenchWindow() to
get/init the active workbench window.
---
.../ui/tests/e4/CloseAllHandlerTest.java | 64 +++++++++----------
1 file changed, 32 insertions(+), 32 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
index c3c0ad72f0c..81fc1051060 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
@@ -45,9 +45,9 @@
import org.eclipse.ui.IFileEditorInput;
import org.eclipse.ui.IPageLayout;
import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.ISources;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.internal.CloseAllHandler;
import org.eclipse.ui.internal.Workbench;
import org.junit.Before;
@@ -89,13 +89,13 @@ private MApplication getApplicationModel() {
* Tests the enabled when and execution logic within the
* {@link CloseAllHandler}.
*
- * Scenario 1: E4 style part contribution which is tagged as representing an
+ * Scenario 1: compatibility layer type editor is closed via the handler (and
+ * the enablement of handler is checked).
+ *
+ * Scenario 2: E4 style part contribution which is tagged as representing an
* 'editor' is closed via the handler (and the enablement of handler is
* checked).
*
- * Scenario 2: compatibility layer type editor is closed via the handler (and
- * the enablement of handler is checked).
- *
* Scenario 3: a mix of an open compatibility layer type editor *and* an E4
* style part contribution which is tagged as representing an 'editor' are both
* closed via the handler (and the enablement of handler is checked).
@@ -114,35 +114,11 @@ public void testCloseMixedEditorTypes() {
boolean canExecute = handlerService.canExecute(parameterizedCommand);
assertFalse(canExecute);
- // scenario 1: e4 part descriptor contribution
- MPartDescriptor partDescriptor = createDummyPartDescriptor();
- application.getDescriptors().add(partDescriptor);
-
- // open our e4 part which represents an editor
- MPart dummyPart = createAndOpenE4Part(partDescriptor);
-
- // verify the close all handler is enabled now (since dummy editor has been
- // opened)
- canExecute = handlerService.canExecute(parameterizedCommand);
- assertTrue(canExecute);
-
- // close all editors (dummy editor should close!)
- dummyPart = partService.findPart(DUMMY_E4_PART_ID);
- assertNotNull(dummyPart);
- handlerService.executeHandler(parameterizedCommand);
- dummyPart = partService.findPart(DUMMY_E4_PART_ID);
- assertNull(dummyPart);
-
- // verify the close all handler is *not* enabled now (since dummy editor has
- // been closed)
- canExecute = handlerService.canExecute(parameterizedCommand);
- assertFalse(canExecute);
-
// scenario 2: open a compatibility layer editor
+ IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
+ assertNotNull("Active workbench window not found.", window);
+
IFileEditorInput input = new DummyFileEditorInput();
- Object activeWindow = applicationContext.getActive(ISources.ACTIVE_WORKBENCH_WINDOW_NAME);
- assertTrue("Active workbench window not found.", activeWindow instanceof IWorkbenchWindow);
- IWorkbenchWindow window = (IWorkbenchWindow) activeWindow;
try {
window.getActivePage().openEditor(input, TEST_COMPATIBILITY_LAYER_EDITOR_ID);
} catch (PartInitException e) {
@@ -165,6 +141,30 @@ public void testCloseMixedEditorTypes() {
canExecute = handlerService.canExecute(parameterizedCommand);
assertFalse(canExecute);
+ // scenario 1: e4 part descriptor contribution
+ MPartDescriptor partDescriptor = createDummyPartDescriptor();
+ application.getDescriptors().add(partDescriptor);
+
+ // open our e4 part which represents an editor
+ MPart dummyPart = createAndOpenE4Part(partDescriptor);
+
+ // verify the close all handler is enabled now (since dummy editor has been
+ // opened)
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ assertTrue(canExecute);
+
+ // close all editors (dummy editor should close!)
+ dummyPart = partService.findPart(DUMMY_E4_PART_ID);
+ assertNotNull(dummyPart);
+ handlerService.executeHandler(parameterizedCommand);
+ dummyPart = partService.findPart(DUMMY_E4_PART_ID);
+ assertNull(dummyPart);
+
+ // verify the close all handler is *not* enabled now (since dummy editor has
+ // been closed)
+ canExecute = handlerService.canExecute(parameterizedCommand);
+ assertFalse(canExecute);
+
// scenario 3:
// finally: re-open both the compatibility layer editor *and* the dummy e4 part
// which represents an editor, and verify they are *both* closed when we invoked
From 21a20ee8c44ab309c8f2d611d98db81c70607b88 Mon Sep 17 00:00:00 2001
From: Feilim Breatnach
Date: Tue, 29 Oct 2024 17:00:06 +0000
Subject: [PATCH 091/232] Fix scenario names in Java comment.
---
.../org/eclipse/ui/tests/e4/CloseAllHandlerTest.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
index 81fc1051060..3bf7836e98f 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/e4/CloseAllHandlerTest.java
@@ -114,7 +114,7 @@ public void testCloseMixedEditorTypes() {
boolean canExecute = handlerService.canExecute(parameterizedCommand);
assertFalse(canExecute);
- // scenario 2: open a compatibility layer editor
+ // scenario 1: open a compatibility layer editor
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
assertNotNull("Active workbench window not found.", window);
@@ -141,7 +141,7 @@ public void testCloseMixedEditorTypes() {
canExecute = handlerService.canExecute(parameterizedCommand);
assertFalse(canExecute);
- // scenario 1: e4 part descriptor contribution
+ // scenario 2: e4 part descriptor contribution
MPartDescriptor partDescriptor = createDummyPartDescriptor();
application.getDescriptors().add(partDescriptor);
From a563cbe480f16a515f31a9f2ae309f8f090ae36a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Wed, 30 Oct 2024 10:32:14 +0200
Subject: [PATCH 092/232] Prune useless parts of o.e.ui.tests
A lot of no longer needed legacy from JUnit 3.x time is simply
cluttering the codebase now.
---
.../eclipse/ui/tests/rcp/RcpTestSuite.java | 2 -
.../RCP Test Suite.launch | 2 +-
.../eclipse/ui/tests/autotests/XmlUtil.java | 28 ++-----------
.../ui/tests/commands/ToggleStateTest.java | 21 +++-------
.../ui/tests/concurrency/Bug_262032.java | 4 +-
.../NestedSyncExecDeadlockTest.java | 4 --
.../NoFreezeWhileWaitingForRuleTest.java | 2 +-
.../SyncExecWhileUIThreadWaitsForLock.java | 2 +-
.../ui/tests/concurrency/TestBug105491.java | 4 --
.../ui/tests/concurrency/TestBug108162.java | 8 +---
.../ui/tests/concurrency/TestBug98621.java | 4 --
.../ImportExistingProjectsWizardTest.java | 40 +++++++++----------
.../eclipse/ui/tests/dnd/Bug87211Test.java | 15 ++++---
.../ui/tests/multieditor/MultiEditorTest.java | 35 +++++++---------
14 files changed, 59 insertions(+), 112 deletions(-)
diff --git a/tests/org.eclipse.ui.tests.rcp/Eclipse RCP Tests/org/eclipse/ui/tests/rcp/RcpTestSuite.java b/tests/org.eclipse.ui.tests.rcp/Eclipse RCP Tests/org/eclipse/ui/tests/rcp/RcpTestSuite.java
index 583d982b105..137f0e8cc41 100644
--- a/tests/org.eclipse.ui.tests.rcp/Eclipse RCP Tests/org/eclipse/ui/tests/rcp/RcpTestSuite.java
+++ b/tests/org.eclipse.ui.tests.rcp/Eclipse RCP Tests/org/eclipse/ui/tests/rcp/RcpTestSuite.java
@@ -27,6 +27,4 @@
WorkbenchWindowConfigurerTest.class, ActionBarConfigurerTest.class, IWorkbenchPageTest.class,
WorkbenchSaveRestoreStateTest.class, WorkbenchListenerTest.class, WorkbenchTest.class })
public class RcpTestSuite {
- public RcpTestSuite() {
- }
}
diff --git a/tests/org.eclipse.ui.tests.rcp/RCP Test Suite.launch b/tests/org.eclipse.ui.tests.rcp/RCP Test Suite.launch
index b429be97a17..6880d7474dd 100644
--- a/tests/org.eclipse.ui.tests.rcp/RCP Test Suite.launch
+++ b/tests/org.eclipse.ui.tests.rcp/RCP Test Suite.launch
@@ -33,7 +33,7 @@
-
+
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/autotests/XmlUtil.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/autotests/XmlUtil.java
index c78af0c9152..4fcabc7307d 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/autotests/XmlUtil.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/autotests/XmlUtil.java
@@ -14,8 +14,6 @@
package org.eclipse.ui.tests.autotests;
import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -23,7 +21,6 @@
import java.io.OutputStreamWriter;
import java.net.URL;
-import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.WorkbenchException;
@@ -44,40 +41,23 @@ public static IMemento read(URL toRead) throws WorkbenchException {
try {
return read(toRead.openStream());
} catch (IOException e) {
- throw new WorkbenchException(new Status(IStatus.ERROR,
- TestPlugin.getDefault().getBundle().getSymbolicName(),
- IStatus.OK, null, e));
- }
- }
-
- public static IMemento read(File toRead) throws WorkbenchException {
- FileInputStream input;
- try {
- input = new FileInputStream(toRead);
- return read(input);
- } catch (FileNotFoundException e) {
- throw new WorkbenchException(new Status(IStatus.ERROR,
- TestPlugin.getDefault().getBundle().getSymbolicName(),
- IStatus.OK, null, e));
+ throw new WorkbenchException(Status.error(TestPlugin.getDefault().getBundle().getSymbolicName(), e));
}
}
public static void write(File file, XMLMemento data) throws WorkbenchException {
- FileOutputStream output;
try {
file.getParentFile().mkdirs();
file.delete();
file.createNewFile();
- output = new FileOutputStream(file);
- try (OutputStreamWriter writer = new OutputStreamWriter(output)) {
+ try (FileOutputStream output = new FileOutputStream(file);
+ OutputStreamWriter writer = new OutputStreamWriter(output)) {
data.save(writer);
}
} catch (IOException e) {
- throw new WorkbenchException(new Status(IStatus.ERROR,
- TestPlugin.getDefault().getBundle().getSymbolicName(),
- IStatus.OK, e.toString(), e));
+ throw new WorkbenchException(Status.error(TestPlugin.getDefault().getBundle().getSymbolicName(), e));
}
}
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/commands/ToggleStateTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/commands/ToggleStateTest.java
index 04bf1ac9abb..81b7d205968 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/commands/ToggleStateTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/commands/ToggleStateTest.java
@@ -16,8 +16,8 @@
package org.eclipse.ui.tests.commands;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertThrows;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
import org.eclipse.core.commands.Command;
import org.eclipse.core.commands.ExecutionException;
@@ -36,15 +36,12 @@
import org.junit.Before;
import org.junit.FixMethodOrder;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
import org.junit.runners.MethodSorters;
/**
* @since 3.5
* @author Prakash G.R.
*/
-@RunWith(JUnit4.class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class ToggleStateTest {
@@ -61,9 +58,7 @@ public void doSetUp() throws Exception {
// Note: this and all other tests are numbered because they must run in a
// specific order.
// See https://bugs.eclipse.org/bugs/show_bug.cgi?id=369660
- // The old junit3 implementation used a custom suite(). Because junit4 provides
- // less options on test run order the tests are now numbered and run in method
- // name order.
+ // Tests are now numbered and run in method name order.
@Test
public void test01DefaultValues() throws Exception {
@@ -85,16 +80,10 @@ public void test01DefaultValues() throws Exception {
@Test
public void test02ExceptionThrown() throws Exception {
-
Command command3 = commandService.getCommand("org.eclipse.ui.tests.toggleStateCommand3");
- try {
- handlerService.executeCommand(command3.getId(), null);
- fail("Command3 doesn't have any state. An exception must be thrown from the handler, when trying to change that");
- } catch (Exception e) {
- if(!(e instanceof ExecutionException)) {
- throw e;
- }
- }
+ assertThrows(
+ "Command3 doesn't have any state. An exception must be thrown from the handler, when trying to change that",
+ ExecutionException.class, () -> handlerService.executeCommand(command3.getId(), null));
}
static class MyUIElement extends UIElement{
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/Bug_262032.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/Bug_262032.java
index bfab209d0df..9422aac0694 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/Bug_262032.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/Bug_262032.java
@@ -116,7 +116,9 @@ protected IStatus run(IProgressMonitor monitor) {
j.join();
tb1.waitForStatus(TestBarrier2.STATUS_WAIT_FOR_DONE);
assertEquals(Status.OK_STATUS, j.getResult());
- } catch (InterruptedException e) {fail();}
+ } catch (InterruptedException e) {
+ fail(e.getMessage());
+ }
}
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NestedSyncExecDeadlockTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NestedSyncExecDeadlockTest.java
index 44fa14517bd..4767d79cfef 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NestedSyncExecDeadlockTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NestedSyncExecDeadlockTest.java
@@ -52,10 +52,6 @@ public void resourceChanged(IResourceChangeEvent event) {
private final IWorkspace workspace = ResourcesPlugin.getWorkspace();
- public NestedSyncExecDeadlockTest() {
- super();
- }
-
public void doTest(final long timeToSleep) throws Exception {
ProgressMonitorDialog dialog = new ProgressMonitorDialog(new Shell());
dialog.run(true, false, new WorkspaceModifyOperation() {
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NoFreezeWhileWaitingForRuleTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NoFreezeWhileWaitingForRuleTest.java
index b3294091604..612fc134090 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NoFreezeWhileWaitingForRuleTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/NoFreezeWhileWaitingForRuleTest.java
@@ -93,7 +93,7 @@ public void testWaiting() {
blockingJob.join();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
- fail();
+ fail(e.getMessage());
}
assertFalse("Timeout reached, blocking occurred!", ruleMonitor.isCanceled());
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/SyncExecWhileUIThreadWaitsForLock.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/SyncExecWhileUIThreadWaitsForLock.java
index a0d74e3be2f..818a43bc28e 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/SyncExecWhileUIThreadWaitsForLock.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/SyncExecWhileUIThreadWaitsForLock.java
@@ -141,7 +141,7 @@ public void run() {
}
//if we waited too long, fail the test
if (System.currentTimeMillis() - waitStart > 60000) {
- assertTrue("Deadlock occurred", false);
+ fail("Deadlock occurred");
}
}
//if we get here, the test succeeded
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug105491.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug105491.java
index ef1a7036d7d..403b28ca4bb 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug105491.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug105491.java
@@ -74,10 +74,6 @@ public void threadChange(Thread thread) {
private final IWorkspace workspace = ResourcesPlugin.getWorkspace();
- public TestBug105491() {
- super();
- }
-
/**
* Performs the test
*/
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug108162.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug108162.java
index 6e8bcdd5717..cbbc4b14706 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug108162.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug108162.java
@@ -13,7 +13,7 @@
*******************************************************************************/
package org.eclipse.ui.tests.concurrency;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import java.lang.reflect.InvocationTargetException;
@@ -47,10 +47,6 @@ public void execute(final IProgressMonitor pm) {
private final IWorkspace workspace = ResourcesPlugin.getWorkspace();
- public TestBug108162() {
- super();
- }
-
/**
* Performs the test
*/
@@ -61,7 +57,7 @@ public void testBug() throws CoreException {
try {
dialog.run(true, false, new LockAcquiringOperation());
// should not succeed
- assertTrue("Should not get here", false);
+ fail("Should not get here");
} catch (InvocationTargetException | InterruptedException | IllegalStateException e) {
// this failure is expected because it tried to fork and block while owning a
// lock.
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug98621.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug98621.java
index ee803c662be..17965b8e366 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug98621.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/concurrency/TestBug98621.java
@@ -75,10 +75,6 @@ public void threadChange(Thread thread) {
private final IWorkspace workspace = ResourcesPlugin.getWorkspace();
- public TestBug98621() {
- super();
- }
-
/**
* Performs the test
*/
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java
index 80b17938d83..480e4d7832a 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/ImportExistingProjectsWizardTest.java
@@ -17,8 +17,14 @@
package org.eclipse.ui.tests.datatransfer;
import static org.eclipse.jface.dialogs.IMessageProvider.WARNING;
+import static org.eclipse.ui.PlatformUI.getWorkbench;
import static org.eclipse.ui.tests.datatransfer.ImportTestUtils.restoreWorkspaceConfiguration;
import static org.eclipse.ui.tests.datatransfer.ImportTestUtils.setWorkspaceAutoBuild;
+import static org.eclipse.ui.tests.harness.util.UITestCase.processEvents;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
@@ -48,7 +54,6 @@
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.internal.WorkbenchPlugin;
import org.eclipse.ui.internal.dialogs.ImportExportWizard;
import org.eclipse.ui.internal.wizards.datatransfer.DataTransferMessages;
@@ -56,18 +61,18 @@
import org.eclipse.ui.internal.wizards.datatransfer.WizardProjectsImportPage.ProjectRecord;
import org.eclipse.ui.tests.TestPlugin;
import org.eclipse.ui.tests.datatransfer.ImportTestUtils.TestBuilder;
+import org.eclipse.ui.tests.harness.util.CloseTestWindowsRule;
import org.eclipse.ui.tests.harness.util.FileUtil;
-import org.eclipse.ui.tests.harness.util.UITestCase;
import org.eclipse.ui.wizards.datatransfer.ExternalProjectImportWizard;
+import org.junit.After;
+import org.junit.Before;
import org.junit.FixMethodOrder;
+import org.junit.Rule;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
import org.junit.runners.MethodSorters;
-@RunWith(JUnit4.class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class ImportExistingProjectsWizardTest extends UITestCase {
+public class ImportExistingProjectsWizardTest {
private static final String DATA_PATH_PREFIX = "data/org.eclipse.datatransferArchives/";
private static final String WS_DATA_LOCATION = "importExistingFromDirTest";
@@ -89,17 +94,15 @@ public class ImportExistingProjectsWizardTest extends UITestCase {
private boolean originalRefreshSetting;
- public ImportExistingProjectsWizardTest() {
- super(ImportExistingProjectsWizardTest.class.getName());
- }
+ @Rule
+ public final CloseTestWindowsRule closeTestWindows = new CloseTestWindowsRule();
private Shell getShell() {
- return PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+ return getWorkbench().getActiveWorkbenchWindow().getShell();
}
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
+ @Before
+ public void doSetUp() throws Exception {
originalRefreshSetting = ResourcesPlugin.getPlugin()
.getPluginPreferences().getBoolean(
ResourcesPlugin.PREF_AUTO_REFRESH);
@@ -108,8 +111,8 @@ protected void doSetUp() throws Exception {
setWorkspaceAutoBuild(true);
}
- @Override
- protected void doTearDown() throws Exception {
+ @After
+ public void doTearDown() throws Exception {
if (dialog != null) {
dialog.close();
dialog = null;
@@ -143,12 +146,11 @@ protected void doTearDown() throws Exception {
ResourcesPlugin.getPlugin().getPluginPreferences().setValue(
ResourcesPlugin.PREF_AUTO_REFRESH, originalRefreshSetting);
restoreWorkspaceConfiguration();
- super.doTearDown();
}
private void waitForRefresh() {
try {
- PlatformUI.getWorkbench().getProgressService().busyCursorWhile(
+ getWorkbench().getProgressService().busyCursorWhile(
monitor -> Job.getJobManager().join(ResourcesPlugin.FAMILY_AUTO_REFRESH,
new NullProgressMonitor()));
} catch (InvocationTargetException | InterruptedException e) {
@@ -159,9 +161,7 @@ private void waitForRefresh() {
// Note: this and all other tests are numbered because they must run in a
// specific order.
// See https://bugs.eclipse.org/bugs/show_bug.cgi?id=369660
- // The old junit3 implementation used a custom suite(). Because junit4 provides
- // less options on test run order the tests are now numbered and run in method
- // name order.
+ // Tests are now numbered and run in method name order.
@Test
public void test01FindSingleZip() throws IOException {
URL archiveFile = FileLocator.toFileURL(FileLocator.find(TestPlugin.getDefault().getBundle(),
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dnd/Bug87211Test.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dnd/Bug87211Test.java
index a8480c14ac8..381e5beb97f 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dnd/Bug87211Test.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/dnd/Bug87211Test.java
@@ -14,8 +14,7 @@
package org.eclipse.ui.tests.dnd;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
+import static org.junit.Assert.assertEquals;
import org.eclipse.swt.SWT;
import org.eclipse.ui.IViewPart;
@@ -23,18 +22,17 @@
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.internal.WorkbenchPage;
import org.eclipse.ui.internal.WorkbenchPlugin;
+import org.junit.Before;
+import org.junit.Test;
-public class Bug87211Test extends TestCase {
- public static TestSuite suite() {
- return new TestSuite(Bug87211Test.class);
- }
+public class Bug87211Test {
private WorkbenchPage fPage;
private IWorkbenchWindow fWindow;
- @Override
- protected void setUp() throws Exception {
+ @Before
+ public void setUp() throws Exception {
fWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
fPage = (WorkbenchPage) fWindow.getActivePage();
}
@@ -44,6 +42,7 @@ protected void setUp() throws Exception {
* another view on top of it. The views should still be in their
* separate stacks.
*/
+ @Test
public void testDragStandaloneView() throws Throwable {
fPage.setPerspective(WorkbenchPlugin.getDefault()
.getPerspectiveRegistry().findPerspectiveWithId(
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/multieditor/MultiEditorTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/multieditor/MultiEditorTest.java
index 27241794b09..bd2244b36ab 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/multieditor/MultiEditorTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/multieditor/MultiEditorTest.java
@@ -13,6 +13,15 @@
*******************************************************************************/
package org.eclipse.ui.tests.multieditor;
+import static org.eclipse.ui.PlatformUI.getWorkbench;
+import static org.eclipse.ui.tests.harness.util.UITestCase.openTestWindow;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
@@ -52,20 +61,15 @@
import org.eclipse.ui.part.MultiEditorInput;
import org.eclipse.ui.tests.TestPlugin;
import org.eclipse.ui.tests.api.MockEditorPart;
-import org.eclipse.ui.tests.harness.util.UITestCase;
+import org.junit.Before;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-import junit.framework.TestSuite;
/**
* Test MultiEditor behaviour to highlight some of the broken functionality.
*
* @since 3.1
*/
-@RunWith(JUnit4.class)
-public class MultiEditorTest extends UITestCase {
+public class MultiEditorTest {
private static final String ACTION_TOOLTIP = "MultiEditorActionThing";
private static final String PROJECT_NAME = "TiledEditorProject";
@@ -108,19 +112,11 @@ public class MultiEditorTest extends UITestCase {
"updateGradient", "updateGradient", "updateGradient",
"widgetsDisposed", "dispose" };
- public static TestSuite suite() {
- return new TestSuite(MultiEditorTest.class);
- }
-
/**
* Can catch a MultiEditor unexpect Exception on init.
*/
private EditorErrorListener fErrorListener;
- public MultiEditorTest() {
- super(MultiEditorTest.class.getSimpleName());
- }
-
/**
* Test that the test tiled editor can be opened with a basic
* MultiEditorInput with the same type of files.
@@ -532,7 +528,7 @@ private MultiEditorInput generateEditorInput(String[] simpleFiles,
IProject testProject) throws CoreException, IOException {
String[] ids = new String[simpleFiles.length];
IEditorInput[] inputs = new IEditorInput[simpleFiles.length];
- IEditorRegistry registry = fWorkbench.getEditorRegistry();
+ IEditorRegistry registry = getWorkbench().getEditorRegistry();
for (int f = 0; f < simpleFiles.length; ++f) {
IFile f1 = createFile(testProject, simpleFiles[f]);
@@ -556,10 +552,9 @@ private IFile createFile(IProject testProject, String simpleFile) throws CoreExc
/**
* Close any editors at the beginner of a test, so the test can be clean.
*/
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
- IWorkbenchPage page = fWorkbench.getActiveWorkbenchWindow()
+ @Before
+ public void doSetUp() throws Exception {
+ IWorkbenchPage page = getWorkbench().getActiveWorkbenchWindow()
.getActivePage();
page.closeAllEditors(false);
From 0a615f46af7b4c736e560eeab6fa215d1a1c991f Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Wed, 30 Oct 2024 08:37:58 +0000
Subject: [PATCH 093/232] Version bump(s) for 4.34 stream
---
tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF b/tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF
index a86735328fa..85c4154a3d8 100644
--- a/tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.ui.tests.rcp/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.ui.tests.rcp; singleton:=true
-Bundle-Version: 3.6.400.qualifier
+Bundle-Version: 3.6.500.qualifier
Bundle-Vendor: %providerName
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.ui,
From 392b477d58817aa8305336c6784c2e626be44261 Mon Sep 17 00:00:00 2001
From: Maximilian Wittmer
Date: Thu, 26 Sep 2024 14:45:36 +0200
Subject: [PATCH 094/232] [FindNextAction] Introduce unit tests
Introduces unit tests for the FindNextAction.
---
.../ui/editors/tests/EditorsTestSuite.java | 1 +
.../ui/editors/tests/FindNextActionTest.java | 263 ++++++++++++++++++
2 files changed, 264 insertions(+)
create mode 100644 tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/FindNextActionTest.java
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/EditorsTestSuite.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/EditorsTestSuite.java
index 29593243ade..5bea44de374 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/EditorsTestSuite.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/EditorsTestSuite.java
@@ -41,6 +41,7 @@
ZoomTest.class,
FileDocumentProviderTest.class,
TextFileDocumentProviderTest.class,
+ FindNextActionTest.class,
StatusEditorTest.class,
TextNavigationTest.class,
LargeFileTest.class, CaseActionTest.class,
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/FindNextActionTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/FindNextActionTest.java
new file mode 100644
index 00000000000..20a94932238
--- /dev/null
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/editors/tests/FindNextActionTest.java
@@ -0,0 +1,263 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Vector Informatik GmbH and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vector Informatik GmbH - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.ui.editors.tests;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.is;
+import static org.junit.Assert.assertEquals;
+
+import java.util.ResourceBundle;
+
+import org.hamcrest.Matchers;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.osgi.framework.FrameworkUtil;
+
+import org.eclipse.core.runtime.CoreException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.ISelectionProvider;
+
+import org.eclipse.jface.text.Document;
+import org.eclipse.jface.text.TextSelection;
+
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPartSite;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.ide.IDE;
+import org.eclipse.ui.internal.findandreplace.HistoryStore;
+
+import org.eclipse.ui.texteditor.AbstractTextEditor;
+import org.eclipse.ui.texteditor.FindNextAction;
+import org.eclipse.ui.texteditor.FindReplaceAction;
+
+public class FindNextActionTest {
+ private static final String TEST_PROJECT_NAME = "TestProject";
+
+ private static final String BUNDLE_FOR_CONSTRUCTED_KEYS_NAME = "org.eclipse.ui.texteditor.ConstructedEditorMessages";//$NON-NLS-1$
+
+ private static ResourceBundle bundleForConstructedKeys = ResourceBundle.getBundle(BUNDLE_FOR_CONSTRUCTED_KEYS_NAME);
+
+ private AbstractTextEditor editor;
+
+ private IProject project;
+
+ private FindNextAction action;
+
+ private static enum Direction {
+ FORWARD, BACKWARD
+ }
+
+ @Before
+ public void createTestProject() throws CoreException {
+ project = ResourcesPlugin.getWorkspace().getRoot().getProject(TEST_PROJECT_NAME);
+ project.create(null);
+ project.open(null);
+ }
+
+ public void openEditorAndFindNextAction(String content, Direction direction) throws CoreException {
+ IFile file = createTestFile(content);
+ editor = openEditor(file);
+ action = new FindNextAction(bundleForConstructedKeys, "findNext", editor, direction == Direction.FORWARD);
+ }
+
+ private IFile createTestFile(String content) throws CoreException {
+ IFile file = project.getFile("file.txt");
+ file.create(content.getBytes(), IResource.FORCE, null);
+ file.setCharset(null, null);
+ return file;
+ }
+
+ private static AbstractTextEditor openEditor(IFile file) throws PartInitException {
+ IWorkbench workbench = PlatformUI.getWorkbench();
+ IWorkbenchPage page = workbench.getActiveWorkbenchWindow().getActivePage();
+ IEditorPart editorPart = IDE.openEditor(page, file);
+ assertThat(editorPart, Matchers.instanceOf(AbstractTextEditor.class));
+ return (AbstractTextEditor) editorPart;
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ resetInitialSearchSettings();
+ closeEditor(editor);
+ editor = null;
+ project.delete(true, null);
+ project = null;
+ TestUtil.cleanUp();
+ }
+
+ private void resetInitialSearchSettings() {
+ IDialogSettings settings = getActionSettings();
+ settings.put("isRegEx", false);
+ settings.put("casesensitive", false);
+ settings.put("wrap", true);
+ settings.put("wholeword", false);
+ }
+
+ private static void closeEditor(IEditorPart editor) {
+ IWorkbenchPartSite site;
+ IWorkbenchPage page;
+ if (editor != null && (site = editor.getSite()) != null && (page = site.getPage()) != null) {
+ page.closeEditor(editor, false);
+ }
+ }
+
+ private void setEditorSelection(int offset, int length) {
+ Document document = (Document) editor.getDocumentProvider().getDocument(editor.getEditorInput());
+ TextSelection selection = new TextSelection(document, offset, length);
+ ISelectionProvider selectionProvider = editor.getSelectionProvider();
+ selectionProvider.setSelection(selection);
+ }
+
+ private void assertSelectionIs(int offset, int length) {
+ assertEquals(offset, getEditorSelection().getRegions()[0].getOffset());
+ assertEquals(length, getEditorSelection().getRegions()[0].getLength());
+ }
+
+ private TextSelection getEditorSelection() {
+ ISelectionProvider selectionProvider = editor.getSelectionProvider();
+ if (selectionProvider.getSelection() instanceof TextSelection) {
+ return (TextSelection) selectionProvider.getSelection();
+ }
+ return null;
+ }
+
+ private IDialogSettings getActionSettings() {
+ IDialogSettings settings = PlatformUI.getDialogSettingsProvider(FrameworkUtil.getBundle(FindNextAction.class))
+ .getDialogSettings();
+ IDialogSettings fDialogSettings = settings.getSection(FindReplaceAction.class.getClass().getName());
+ if (fDialogSettings == null)
+ fDialogSettings = settings.addNewSection(FindReplaceAction.class.getClass().getName());
+ return fDialogSettings;
+ }
+
+ @Test
+ public void testFindNextForward() throws CoreException {
+ openEditorAndFindNextAction("testtesttest", Direction.FORWARD);
+ setEditorSelection(0, 4);
+ action.run();
+ assertSelectionIs(4, 4);
+ action.run();
+ assertSelectionIs(8, 4);
+ action.run();
+ assertSelectionIs(0, 4);
+ }
+
+ @Test
+ public void testFindNextBackwards() throws CoreException {
+ openEditorAndFindNextAction("testtesttest", Direction.BACKWARD);
+ setEditorSelection(4, 4);
+ action.run();
+ assertSelectionIs(0, 4);
+ action.run();
+ assertSelectionIs(8, 4);
+ }
+
+ @Test
+ public void testFindNextFromHistory() throws CoreException {
+ openEditorAndFindNextAction("word-abcd-text", Direction.FORWARD);
+ IDialogSettings settings = getActionSettings();
+ HistoryStore historyStore = new HistoryStore(settings, "findhistory", 15);
+ historyStore.add("abcd");
+ setEditorSelection(0, 0);
+ action.run();
+ assertSelectionIs(5, 4);
+ setEditorSelection(3, 0);
+ action.run();
+ assertSelectionIs(5, 4);
+ }
+
+ @Test
+ public void testFindNextStoresCorrectHistory() throws CoreException {
+ openEditorAndFindNextAction("history", Direction.FORWARD);
+ setEditorSelection(0, "history".length());
+ action.run();
+ IDialogSettings settings = getActionSettings();
+ HistoryStore historyStore = new HistoryStore(settings, "findhistory", 15);
+ assertThat(historyStore.get(0), is("history"));
+ }
+
+ @Test
+ public void testFindNextWithRegExEscapedCorrectly() throws CoreException {
+ openEditorAndFindNextAction("wo+rd-woord", Direction.FORWARD);
+ IDialogSettings settings = getActionSettings();
+ setEditorSelection(0, 5);
+ settings.put("isRegEx", true);
+ action.run();
+ assertSelectionIs(0, 5);
+ }
+
+ @Test
+ public void testCaseSensitiveFindNext() throws CoreException {
+ openEditorAndFindNextAction("wordWORD", Direction.FORWARD);
+ IDialogSettings settings = getActionSettings();
+ settings.put("casesensitive", true);
+ setEditorSelection(0, 4);
+ action.run();
+ assertSelectionIs(0, 4);
+ }
+
+ @Test
+ public void testFindNextMultilineSelection() throws CoreException {
+ openEditorAndFindNextAction("line\n\rnext\n\rnext\r\nline", Direction.FORWARD);
+ // we expect the search string to only contain the first line
+ setEditorSelection(0, 10);
+ action.run();
+ assertSelectionIs(18, 4);
+ }
+
+ @Test
+ public void testFindNextNoWrap() throws CoreException {
+ openEditorAndFindNextAction("wordword", Direction.FORWARD);
+ IDialogSettings settings = getActionSettings();
+ settings.put("wrap", false);
+ setEditorSelection(0, 4);
+ action.run();
+ assertSelectionIs(4, 4);
+ action.run();
+ assertSelectionIs(4, 4);
+ }
+
+ @Test
+ public void testFindWholeWords() throws CoreException {
+ openEditorAndFindNextAction("word longerword word", Direction.FORWARD);
+ IDialogSettings settings = getActionSettings();
+ settings.put("wholeword", true);
+ setEditorSelection(0, 4);
+ action.run();
+ assertSelectionIs(16, 4);
+ }
+
+ @Test
+ public void testFindWholeWordsIsNotWord() throws CoreException {
+ openEditorAndFindNextAction("w ord longerw ordinner w ord", Direction.FORWARD);
+ IDialogSettings settings = getActionSettings();
+ settings.put("wholeword", true);
+ setEditorSelection(0, 5);
+ action.run();
+ assertSelectionIs(12, 5);
+ action.run();
+ assertSelectionIs(23, 5);
+ }
+
+}
\ No newline at end of file
From 6af467307dc1e10c3171e48d910ff4bf9fb8694b Mon Sep 17 00:00:00 2001
From: Sebastian Ratz
Date: Tue, 29 Oct 2024 10:42:17 +0100
Subject: [PATCH 095/232] Microsoft Defender status retrieval: Add 'not
running' status
Fixes #2447
---
.../org/eclipse/ui/internal/WindowsDefenderConfigurator.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WindowsDefenderConfigurator.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WindowsDefenderConfigurator.java
index ee51d6aadfd..bc105459999 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WindowsDefenderConfigurator.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WindowsDefenderConfigurator.java
@@ -323,7 +323,8 @@ private static boolean isWindowsDefenderActive(IProgressMonitor monitor) throws
return switch (onlyLine.toLowerCase(Locale.ENGLISH).strip()) {
// Known values as listed in
// https://learn.microsoft.com/en-us/microsoft-365/security/defender-endpoint/microsoft-defender-antivirus-windows#use-powershell-to-check-the-status-of-microsoft-defender-antivirus
- case "sxs passive mode", "passive mode", "" -> false; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ // "not running" status appears to be undocumented (https://github.com/eclipse-platform/eclipse.platform.ui/issues/2447)
+ case "sxs passive mode", "passive mode", "not running", "" -> false; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
case "normal", "edr block mode" -> true; //$NON-NLS-1$//$NON-NLS-2$
default -> throw new IOException("Process terminated with unexpected result:\n" + String.join("\n", lines)); //$NON-NLS-1$//$NON-NLS-2$
};
From 2c59dfb66bf65fa04740f8b96fe68175920eaa09 Mon Sep 17 00:00:00 2001
From: jannisCode
Date: Mon, 14 Oct 2024 15:04:49 +0200
Subject: [PATCH 096/232] Show multiline error message for invalid regex in
searches when possible
When using a regular expression for a search, if there is enough
information as to where the invalid character of the expression is then
a multiline error message will be shown. The first line contains the
regular expression and the second line contains an arrow (^) that points
to the offending character.
---
.../eclipse/ui/internal/SearchDecoration.java | 54 +++++++++++++++----
1 file changed, 44 insertions(+), 10 deletions(-)
diff --git a/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java b/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java
index 47e4e148356..da709d7f8c4 100644
--- a/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java
+++ b/bundles/org.eclipse.ui/src/org/eclipse/ui/internal/SearchDecoration.java
@@ -19,7 +19,9 @@
import org.eclipse.jface.fieldassist.ControlDecoration;
import org.eclipse.jface.fieldassist.FieldDecorationRegistry;
+import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Control;
/**
* This class contains methods to validate and decorate search fields.
@@ -41,11 +43,10 @@ private SearchDecoration() {
* the validation.
*/
public static boolean validateRegex(String regex, ControlDecoration targetDecoration) {
- String errorMessage = getValidationError(regex);
+ String errorMessage = getValidationError(regex, targetDecoration.getControl());
if (errorMessage.isEmpty()) {
targetDecoration.hide();
return true;
-
}
Image decorationImage = FieldDecorationRegistry.getDefault()
@@ -62,21 +63,54 @@ public static boolean validateRegex(String regex, ControlDecoration targetDecora
* @return The appropriate error message if the regex is invalid or an empty
* string if the regex is valid.
*/
- private static String getValidationError(String regex) {
+ private static String getValidationError(String regex, Control targetControl) {
try {
Pattern.compile(regex);
return ""; //$NON-NLS-1$
} catch (PatternSyntaxException e) {
- String message = e.getLocalizedMessage();
+ return buildValidationErrorString(e, targetControl);
+ }
+ }
+
+ private static String buildValidationErrorString(PatternSyntaxException e, Control targetControl) {
+ String description = e.getDescription();
+ int errorIndex = e.getIndex();
+
+ if (errorIndex == -1) {
+ return description;
+ }
+
+ GC gc = new GC(targetControl);
+ String pattern = e.getPattern();
- // Only preserve the first line of the original error message.
- int i = 0;
- while (i < message.length() && "\n\r".indexOf(message.charAt(i)) == -1) { //$NON-NLS-1$
- i++;
- }
+ StringBuilder validationErrorMessage = new StringBuilder();
- return message.substring(0, i);
+ validationErrorMessage.append(description);
+ validationErrorMessage.append(" at index ").append(errorIndex).append(System.lineSeparator()); //$NON-NLS-1$
+ validationErrorMessage.append(pattern).append(System.lineSeparator());
+
+ String stringToIndexString = pattern.substring(0, errorIndex + 1);
+ String hairSpace = "\u200A"; //$NON-NLS-1$
+ int hairSpaceWidth = gc.stringExtent(hairSpace).x;
+
+ int stringToIndex = gc.stringExtent(stringToIndexString).x;
+ String lastCharacter = stringToIndexString.substring(stringToIndexString.length() - 1);
+
+ int widthLastChar = gc.stringExtent(lastCharacter).x;
+ int upWidth = gc.stringExtent("^").x; //$NON-NLS-1$
+
+ double howFar = stringToIndex - widthLastChar / 2 - upWidth / 2;
+ int currentWidth = 0;
+
+ while (currentWidth < howFar) {
+ currentWidth += hairSpaceWidth;
+ validationErrorMessage.append(hairSpace);
}
+
+ validationErrorMessage.append("^"); //$NON-NLS-1$
+ gc.dispose();
+
+ return validationErrorMessage.toString();
}
}
\ No newline at end of file
From 860f98fdc81e2da1a4c938a25c0b2f597324d087 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Wed, 30 Oct 2024 15:22:43 +0200
Subject: [PATCH 097/232] Stop using assertTrue(false)
This is plain wrong as it will always fail. Use fail directly or
simplify tests where possible to remove the need for it.
Other small improvements to tests done wherever seen while doing the
main changes here.
---
.../jface/text/tests/HTML2TextReaderTest.java | 7 +-
.../tests/AnnotationModelExtension2Test.java | 8 +-
.../eclipse/text/tests/ChildDocumentTest.java | 307 ++++--------
.../org/eclipse/text/tests/DocumentTest.java | 258 +++-------
.../api/SelectionListenerFactoryTest.java | 34 +-
.../markers/MarkersViewColumnSizeTest.java | 14 +-
.../markers/ResourceMappingMarkersTest.java | 6 +-
.../tests/operations/OperationsAPITest.java | 11 +-
.../PropertyPageEnablementTest.java | 4 +-
.../tests/HippieCompletionTest.java | 453 ++++++++----------
10 files changed, 412 insertions(+), 690 deletions(-)
diff --git a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/HTML2TextReaderTest.java b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/HTML2TextReaderTest.java
index 39f19788068..035056ad215 100644
--- a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/HTML2TextReaderTest.java
+++ b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/HTML2TextReaderTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2016 IBM Corporation and others.
+ * Copyright (c) 2006, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -16,6 +16,7 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import java.io.IOException;
import java.io.Reader;
@@ -76,7 +77,7 @@ private void verify(String input, String expectedOutput, int styleRangeCount) th
StyleRange range2= ranges.get(i + 1);
if (range1.start + range1.length > range2.start) {
- assertTrue("StyleRanges overlap", false);
+ fail("StyleRanges overlap");
}
}
@@ -108,7 +109,7 @@ private void verify(String input, String expectedOutput, StyleRange[] styleRange
StyleRange range2= ranges.get(i + 1);
if (range1.start + range1.length > range2.start) {
- assertTrue("StyleRanges overlap", false);
+ fail("StyleRanges overlap");
}
}
diff --git a/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/AnnotationModelExtension2Test.java b/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/AnnotationModelExtension2Test.java
index e4b7b9503bf..58e56a6553b 100644
--- a/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/AnnotationModelExtension2Test.java
+++ b/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/AnnotationModelExtension2Test.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2015 IBM Corporation and others.
+ * Copyright (c) 2007, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -13,7 +13,7 @@
*******************************************************************************/
package org.eclipse.text.tests;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import java.util.ArrayList;
import java.util.Arrays;
@@ -139,7 +139,7 @@ private void assertEquals(Annotation[] expected, Annotation[] actual, IAnnotatio
for (Annotation a : actual) {
if (!expectedSet.contains(a)) {
String message = "Unexpected annotation " + getName(a) + " in result with models [" + getAnnotationModelNames(insideModel, beforeModel, afterModel) + "]";
- assertTrue(message, false);
+ fail(message);
}
expectedSet.remove(a);
}
@@ -149,7 +149,7 @@ private void assertEquals(Annotation[] expected, Annotation[] actual, IAnnotatio
for (Annotation missing : expectedSet) {
message= message + "\n" + getName(missing);
}
- assertTrue(message, false);
+ fail(message);
}
}
diff --git a/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/ChildDocumentTest.java b/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/ChildDocumentTest.java
index a2f526e707e..a1a975d1fd6 100644
--- a/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/ChildDocumentTest.java
+++ b/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/ChildDocumentTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -37,19 +37,13 @@ public class ChildDocumentTest {
private ChildDocumentManager fManager;
- protected void checkPositions(Position[] positions) {
+ protected void checkPositions(Position[] positions) throws BadPositionCategoryException {
- try {
+ Position[] v = fDocument.getPositions(IDocument.DEFAULT_CATEGORY);
+ assertTrue("invalid number of positions", v.length == positions.length);
- Position[] v= fDocument.getPositions(IDocument.DEFAULT_CATEGORY);
- assertTrue("invalid number of positions", v.length == positions.length);
-
- for (int i= 0; i < positions.length; i++) {
- assertEquals(print(v[i]) + " != " + print(positions[i]), positions[i], v[i]);
- }
-
- } catch (BadPositionCategoryException x) {
- assertTrue("BadPositionCategoryException thrown", false);
+ for (int i = 0; i < positions.length; i++) {
+ assertEquals(print(v[i]) + " != " + print(positions[i]), positions[i], v[i]);
}
}
@@ -68,7 +62,7 @@ protected String print(Position p) {
return "[" + p.getOffset() + "," + p.getLength() + "]";
}
- protected void checkLineInformationConsistency() {
+ protected void checkLineInformationConsistency() throws BadLocationException {
DefaultLineTracker textTracker= new DefaultLineTracker();
textTracker.set(fDocument.get());
@@ -77,22 +71,18 @@ protected void checkLineInformationConsistency() {
assertEquals("Child document store and child line tracker are inconsistent", trackerLines, textLines);
- for (int i= 0; i < trackerLines; i++) {
- try {
- IRegion trackerLine = fDocument.getLineInformation(i);
- IRegion textLine = textTracker.getLineInformation(i);
- assertEquals("Child document store and child line tracker are inconsistent", trackerLine.getOffset(),
- textLine.getOffset());
- assertEquals("Child document store and child line tracker are inconsistent", trackerLine.getLength(),
- textLine.getLength());
- } catch (BadLocationException e) {
- throw new AssertionError("BadLocationException thrown", e);
- }
+ for (int i = 0; i < trackerLines; i++) {
+ IRegion trackerLine = fDocument.getLineInformation(i);
+ IRegion textLine = textTracker.getLineInformation(i);
+ assertEquals("Child document store and child line tracker are inconsistent", trackerLine.getOffset(),
+ textLine.getOffset());
+ assertEquals("Child document store and child line tracker are inconsistent", trackerLine.getLength(),
+ textLine.getLength());
}
}
@Before
- public void setUp() {
+ public void setUp() throws BadLocationException {
fParent= new Document();
@@ -111,30 +101,20 @@ public void setUp() {
" }\n";
fParent.set(text);
- fManager= new ChildDocumentManager();
- try {
- fDocument= fManager.createSlaveDocument(fParent);
- if (fDocument instanceof ChildDocument) {
- ChildDocument child= (ChildDocument) fDocument;
- child.setParentDocumentRange(0, fParent.getLength());
- }
- } catch (BadLocationException x) {
- assertTrue(false);
+ fManager = new ChildDocumentManager();
+ fDocument = fManager.createSlaveDocument(fParent);
+ if (fDocument instanceof ChildDocument child) {
+ child.setParentDocumentRange(0, fParent.getLength());
}
- try {
+ fDocument.addPosition(new Position(0, 20));
+ fDocument.addPosition(new Position(21, 15));
+ fDocument.addPosition(new Position(38, 111));
+ fDocument.addPosition(new Position(61, 12));
+ fDocument.addPosition(new Position(75, 27));
+ fDocument.addPosition(new Position(105, 12));
+ fDocument.addPosition(new Position(119, 27));
- fDocument.addPosition(new Position( 0, 20));
- fDocument.addPosition(new Position( 21, 15));
- fDocument.addPosition(new Position( 38, 111));
- fDocument.addPosition(new Position( 61, 12));
- fDocument.addPosition(new Position( 75, 27));
- fDocument.addPosition(new Position(105, 12));
- fDocument.addPosition(new Position(119, 27));
-
- } catch (BadLocationException x) {
- assertTrue("initilization failed", false);
- }
}
@After
@@ -143,17 +123,11 @@ public void tearDown () {
}
@Test
- public void testDelete1() {
+ public void testDelete1() throws BadLocationException, BadPositionCategoryException {
- try {
+ fDocument.replace(21, 16, "");
- fDocument.replace(21, 16, "");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 0),
new Position( 22, 111),
@@ -167,62 +141,38 @@ public void testDelete1() {
}
@Test
- public void testEditScript1() {
+ public void testEditScript1() throws BadPositionCategoryException, BadLocationException {
// 1. step
+ fDocument.replace(0, fDocument.getLength(), "");
- try {
-
- fDocument.replace(0, fDocument.getLength(), "");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
- new Position( 0, 0)
- };
+ Position[] positions = { new Position(0, 0) };
checkPositions(positions);
-
// 2. step
- try {
-
- fDocument.replace(0, 0, "\t");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(0, 0, "\t");
- positions= new Position[] {
+ positions = new Position[] {
new Position( 1, 0)
};
checkPositions(positions);
-
}
@Test
- public void testFindPositions() {
-
- try {
-
- fDocument.addPosition(new Position( 21, 13));
- fDocument.addPosition(new Position( 0, 19));
- fDocument.addPosition(new Position( 21, 14));
- fDocument.addPosition(new Position( 21, 16));
- fDocument.addPosition(new Position( 0, 0));
- fDocument.addPosition(new Position( 104, 1));
- fDocument.addPosition(new Position( 120, 1));
- fDocument.addPosition(new Position( 119, 1));
-
- } catch (BadLocationException x) {
- assertTrue("initilization failed", false);
- }
-
-
- Position[] positions= new Position[] {
+ public void testFindPositions() throws BadLocationException, BadPositionCategoryException {
+
+ fDocument.addPosition(new Position(21, 13));
+ fDocument.addPosition(new Position(0, 19));
+ fDocument.addPosition(new Position(21, 14));
+ fDocument.addPosition(new Position(21, 16));
+ fDocument.addPosition(new Position(0, 0));
+ fDocument.addPosition(new Position(104, 1));
+ fDocument.addPosition(new Position(120, 1));
+ fDocument.addPosition(new Position(119, 1));
+
+ Position[] positions = {
new Position( 0, 0),
new Position( 0, 19),
new Position( 0, 20),
@@ -245,17 +195,11 @@ public void testFindPositions() {
}
@Test
- public void testInsert1() {
+ public void testInsert1() throws BadLocationException, BadPositionCategoryException {
- try {
+ fDocument.replace(0, 0, "//comment\n");
- fDocument.replace(0, 0, "//comment\n");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 10, 20),
new Position( 31, 15),
new Position( 48, 111),
@@ -269,17 +213,11 @@ public void testInsert1() {
}
@Test
- public void testInsert2() {
-
- try {
+ public void testInsert2() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(61, 0, "//comment\n");
+ fDocument.replace(61, 0, "//comment\n");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 121),
@@ -293,17 +231,11 @@ public void testInsert2() {
}
@Test
- public void testInsert3() {
-
- try {
+ public void testInsert3() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(101, 0, "//comment\n");
+ fDocument.replace(101, 0, "//comment\n");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 121),
@@ -317,19 +249,11 @@ public void testInsert3() {
}
@Test
- public void testInsert4() {
-
- try {
-
- fDocument.replace(20, 0, "// comment");
+ public void testInsert4() throws BadPositionCategoryException, BadLocationException {
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- System.out.print(fDocument.get());
+ fDocument.replace(20, 0, "// comment");
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 31, 15),
new Position( 48, 111),
@@ -343,17 +267,11 @@ public void testInsert4() {
}
@Test
- public void testReplace1() {
+ public void testReplace1() throws BadLocationException, BadPositionCategoryException {
- try {
+ fDocument.replace(8, 11, "pkg1");
- fDocument.replace(8, 11, "pkg1");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 13),
new Position( 14, 15),
new Position( 31, 111),
@@ -367,17 +285,10 @@ public void testReplace1() {
}
@Test
- public void testReplace2() {
-
- try {
+ public void testReplace2() throws BadLocationException, BadPositionCategoryException {
+ fDocument.replace(21, 16, "//comment\n");
- fDocument.replace(21, 16, "//comment\n");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 31, 0),
new Position( 32, 111),
@@ -391,24 +302,14 @@ public void testReplace2() {
}
@Test
- public void testReplace3() {
-
- Position[] actual= new Position[] {
- new Position(0, 150),
- };
+ public void testReplace3() throws BadLocationException {
- try {
+ Position[] actual = { new Position(0, 150), };
- fDocument.addPosition(actual[0]);
- fDocument.replace(0, 150, "xxxxxxxxxx");
+ fDocument.addPosition(actual[0]);
+ fDocument.replace(0, 150, "xxxxxxxxxx");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] expected= new Position[] {
- new Position(0, 10)
- };
+ Position[] expected = { new Position(0, 10) };
checkPositions(expected, actual);
}
@@ -420,57 +321,38 @@ public void testReplace3() {
* https://bugs.eclipse.org/bugs/show_bug.cgi?id=51594
*/
@Test
- public void testReplace4() {
- try {
- int start= fParent.getLineOffset(5);
- int end= fParent.getLineOffset(8);
- ChildDocument child= (ChildDocument) fDocument;
- child.setParentDocumentRange(start, end - start);
- fParent.replace(end, 1, "x");
- checkLineInformationConsistency();
- } catch (BadLocationException e) {
- assertTrue("BadLocationException thrown", false);
- }
+ public void testReplace4() throws BadLocationException {
+ int start = fParent.getLineOffset(5);
+ int end = fParent.getLineOffset(8);
+ ChildDocument child = (ChildDocument) fDocument;
+ child.setParentDocumentRange(start, end - start);
+ fParent.replace(end, 1, "x");
+ checkLineInformationConsistency();
}
@Test
- public void testAppend() {
+ public void testAppend() throws BadLocationException {
- Position[] actual= new Position[] {
- new Position(0, 2),
- };
-
- try {
+ Position[] actual = { new Position(0, 2), };
- fDocument.replace(0, 150, "");
- fDocument.replace(fDocument.getLength(), 0, "xx");
- fDocument.addPosition(actual[0]);
- fDocument.replace(fDocument.getLength(), 0, "xxxxxxxx");
+ fDocument.replace(0, 150, "");
+ fDocument.replace(fDocument.getLength(), 0, "xx");
+ fDocument.addPosition(actual[0]);
+ fDocument.replace(fDocument.getLength(), 0, "xxxxxxxx");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] expected= new Position[] {
- new Position(0, 2)
- };
+ Position[] expected = { new Position(0, 2) };
checkPositions(expected, actual);
}
@Test
- public void testShiftLeft() {
-
- try {
+ public void testShiftLeft() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(73, 1, "");
- fDocument.replace(98, 1, "");
+ fDocument.replace(73, 1, "");
+ fDocument.replace(98, 1, "");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 109),
@@ -484,18 +366,11 @@ public void testShiftLeft() {
}
@Test
- public void testShiftRight() {
-
- try {
-
- fDocument.replace( 73, 0, "\t");
- fDocument.replace(100, 0, "\t");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ public void testShiftRight() throws BadLocationException, BadPositionCategoryException {
+ fDocument.replace(73, 0, "\t");
+ fDocument.replace(100, 0, "\t");
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 113),
diff --git a/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/DocumentTest.java b/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/DocumentTest.java
index b83634fcfe1..540083bd6df 100644
--- a/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/DocumentTest.java
+++ b/tests/org.eclipse.text.tests/src/org/eclipse/text/tests/DocumentTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -31,17 +31,10 @@ public class DocumentTest {
private Document fDocument;
- protected void checkPositions(Position[] expected) {
-
- try {
-
- Position[] actual= fDocument.getPositions(IDocument.DEFAULT_CATEGORY);
- checkPositions(expected, actual);
-
- } catch (BadPositionCategoryException x) {
- assertTrue("BadPositionCategoryException thrown", false);
- }
+ protected void checkPositions(Position[] expected) throws BadPositionCategoryException {
+ Position[] actual = fDocument.getPositions(IDocument.DEFAULT_CATEGORY);
+ checkPositions(expected, actual);
}
protected void checkPositions(Position[] expected, Position[] actual) {
@@ -55,7 +48,7 @@ protected void checkPositions(Position[] expected, Position[] actual) {
}
@Before
- public void setUp() {
+ public void setUp() throws BadLocationException {
fDocument= new Document();
@@ -75,19 +68,14 @@ public void setUp() {
fDocument.set(text);
- try {
+ fDocument.addPosition(new Position(0, 20)); // "package TestPackage;"
+ fDocument.addPosition(new Position(21, 15)); // "/*\n* comment\n*/"
+ fDocument.addPosition(new Position(38, 111)); // "public class Class {\n ... }"
+ fDocument.addPosition(new Position(61, 12)); // "// comment1\n"
+ fDocument.addPosition(new Position(75, 27)); // "public void method1() {\n }"
+ fDocument.addPosition(new Position(105, 12)); // "// comment2\n"
+ fDocument.addPosition(new Position(119, 27)); // "public void method2() {\n }"
- fDocument.addPosition(new Position( 0, 20)); // "package TestPackage;"
- fDocument.addPosition(new Position( 21, 15)); // "/*\n* comment\n*/"
- fDocument.addPosition(new Position( 38, 111)); // "public class Class {\n ... }"
- fDocument.addPosition(new Position( 61, 12)); // "// comment1\n"
- fDocument.addPosition(new Position( 75, 27)); // "public void method1() {\n }"
- fDocument.addPosition(new Position(105, 12)); // "// comment2\n"
- fDocument.addPosition(new Position(119, 27)); // "public void method2() {\n }"
-
- } catch (BadLocationException x) {
- assertTrue("initilization failed", false);
- }
}
@After
@@ -103,17 +91,11 @@ public void testEmptyDocument() {
}
@Test
- public void testDelete1() {
-
- try {
-
- fDocument.replace(21, 16, "");
+ public void testDelete1() throws BadLocationException, BadPositionCategoryException {
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(21, 16, "");
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 0),
new Position( 22, 111),
@@ -127,35 +109,21 @@ public void testDelete1() {
}
@Test
- public void testEditScript1() {
+ public void testEditScript1() throws BadLocationException, BadPositionCategoryException {
// 1. step
+ fDocument.replace(0, fDocument.getLength(), "");
- try {
-
- fDocument.replace(0, fDocument.getLength(), "");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
- new Position( 0, 0)
- };
+ Position[] positions = { new Position(0, 0) };
checkPositions(positions);
// 2. step
- try {
-
- fDocument.replace(0, 0, "\t");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(0, 0, "\t");
- positions= new Position[] {
+ positions = new Position[] {
new Position( 1, 0)
};
@@ -164,25 +132,18 @@ public void testEditScript1() {
}
@Test
- public void testFindPositions() {
-
- try {
-
- fDocument.addPosition(new Position( 21, 13));
- fDocument.addPosition(new Position( 0, 19));
- fDocument.addPosition(new Position( 21, 14));
- fDocument.addPosition(new Position( 21, 16));
- fDocument.addPosition(new Position( 0, 0));
- fDocument.addPosition(new Position( 104, 1));
- fDocument.addPosition(new Position( 120, 1));
- fDocument.addPosition(new Position( 119, 1));
-
- } catch (BadLocationException x) {
- assertTrue("initilization failed", false);
- }
-
-
- Position[] positions= new Position[] {
+ public void testFindPositions() throws BadLocationException, BadPositionCategoryException {
+
+ fDocument.addPosition(new Position(21, 13));
+ fDocument.addPosition(new Position(0, 19));
+ fDocument.addPosition(new Position(21, 14));
+ fDocument.addPosition(new Position(21, 16));
+ fDocument.addPosition(new Position(0, 0));
+ fDocument.addPosition(new Position(104, 1));
+ fDocument.addPosition(new Position(120, 1));
+ fDocument.addPosition(new Position(119, 1));
+
+ Position[] positions = {
new Position( 0, 0),
new Position( 0, 19),
new Position( 0, 20),
@@ -205,17 +166,10 @@ public void testFindPositions() {
}
@Test
- public void testInsert1() {
-
- try {
+ public void testInsert1() throws BadPositionCategoryException, BadLocationException {
+ fDocument.replace(0, 0, "//comment\n");
- fDocument.replace(0, 0, "//comment\n");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 10, 20),
new Position( 31, 15),
new Position( 48, 111),
@@ -229,15 +183,9 @@ public void testInsert1() {
}
@Test
- public void testInsert2() {
-
- try {
+ public void testInsert2() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(61, 0, "//comment\n");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(61, 0, "//comment\n");
Position[] positions= new Position[] {
new Position( 0, 20),
@@ -253,17 +201,11 @@ public void testInsert2() {
}
@Test
- public void testInsert3() {
-
- try {
-
- fDocument.replace(101, 0, "//comment\n");
+ public void testInsert3() throws BadLocationException, BadPositionCategoryException {
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(101, 0, "//comment\n");
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 121),
@@ -277,19 +219,11 @@ public void testInsert3() {
}
@Test
- public void testInsert4() {
-
- try {
+ public void testInsert4() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(20, 0, "// comment");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(20, 0, "// comment");
- System.out.print(fDocument.get());
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 31, 15),
new Position( 48, 111),
@@ -303,17 +237,11 @@ public void testInsert4() {
}
@Test
- public void testReplace1() {
-
- try {
-
- fDocument.replace(8, 11, "pkg1");
+ public void testReplace1() throws BadLocationException, BadPositionCategoryException {
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(8, 11, "pkg1");
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 13),
new Position( 14, 15),
new Position( 31, 111),
@@ -327,17 +255,11 @@ public void testReplace1() {
}
@Test
- public void testReplace2() {
-
- try {
+ public void testReplace2() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(21, 16, "//comment\n");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(21, 16, "//comment\n");
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 31, 0),
new Position( 32, 111),
@@ -351,38 +273,22 @@ public void testReplace2() {
}
@Test
- public void testReplace3() {
-
- Position[] actual= new Position[] {
- new Position(0, 150),
- };
-
- try {
+ public void testReplace3() throws BadLocationException {
- fDocument.addPosition(actual[0]);
- fDocument.replace(0, 150, "xxxxxxxxxx");
+ Position[] actual = { new Position(0, 150), };
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.addPosition(actual[0]);
+ fDocument.replace(0, 150, "xxxxxxxxxx");
- Position[] expected= new Position[] {
- new Position(0, 10)
- };
+ Position[] expected = { new Position(0, 10) };
checkPositions(expected, actual);
}
@Test
- public void testReplace4() {
-
- try {
+ public void testReplace4() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(19, 1, "xxxxx;");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(19, 1, "xxxxx;");
Position[] positions= new Position[] {
new Position( 0, 25),
@@ -398,43 +304,27 @@ public void testReplace4() {
}
@Test
- public void testAppend() {
+ public void testAppend() throws BadLocationException {
- Position[] actual= new Position[] {
- new Position(0, 2),
- };
-
- try {
+ Position[] actual = { new Position(0, 2), };
- fDocument.replace(0, 150, "");
- fDocument.replace(fDocument.getLength(), 0, "xx");
- fDocument.addPosition(actual[0]);
- fDocument.replace(fDocument.getLength(), 0, "xxxxxxxx");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
+ fDocument.replace(0, 150, "");
+ fDocument.replace(fDocument.getLength(), 0, "xx");
+ fDocument.addPosition(actual[0]);
+ fDocument.replace(fDocument.getLength(), 0, "xxxxxxxx");
- Position[] expected= new Position[] {
- new Position(0, 2)
- };
+ Position[] expected = { new Position(0, 2) };
checkPositions(expected, actual);
}
@Test
- public void testShiftLeft() {
-
- try {
+ public void testShiftLeft() throws BadLocationException, BadPositionCategoryException {
- fDocument.replace(73, 1, "");
- fDocument.replace(98, 1, "");
+ fDocument.replace(73, 1, "");
+ fDocument.replace(98, 1, "");
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 109),
@@ -448,18 +338,12 @@ public void testShiftLeft() {
}
@Test
- public void testShiftRight() {
+ public void testShiftRight() throws BadLocationException, BadPositionCategoryException {
- try {
+ fDocument.replace(73, 0, "\t");
+ fDocument.replace(100, 0, "\t");
- fDocument.replace( 73, 0, "\t");
- fDocument.replace(100, 0, "\t");
-
- } catch (BadLocationException x) {
- assertTrue("BadLocationException thrown", false);
- }
-
- Position[] positions= new Position[] {
+ Position[] positions = {
new Position( 0, 20),
new Position( 21, 15),
new Position( 38, 113),
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/SelectionListenerFactoryTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/SelectionListenerFactoryTest.java
index db67043a1eb..2e68d847d09 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/SelectionListenerFactoryTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/api/SelectionListenerFactoryTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2019 Remain Software and others.
+ * Copyright (c) 2019, 2024 Remain Software and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -13,6 +13,10 @@
*******************************************************************************/
package org.eclipse.ui.tests.api;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertThrows;
+import static org.junit.Assert.assertTrue;
+
import java.util.function.Predicate;
import org.eclipse.core.runtime.IAdapterFactory;
@@ -30,17 +34,17 @@
import org.eclipse.ui.SelectionListenerFactory.ISelectionModel;
import org.eclipse.ui.SelectionListenerFactory.Predicates;
import org.eclipse.ui.tests.SelectionProviderView;
+import org.eclipse.ui.tests.harness.util.CloseTestWindowsRule;
import org.eclipse.ui.tests.harness.util.UITestCase;
+import org.junit.Before;
import org.junit.Ignore;
+import org.junit.Rule;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
/**
* Tests the ISelectionService class.
*/
-@RunWith(JUnit4.class)
-public class SelectionListenerFactoryTest extends UITestCase implements ISelectionListener {
+public class SelectionListenerFactoryTest implements ISelectionListener {
private static final String KNOCK_KNOCK = "KnockKnock";
private IWorkbenchWindow fWindow;
@@ -50,15 +54,12 @@ public class SelectionListenerFactoryTest extends UITestCase implements ISelecti
private boolean fEventReceived;
private int fCounter;
+ @Rule
+ public final CloseTestWindowsRule closeTestWindows = new CloseTestWindowsRule();
- public SelectionListenerFactoryTest() {
- super(SelectionListenerFactoryTest.class.getSimpleName());
- }
-
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
- fWindow = openTestWindow();
+ @Before
+ public void doSetUp() throws Exception {
+ fWindow = UITestCase.openTestWindow();
fPage = fWindow.getActivePage();
}
@@ -593,12 +594,7 @@ public void testUserPredicateT4() throws Throwable {
@Test
public void testCreateListenerTest() throws Throwable {
SelectionProviderView view = (SelectionProviderView) fPage.showView(SelectionProviderView.ID);
- try {
- SelectionListenerFactory.createListener(view, m -> true);
- assertTrue("ClassCastException expected", false);
- } catch (ClassCastException e) {
- return;
- }
+ assertThrows(ClassCastException.class, () -> SelectionListenerFactory.createListener(view, m -> true));
}
/**
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkersViewColumnSizeTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkersViewColumnSizeTest.java
index b3c6feddcb2..657632ecd44 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkersViewColumnSizeTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/MarkersViewColumnSizeTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2008, 2012 IBM Corporation and others.
+ * Copyright (c) 2008, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -52,11 +52,11 @@ public void testColumnCreate() {
IWorkbenchWindow window = PlatformUI.getWorkbench()
.getActiveWorkbenchWindow();
if (window == null) {
- assertTrue("Could not get a workbench window", false);
+ fail("Could not get a workbench window");
}
IWorkbenchPage page = window.getActivePage();
if (page == null) {
- assertTrue("Could not get a workbench page", false);
+ fail("Could not get a workbench page");
}
MarkersTestMarkersView problemView;
@@ -64,7 +64,7 @@ public void testColumnCreate() {
problemView = (MarkersTestMarkersView) page
.showView("org.eclipse.ui.tests.markerTests");
} catch (PartInitException e) {
- assertTrue(e.getLocalizedMessage(), false);
+ fail(e.getLocalizedMessage());
return;
}
@@ -77,11 +77,11 @@ public void testColumnRestore() {
IWorkbenchWindow window = PlatformUI.getWorkbench()
.getActiveWorkbenchWindow();
if (window == null) {
- assertTrue("Could not get a workbench window", false);
+ fail("Could not get a workbench window");
}
IWorkbenchPage page = window.getActivePage();
if (page == null) {
- assertTrue("Could not get a workbench page", false);
+ fail("Could not get a workbench page");
}
MarkersTestMarkersView problemView;
@@ -89,7 +89,7 @@ public void testColumnRestore() {
problemView = (MarkersTestMarkersView) page
.showView("org.eclipse.ui.tests.markerTests");
} catch (PartInitException e) {
- assertTrue(e.getLocalizedMessage(), false);
+ fail(e.getLocalizedMessage());
return;
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ResourceMappingMarkersTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ResourceMappingMarkersTest.java
index bd938b5bf3f..5b985976b4a 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ResourceMappingMarkersTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/markers/ResourceMappingMarkersTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2009 IBM Corporation and others.
+ * Copyright (c) 2005, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -56,7 +56,7 @@ public void testResourceMappings() {
view = (ResourceMappingTestView) page
.showView("org.eclipse.ui.tests.resourceMappingView");
} catch (PartInitException e) {
- assertTrue(e.getLocalizedMessage(), false);
+ fail(e.getLocalizedMessage());
return;
}
@@ -65,7 +65,7 @@ public void testResourceMappings() {
problemView = (MarkersTestMarkersView) page
.showView("org.eclipse.ui.tests.markerTests");
} catch (PartInitException e) {
- assertTrue(e.getLocalizedMessage(), false);
+ fail(e.getLocalizedMessage());
return;
}
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/operations/OperationsAPITest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/operations/OperationsAPITest.java
index 24126bf87c4..e8ea646c995 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/operations/OperationsAPITest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/operations/OperationsAPITest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
+ * Copyright (c) 2005, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -20,6 +20,7 @@
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.operations.AbstractOperation;
@@ -65,10 +66,6 @@ public class OperationsAPITest {
int preExec, postExec, preUndo, postUndo, preRedo, postRedo, add, remove, notOK, changed = 0;
IOperationHistoryListener listener;
- public OperationsAPITest() {
- super();
- }
-
@Before
public void setUp() throws Exception {
history = new DefaultOperationHistory();
@@ -279,7 +276,7 @@ public IStatus redo(IProgressMonitor monitor, IAdaptable uiInfo) {
history.openOperation(new TriggeredOperations(op3, history), IOperationHistory.EXECUTE);
history.closeOperation(true, true, IOperationHistory.EXECUTE);
} catch (IllegalStateException e) {
- assertTrue("IllegalStateException - trying to open an operation before a close", false);
+ fail("IllegalStateException - trying to open an operation before a close");
}
}
@@ -836,7 +833,7 @@ public IStatus proceedRedoing(IUndoableOperation op, IOperationHistory history,
history.undoOperation(op5, null, null);
assertTrue("Operation approver should run only once for direct undo", approvalCount[0]== 1);
history.redoOperation(op5, null, null);
- assertTrue("Operation approver should run only once for direct redo", approvalCount[0]== 0);
+ assertTrue("Operation approver should run only once for direct redo", approvalCount[0] == 0);
// cleanup
history.removeOperationApprover(approver);
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/propertyPages/PropertyPageEnablementTest.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/propertyPages/PropertyPageEnablementTest.java
index 463b40db109..a790d408c3e 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/propertyPages/PropertyPageEnablementTest.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/propertyPages/PropertyPageEnablementTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others.
+ * Copyright (c) 2006, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -56,7 +56,7 @@ public void testAndPage() {
return;
}
}
- assertTrue("And property page for file not found", false);
+ fail("And property page for file not found");
contributors = PropertyPageContributorManager.getManager().getApplicableContributors(testFolder);
for (RegistryPageContributor element : contributors) {
diff --git a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/HippieCompletionTest.java b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/HippieCompletionTest.java
index 2a122a41631..30b5059e2c7 100644
--- a/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/HippieCompletionTest.java
+++ b/tests/org.eclipse.ui.workbench.texteditor.tests/src/org/eclipse/ui/workbench/texteditor/tests/HippieCompletionTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -50,69 +50,72 @@ public class HippieCompletionTest {
@Before
public void setUp() throws Exception {
documents= new IDocument[5];
- documents[0]= new Document("package ui.TestPackage;\n" +
- "\n" +
- "/**\n" +
- " * This is a testing class that tests the hippie completion engine.\n" +
- " * it has a simple main with a print method\n" +
- " */\n" +
- "public class TestClass1 {\n" +
- "\n" +
- " public static void main(String[] args) {\n" +
- " System.out.println(\"I will be printing Hello world!\");\n" +
- " }\n" +
- "}");
+ documents[0]= new Document("""
+ package ui.TestPackage;
+
+ /**
+ * This is a testing class that tests the hippie completion engine.
+ * it has a simple main with a print method
+ */
+ public class TestClass1 {
+
+ public static void main(String[] args) {
+ System.out.println("I will be printing Hello world!");
+ }
+ }""");
documents[1]= new Document("This is a simple text file\n" +
"with some testssome test that is also used in the completion engine tests");
- documents[2]= new Document("\n" +
- "\n" +
- "\n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- " \n" +
- "\n" +
- "");
-
- documents[3]= new Document("###############################################################################\n" +
- "# Copyright (c) 2000, 2004 IBM Corporation and others.\n" +
- "\\n"+
- "# This program and the accompanying materials \n" +
- "# are made available under the terms of the Eclipse Public License 2.0\n" +
- "# which accompanies this distribution, and is available at\n" +
- "# https://www.eclipse.org/legal/epl-2.0/"+
- "# \n"+
- "# SPDX-License-Identifier: EPL-2.0\n" +
- "# \n" +
- "# Contributors:\n" +
- "# IBM Corporation - initial API and implementation\n" +
- "###############################################################################\n" +
- "bin.includes= plugin.xml,\\\n" +
- " plugin.properties,\\\n" +
- " test.xml,\\\n" +
- " about.html,\\\n" +
- " *.jar\n" +
- "\n" +
- "src.includes= about.html\n" +
- " \n" +
- "source.workbenchtexteditortests.jar= src/\n" +
- "");
+ documents[2]= new Document("""
+
+
+
+
+
+
+
+
+ \s
+
+
+
+
+
+
+
+
+ \s
+
+ """);
+
+ documents[3]= new Document("""
+ ###############################################################################
+ # Copyright (c) 2000, 2004 IBM Corporation and others.
+ \\n\
+ # This program and the accompanying materials\s
+ # are made available under the terms of the Eclipse Public License 2.0
+ # which accompanies this distribution, and is available at
+ # https://www.eclipse.org/legal/epl-2.0/\
+ #\s
+ # SPDX-License-Identifier: EPL-2.0
+ #\s
+ # Contributors:
+ # IBM Corporation - initial API and implementation
+ ###############################################################################
+ bin.includes= plugin.xml,\\
+ plugin.properties,\\
+ test.xml,\\
+ about.html,\\
+ *.jar
+
+ src.includes= about.html
+ \s
+ source.workbenchtexteditortests.jar= src/
+ """);
documents[4]= new Document("/**\n" +
" * This class tests the hippie completion functionality.\n" +
" * \u05D4\u05DE\u05D7\u05DC\u05E7\u05D4 \u05D4\u05D6\u05D5 \u05D1\u05D5\u05D3\u05E7\u05EA \u05D0\u05EA \u05DE\u05E0\u05D2\u05E0\u05D5\u05DF \u05D4\u05D4\u05E9\u05DC\u05DE\u05D5\u05EA\n" +
@@ -143,74 +146,62 @@ public void setUp() throws Exception {
}
@Test
- public void testSearchBackwards1() {
- try {
- List list= fEngine.getCompletionsBackwards(documents[0],
- "pri", documents[0].get().indexOf("println") + 10);
- assertEquals(list.size(), 2);
- assertEquals(list.get(0), "ntln");
- assertEquals(list.get(1), "nt");
-
- list= fEngine.getCompletionsBackwards(documents[0],
- "pri", documents[0].getLength());
- assertEquals(list.size(), 3);
- assertEquals(list.get(0), "nting");
- assertEquals(list.get(1), "ntln");
- assertEquals(list.get(2), "nt");
-
- list= fEngine.getCompletionsBackwards(documents[0],
- "pri", documents[0].get().indexOf("println") + 1);
- assertEquals(list.size(), 1);
- assertEquals(list.get(0), "nt");
-
- list= fEngine.getCompletionsBackwards(documents[0],
- "pa", 2);
- assertEquals(list.size(), 0);
-
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ public void testSearchBackwards1() throws BadLocationException {
+ List list= fEngine.getCompletionsBackwards(documents[0],
+ "pri", documents[0].get().indexOf("println") + 10);
+ assertEquals(list.size(), 2);
+ assertEquals(list.get(0), "ntln");
+ assertEquals(list.get(1), "nt");
+
+ list= fEngine.getCompletionsBackwards(documents[0],
+ "pri", documents[0].getLength());
+ assertEquals(list.size(), 3);
+ assertEquals(list.get(0), "nting");
+ assertEquals(list.get(1), "ntln");
+ assertEquals(list.get(2), "nt");
+
+ list= fEngine.getCompletionsBackwards(documents[0],
+ "pri", documents[0].get().indexOf("println") + 1);
+ assertEquals(list.size(), 1);
+ assertEquals(list.get(0), "nt");
+
+ list= fEngine.getCompletionsBackwards(documents[0],
+ "pa", 2);
+ assertEquals(list.size(), 0);
+
}
@Test
- public void testSearchBackwards2() {
- try {
- List list= fEngine.getCompletionsBackwards(documents[2],
- "plugi", documents[2].getLength());
- assertEquals(8, list.size());
- list= fEngine.makeUnique(list);
- assertEquals(1, list.size());
- assertEquals("n", list.get(0));
-
- list= fEngine.getCompletionsBackwards(documents[2],
- "plugin", documents[2].getLength());
- assertEquals(0, list.size()); // empty completions discarded
-
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ public void testSearchBackwards2() throws BadLocationException {
+ List list= fEngine.getCompletionsBackwards(documents[2],
+ "plugi", documents[2].getLength());
+ assertEquals(8, list.size());
+ list= fEngine.makeUnique(list);
+ assertEquals(1, list.size());
+ assertEquals("n", list.get(0));
+
+ list= fEngine.getCompletionsBackwards(documents[2],
+ "plugin", documents[2].getLength());
+ assertEquals(0, list.size()); // empty completions discarded
+
}
@Test
- public void testSearchBackwards3() {
- try {
- List list= fEngine.getCompletionsBackwards(documents[1],
- "test", documents[1].getLength());
- assertEquals("Number of backwards suggestions does not match", 2, list.size());
- list= fEngine.getCompletionsBackwards(documents[1],
- "tests", documents[1].getLength());
- assertEquals("Number of backwards suggestions does not match", 1, list.size());
-
- list= fEngine.getCompletionsBackwards(documents[1],
- "test", documents[1].getLength() - 1);
- assertEquals("Number of backwards suggestions does not match", 1, list.size());
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ public void testSearchBackwards3() throws BadLocationException {
+ List list= fEngine.getCompletionsBackwards(documents[1],
+ "test", documents[1].getLength());
+ assertEquals("Number of backwards suggestions does not match", 2, list.size());
+ list= fEngine.getCompletionsBackwards(documents[1],
+ "tests", documents[1].getLength());
+ assertEquals("Number of backwards suggestions does not match", 1, list.size());
+
+ list= fEngine.getCompletionsBackwards(documents[1],
+ "test", documents[1].getLength() - 1);
+ assertEquals("Number of backwards suggestions does not match", 1, list.size());
}
@Test
- public void testSearch() {
+ public void testSearch() throws BadLocationException {
ArrayList docsList= new ArrayList<>(Arrays.asList(this.documents));
List result= createSuggestions("te", docsList);
assertEquals("Number of completions does not match", 15, result.size());
@@ -237,7 +228,7 @@ public void testSearch() {
}
@Test
- public void testSearch2() {
+ public void testSearch2() throws BadLocationException {
ArrayList docsList= new ArrayList<>(Arrays.asList(this.documents));
List result= createSuggestions("printe", docsList);
assertEquals("Number of completions does not match", 0, result.size());
@@ -250,116 +241,102 @@ public void testSearch2() {
}
@Test
- public void testForwardSearch() {
- try {
- List result= fEngine.getCompletionsForward(documents[0],
- "cl", documents[0].get().indexOf("cl"), true);
- assertEquals(2, result.size());
-
- result= fEngine.getCompletionsForward(documents[0],
- "cl", documents[0].get().indexOf("cl") + 1, true);
- assertEquals(1, result.size());
-
- result= fEngine.getCompletionsForward(documents[1],
- "Thi", 0, true);
- assertEquals(1, result.size());
-
- result= fEngine.getCompletionsForward(documents[1],
- "Thi", 1, true);
- assertEquals(0, result.size());
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ public void testForwardSearch() throws BadLocationException {
+ List result= fEngine.getCompletionsForward(documents[0],
+ "cl", documents[0].get().indexOf("cl"), true);
+ assertEquals(2, result.size());
+
+ result= fEngine.getCompletionsForward(documents[0],
+ "cl", documents[0].get().indexOf("cl") + 1, true);
+ assertEquals(1, result.size());
+
+ result= fEngine.getCompletionsForward(documents[1],
+ "Thi", 0, true);
+ assertEquals(1, result.size());
+
+ result= fEngine.getCompletionsForward(documents[1],
+ "Thi", 1, true);
+ assertEquals(0, result.size());
}
@Test
- public void testForwardSearchInternational() {
- List result;
- try {
- result= fEngine.getCompletionsForward(documents[4],
- "$", documents[4].get().indexOf('$'), true);
- assertEquals(2, result.size());
- assertEquals("arabic\u20AAWord", result.get(0));
- assertEquals("arabic\u20ACDigits", result.get(1));
-
- result= fEngine.getCompletionsForward(documents[4],
- "$", documents[4].get().indexOf('$'), false);
- assertEquals(2, result.size());
- assertEquals("arabic\u20ACDigits", result.get(0));
- assertEquals("arabic\u20AAWord", result.get(1));
-
- result= fEngine.getCompletionsForward(documents[4],
- "$", documents[4].get().indexOf('$') + 1, true);
- assertEquals(1, result.size());
- assertEquals("arabic\u20AAWord", result.get(0));
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ public void testForwardSearchInternational() throws BadLocationException {
+ List result= fEngine.getCompletionsForward(documents[4],
+ "$", documents[4].get().indexOf('$'), true);
+ assertEquals(2, result.size());
+ assertEquals("arabic\u20AAWord", result.get(0));
+ assertEquals("arabic\u20ACDigits", result.get(1));
+
+ result= fEngine.getCompletionsForward(documents[4],
+ "$", documents[4].get().indexOf('$'), false);
+ assertEquals(2, result.size());
+ assertEquals("arabic\u20ACDigits", result.get(0));
+ assertEquals("arabic\u20AAWord", result.get(1));
+
+ result= fEngine.getCompletionsForward(documents[4],
+ "$", documents[4].get().indexOf('$') + 1, true);
+ assertEquals(1, result.size());
+ assertEquals("arabic\u20AAWord", result.get(0));
}
@Test
- public void testPrefix() {
- try {
- String prefix= fEngine.getPrefixString(documents[0],
- documents[0].get().indexOf("testing") + 3);
- assertEquals(prefix, "tes");
-
- prefix= fEngine.getPrefixString(documents[0],
- documents[0].get().indexOf("public") + 4);
- assertEquals(prefix, "publ");
+ public void testPrefix() throws BadLocationException {
+ String prefix= fEngine.getPrefixString(documents[0],
+ documents[0].get().indexOf("testing") + 3);
+ assertEquals(prefix, "tes");
- prefix= fEngine.getPrefixString(documents[0],
- documents[0].get().indexOf("println") + 7);
- assertEquals(prefix, "println");
+ prefix= fEngine.getPrefixString(documents[0],
+ documents[0].get().indexOf("public") + 4);
+ assertEquals(prefix, "publ");
- prefix= fEngine.getPrefixString(documents[0],
- documents[0].get().indexOf("println") + 8);
- assertEquals(prefix, null);
+ prefix= fEngine.getPrefixString(documents[0],
+ documents[0].get().indexOf("println") + 7);
+ assertEquals(prefix, "println");
- prefix= fEngine.getPrefixString(documents[1], 3);
- assertEquals(prefix, "Thi");
+ prefix= fEngine.getPrefixString(documents[0],
+ documents[0].get().indexOf("println") + 8);
+ assertEquals(prefix, null);
- prefix= fEngine.getPrefixString(documents[1], 0);
- assertEquals(prefix, null);
+ prefix= fEngine.getPrefixString(documents[1], 3);
+ assertEquals(prefix, "Thi");
- prefix= fEngine.getPrefixString(documents[1], documents[1].getLength());
- assertEquals(prefix, "tests");
+ prefix= fEngine.getPrefixString(documents[1], 0);
+ assertEquals(prefix, null);
- prefix= fEngine.getPrefixString(documents[3],
- documents[3].get().indexOf("Copyright") - 2);
- assertEquals(prefix, null);
+ prefix= fEngine.getPrefixString(documents[1], documents[1].getLength());
+ assertEquals(prefix, "tests");
- prefix= fEngine.getPrefixString(documents[4],
- documents[4].get().indexOf("IDE") + 2);
- assertEquals(prefix, "ID");
+ prefix= fEngine.getPrefixString(documents[3],
+ documents[3].get().indexOf("Copyright") - 2);
+ assertEquals(prefix, null);
- prefix= fEngine.getPrefixString(documents[4],
- documents[4].get().indexOf("$arabic\u20ACDigits") + 8);
- assertEquals(prefix, "$arabic\u20AC");
+ prefix= fEngine.getPrefixString(documents[4],
+ documents[4].get().indexOf("IDE") + 2);
+ assertEquals(prefix, "ID");
- prefix= fEngine.getPrefixString(documents[4],
- documents[4].get().indexOf("$arabic\u20AAWord") + 8);
- assertEquals(prefix, "$arabic\u20AA");
+ prefix= fEngine.getPrefixString(documents[4],
+ documents[4].get().indexOf("$arabic\u20ACDigits") + 8);
+ assertEquals(prefix, "$arabic\u20AC");
- prefix= fEngine.getPrefixString(documents[4],
- documents[4].get().indexOf("\u00A3\u0661\u0662\u0663") + 3);
- assertEquals(prefix, "\u00A3\u0661\u0662");
+ prefix= fEngine.getPrefixString(documents[4],
+ documents[4].get().indexOf("$arabic\u20AAWord") + 8);
+ assertEquals(prefix, "$arabic\u20AA");
- prefix= fEngine.getPrefixString(documents[4],
- documents[4].get().indexOf("a\u0300\u0301b") + 3);
- assertEquals(prefix, "a\u0300\u0301");
+ prefix= fEngine.getPrefixString(documents[4],
+ documents[4].get().indexOf("\u00A3\u0661\u0662\u0663") + 3);
+ assertEquals(prefix, "\u00A3\u0661\u0662");
- prefix= fEngine.getPrefixString(documents[4],
- documents[4].get().indexOf("\u0667\u0668\u0669\u0660") + 2);
- assertEquals(prefix, "\u0667\u0668");
+ prefix= fEngine.getPrefixString(documents[4],
+ documents[4].get().indexOf("a\u0300\u0301b") + 3);
+ assertEquals(prefix, "a\u0300\u0301");
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ prefix= fEngine.getPrefixString(documents[4],
+ documents[4].get().indexOf("\u0667\u0668\u0669\u0660") + 2);
+ assertEquals(prefix, "\u0667\u0668");
}
@Test
- public void testInternational() {
+ public void testInternational() throws BadLocationException {
IDocument intlDoc= documents[4];
List result= createSuggestions("\u05D4", intlDoc); // hebrew letter heh
@@ -426,33 +403,29 @@ public void testInternational() {
}
@Test
- public void testInternationalBackwards() {
+ public void testInternationalBackwards() throws BadLocationException {
IDocument intlDoc= documents[4];
- try {
- List list= fEngine.getCompletionsBackwards(intlDoc,
- "\u043B\u0443", intlDoc.get().indexOf("129"));
- assertEquals(2, list.size());
- assertEquals(list.get(0), "\u0447\u0448");
- assertEquals(list.get(1), "\u0447\u0448\u0438\u0439");
-
- list= fEngine.getCompletionsBackwards(intlDoc,
- "\u05DE", intlDoc.get().lastIndexOf('+'));
- assertEquals(2, list.size());
- assertEquals(list.get(0), "\u05D7");
- assertEquals(list.get(1), "\u05E0\u05D2\u05E0\u05D5\u05DF");
-
- list= fEngine.getCompletionsBackwards(intlDoc,
- "\u0667", intlDoc.get().indexOf("\u2021\u0667") + 1);
- assertEquals(0, list.size());
-
- list= fEngine.getCompletionsBackwards(intlDoc,
- "\u0628", intlDoc.get().lastIndexOf("\u0628"));
- assertEquals(1, list.size());
- assertEquals(list.get(0), "\u064E\u0627\u0628\u0650");
-
- } catch (BadLocationException e) {
- assertTrue("Got out of document bounds", false);
- }
+ List list= fEngine.getCompletionsBackwards(intlDoc,
+ "\u043B\u0443", intlDoc.get().indexOf("129"));
+ assertEquals(2, list.size());
+ assertEquals(list.get(0), "\u0447\u0448");
+ assertEquals(list.get(1), "\u0447\u0448\u0438\u0439");
+
+ list= fEngine.getCompletionsBackwards(intlDoc,
+ "\u05DE", intlDoc.get().lastIndexOf('+'));
+ assertEquals(2, list.size());
+ assertEquals(list.get(0), "\u05D7");
+ assertEquals(list.get(1), "\u05E0\u05D2\u05E0\u05D5\u05DF");
+
+ list= fEngine.getCompletionsBackwards(intlDoc,
+ "\u0667", intlDoc.get().indexOf("\u2021\u0667") + 1);
+ assertEquals(0, list.size());
+
+ list= fEngine.getCompletionsBackwards(intlDoc,
+ "\u0628", intlDoc.get().lastIndexOf("\u0628"));
+ assertEquals(1, list.size());
+ assertEquals(list.get(0), "\u064E\u0627\u0628\u0650");
+
}
private Accessor createAccessor(Iterator suggestions, int startOffset) {
@@ -593,18 +566,14 @@ public void testIteration() throws Exception {
}
- private List createSuggestions(String prefix, IDocument doc) {
+ private List createSuggestions(String prefix, IDocument doc) throws BadLocationException {
return createSuggestions(prefix, Arrays.asList(new IDocument[]{doc}));
}
- private List createSuggestions(String prefix, List docsList) {
+ private List createSuggestions(String prefix, List docsList) throws BadLocationException {
ArrayList results= new ArrayList<>();
for (IDocument doc : docsList) {
- try {
- results.addAll(fEngine.getCompletionsForward(doc, prefix, 0, false));
- } catch (BadLocationException e) {
- assertTrue("No exception should be thrown here", false);
- }
+ results.addAll(fEngine.getCompletionsForward(doc, prefix, 0, false));
}
return results;
}
From 25212100534dac58e53d5329a63b3a3485c7853c Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Wed, 30 Oct 2024 13:28:38 +0000
Subject: [PATCH 098/232] Version bump(s) for 4.34 stream
---
tests/org.eclipse.text.tests/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.text.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.text.tests/META-INF/MANIFEST.MF
index bfd99b7350f..9ffe2164ddb 100644
--- a/tests/org.eclipse.text.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.text.tests/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Plugin.name
Bundle-SymbolicName: org.eclipse.text.tests
-Bundle-Version: 3.14.600.qualifier
+Bundle-Version: 3.14.700.qualifier
Bundle-Vendor: %Plugin.providerName
Bundle-Localization: plugin
Export-Package:
From 5ae97bebda4d468c43747e594f98c86a3bb09d6f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?=
=?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?=
Date: Wed, 30 Oct 2024 19:37:22 +0200
Subject: [PATCH 099/232] Cleanups in unstable tests in I-builds
Use DisplayHelper to delay checks so listener changes can propagate.
Remove unused variables.
---
tests/org.eclipse.e4.ui.tests/.classpath | 12 ++++++++++--
tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF | 3 ++-
.../eclipse/e4/ui/tests/workbench/MWindowTest.java | 10 ++++------
.../tests/filesearch/AnnotationManagerTest.java | 6 +-----
4 files changed, 17 insertions(+), 14 deletions(-)
diff --git a/tests/org.eclipse.e4.ui.tests/.classpath b/tests/org.eclipse.e4.ui.tests/.classpath
index 06bb5d7d2cc..7ab1564171f 100644
--- a/tests/org.eclipse.e4.ui.tests/.classpath
+++ b/tests/org.eclipse.e4.ui.tests/.classpath
@@ -1,7 +1,15 @@
-
+
+
+
+
+
-
+
+
+
+
+
diff --git a/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF
index 0afe8caf301..cb90cb0351d 100644
--- a/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.e4.ui.tests/META-INF/MANIFEST.MF
@@ -29,7 +29,8 @@ Require-Bundle: org.eclipse.emf.ecore.xmi;bundle-version="2.4.0",
org.eclipse.e4.ui.css.swt;bundle-version="0.11.0",
org.mockito.mockito-core;bundle-version="2.13.0",
org.eclipse.e4.ui.css.core;bundle-version="0.10.100",
- org.eclipse.test;bundle-version="3.6.200"
+ org.eclipse.test;bundle-version="3.6.200",
+ org.eclipse.ui.tests.harness
Bundle-RequiredExecutionEnvironment: JavaSE-17
Export-Package: org.eclipse.e4.ui.tests.model.test,
org.eclipse.e4.ui.tests.model.test.impl,
diff --git a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/MWindowTest.java b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/MWindowTest.java
index 1f1d3ed6d1a..dd6f8311b89 100644
--- a/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/MWindowTest.java
+++ b/tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/workbench/MWindowTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2023 IBM Corporation and others.
+ * Copyright (c) 2009, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -50,6 +50,7 @@
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.Widget;
+import org.eclipse.ui.tests.harness.util.DisplayHelper;
import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
@@ -365,12 +366,9 @@ public void testWindow_Height() {
// the shell's width should have been updated
window.setHeight(300);
- while (shell.getDisplay().readAndDispatch()) {
- // spin the event loop
- }
-
+ // Give time for change to propagate
+ DisplayHelper.waitForCondition(shell.getDisplay(), 10000, () -> (300 == shell.getBounds().height));
assertEquals(shell.getBounds().height, window.getHeight());
- assertEquals(300, shell.getBounds().height);
}
@Test
diff --git a/tests/org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AnnotationManagerTest.java b/tests/org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AnnotationManagerTest.java
index 5100700f577..2c3ea40eece 100644
--- a/tests/org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AnnotationManagerTest.java
+++ b/tests/org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AnnotationManagerTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
+ * Copyright (c) 2000, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -159,7 +159,6 @@ public void testReplaceQuery() throws Exception {
IFile file = (IFile) f;
ITextEditor editor= (ITextEditor)SearchTestPlugin.openTextEditor(SearchPlugin.getActivePage(), file);
IAnnotationModel annotationModel= editor.getDocumentProvider().getAnnotationModel(editor.getEditorInput());
- int annotationCount= 0;
IDocument document= editor.getDocumentProvider().getDocument(editor.getEditorInput());
for (Iterator annotations= annotationModel.getAnnotationIterator(); annotations.hasNext();) {
Annotation annotation= annotations.next();
@@ -169,7 +168,6 @@ public void testReplaceQuery() throws Exception {
assertTrue(text.equalsIgnoreCase(fQuery2.getSearchString()));
}
}
- assertEquals(0, annotationCount);
}
} finally {
SearchPlugin.getActivePage().closeAllEditors(false);
@@ -188,7 +186,6 @@ public void testSwitchQuery() throws Exception {
IFile file = (IFile) f;
ITextEditor editor= (ITextEditor)SearchTestPlugin.openTextEditor(SearchPlugin.getActivePage(), file);
IAnnotationModel annotationModel= editor.getDocumentProvider().getAnnotationModel(editor.getEditorInput());
- int annotationCount= 0;
IDocument document= editor.getDocumentProvider().getDocument(editor.getEditorInput());
for (Iterator annotations= annotationModel.getAnnotationIterator(); annotations.hasNext();) {
Annotation annotation= annotations.next();
@@ -198,7 +195,6 @@ public void testSwitchQuery() throws Exception {
assertTrue(text.equalsIgnoreCase(fQuery1.getSearchString()));
}
}
- assertEquals(0, annotationCount);
}
} finally {
SearchPlugin.getActivePage().closeAllEditors(false);
From 138233b7ffe48a988a092054f5c377a44ab73301 Mon Sep 17 00:00:00 2001
From: Eclipse Platform Bot
Date: Wed, 30 Oct 2024 20:36:30 +0000
Subject: [PATCH 100/232] Version bump(s) for 4.34 stream
---
tests/org.eclipse.search.tests/META-INF/MANIFEST.MF | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.search.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.search.tests/META-INF/MANIFEST.MF
index fc529157b0d..70fe03f11cf 100644
--- a/tests/org.eclipse.search.tests/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.search.tests/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.search.tests;singleton:=true
-Bundle-Version: 3.11.500.qualifier
+Bundle-Version: 3.11.600.qualifier
Bundle-Activator: org.eclipse.search.tests.SearchTestPlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
From 83c128c94567f776bacb87f9ea50a766307a1cb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Kubitz?=
Date: Mon, 28 Oct 2024 14:50:29 +0100
Subject: [PATCH 101/232] [test] SmartImportTests fix NPE after SWTError: No
more handles
---
.../org/eclipse/ui/tests/datatransfer/SmartImportTests.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/SmartImportTests.java b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/SmartImportTests.java
index de57704c53c..16020d7af58 100644
--- a/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/SmartImportTests.java
+++ b/tests/org.eclipse.ui.tests/Eclipse UI Tests/org/eclipse/ui/tests/datatransfer/SmartImportTests.java
@@ -157,7 +157,7 @@ private void proceedSmartImportWizard(SmartImportWizard wizard, Consumer okButton.isEnabled(), -1);
finishWizard(wizard);
} finally {
- if (!dialog.getShell().isDisposed()) {
+ if (dialog.getShell() != null && !dialog.getShell().isDisposed()) {
dialog.close();
}
}
From c5928bbad22265e3660af18692b9dd9a02413d4e Mon Sep 17 00:00:00 2001
From: Shahzaib Ibrahim
Date: Thu, 31 Oct 2024 16:40:45 +0100
Subject: [PATCH 102/232] Adding experimental preference to enable rescaling at
runtime (Windows)
In the UI Preferences -> General -> Appearance, there is a new HiDPI
setting that could be checked to enable the monitor-specific scaling of
the UI. This check will also enable Edge browser by default. This is an
experimental feature to test the multi-monitor HiDPI support before it
is actually released and set by default. For now, this preference is
disabled by default.
---
.../ui/IWorkbenchPreferenceConstants.java | 10 ++++
.../org/eclipse/ui/internal/Workbench.java | 11 +++-
.../ui/internal/WorkbenchMessages.java | 10 ++++
.../internal/dialogs/ViewsPreferencePage.java | 53 ++++++++++++++++---
.../eclipse/ui/internal/messages.properties | 5 ++
5 files changed, 82 insertions(+), 7 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
index 2df7267e907..9d182e6443e 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
@@ -705,4 +705,14 @@ public interface IWorkbenchPreferenceConstants {
* @since 3.130
*/
String LARGE_VIEW_LIMIT = "largeViewLimit"; //$NON-NLS-1$
+
+ /**
+ *
+ * EXPERIMENTAL. Whether the UI adapts to DPI changes at
+ * runtime. It only effects Windows.
+ *
+ *
+ * @since 3.133
+ */
+ String RESCALING_AT_RUNTIME = "RESCALING_AT_RUNTIME"; //$NON-NLS-1$
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
index 667f5c3ce79..5cb4c5cac77 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
@@ -584,7 +584,7 @@ public static int createAndRunWorkbench(final Display display, final WorkbenchAd
int orientation = store.getInt(IPreferenceConstants.LAYOUT_DIRECTION);
Window.setDefaultOrientation(orientation);
}
-
+ setRescaleAtRuntimePropertyFromPreference(display);
if (obj instanceof E4Application) {
E4Application e4app = (E4Application) obj;
E4Workbench e4Workbench = e4app.createE4Workbench(getApplicationContext(), display);
@@ -678,6 +678,15 @@ public void update() {
return returnCode[0];
}
+ private static void setRescaleAtRuntimePropertyFromPreference(final Display display) {
+ boolean rescaleAtRuntime = PrefUtil.getAPIPreferenceStore()
+ .getBoolean(IWorkbenchPreferenceConstants.RESCALING_AT_RUNTIME);
+ if (rescaleAtRuntime) {
+ display.setRescalingAtRuntime(rescaleAtRuntime);
+ System.setProperty("org.eclipse.swt.browser.DefaultType", "edge"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
private static void setSearchContribution(MApplication app, boolean enabled) {
for (MTrimContribution contribution : app.getTrimContributions()) {
if ("org.eclipse.ui.ide.application.trimcontribution.QuickAccess".contains(contribution //$NON-NLS-1$
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
index f6acb4d73df..bebd0cb973d 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
@@ -34,6 +34,16 @@ public class WorkbenchMessages extends NLS {
public static String ThemingEnabled;
+ public static String HiDpiSettingsGroupTitle;
+
+ public static String RescaleAtRuntimeEnabled;
+
+ public static String RescaleAtRuntimeDisclaimer;
+
+ public static String RescaleAtRuntimeSettingChangeWarningTitle;
+
+ public static String RescaleAtRuntimeSettingChangeWarningText;
+
public static String ThemeChangeWarningText;
public static String ThemeChangeWarningTitle;
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
index 5defbcaa271..cc76a5897fe 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
@@ -37,6 +37,7 @@
import org.eclipse.core.runtime.IExtensionPoint;
import org.eclipse.core.runtime.IExtensionRegistry;
import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Platform.OS;
import org.eclipse.core.runtime.RegistryFactory;
import org.eclipse.core.runtime.preferences.DefaultScope;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
@@ -53,6 +54,7 @@
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.fieldassist.ControlDecoration;
import org.eclipse.jface.fieldassist.FieldDecorationRegistry;
+import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferencePage;
import org.eclipse.jface.util.Util;
@@ -73,6 +75,7 @@
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferenceConstants;
@@ -114,6 +117,7 @@ public class ViewsPreferencePage extends PreferencePage implements IWorkbenchPre
private boolean highContrastMode;
private Button themingEnabled;
+ private Button rescaleAtRuntime;
private Button hideIconsForViewTabs;
private Button showFullTextForViewTabs;
@@ -135,6 +139,7 @@ protected Control createContents(Composite parent) {
layout.horizontalSpacing = 10;
comp.setLayout(layout);
createThemeIndependentComposits(comp);
+ createHiDPISettingsGroup(comp);
return comp;
}
@@ -180,6 +185,8 @@ protected Control createContents(Composite parent) {
createHideIconsForViewTabs(comp);
createDependency(showFullTextForViewTabs, hideIconsForViewTabs);
+ createHiDPISettingsGroup(comp);
+
if (currentTheme != null) {
String colorsAndFontsThemeId = getColorAndFontThemeIdByThemeId(currentTheme.getId());
if (colorsAndFontsThemeId != null && !currentColorsAndFontsTheme.getId().equals(colorsAndFontsThemeId)) {
@@ -192,6 +199,30 @@ protected Control createContents(Composite parent) {
return comp;
}
+ private void createHiDPISettingsGroup(Composite parent) {
+ if (!OS.isWindows()) {
+ return;
+ }
+ createLabel(parent, ""); //$NON-NLS-1$
+ Group group = new Group(parent, SWT.LEFT);
+ group.setText(WorkbenchMessages.HiDpiSettingsGroupTitle);
+
+ GridData gridData = new GridData(SWT.FILL, SWT.CENTER, true, false);
+ gridData.horizontalSpan = ((GridLayout) parent.getLayout()).numColumns;
+ group.setLayoutData(gridData);
+ group.setFont(parent.getFont());
+ GridLayout layout = new GridLayout(1, false);
+ group.setLayout(layout);
+ Label infoLabel = new Label(group, SWT.WRAP);
+ infoLabel.setText(WorkbenchMessages.RescaleAtRuntimeDisclaimer);
+ infoLabel.setLayoutData(GridDataFactory.defaultsFor(infoLabel).create());
+ createLabel(group, ""); //$NON-NLS-1$
+
+ boolean initialStateRescaleAtRuntime = PrefUtil.getAPIPreferenceStore()
+ .getBoolean(IWorkbenchPreferenceConstants.RESCALING_AT_RUNTIME);
+ rescaleAtRuntime = createCheckButton(group, WorkbenchMessages.RescaleAtRuntimeEnabled, initialStateRescaleAtRuntime);
+ }
+
private void createThemeIndependentComposits(Composite comp) {
createUseRoundTabs(comp);
createColoredLabelsPref(comp);
@@ -227,7 +258,6 @@ private void createDependency(Button parent, Button dependent) {
GridData gridData = new GridData();
gridData.horizontalIndent = 20;
dependent.setLayoutData(gridData);
-
boolean parentState = parent.getSelection();
dependent.setEnabled(parentState);
@@ -341,6 +371,14 @@ public boolean performOk() {
.getSelection();
prefs.putBoolean(PartRenderingEngine.ENABLED_THEME_KEY, themingEnabled.getSelection());
+ boolean isRescaleAtRuntimeChanged = false;
+ if (rescaleAtRuntime != null) {
+ boolean initialStateRescaleAtRuntime = PrefUtil.getAPIPreferenceStore()
+ .getBoolean(IWorkbenchPreferenceConstants.RESCALING_AT_RUNTIME);
+ isRescaleAtRuntimeChanged = initialStateRescaleAtRuntime != rescaleAtRuntime.getSelection();
+ apiStore.setValue(IWorkbenchPreferenceConstants.RESCALING_AT_RUNTIME, rescaleAtRuntime.getSelection());
+ }
+
prefs.putBoolean(CTabRendering.USE_ROUND_TABS, useRoundTabs.getSelection());
try {
prefs.flush();
@@ -367,19 +405,22 @@ public boolean performOk() {
colorFontsDecorator.hide();
if (themeChanged || colorsAndFontsThemeChanged) {
- showRestartDialog();
+ showRestartDialog(WorkbenchMessages.ThemeChangeWarningTitle, WorkbenchMessages.ThemeChangeWarningText);
}
}
if (themingEnabledChanged) {
- showRestartDialog();
+ showRestartDialog(WorkbenchMessages.ThemeChangeWarningTitle, WorkbenchMessages.ThemeChangeWarningText);
+ }
+ if (isRescaleAtRuntimeChanged) {
+ showRestartDialog(WorkbenchMessages.RescaleAtRuntimeSettingChangeWarningTitle,
+ WorkbenchMessages.RescaleAtRuntimeSettingChangeWarningText);
}
return super.performOk();
}
- private void showRestartDialog() {
- if (new MessageDialog(null, WorkbenchMessages.ThemeChangeWarningTitle, null,
- WorkbenchMessages.ThemeChangeWarningText, MessageDialog.NONE, 2,
+ private void showRestartDialog(String title, String warningText) {
+ if (new MessageDialog(null, title, null, warningText, MessageDialog.NONE, 2,
WorkbenchMessages.Workbench_RestartButton, WorkbenchMessages.Workbench_DontRestartButton)
.open() == Window.OK) {
Display.getDefault().asyncExec(() -> PlatformUI.getWorkbench().restart());
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index 5b4f163b81c..fb2ad133e2e 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -497,6 +497,11 @@ PreferencePageParameterValues_pageLabelSeparator = \ >\
ThemingEnabled = E&nable theming
ThemeChangeWarningText = Restart for the theme changes to take full effect
ThemeChangeWarningTitle = Theme Changed
+RescaleAtRuntimeSettingChangeWarningTitle = DPI Setting Changed
+RescaleAtRuntimeSettingChangeWarningText = Restart for the DPI setting changes to take effect
+HiDpiSettingsGroupTitle = HiDPI settings
+RescaleAtRuntimeEnabled = Monitor-specific UI &scaling
+RescaleAtRuntimeDisclaimer = EXPERIMENTAL! Activating this option will dynamically scale all windows according to the monitor they are currently in. It will also set the default browser to Edge in order to provide the appropriate scaling of content displayed in a browser. This feature is still in development and therefore considered experimental.
# --- Workbench -----
WorkbenchPreference_openMode=Open mode
WorkbenchPreference_doubleClick=D&ouble click
From 40edabfb35999e8e66dfc8a54ed5dda6b104492e Mon Sep 17 00:00:00 2001
From: "Praveen S.K"
Date: Tue, 27 Aug 2024 10:16:06 +0530
Subject: [PATCH 103/232] Added dynamic tab alignment support in
MultiPageEditorPart
- Added a new preference for multi-page editor tab alignment.
- Added a preference change listener to MultiPageEditorPart.
- Updated tab style based on the user's preference.
---
.../ide/dialogs/IDEEditorsPreferencePage.java | 1 +
.../ui/IWorkbenchPreferenceConstants.java | 15 +++++
.../ui/internal/WorkbenchMessages.java | 1 +
.../dialogs/EditorsPreferencePage.java | 15 +++++
.../eclipse/ui/internal/messages.properties | 3 +-
.../eclipse/ui/part/MultiPageEditorPart.java | 64 ++++++++++++++++++-
6 files changed, 96 insertions(+), 3 deletions(-)
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java
index 3283f29d763..cfa0ff1cb5f 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java
@@ -62,6 +62,7 @@ protected Control createContents(Composite parent) {
createUseIPersistablePref(composite);
createPromptWhenStillOpenPref(composite);
createEditorReuseGroup(composite);
+ createAlignMultiPageEditorTabsOnTop(composite);
applyDialogFont(composite);
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
index 9d182e6443e..3118dfa6f04 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
@@ -624,6 +624,21 @@ public interface IWorkbenchPreferenceConstants {
*/
String DISABLE_OPEN_EDITOR_IN_PLACE = "DISABLE_OPEN_EDITOR_IN_PLACE"; //$NON-NLS-1$
+ /**
+ * Workbench preference id for whether the tabs in the multi-page editor is
+ * displayed on top. Note that tabs will be shown in the top only if this
+ * preference is true.
+ *
+ * Boolean-valued: true show the tabs on the top, and
+ * false if shown at the bottom.
+ *
+ * The default value for this preference is: false
+ *
+ *
+ * @since 3.133
+ */
+ String ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP = "ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP"; //$NON-NLS-1$
+
/**
* Workbench preference id for indicating the size of the list of most recently
* used working sets.
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
index bebd0cb973d..449a51f0778 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
@@ -462,6 +462,7 @@ public class WorkbenchMessages extends NLS {
public static String WorkbenchPreference_stickyCycleButton;
public static String WorkbenchPreference_RunInBackgroundButton;
public static String WorkbenchPreference_RunInBackgroundToolTip;
+ public static String WorkbenchPreference_AlignMultiPageEditorTabsOnTopButton;
// --- Appearance ---
public static String ViewsPreferencePage_Theme;
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
index 9705291e8cb..26a5f2fbc46 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
@@ -74,6 +74,8 @@ public class EditorsPreferencePage extends PreferencePage implements IWorkbenchP
private Button allowInplaceEditor;
+ private Button alignMultiPageEditorTabsOnTop;
+
@Override
protected Control createContents(Composite parent) {
Composite composite = createComposite(parent);
@@ -132,6 +134,15 @@ protected void createPromptWhenStillOpenPref(Composite composite) {
setButtonLayoutData(promptWhenStillOpenEditor);
}
+ protected void createAlignMultiPageEditorTabsOnTop(Composite composite) {
+ alignMultiPageEditorTabsOnTop = new Button(composite, SWT.CHECK);
+ alignMultiPageEditorTabsOnTop
+ .setText(WorkbenchMessages.WorkbenchPreference_AlignMultiPageEditorTabsOnTopButton);
+ alignMultiPageEditorTabsOnTop.setSelection(
+ getAPIPreferenceStore().getBoolean(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP));
+ setButtonLayoutData(alignMultiPageEditorTabsOnTop);
+ }
+
protected Composite createComposite(Composite parent) {
Composite composite = new Composite(parent, SWT.NULL);
GridLayout layout = new GridLayout();
@@ -152,6 +163,8 @@ protected void performDefaults() {
IPreferenceStore store = getPreferenceStore();
allowInplaceEditor.setSelection(
!getAPIPreferenceStore().getDefaultBoolean(IWorkbenchPreferenceConstants.DISABLE_OPEN_EDITOR_IN_PLACE));
+ alignMultiPageEditorTabsOnTop.setSelection(getAPIPreferenceStore()
+ .getDefaultBoolean(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP));
useIPersistableEditor.setSelection(store.getDefaultBoolean(IPreferenceConstants.USE_IPERSISTABLE_EDITORS));
promptWhenStillOpenEditor.setSelection(getAPIPreferenceStore()
.getDefaultBoolean(IWorkbenchPreferenceConstants.PROMPT_WHEN_SAVEABLE_STILL_OPEN));
@@ -165,6 +178,8 @@ protected void performDefaults() {
@Override
public boolean performOk() {
IPreferenceStore store = getPreferenceStore();
+ getAPIPreferenceStore().setValue(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP,
+ alignMultiPageEditorTabsOnTop.getSelection());
getAPIPreferenceStore().setValue(IWorkbenchPreferenceConstants.DISABLE_OPEN_EDITOR_IN_PLACE,
!allowInplaceEditor.getSelection());
store.setValue(IPreferenceConstants.USE_IPERSISTABLE_EDITORS, useIPersistableEditor.getSelection());
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index fb2ad133e2e..d31356d2a43 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -419,6 +419,7 @@ WorkbenchPreference_RunInBackgroundButton=Always r&un in background
WorkbenchPreference_RunInBackgroundToolTip=Run long operations in the background where possible
WorkbenchPreference_HeapStatusButton = Sho&w heap status
WorkbenchPreference_HeapStatusButtonToolTip = Show the heap status area on the bottom of the window
+WorkbenchPreference_AlignMultiPageEditorTabsOnTopButton= &Align multi-page editor tabs on top
# --- Appearance ---
@@ -493,7 +494,7 @@ OpenPerspectiveDialogAction_tooltip=Open Perspective
#---- General Preferences----
PreferencePage_noDescription = (No description available)
-PreferencePageParameterValues_pageLabelSeparator = \ >\
+PreferencePageParameterValues_pageLabelSeparator = \ >\
ThemingEnabled = E&nable theming
ThemeChangeWarningText = Restart for the theme changes to take full effect
ThemeChangeWarningTitle = Theme Changed
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
index 68508e010ae..fe41eee7cf8 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
@@ -17,6 +17,7 @@
import static org.eclipse.swt.events.SelectionListener.widgetSelectedAdapter;
+import java.beans.PropertyChangeListener;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.core.commands.AbstractHandler;
@@ -32,7 +33,9 @@
import org.eclipse.jface.dialogs.IPageChangeProvider;
import org.eclipse.jface.dialogs.IPageChangedListener;
import org.eclipse.jface.dialogs.PageChangedEvent;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.util.PropertyChangeEvent;
import org.eclipse.jface.util.SafeRunnable;
import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.jface.viewers.SelectionChangedEvent;
@@ -56,6 +59,7 @@
import org.eclipse.ui.IPartService;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchPartSite;
+import org.eclipse.ui.IWorkbenchPreferenceConstants;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.internal.PartSite;
@@ -63,6 +67,7 @@
import org.eclipse.ui.internal.misc.Policy;
import org.eclipse.ui.internal.services.INestable;
import org.eclipse.ui.internal.services.IServiceLocatorCreator;
+import org.eclipse.ui.internal.util.PrefUtil;
import org.eclipse.ui.services.IDisposable;
import org.eclipse.ui.services.IServiceLocator;
@@ -149,10 +154,31 @@ public abstract class MultiPageEditorPart extends EditorPart implements IPageCha
private ListenerList pageChangeListeners = new ListenerList<>(ListenerList.IDENTITY);
/**
- * Creates an empty multi-page editor with no pages.
+ * Creates an empty multi-page editor with no pages and registers a
+ * {@link PropertyChangeListener} to listen for changes to the editor's
+ * preference..
*/
protected MultiPageEditorPart() {
super();
+ getAPIPreferenceStore().addPropertyChangeListener(event -> {
+ handlePropertyChange(event);
+ });
+ }
+
+ /**
+ * Handles property change events related to editor preferences.
+ *
+ *
+ * This method is invoked when a property change occurs in the preference store.
+ *
+ *
+ * @param event the {@link PropertyChangeEvent} triggered by a change in the
+ * preference store
+ */
+ private void handlePropertyChange(PropertyChangeEvent event) {
+ if (event.getProperty().equals(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP)) {
+ updateContainer();
+ }
}
/**
@@ -264,7 +290,7 @@ protected CTabFolder createContainer(Composite parent) {
// use SWT.FLAT style so that an extra 1 pixel border is not reserved
// inside the folder
parent.setLayout(new FillLayout());
- final CTabFolder newContainer = new CTabFolder(parent, SWT.BOTTOM | SWT.FLAT);
+ final CTabFolder newContainer = new CTabFolder(parent, getPreferredTabStyle());
newContainer.addSelectionListener(widgetSelectedAdapter(e -> {
int newPageIndex = newContainer.indexOf((CTabItem) e.item);
pageChange(newPageIndex);
@@ -291,6 +317,31 @@ protected CTabFolder createContainer(Composite parent) {
return newContainer;
}
+ /**
+ * Determines the preferred tab style based on user preferences.
+ *
+ * This method retrieves the user preference for aligning multi-page editor tabs
+ * on top or bottom, and returns the corresponding SWT style constant.
+ *
+ *
+ * @return {@code SWT.TOP} if the user prefers tabs to be aligned on top,
+ * {@code SWT.BOTTOM} if the user prefers tabs to be aligned on the
+ * bottom.
+ */
+ private int getPreferredTabStyle() {
+ boolean alignTabsOnTop = getAPIPreferenceStore()
+ .getBoolean(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP);
+ int style = alignTabsOnTop ? SWT.TOP : SWT.BOTTOM;
+ return style;
+ }
+
+ /**
+ * @since 3.133
+ */
+ protected IPreferenceStore getAPIPreferenceStore() {
+ return PrefUtil.getAPIPreferenceStore();
+ }
+
/**
* Creates a tab item at the given index and places the given control in the new
* item. The item is a CTabItem with no style bits set.
@@ -1230,4 +1281,13 @@ public void run() {
});
}
}
+
+ private void updateContainer() {
+ Composite container = getContainer();
+ if (container instanceof CTabFolder tabFolder) {
+ tabFolder.setTabPosition(getPreferredTabStyle());
+ tabFolder.requestLayout();
+ }
+ }
+
}
From 5dc1350eb9796007f404c5af603053d176acb23d Mon Sep 17 00:00:00 2001
From: "Praveen S.K"
Date: Thu, 29 Aug 2024 09:01:27 +0530
Subject: [PATCH 104/232] Incorporated the review comments
- Changed the check box to drop down with Top and Bottom options
- Made the private methods protected
- Converted the preference store value from boolean to int and storing
the SWT value of the selection directly
---
.../ide/dialogs/IDEEditorsPreferencePage.java | 2 +-
.../ui/IWorkbenchPreferenceConstants.java | 13 ++++----
.../ui/internal/WorkbenchMessages.java | 4 ++-
.../WorkbenchPreferenceInitializer.java | 1 +
.../dialogs/EditorsPreferencePage.java | 32 ++++++++++++-------
.../eclipse/ui/internal/messages.properties | 4 ++-
.../eclipse/ui/part/MultiPageEditorPart.java | 32 +++++++++----------
7 files changed, 49 insertions(+), 39 deletions(-)
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java
index cfa0ff1cb5f..13d631e8276 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEEditorsPreferencePage.java
@@ -62,7 +62,7 @@ protected Control createContents(Composite parent) {
createUseIPersistablePref(composite);
createPromptWhenStillOpenPref(composite);
createEditorReuseGroup(composite);
- createAlignMultiPageEditorTabsOnTop(composite);
+ createAlignMultiPageEditorTabs(composite);
applyDialogFont(composite);
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
index 3118dfa6f04..708570610a7 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
@@ -625,19 +625,18 @@ public interface IWorkbenchPreferenceConstants {
String DISABLE_OPEN_EDITOR_IN_PLACE = "DISABLE_OPEN_EDITOR_IN_PLACE"; //$NON-NLS-1$
/**
- * Workbench preference id for whether the tabs in the multi-page editor is
- * displayed on top. Note that tabs will be shown in the top only if this
- * preference is true.
+ * Workbench preference id for the position of the tabs in the multi-page
+ * editor.
*
- * Boolean-valued: true show the tabs on the top, and
- * false if shown at the bottom.
+ * Integer-valued: {@link SWT#TOP} for tabs on the top, and {@link SWT#BOTTOM}
+ * for tabs at the bottom.
*
- * The default value for this preference is: false
+ * The default value for this preference is: {@link SWT#BOTTOM}
*
*
* @since 3.133
*/
- String ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP = "ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP"; //$NON-NLS-1$
+ String ALIGN_MULTI_PAGE_EDITOR_TABS = "ALIGN_MULTI_PAGE_EDITOR_TABS"; //$NON-NLS-1$
/**
* Workbench preference id for indicating the size of the list of most recently
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
index 449a51f0778..ec1e7cc8554 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
@@ -462,7 +462,9 @@ public class WorkbenchMessages extends NLS {
public static String WorkbenchPreference_stickyCycleButton;
public static String WorkbenchPreference_RunInBackgroundButton;
public static String WorkbenchPreference_RunInBackgroundToolTip;
- public static String WorkbenchPreference_AlignMultiPageEditorTabsOnTopButton;
+ public static String WorkbenchPreference_AlignMultiPageEditorTabs;
+ public static String WorkbenchPreference_AlignMultiPageEditorTabs_Top;
+ public static String WorkbenchPreference_AlignMultiPageEditorTabs_Bottom;
// --- Appearance ---
public static String ViewsPreferencePage_Theme;
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java
index 66fff649148..349dc1e744b 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java
@@ -102,6 +102,7 @@ public void initializeDefaultPreferences() {
// Heap status preferences is stored in different node
IEclipsePreferences heapNode = context.getNode("org.eclipse.ui"); //$NON-NLS-1$
heapNode.putBoolean(IWorkbenchPreferenceConstants.SHOW_MEMORY_MONITOR, false);
+ heapNode.putInt(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS, SWT.BOTTOM);
node.putInt(IHeapStatusConstants.PREF_UPDATE_INTERVAL, 500);
node.putBoolean(IHeapStatusConstants.PREF_SHOW_MAX, false);
node.putBoolean(IPreferenceConstants.OVERRIDE_PRESENTATION, false);
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
index 26a5f2fbc46..11807871b86 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
@@ -18,8 +18,10 @@
import static org.eclipse.swt.events.SelectionListener.widgetSelectedAdapter;
+import org.eclipse.jface.action.Action;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.layout.GridLayoutFactory;
+import org.eclipse.jface.preference.ComboFieldEditor;
import org.eclipse.jface.preference.FieldEditor;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.IntegerFieldEditor;
@@ -74,7 +76,7 @@ public class EditorsPreferencePage extends PreferencePage implements IWorkbenchP
private Button allowInplaceEditor;
- private Button alignMultiPageEditorTabsOnTop;
+ private ComboFieldEditor multiPageEditorTabPositionComboField;
@Override
protected Control createContents(Composite parent) {
@@ -134,13 +136,21 @@ protected void createPromptWhenStillOpenPref(Composite composite) {
setButtonLayoutData(promptWhenStillOpenEditor);
}
- protected void createAlignMultiPageEditorTabsOnTop(Composite composite) {
- alignMultiPageEditorTabsOnTop = new Button(composite, SWT.CHECK);
- alignMultiPageEditorTabsOnTop
- .setText(WorkbenchMessages.WorkbenchPreference_AlignMultiPageEditorTabsOnTopButton);
- alignMultiPageEditorTabsOnTop.setSelection(
- getAPIPreferenceStore().getBoolean(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP));
- setButtonLayoutData(alignMultiPageEditorTabsOnTop);
+ protected void createAlignMultiPageEditorTabs(Composite parent) {
+ Composite comboComposite = new Composite(parent, SWT.NONE);
+ comboComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());
+ comboComposite.setLayoutData(GridDataFactory.fillDefaults().create());
+ String name = IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS;
+ String label = WorkbenchMessages.WorkbenchPreference_AlignMultiPageEditorTabs;
+ String[][] namesAndValues = {
+ { Action.removeMnemonics(WorkbenchMessages.WorkbenchPreference_AlignMultiPageEditorTabs_Top),
+ String.valueOf(SWT.TOP) },
+ { Action.removeMnemonics(WorkbenchMessages.WorkbenchPreference_AlignMultiPageEditorTabs_Bottom),
+ String.valueOf(SWT.BOTTOM) } };
+ multiPageEditorTabPositionComboField = new ComboFieldEditor(name, label, namesAndValues, comboComposite);
+ multiPageEditorTabPositionComboField.setPreferenceStore(getAPIPreferenceStore());
+ multiPageEditorTabPositionComboField.setPage(this);
+ multiPageEditorTabPositionComboField.load();
}
protected Composite createComposite(Composite parent) {
@@ -163,8 +173,6 @@ protected void performDefaults() {
IPreferenceStore store = getPreferenceStore();
allowInplaceEditor.setSelection(
!getAPIPreferenceStore().getDefaultBoolean(IWorkbenchPreferenceConstants.DISABLE_OPEN_EDITOR_IN_PLACE));
- alignMultiPageEditorTabsOnTop.setSelection(getAPIPreferenceStore()
- .getDefaultBoolean(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP));
useIPersistableEditor.setSelection(store.getDefaultBoolean(IPreferenceConstants.USE_IPERSISTABLE_EDITORS));
promptWhenStillOpenEditor.setSelection(getAPIPreferenceStore()
.getDefaultBoolean(IWorkbenchPreferenceConstants.PROMPT_WHEN_SAVEABLE_STILL_OPEN));
@@ -173,13 +181,13 @@ protected void performDefaults() {
reuseEditorsThreshold.getLabelControl(editorReuseThresholdGroup).setEnabled(reuseEditors.getSelection());
reuseEditorsThreshold.getTextControl(editorReuseThresholdGroup).setEnabled(reuseEditors.getSelection());
recentFilesEditor.loadDefault();
+ multiPageEditorTabPositionComboField.loadDefault();
}
@Override
public boolean performOk() {
IPreferenceStore store = getPreferenceStore();
- getAPIPreferenceStore().setValue(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP,
- alignMultiPageEditorTabsOnTop.getSelection());
+ multiPageEditorTabPositionComboField.store();
getAPIPreferenceStore().setValue(IWorkbenchPreferenceConstants.DISABLE_OPEN_EDITOR_IN_PLACE,
!allowInplaceEditor.getSelection());
store.setValue(IPreferenceConstants.USE_IPERSISTABLE_EDITORS, useIPersistableEditor.getSelection());
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index d31356d2a43..8e1eeb6fe7e 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -419,7 +419,9 @@ WorkbenchPreference_RunInBackgroundButton=Always r&un in background
WorkbenchPreference_RunInBackgroundToolTip=Run long operations in the background where possible
WorkbenchPreference_HeapStatusButton = Sho&w heap status
WorkbenchPreference_HeapStatusButtonToolTip = Show the heap status area on the bottom of the window
-WorkbenchPreference_AlignMultiPageEditorTabsOnTopButton= &Align multi-page editor tabs on top
+WorkbenchPreference_AlignMultiPageEditorTabs= &Align multi-page editor tabs:
+WorkbenchPreference_AlignMultiPageEditorTabs_Top= &Top
+WorkbenchPreference_AlignMultiPageEditorTabs_Bottom= &Bottom
# --- Appearance ---
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
index fe41eee7cf8..0b1783bcf56 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
@@ -161,24 +161,24 @@ public abstract class MultiPageEditorPart extends EditorPart implements IPageCha
protected MultiPageEditorPart() {
super();
getAPIPreferenceStore().addPropertyChangeListener(event -> {
- handlePropertyChange(event);
+ if (isUpdateRequired(event)) {
+ updateContainer();
+ }
});
}
/**
- * Handles property change events related to editor preferences.
- *
- *
- * This method is invoked when a property change occurs in the preference store.
- *
+ * Determines whether an update is required based on a property change event.
*
* @param event the {@link PropertyChangeEvent} triggered by a change in the
* preference store
+ * @since 3.133
*/
- private void handlePropertyChange(PropertyChangeEvent event) {
- if (event.getProperty().equals(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP)) {
- updateContainer();
+ protected boolean isUpdateRequired(PropertyChangeEvent event) {
+ if (event.getProperty().equals(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS)) {
+ return true;
}
+ return false;
}
/**
@@ -290,7 +290,7 @@ protected CTabFolder createContainer(Composite parent) {
// use SWT.FLAT style so that an extra 1 pixel border is not reserved
// inside the folder
parent.setLayout(new FillLayout());
- final CTabFolder newContainer = new CTabFolder(parent, getPreferredTabStyle());
+ final CTabFolder newContainer = new CTabFolder(parent, getTabStyle() | SWT.FLAT);
newContainer.addSelectionListener(widgetSelectedAdapter(e -> {
int newPageIndex = newContainer.indexOf((CTabItem) e.item);
pageChange(newPageIndex);
@@ -318,7 +318,7 @@ protected CTabFolder createContainer(Composite parent) {
}
/**
- * Determines the preferred tab style based on user preferences.
+ * Determines the tab style based on user preferences.
*
* This method retrieves the user preference for aligning multi-page editor tabs
* on top or bottom, and returns the corresponding SWT style constant.
@@ -327,12 +327,10 @@ protected CTabFolder createContainer(Composite parent) {
* @return {@code SWT.TOP} if the user prefers tabs to be aligned on top,
* {@code SWT.BOTTOM} if the user prefers tabs to be aligned on the
* bottom.
+ * @since 3.133
*/
- private int getPreferredTabStyle() {
- boolean alignTabsOnTop = getAPIPreferenceStore()
- .getBoolean(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS_ON_TOP);
- int style = alignTabsOnTop ? SWT.TOP : SWT.BOTTOM;
- return style;
+ protected int getTabStyle() {
+ return getAPIPreferenceStore().getInt(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS);
}
/**
@@ -1285,7 +1283,7 @@ public void run() {
private void updateContainer() {
Composite container = getContainer();
if (container instanceof CTabFolder tabFolder) {
- tabFolder.setTabPosition(getPreferredTabStyle());
+ tabFolder.setTabPosition(getTabStyle());
tabFolder.requestLayout();
}
}
From 9308f4a943a615101091920786769a87a99962bd Mon Sep 17 00:00:00 2001
From: "Praveen S.K"
Date: Thu, 29 Aug 2024 09:08:16 +0530
Subject: [PATCH 105/232] Changed the updateContainer method to protected
---
.../org/eclipse/ui/part/MultiPageEditorPart.java | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
index 0b1783bcf56..c08023634cd 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
@@ -1280,7 +1280,17 @@ public void run() {
}
}
- private void updateContainer() {
+ /**
+ * Updates the tab position of the container in the multi-page editor.
+ *
+ *
+ * This method retrieves the current container and sets the tab position based
+ * on the user preference.
+ *
+ *
+ * @since 3.133
+ */
+ protected void updateContainer() {
Composite container = getContainer();
if (container instanceof CTabFolder tabFolder) {
tabFolder.setTabPosition(getTabStyle());
From 1170414b9878f72b78728810220336ce01776227 Mon Sep 17 00:00:00 2001
From: Andreas Koch
Date: Thu, 31 Oct 2024 15:41:38 +0100
Subject: [PATCH 106/232] Refresh LineNumberRulerColumn on ZoomChange of canvas
This commit adds a listener for the ZoomChanged event to the canvas of a LineNumberRulerColumn. If the listener is notified of this event this means, that state, that differs over different zoom values, must be recalculated. Therefore the indentation are reset, when the event occurs.
Contributes to eclipse-platform/eclipse.platform.swt#62 and eclipse-platform/eclipse.platform.swt#131
---
.../org/eclipse/jface/text/source/LineNumberRulerColumn.java | 2 ++
1 file changed, 2 insertions(+)
diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberRulerColumn.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberRulerColumn.java
index 6bf9a3ca6d0..7eff2aee8f0 100644
--- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberRulerColumn.java
+++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberRulerColumn.java
@@ -616,6 +616,8 @@ public void addMouseListener(MouseListener listener) {
fCachedTextWidget= null;
});
+ fCanvas.addListener(SWT.ZoomChanged, e -> computeIndentations());
+
fMouseHandler= new MouseHandler();
fCanvas.addMouseListener(fMouseHandler);
fCanvas.addMouseMoveListener(fMouseHandler);
From 117649fd8ee7636b8aff57552bdfd65c7f358d27 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Wed, 30 Oct 2024 18:06:55 +0100
Subject: [PATCH 107/232] Place Edge browser userdata directory in metadata
space of workspace
The userdata directory for the Edge browser is currently placed as an
immediate child of the workspace directory (if existing), thus mixing up
with actual projects in the workspace. With this change, the directory
is placed in the metadata folder of the SWT bundle within the workspace.
---
.../Eclipse UI/org/eclipse/ui/internal/Workbench.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
index 5cb4c5cac77..af01dacada6 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
@@ -147,6 +147,7 @@
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
import org.eclipse.swt.SWTException;
+import org.eclipse.swt.browser.Browser;
import org.eclipse.swt.custom.BusyIndicator;
import org.eclipse.swt.graphics.DeviceData;
import org.eclipse.swt.graphics.FontData;
@@ -525,9 +526,10 @@ private static void setEdgeDataDirectory(Display display) {
return;
}
try {
- URI workspaceLocationURI = workspaceLocation.getURL().toURI();
- display.setData(EDGE_USER_DATA_FOLDER, Paths.get(workspaceLocationURI).toString());
- } catch (URISyntaxException e) {
+ URI swtMetadataLocationURI = workspaceLocation
+ .getDataArea(FrameworkUtil.getBundle(Browser.class).getSymbolicName()).toURI();
+ display.setData(EDGE_USER_DATA_FOLDER, Paths.get(swtMetadataLocationURI).toString());
+ } catch (URISyntaxException | IOException e) {
WorkbenchPlugin.log("Invalid workspace location to be set for Edge browser.", e); //$NON-NLS-1$
}
}
From 462666ba1cc7ee98335ec5825929a168210da71b Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Fri, 1 Nov 2024 20:02:35 +0100
Subject: [PATCH 108/232] Fix missing NLS for "Enable theming" #2480
The NLS for "Enable theming" is not found because of a recent change to
the according messages.properties file. This change reverts the faulty
change.
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2480
---
.../Eclipse UI/org/eclipse/ui/internal/messages.properties | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index 8e1eeb6fe7e..08c857e04ff 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -496,7 +496,7 @@ OpenPerspectiveDialogAction_tooltip=Open Perspective
#---- General Preferences----
PreferencePage_noDescription = (No description available)
-PreferencePageParameterValues_pageLabelSeparator = \ >\
+PreferencePageParameterValues_pageLabelSeparator = \ >\
ThemingEnabled = E&nable theming
ThemeChangeWarningText = Restart for the theme changes to take full effect
ThemeChangeWarningTitle = Theme Changed
From eacd0b4e8b0226f6d4eab3bdd2c05758d4859688 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Fri, 1 Nov 2024 19:27:48 +0100
Subject: [PATCH 109/232] FindReplaceOverlay: avoid inconsistent borders #2194
When the replace toggle in the FindReplaceOverlay is not shown because
the target file is read-only or because the editor is too small to show
the toggle button, the right border of the overlay is larger than the
others. The reason is an inconsistent layout, as the container always
expects two columns of elements but when the replace toggle is hidden
only one column is present.
With this change, the number of columns of the container is adapted
according to whether the replace toggle is present or not.
Fixed https://github.com/eclipse-platform/eclipse.platform.ui/issues/2194
---
.../findandreplace/overlay/FindReplaceOverlay.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 4472e94a6ec..9b02ac7a3c6 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -33,6 +33,7 @@
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
@@ -695,9 +696,10 @@ private void enableReplaceToggle(boolean enable) {
if (!okayToUse(replaceToggle)) {
return;
}
- boolean visible = enable && findReplaceLogic.getTarget().isEditable();
- ((GridData) replaceToggleTools.getLayoutData()).exclude = !visible;
- replaceToggleTools.setVisible(visible);
+ boolean shouldBeVisible = enable && findReplaceLogic.getTarget().isEditable();
+ ((GridLayout) containerControl.getLayout()).numColumns = shouldBeVisible ? 2 : 1;
+ ((GridData) replaceToggleTools.getLayoutData()).exclude = !shouldBeVisible;
+ replaceToggleTools.setVisible(shouldBeVisible);
}
private void enableReplaceTools(boolean enable) {
From c1c681ada78722481d2b01a0790bf87f966975e4 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Fri, 1 Nov 2024 19:39:51 +0100
Subject: [PATCH 110/232] FindReplaceOverlay: update position and size while
not visible #2478
When changing position and/or size of the editor of a FindReplaceOverlay
while it is hidden, e.g., because another editor in the same editor
stack is active, the position and size of the overlay is not updated
accordingly. Thus, when making the editor of that overlay active again,
its position relative to the editor and size is still the same as before
another editor was set active, i.e., it is usually wrong.
With this change, the size and position of an overlay is always updated
upon resize operations of the target editor, even if the editor is not
visible.
Fixes https://github.com/eclipse-platform/eclipse.platform.ui/issues/2478
---
.../ui/internal/findandreplace/overlay/FindReplaceOverlay.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
index 9b02ac7a3c6..9586c243543 100644
--- a/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
+++ b/bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/findandreplace/overlay/FindReplaceOverlay.java
@@ -204,7 +204,7 @@ private void performSelectAll() {
.controlResizedAdapter(__ -> asyncExecIfOpen(FindReplaceOverlay.this::updatePlacementAndVisibility));
private void asyncExecIfOpen(Runnable operation) {
- if (!containerControl.isDisposed() && containerControl.isVisible()) {
+ if (!containerControl.isDisposed()) {
containerControl.getDisplay().asyncExec(() -> {
if (containerControl != null || containerControl.isDisposed()) {
operation.run();
From 56115fc753f579d596b46d3ea6f873c25ec7a211 Mon Sep 17 00:00:00 2001
From: Heiko Klare
Date: Fri, 1 Nov 2024 18:01:11 +0100
Subject: [PATCH 111/232] Correct bundle version after changes in
MultiPageEditorPart
Recent API changes to MultiPageEditorPart and
IWorkbenchPreferenceConstants have been introduced after 3.133 has
already been released. Thus, the micro version bump made since then is
insufficient. This change corrects the version but and the according
since tags to 3.134.
---
.../org/eclipse/ui/IWorkbenchPreferenceConstants.java | 4 ++--
.../org/eclipse/ui/part/MultiPageEditorPart.java | 8 ++++----
bundles/org.eclipse.ui.workbench/META-INF/MANIFEST.MF | 2 +-
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
index 708570610a7..7e7d6ad2f02 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
@@ -634,7 +634,7 @@ public interface IWorkbenchPreferenceConstants {
* The default value for this preference is: {@link SWT#BOTTOM}
*
*
- * @since 3.133
+ * @since 3.134
*/
String ALIGN_MULTI_PAGE_EDITOR_TABS = "ALIGN_MULTI_PAGE_EDITOR_TABS"; //$NON-NLS-1$
@@ -726,7 +726,7 @@ public interface IWorkbenchPreferenceConstants {
* runtime. It only effects Windows.
*
*
- * @since 3.133
+ * @since 3.134
*/
String RESCALING_AT_RUNTIME = "RESCALING_AT_RUNTIME"; //$NON-NLS-1$
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
index c08023634cd..c95a1e2cf97 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
@@ -172,7 +172,7 @@ protected MultiPageEditorPart() {
*
* @param event the {@link PropertyChangeEvent} triggered by a change in the
* preference store
- * @since 3.133
+ * @since 3.134
*/
protected boolean isUpdateRequired(PropertyChangeEvent event) {
if (event.getProperty().equals(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS)) {
@@ -327,14 +327,14 @@ protected CTabFolder createContainer(Composite parent) {
* @return {@code SWT.TOP} if the user prefers tabs to be aligned on top,
* {@code SWT.BOTTOM} if the user prefers tabs to be aligned on the
* bottom.
- * @since 3.133
+ * @since 3.134
*/
protected int getTabStyle() {
return getAPIPreferenceStore().getInt(IWorkbenchPreferenceConstants.ALIGN_MULTI_PAGE_EDITOR_TABS);
}
/**
- * @since 3.133
+ * @since 3.134
*/
protected IPreferenceStore getAPIPreferenceStore() {
return PrefUtil.getAPIPreferenceStore();
@@ -1288,7 +1288,7 @@ public void run() {
* on the user preference.
*
*
- * @since 3.133
+ * @since 3.134
*/
protected void updateContainer() {
Composite container = getContainer();
diff --git a/bundles/org.eclipse.ui.workbench/META-INF/MANIFEST.MF b/bundles/org.eclipse.ui.workbench/META-INF/MANIFEST.MF
index 261f4fe712f..36729f7f926 100644
--- a/bundles/org.eclipse.ui.workbench/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.ui.workbench/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.ui.workbench; singleton:=true
-Bundle-Version: 3.133.100.qualifier
+Bundle-Version: 3.134.0.qualifier
Bundle-Activator: org.eclipse.ui.internal.WorkbenchPlugin
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
From 9474c952a23a2c898ba25fd8a09d498434bca0af Mon Sep 17 00:00:00 2001
From: Christopher Hermann
Date: Mon, 14 Oct 2024 13:00:16 +0200
Subject: [PATCH 112/232] [StickyScrolling] Move text and style calculation to
StickyLine
Move the text and style calculation to the StickyLine itself in order to
enable the sticky line provider to overwrite the default behavior. This
is needed to apply custom texts or custom styles for the sticky lines.
Preparation for #2398
---
.../DefaultStickyLinesProvider.java | 6 +-
.../texteditor/stickyscroll/IStickyLine.java | 44 ++++++++++
.../stickyscroll/IStickyLinesProvider.java | 2 +-
.../texteditor/stickyscroll/StickyLine.java | 48 +++++++++--
.../stickyscroll/StickyScrollingControl.java | 56 +++++-------
.../stickyscroll/StickyScrollingHandler.java | 8 +-
.../DefaultStickyLinesProviderTest.java | 43 ++++++----
.../stickyscroll/StickyLineTest.java | 86 +++++++++++++++++++
.../StickyScrollingControlTest.java | 74 ++++++++++++----
.../StickyScrollingHandlerTest.java | 51 ++++++++---
10 files changed, 325 insertions(+), 93 deletions(-)
create mode 100644 bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLine.java
create mode 100644 tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLineTest.java
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java
index c4281899d1e..bf53911a148 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProvider.java
@@ -33,9 +33,9 @@ public class DefaultStickyLinesProvider implements IStickyLinesProvider {
private StickyLinesProperties fProperties;
@Override
- public List getStickyLines(StyledText textWidget, int lineNumber, StickyLinesProperties properties) {
+ public List getStickyLines(StyledText textWidget, int lineNumber, StickyLinesProperties properties) {
this.fProperties= properties;
- LinkedList stickyLines= new LinkedList<>();
+ LinkedList stickyLines= new LinkedList<>();
try {
int startIndetation= getStartIndentation(lineNumber, textWidget);
@@ -50,7 +50,7 @@ public List getStickyLines(StyledText textWidget, int lineNumber, St
if (indentation < previousIndetation) {
previousIndetation= indentation;
- stickyLines.addFirst(new StickyLine(line, i));
+ stickyLines.addFirst(new StickyLine(i, textWidget));
}
}
} catch (IllegalArgumentException e) {
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLine.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLine.java
new file mode 100644
index 00000000000..33e54dc9cc6
--- /dev/null
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLine.java
@@ -0,0 +1,44 @@
+/*******************************************************************************
+ * Copyright (c) 2024 SAP SE.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * SAP SE - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.ui.internal.texteditor.stickyscroll;
+
+import org.eclipse.swt.custom.StyleRange;
+
+/**
+ * Representation of a sticky line.
+ */
+public interface IStickyLine {
+
+ /**
+ * Returns the line number of the sticky line.
+ *
+ * @return the line number of the sticky line
+ */
+ int getLineNumber();
+
+ /**
+ * Returns the text of the sticky line.
+ *
+ * @return the text of the sticky line
+ */
+ String getText();
+
+ /**
+ * Returns the style ranges of the sticky line.
+ *
+ * @return the style ranges of the sticky line
+ */
+ StyleRange[] getStyleRanges();
+
+}
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java
index 522f16cbe4f..06dc804ef31 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/IStickyLinesProvider.java
@@ -37,7 +37,7 @@ public interface IStickyLinesProvider {
* @param properties Properties for additional information
* @return The list of sticky lines to show
*/
- public List getStickyLines(StyledText textWidget, int lineNumber, StickyLinesProperties properties);
+ public List getStickyLines(StyledText textWidget, int lineNumber, StickyLinesProperties properties);
/**
* Additional properties and access in order to calculate the sticky lines.
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLine.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLine.java
index 8dfb1441133..e54b0149a79 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLine.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLine.java
@@ -13,13 +13,47 @@
*******************************************************************************/
package org.eclipse.ui.internal.texteditor.stickyscroll;
+import org.eclipse.swt.custom.StyleRange;
+import org.eclipse.swt.custom.StyledText;
+
/**
- *
- * A record representing a sticky line containing the text to display, and line number. It serves as
- * an abstraction to represent sticky line for sticky scrolling.
- *
- * @param text the text of the corresponding sticky line
- * @param lineNumber the specific line number of the sticky line
+ * Default implementation of {@link IStickyLine}. Information about the text and style ranges are
+ * calculated from the given text widget.
*/
-public record StickyLine(String text, int lineNumber) {
+public class StickyLine implements IStickyLine {
+
+ private int lineNumber;
+
+ private String text;
+
+ private StyledText textWidget;
+
+ public StickyLine(int lineNumber, StyledText textWidget) {
+ this.lineNumber= lineNumber;
+ this.textWidget= textWidget;
+ }
+
+ @Override
+ public int getLineNumber() {
+ return this.lineNumber;
+ }
+
+ @Override
+ public String getText() {
+ if (text == null) {
+ text= textWidget.getLine(lineNumber);
+ }
+ return text;
+ }
+
+ @Override
+ public StyleRange[] getStyleRanges() {
+ int offsetAtLine= textWidget.getOffsetAtLine(lineNumber);
+ StyleRange[] styleRanges= textWidget.getStyleRanges(offsetAtLine, getText().length());
+ for (StyleRange styleRange : styleRanges) {
+ styleRange.start= styleRange.start - offsetAtLine;
+ }
+ return styleRanges;
+ }
+
}
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
index 51179e8c130..f4927a3fe28 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
@@ -14,8 +14,6 @@
package org.eclipse.ui.internal.texteditor.stickyscroll;
import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.StringJoiner;
@@ -65,7 +63,7 @@
/**
* This class builds a control that is rendered on top of the given source viewer. The controls
* shows the sticky lines that are set via {@link #setStickyLines(List)} on top of the source
- * viewer. The {@link StickyLine#lineNumber()} is linked to to corresponding line number in the
+ * viewer. The {@link StickyLine#getLineNumber()} is linked to to corresponding line number in the
* given source viewer, with index starting at 0.
*
* As part of its responsibilities, the class handles layout arrangement and styling of the sticky
@@ -87,7 +85,7 @@ public class StickyScrollingControl {
private static final String DISABLE_CSS= "org.eclipse.e4.ui.css.disabled"; //$NON-NLS-1$
- private List stickyLines;
+ private List stickyLines;
private ISourceViewer sourceViewer;
@@ -135,7 +133,7 @@ public StickyScrollingControl(ISourceViewer sourceViewer, IVerticalRuler vertica
*
* @param stickyLines The sticky lines to show
*/
- public void setStickyLines(List stickyLines) {
+ public void setStickyLines(List stickyLines) {
if (!stickyLines.equals(this.stickyLines)) {
this.stickyLines= stickyLines;
updateStickyScrollingControls();
@@ -206,9 +204,9 @@ private void updateStickyScrollingControls() {
StringJoiner stickyLineTextJoiner= new StringJoiner(System.lineSeparator());
StringJoiner stickyLineNumberJoiner= new StringJoiner(System.lineSeparator());
for (int i= 0; i < getNumberStickyLines(); i++) {
- StickyLine stickyLine= stickyLines.get(i);
- stickyLineTextJoiner.add(stickyLine.text());
- int lineNumber= getSourceViewerLineNumber(stickyLine.lineNumber());
+ IStickyLine stickyLine= stickyLines.get(i);
+ stickyLineTextJoiner.add(stickyLine.getText());
+ int lineNumber= getSourceViewerLineNumber(stickyLine.getLineNumber());
stickyLineNumberJoiner.add(fillLineNumberWithLeadingSpaces(lineNumber + 1));
}
@@ -244,14 +242,20 @@ private void styleStickyLines() {
return;
}
- List stickyLinesStyleRanges= new ArrayList<>();
- int stickyLineTextOffset= 0;
- for (int i= 0; i < getNumberStickyLines(); i++) {
- StickyLine stickyLine= stickyLines.get(i);
- stickyLinesStyleRanges.addAll(getStickyLineStyleRanges(stickyLine, stickyLineTextOffset));
- stickyLineTextOffset+= stickyLine.text().length() + System.lineSeparator().length();
+ int stickyLineOffset= 0;
+ List styleRanges= new ArrayList<>();
+ for (IStickyLine stickyLine : stickyLines) {
+ StyleRange[] ranges= stickyLine.getStyleRanges();
+ if (ranges != null) {
+ for (StyleRange styleRange : ranges) {
+ styleRange.start+= stickyLineOffset;
+ styleRanges.add(styleRange);
+ }
+ }
+
+ stickyLineOffset+= stickyLine.getText().length() + System.lineSeparator().length();
}
- stickyLineText.setStyleRanges(stickyLinesStyleRanges.toArray(StyleRange[]::new));
+ stickyLineText.setStyleRanges(styleRanges.toArray(StyleRange[]::new));
stickyLineNumber.setFont(textWidget.getFont());
stickyLineNumber.setStyleRange(new StyleRange(0, stickyLineNumber.getText().length(), settings.lineNumberColor(), null));
@@ -263,22 +267,6 @@ private void styleStickyLines() {
stickyLineText.setLeftMargin(textWidget.getLeftMargin());
}
- private List getStickyLineStyleRanges(StickyLine stickyLine, int stickyLineTextOffset) {
- int lineNumber= stickyLine.lineNumber();
- try {
- StyledText textWidget= sourceViewer.getTextWidget();
- int offsetAtLine= textWidget.getOffsetAtLine(lineNumber);
- StyleRange[] styleRanges= textWidget.getStyleRanges(offsetAtLine, stickyLine.text().length());
- for (StyleRange styleRange : styleRanges) {
- styleRange.start= styleRange.start - offsetAtLine + stickyLineTextOffset;
- }
- return Arrays.asList(styleRanges);
- } catch (IllegalArgumentException e) {
- //Styling could not be copied, skip!
- return Collections.emptyList();
- }
- }
-
private void layoutStickyLines() {
if (getNumberStickyLines() == 0) {
stickyLinesCanvas.setVisible(false);
@@ -365,12 +353,12 @@ private void calculateAndSetStickyLinesCanvasBounds() {
private void navigateToClickedLine(MouseEvent event) {
int clickedStickyLineIndex= stickyLineText.getLineIndex(event.y);
- StickyLine clickedStickyLine= stickyLines.get(clickedStickyLineIndex);
+ IStickyLine clickedStickyLine= stickyLines.get(clickedStickyLineIndex);
try {
- int offset= sourceViewer.getDocument().getLineOffset(clickedStickyLine.lineNumber());
+ int offset= sourceViewer.getDocument().getLineOffset(clickedStickyLine.getLineNumber());
sourceViewer.setSelectedRange(offset, 0);
- ensureSourceViewerLineVisible(clickedStickyLine.lineNumber());
+ ensureSourceViewerLineVisible(clickedStickyLine.getLineNumber());
} catch (BadLocationException e) {
//Do not navigate
}
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java
index df2ea6bee66..596fdec59ea 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandler.java
@@ -153,7 +153,7 @@ public void viewportChanged(int newVerticalOffset) {
}
private void calculateAndShowStickyLines() {
- List stickyLines= Collections.emptyList();
+ List stickyLines= Collections.emptyList();
StyledText textWidget= sourceViewer.getTextWidget();
int startLine= textWidget.getTopIndex();
@@ -171,19 +171,19 @@ private void calculateAndShowStickyLines() {
stickyScrollingControl.setStickyLines(stickyLines);
}
- private List adaptStickyLinesToVisibleArea(List stickyLines, int startLine) {
+ private List adaptStickyLinesToVisibleArea(List stickyLines, int startLine) {
if (stickyLines.isEmpty()) {
return stickyLines;
}
- LinkedList adaptedStickyLines= new LinkedList<>(stickyLines);
+ LinkedList adaptedStickyLines= new LinkedList<>(stickyLines);
int firstVisibleLine= startLine + adaptedStickyLines.size();
StyledText textWidget= sourceViewer.getTextWidget();
int maximumLines= textWidget.getLineCount();
for (int i= startLine + 1; i <= firstVisibleLine && i < maximumLines; i++) {
- List stickyLinesInLineI= stickyLinesProvider.getStickyLines(textWidget, i, stickyLinesProperties);
+ List stickyLinesInLineI= stickyLinesProvider.getStickyLines(textWidget, i, stickyLinesProperties);
if (stickyLinesInLineI.size() > adaptedStickyLines.size()) {
adaptedStickyLines= new LinkedList<>(stickyLinesInLineI);
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java
index afd782d5f91..44b980e27cc 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/DefaultStickyLinesProviderTest.java
@@ -16,7 +16,7 @@
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.empty;
import static org.hamcrest.Matchers.is;
-import static org.hamcrest.collection.IsIterableContainingInOrder.contains;
+import static org.junit.Assert.assertEquals;
import java.util.List;
@@ -51,7 +51,7 @@ public void setup() {
@Test
public void testEmptySourceCode() {
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 0, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 0, stickyLinesProperties);
assertThat(stickyLines, is(empty()));
}
@@ -63,9 +63,10 @@ public void testSingleStickyLine() {
line 2<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 1, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 1, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0)));
+ assertEquals(1, stickyLines.size());
+ assertEquals(0, stickyLines.get(0).getLineNumber());
}
@Test
@@ -77,9 +78,10 @@ public void testLineUnderStickyLine() {
line 4""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 1, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 1, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0)));
+ assertEquals(1, stickyLines.size());
+ assertEquals(0, stickyLines.get(0).getLineNumber());
}
@Test
@@ -91,9 +93,10 @@ public void testNewStickyRoot() {
line 4<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 3", 2)));
+ assertEquals(1, stickyLines.size());
+ assertEquals(2, stickyLines.get(0).getLineNumber());
}
@Test
@@ -106,9 +109,11 @@ public void testIgnoreEmptyLines() {
line 3<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 4, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 4, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2", 2)));
+ assertEquals(2, stickyLines.size());
+ assertEquals(0, stickyLines.get(0).getLineNumber());
+ assertEquals(2, stickyLines.get(1).getLineNumber());
}
@Test
@@ -120,9 +125,11 @@ public void testLinesWithTabs() {
\t\tline 3<""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 2, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 2, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine("\tline 2", 1)));
+ assertEquals(2, stickyLines.size());
+ assertEquals(0, stickyLines.get(0).getLineNumber());
+ assertEquals(1, stickyLines.get(1).getLineNumber());
}
@Test
@@ -136,9 +143,11 @@ public void testStartAtEmptyLineWithNext() {
textWidget.setText(text);
textWidget.setTopIndex(3);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2", 2)));
+ assertEquals(2, stickyLines.size());
+ assertEquals(0, stickyLines.get(0).getLineNumber());
+ assertEquals(2, stickyLines.get(1).getLineNumber());
}
@Test
@@ -151,9 +160,11 @@ public void testStartAtEmptyLineWithPrevious() {
line 4""";
setText(text);
- List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
+ List stickyLines = stickyLinesProvider.getStickyLines(textWidget, 3, stickyLinesProperties);
- assertThat(stickyLines, contains(new StickyLine("line 1", 0), new StickyLine(" line 2", 1)));
+ assertEquals(2, stickyLines.size());
+ assertEquals(0, stickyLines.get(0).getLineNumber());
+ assertEquals(1, stickyLines.get(1).getLineNumber());
}
/**
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLineTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLineTest.java
new file mode 100644
index 00000000000..483796a0dba
--- /dev/null
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyLineTest.java
@@ -0,0 +1,86 @@
+/*******************************************************************************
+ * Copyright (c) 2024 SAP SE.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * SAP SE - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.ui.internal.texteditor.stickyscroll;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.StyleRange;
+import org.eclipse.swt.custom.StyledText;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.widgets.Shell;
+
+public class StickyLineTest {
+
+ private Shell shell;
+ private StyledText textWidget;
+ private Color color;
+
+ @Before
+ public void setUp() {
+ shell = new Shell();
+ textWidget = new StyledText(shell, SWT.NONE);
+ color = new Color(0, 0, 0);
+ }
+
+ @After
+ public void tearDown() {
+ shell.dispose();
+ color.dispose();
+ }
+
+ @Test
+ public void testGetLineNumber() {
+ StickyLine stickyLine = new StickyLine(1, textWidget);
+
+ assertEquals(1, stickyLine.getLineNumber());
+ }
+
+ @Test
+ public void testGetText() {
+ textWidget.setText("line1\nline2\nline3");
+ StickyLine stickyLine = new StickyLine(1, textWidget);
+
+ assertEquals("line2", stickyLine.getText());
+ }
+
+ @Test
+ public void testGetStyleRanges() {
+ textWidget.setText("line1\nline2\nline3");
+
+ // line1
+ textWidget.setStyleRange(new StyleRange(2, 1, color, null));
+
+ // line2
+ textWidget.setStyleRange(new StyleRange(6, 1, color, null));
+ textWidget.setStyleRange(new StyleRange(8, 2, color, null));
+
+ // line3
+ textWidget.setStyleRange(new StyleRange(15, 1, color, null));
+
+ StickyLine stickyLine = new StickyLine(1, textWidget);
+ StyleRange[] styleRanges = stickyLine.getStyleRanges();
+
+ assertEquals(2, styleRanges.length);
+ assertEquals(0, styleRanges[0].start);
+ assertEquals(1, styleRanges[0].length);
+ assertEquals(2, styleRanges[1].start);
+ assertEquals(2, styleRanges[1].length);
+ }
+
+}
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
index 2d0999e6b4d..ce8664daf8f 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
@@ -90,7 +90,7 @@ public void teardown() {
@Test
public void testShowStickyLineTexts() {
- List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
+ List stickyLines = List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -114,7 +114,7 @@ public void testShowStickyLineTextsWithSourceViewerMapping() {
stickyScrollingControl = new StickyScrollingControl(sourceViewer, ruler, settings, null);
- List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
+ List stickyLines = List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -127,7 +127,7 @@ public void testShowStickyLineTextsWithSourceViewerMapping() {
@Test
public void testCorrectColorsApplied() {
- List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
+ List stickyLines = List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -143,7 +143,7 @@ public void testCorrectColorsApplied() {
@Test
public void testLimitStickyLinesCount() {
- List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
+ List stickyLines = List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19));
stickyScrollingControl.setStickyLines(stickyLines);
settings = new StickyScrollingControlSettings(1, lineNumberColor, hoverColor, backgroundColor, separatorColor,
@@ -160,15 +160,26 @@ public void testLimitStickyLinesCount() {
@Test
public void testCopyStyleRanges() {
- sourceViewer.setInput(new Document("line 1"));
- sourceViewer.getTextWidget().setStyleRange(new StyleRange(0, 6, lineNumberColor, backgroundColor));
-
- List stickyLines = List.of(new StickyLine("line 1", 0));
+ StyleRange styleRangeLine1 = new StyleRange(0, 1, lineNumberColor, backgroundColor);
+ StyleRange styleRangeLine2 = new StyleRange(0, 2, hoverColor, separatorColor);
+ List stickyLines = List.of(//
+ new StickyLineStub("line 1", 0, new StyleRange[] { styleRangeLine1 }),
+ new StickyLineStub("line 2", 0, new StyleRange[] { styleRangeLine2 }));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineText = getStickyLineText();
- assertEquals(lineNumberColor, stickyLineText.getStyleRangeAtOffset(0).foreground);
- assertEquals(backgroundColor, stickyLineText.getStyleRangeAtOffset(0).background);
+
+ StyleRange[] styleRanges = stickyLineText.getStyleRanges();
+ assertEquals(2, styleRanges.length);
+ assertEquals(0, styleRanges[0].start);
+ assertEquals(1, styleRanges[0].length);
+ assertEquals(lineNumberColor, styleRanges[0].foreground);
+ assertEquals(backgroundColor, styleRanges[0].background);
+ int startRangeLine2 = stickyLines.get(0).getText().length() + System.lineSeparator().length();
+ assertEquals(startRangeLine2, styleRanges[1].start);
+ assertEquals(2, styleRanges[1].length);
+ assertEquals(hoverColor, styleRanges[1].foreground);
+ assertEquals(separatorColor, styleRanges[1].background);
}
@Test
@@ -185,7 +196,7 @@ public void testWithoutVerticalRuler() {
@Test
public void testWithoutLineNumber() {
when(ruler.getWidth()).thenReturn(20);
- List stickyLines = List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19));
+ List stickyLines = List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -206,7 +217,7 @@ public void testStyling() {
sourceViewer.getTextWidget().setFont(font);
sourceViewer.getTextWidget().setForeground(hoverColor);
- List stickyLines = List.of(new StickyLine("line 1", 0));
+ List stickyLines = List.of(new StickyLineStub("line 1", 0));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineNumber = getStickyLineNumber();
@@ -223,7 +234,7 @@ public void testStyling() {
public void testLayoutStickyLinesCanvasOnResize() {
sourceViewer.getTextWidget().setBounds(0, 0, 200, 200);
- List stickyLines = List.of(new StickyLine("line 1", 0));
+ List stickyLines = List.of(new StickyLineStub("line 1", 0));
stickyScrollingControl.setStickyLines(stickyLines);
Canvas stickyControlCanvas = getStickyControlCanvas(shell);
@@ -252,7 +263,7 @@ public void testNavigateToStickyLine() {
sourceViewer.setInput(new Document(text));
sourceViewer.getTextWidget().setBounds(0, 0, 200, 200);
- List stickyLines = List.of(new StickyLine("line 2", 1));
+ List stickyLines = List.of(new StickyLineStub("line 2", 1));
stickyScrollingControl.setStickyLines(stickyLines);
Canvas stickyControlCanvas = getStickyControlCanvas(shell);
@@ -300,9 +311,9 @@ public void testHorizontalScrollingIsDispatched() {
}
@Test
- public void limitStickyLinesToTextWidgetHeight() {
+ public void testLimitStickyLinesToTextWidgetHeight() {
sourceViewer.getTextWidget().setBounds(0, 0, 200, 200);
- List stickyLines = List.of(new StickyLine("line 2", 1));
+ List stickyLines = List.of(new StickyLineStub("line 2", 1));
stickyScrollingControl.setStickyLines(stickyLines);
StyledText stickyLineText = getStickyLineText();
@@ -469,4 +480,35 @@ public int widgetLine2ModelLine(int widgetLine) {
}
+ private class StickyLineStub implements IStickyLine {
+
+ private final String text;
+ private final int lineNumber;
+ private StyleRange[] styleRanges;
+
+ public StickyLineStub(String text, int lineNumber) {
+ this(text, lineNumber, null);
+ }
+
+ public StickyLineStub(String text, int lineNumber, StyleRange[] styleRanges) {
+ this.text = text;
+ this.lineNumber = lineNumber;
+ this.styleRanges = styleRanges;
+ }
+
+ @Override
+ public int getLineNumber() {
+ return lineNumber;
+ }
+
+ @Override
+ public String getText() {
+ return text;
+ }
+
+ @Override
+ public StyleRange[] getStyleRanges() {
+ return styleRanges;
+ }
+ }
}
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
index 2b84f4a86d9..6798ec1b1e7 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingHandlerTest.java
@@ -37,6 +37,7 @@
import org.junit.Test;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.StyleRange;
import org.eclipse.swt.custom.StyledText;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.widgets.Canvas;
@@ -97,7 +98,7 @@ public void teardown() {
@Test
public void testShowStickyLines() {
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9)));
stickyScrollingHandler.viewportChanged(100);
@@ -134,7 +135,7 @@ public void testUnistallStickyLines() {
@Test
public void testPreferencesLoaded() {
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9)));
stickyScrollingHandler.viewportChanged(100);
@@ -145,9 +146,9 @@ public void testPreferencesLoaded() {
@Test
public void testPreferencesUpdated() {
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19)));
when(linesProvider.getStickyLines(textWidget, 2, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9), new StickyLine("line 20", 19)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9), new StickyLineStub("line 20", 19)));
stickyScrollingHandler.viewportChanged(100);
@@ -165,13 +166,13 @@ public void testPreferencesUpdated() {
@Test
public void testThrottledExecution() throws InterruptedException {
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9)));
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9)));
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9)));
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 10", 9)));
+ .thenReturn(List.of(new StickyLineStub("line 10", 9)));
stickyScrollingHandler.viewportChanged(100);
Thread.sleep(10);
@@ -192,9 +193,9 @@ public void testThrottledExecution() throws InterruptedException {
@Test
public void testRemoveStickyLines() {
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 1", 0), new StickyLine("line 2", 1)));
+ .thenReturn(List.of(new StickyLineStub("line 1", 0), new StickyLineStub("line 2", 1)));
when(linesProvider.getStickyLines(textWidget, 2, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 3", 2)));
+ .thenReturn(List.of(new StickyLineStub("line 3", 2)));
stickyScrollingHandler.viewportChanged(100);
@@ -206,9 +207,9 @@ public void testRemoveStickyLines() {
@Test
public void testLineUnderStickyLine() {
when(linesProvider.getStickyLines(textWidget, 1, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 1", 0)));
+ .thenReturn(List.of(new StickyLineStub("line 1", 0)));
when(linesProvider.getStickyLines(textWidget, 2, stickyLinesProperties))
- .thenReturn(List.of(new StickyLine("line 1", 0), new StickyLine("line 2", 1)));
+ .thenReturn(List.of(new StickyLineStub("line 1", 0), new StickyLineStub("line 2", 1)));
stickyScrollingHandler.viewportChanged(100);
@@ -269,4 +270,30 @@ private String colorToString(Color color) {
return joiner.toString();
}
+ private class StickyLineStub implements IStickyLine {
+
+ private final String text;
+ private final int lineNumber;
+
+ public StickyLineStub(String text, int lineNumber) {
+ this.text = text;
+ this.lineNumber = lineNumber;
+ }
+
+ @Override
+ public int getLineNumber() {
+ return lineNumber;
+ }
+
+ @Override
+ public String getText() {
+ return text;
+ }
+
+ @Override
+ public StyleRange[] getStyleRanges() {
+ return null;
+ }
+ }
+
}
From 136afb43a529ad3a969db742b46b8ba25a89d226 Mon Sep 17 00:00:00 2001
From: Lars Vogel
Date: Tue, 5 Nov 2024 10:55:33 +0100
Subject: [PATCH 113/232] Adding the missing Notification snippets to the wiki
Since a while we have three notification snippets but only on the
documentation page.
---
docs/JFaceSnippets.md | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/docs/JFaceSnippets.md b/docs/JFaceSnippets.md
index f557f878ccc..e2ad06964a6 100644
--- a/docs/JFaceSnippets.md
+++ b/docs/JFaceSnippets.md
@@ -21,6 +21,8 @@ Contents
* [1.2 Snippet082 - Color Selector](#Snippet082---Color-Selector)
* [2 Notification](#Notification)
* [2.1 Snippet081 - Notification API](#Snippet081---Notification-API)
+ * [2.2 Snippet002 - Notification Popup with Functions](#Snippet002---Notification-Popup-with-Functions)
+ * [2.3 Snippet004 - Notification Popup with Custom Delay and Fade](#Snippet004---Notification-Popup-with-Custom-Delay-and-Fade)
* [3 Layout](#Layout)
* [3.1 Snippet013 - Grid Layout Factory](#Snippet013---Grid-Layout-Factory)
* [3.2 Snippet016 - Table Layout](#Snippet016---Table-Layout)
@@ -127,6 +129,18 @@ Demonstrates usage of the non-blocking notification API

+### [Snippet002 - Notification Popup with Functions](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java)
+
+* [Snippet002 - Notification Popup with Functions](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java)
+
+Demonstrates the creation of notification popups that include function callbacks for user interactions.
+
+### [Snippet004 - Notification Popup with Custom Delay and Fade](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java)
+
+* [Snippet004 - Notification Popup with Custom Delay and Fade](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java)
+
+Shows how to create notification popups with custom delay and fade effects for enhanced visual feedback.
+
Layout
------
From 3fd04b37ae77c98f049de04f89117d116a78e4b1 Mon Sep 17 00:00:00 2001
From: Christopher Hermann
Date: Tue, 5 Nov 2024 15:53:29 +0100
Subject: [PATCH 114/232] Fix IllegalArgumentException when styling the sticky
lines
When the sticky lines are limited by the settings, the not visible sticky lines should not be styled.
Fixes #2496
---
.../stickyscroll/StickyScrollingControl.java | 16 ++++++-------
.../StickyScrollingControlTest.java | 23 +++++++++++++++++++
2 files changed, 31 insertions(+), 8 deletions(-)
diff --git a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
index f4927a3fe28..0e02cbd4980 100644
--- a/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
+++ b/bundles/org.eclipse.ui.editors/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControl.java
@@ -242,20 +242,20 @@ private void styleStickyLines() {
return;
}
- int stickyLineOffset= 0;
- List styleRanges= new ArrayList<>();
- for (IStickyLine stickyLine : stickyLines) {
+ List stickyLinesStyleRanges= new ArrayList<>();
+ int stickyLineTextOffset= 0;
+ for (int i= 0; i < getNumberStickyLines(); i++) {
+ IStickyLine stickyLine= stickyLines.get(i);
StyleRange[] ranges= stickyLine.getStyleRanges();
if (ranges != null) {
for (StyleRange styleRange : ranges) {
- styleRange.start+= stickyLineOffset;
- styleRanges.add(styleRange);
+ styleRange.start+= stickyLineTextOffset;
+ stickyLinesStyleRanges.add(styleRange);
}
}
-
- stickyLineOffset+= stickyLine.getText().length() + System.lineSeparator().length();
+ stickyLineTextOffset+= stickyLine.getText().length() + System.lineSeparator().length();
}
- stickyLineText.setStyleRanges(styleRanges.toArray(StyleRange[]::new));
+ stickyLineText.setStyleRanges(stickyLinesStyleRanges.toArray(StyleRange[]::new));
stickyLineNumber.setFont(textWidget.getFont());
stickyLineNumber.setStyleRange(new StyleRange(0, stickyLineNumber.getText().length(), settings.lineNumberColor(), null));
diff --git a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
index ce8664daf8f..d9442aa9ec5 100644
--- a/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
+++ b/tests/org.eclipse.ui.editors.tests/src/org/eclipse/ui/internal/texteditor/stickyscroll/StickyScrollingControlTest.java
@@ -182,6 +182,29 @@ public void testCopyStyleRanges() {
assertEquals(separatorColor, styleRanges[1].background);
}
+ @Test
+ public void testCopyStyleRangesWithLimitedStickyLines() {
+ settings = new StickyScrollingControlSettings(1, lineNumberColor, hoverColor, backgroundColor, separatorColor,
+ true);
+ stickyScrollingControl.applySettings(settings);
+
+ StyleRange styleRangeLine1 = new StyleRange(0, 1, lineNumberColor, backgroundColor);
+ StyleRange styleRangeLine2 = new StyleRange(0, 2, hoverColor, separatorColor);
+ List stickyLines = List.of(//
+ new StickyLineStub("line 1", 0, new StyleRange[] { styleRangeLine1 }),
+ new StickyLineStub("line 2", 0, new StyleRange[] { styleRangeLine2 }));
+ stickyScrollingControl.setStickyLines(stickyLines);
+
+ StyledText stickyLineText = getStickyLineText();
+
+ StyleRange[] styleRanges = stickyLineText.getStyleRanges();
+ assertEquals(1, styleRanges.length);
+ assertEquals(0, styleRanges[0].start);
+ assertEquals(1, styleRanges[0].length);
+ assertEquals(lineNumberColor, styleRanges[0].foreground);
+ assertEquals(backgroundColor, styleRanges[0].background);
+ }
+
@Test
public void testWithoutVerticalRuler() {
sourceViewer = new SourceViewer(shell, null, SWT.None);
From 560db2a3dc6d75956ec328c4f6d810982a7253ed Mon Sep 17 00:00:00 2001
From: Lars Vogel
Date: Tue, 5 Nov 2024 11:04:01 +0100
Subject: [PATCH 115/232] Adjust notification snippets to follow version schema
to snippets
The JFace snippets have increasing numbers, the notificaiton api
examples should follow the same schema.
---
docs/JFaceSnippets.md | 12 ++++++------
...=> Snippet083NotificationPopupWithFunctions.java} | 2 +-
...t084NotificationPopupWithCustomDelayAndFade.java} | 2 +-
3 files changed, 8 insertions(+), 8 deletions(-)
rename examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/{Snippet002NotificationPopupWithFunctions.java => Snippet083NotificationPopupWithFunctions.java} (94%)
rename examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/{Snippet004NotificationPopupWithCustomDelayAndFade.java => Snippet084NotificationPopupWithCustomDelayAndFade.java} (89%)
diff --git a/docs/JFaceSnippets.md b/docs/JFaceSnippets.md
index e2ad06964a6..47e965b386d 100644
--- a/docs/JFaceSnippets.md
+++ b/docs/JFaceSnippets.md
@@ -21,8 +21,8 @@ Contents
* [1.2 Snippet082 - Color Selector](#Snippet082---Color-Selector)
* [2 Notification](#Notification)
* [2.1 Snippet081 - Notification API](#Snippet081---Notification-API)
- * [2.2 Snippet002 - Notification Popup with Functions](#Snippet002---Notification-Popup-with-Functions)
- * [2.3 Snippet004 - Notification Popup with Custom Delay and Fade](#Snippet004---Notification-Popup-with-Custom-Delay-and-Fade)
+ * [2.2 Snippet083 - Notification Popup with Functions](#Snippet083---Notification-Popup-with-Functions)
+ * [2.3 Snippet084 - Notification Popup with Custom Delay and Fade](#Snippet084---Notification-Popup-with-Custom-Delay-and-Fade)
* [3 Layout](#Layout)
* [3.1 Snippet013 - Grid Layout Factory](#Snippet013---Grid-Layout-Factory)
* [3.2 Snippet016 - Table Layout](#Snippet016---Table-Layout)
@@ -129,15 +129,15 @@ Demonstrates usage of the non-blocking notification API

-### [Snippet002 - Notification Popup with Functions](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java)
+### [Snippet083 - Notification Popup with Functions](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet083NotificationPopupWithFunctions.java)
-* [Snippet002 - Notification Popup with Functions](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java)
+* [Snippet083 - Notification Popup with Functions](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet083NotificationPopupWithFunctions.java)
Demonstrates the creation of notification popups that include function callbacks for user interactions.
-### [Snippet004 - Notification Popup with Custom Delay and Fade](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java)
+### [Snippet084 - Notification Popup with Custom Delay and Fade](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet084NotificationPopupWithCustomDelayAndFade.java)
-* [Snippet004 - Notification Popup with Custom Delay and Fade](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java)
+* [Snippet084 - Notification Popup with Custom Delay and Fade](https://github.com/eclipse-platform/eclipse.platform.ui/blob/master/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/notifications/Snippet084NotificationPopupWithCustomDelayAndFade.java)
Shows how to create notification popups with custom delay and fade effects for enhanced visual feedback.
diff --git a/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java b/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet083NotificationPopupWithFunctions.java
similarity index 94%
rename from examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java
rename to examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet083NotificationPopupWithFunctions.java
index 256848ff6da..df8535ced2f 100644
--- a/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet002NotificationPopupWithFunctions.java
+++ b/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet083NotificationPopupWithFunctions.java
@@ -10,7 +10,7 @@
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
-public class Snippet002NotificationPopupWithFunctions {
+public class Snippet083NotificationPopupWithFunctions {
public static void main(String[] args) {
Display display = new Display();
diff --git a/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java b/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet084NotificationPopupWithCustomDelayAndFade.java
similarity index 89%
rename from examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java
rename to examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet084NotificationPopupWithCustomDelayAndFade.java
index 75d2e621a5d..3db81ad6d37 100644
--- a/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet004NotificationPopupWithCustomDelayAndFade.java
+++ b/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/notifications/Snippet084NotificationPopupWithCustomDelayAndFade.java
@@ -4,7 +4,7 @@
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
-public class Snippet004NotificationPopupWithCustomDelayAndFade {
+public class Snippet084NotificationPopupWithCustomDelayAndFade {
public static void main(String[] args) {
Display display = new Display();
From 745385a64d99bfcf8c2a72139c72ee1829599ef2 Mon Sep 17 00:00:00 2001
From: Elsa Zacharia
Date: Wed, 16 Oct 2024 18:21:21 +0530
Subject: [PATCH 116/232] Changing the name from "Eclipse UI" to "eclipseui" to
avoid space in path names
---
bundles/org.eclipse.ui.workbench/.classpath | 4 ++--
bundles/org.eclipse.ui.workbench/build.properties | 4 ++--
.../addons/perspectiveswitcher/PerspectiveSwitcher.java | 0
.../org/eclipse/ui/AbstractSourceProvider.java | 0
.../org/eclipse/ui/ActiveShellExpression.java | 0
.../org/eclipse/ui/BasicWorkingSetElementAdapter.java | 0
.../org/eclipse/ui/ExtensionFactory.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IActionBars.java | 0
.../org/eclipse/ui/IActionBars2.java | 0
.../org/eclipse/ui/IActionDelegate.java | 0
.../org/eclipse/ui/IActionDelegate2.java | 0
.../org/eclipse/ui/IActionDelegateWithEvent.java | 0
.../org/eclipse/ui/IActionFilter.java | 0
.../org/eclipse/ui/IAggregateWorkingSet.java | 0
.../org/eclipse/ui/IContainmentAdapter.java | 0
.../org/eclipse/ui/IDecoratorManager.java | 0
.../org/eclipse/ui/IEditorActionBarContributor.java | 0
.../org/eclipse/ui/IEditorActionDelegate.java | 0
.../org/eclipse/ui/IEditorDescriptor.java | 0
.../org/eclipse/ui/IEditorInput.java | 0
.../org/eclipse/ui/IEditorLauncher.java | 0
.../org/eclipse/ui/IEditorMatchingStrategy.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorPart.java | 0
.../org/eclipse/ui/IEditorReference.java | 0
.../org/eclipse/ui/IEditorRegistry.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorSite.java | 0
.../org/eclipse/ui/IElementFactory.java | 0
.../org/eclipse/ui/IExportWizard.java | 0
.../org/eclipse/ui/IFileEditorMapping.java | 0
.../org/eclipse/ui/IFolderLayout.java | 0
.../org/eclipse/ui/IImportWizard.java | 0
.../org/eclipse/ui/IInPlaceEditor.java | 0
.../org/eclipse/ui/IInPlaceEditorInput.java | 0
.../org/eclipse/ui/IKeyBindingService.java | 0
.../org/eclipse/ui/ILocalWorkingSetManager.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IMemento.java | 0
.../org/eclipse/ui/INavigationHistory.java | 0
.../org/eclipse/ui/INavigationLocation.java | 0
.../org/eclipse/ui/INavigationLocationProvider.java | 0
.../org/eclipse/ui/INestableKeyBindingService.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/INewWizard.java | 0
.../org/eclipse/ui/INullSelectionListener.java | 0
.../org/eclipse/ui/IObjectActionDelegate.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IPageLayout.java | 0
.../org/eclipse/ui/IPageListener.java | 0
.../org/eclipse/ui/IPageService.java | 0
.../org/eclipse/ui/IPartListener.java | 0
.../org/eclipse/ui/IPartListener2.java | 0
.../org/eclipse/ui/IPartService.java | 0
.../org/eclipse/ui/IPathEditorInput.java | 0
.../org/eclipse/ui/IPersistable.java | 0
.../org/eclipse/ui/IPersistableEditor.java | 0
.../org/eclipse/ui/IPersistableElement.java | 0
.../org/eclipse/ui/IPerspectiveDescriptor.java | 0
.../org/eclipse/ui/IPerspectiveFactory.java | 0
.../org/eclipse/ui/IPerspectiveListener.java | 0
.../org/eclipse/ui/IPerspectiveListener2.java | 0
.../org/eclipse/ui/IPerspectiveListener3.java | 0
.../org/eclipse/ui/IPerspectiveListener4.java | 0
.../org/eclipse/ui/IPerspectiveRegistry.java | 0
.../org/eclipse/ui/IPlaceholderFolderLayout.java | 0
.../org/eclipse/ui/IPluginContribution.java | 0
.../org/eclipse/ui/IPropertyListener.java | 0
.../org/eclipse/ui/IReusableEditor.java | 0
.../org/eclipse/ui/ISaveableFilter.java | 0
.../org/eclipse/ui/ISaveablePart.java | 0
.../org/eclipse/ui/ISaveablePart2.java | 0
.../org/eclipse/ui/ISaveablesLifecycleListener.java | 0
.../org/eclipse/ui/ISaveablesSource.java | 0
.../org/eclipse/ui/ISecondarySaveableSource.java | 0
.../org/eclipse/ui/ISelectionListener.java | 0
.../org/eclipse/ui/ISelectionService.java | 0
.../org/eclipse/ui/ISharedImages.java | 0
.../org/eclipse/ui/IShowEditorInput.java | 0
.../org/eclipse/ui/ISizeProvider.java | 0
.../org/eclipse/ui/ISourceProvider.java | 0
.../org/eclipse/ui/ISourceProviderListener.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/ISources.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IStartup.java | 0
.../org/eclipse/ui/IViewActionDelegate.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IViewLayout.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IViewPart.java | 0
.../org/eclipse/ui/IViewReference.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IViewSite.java | 0
.../org/eclipse/ui/IWindowListener.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbench.java | 0
.../org/eclipse/ui/IWorkbenchActionConstants.java | 0
.../org/eclipse/ui/IWorkbenchCommandConstants.java | 0
.../org/eclipse/ui/IWorkbenchListener.java | 0
.../org/eclipse/ui/IWorkbenchPage.java | 0
.../org/eclipse/ui/IWorkbenchPart.java | 0
.../org/eclipse/ui/IWorkbenchPart2.java | 0
.../org/eclipse/ui/IWorkbenchPart3.java | 0
.../org/eclipse/ui/IWorkbenchPartConstants.java | 0
.../org/eclipse/ui/IWorkbenchPartDescriptor.java | 0
.../org/eclipse/ui/IWorkbenchPartReference.java | 0
.../org/eclipse/ui/IWorkbenchPartSite.java | 0
.../org/eclipse/ui/IWorkbenchPreferenceConstants.java | 0
.../org/eclipse/ui/IWorkbenchPreferencePage.java | 0
.../org/eclipse/ui/IWorkbenchPropertyPage.java | 0
.../org/eclipse/ui/IWorkbenchPropertyPageMulti.java | 0
.../org/eclipse/ui/IWorkbenchSite.java | 0
.../org/eclipse/ui/IWorkbenchWindow.java | 0
.../org/eclipse/ui/IWorkbenchWindowActionDelegate.java | 0
.../org/eclipse/ui/IWorkbenchWindowPulldownDelegate.java | 0
.../org/eclipse/ui/IWorkbenchWindowPulldownDelegate2.java | 0
.../org/eclipse/ui/IWorkbenchWizard.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkingSet.java | 0
.../org/eclipse/ui/IWorkingSetElementAdapter.java | 0
.../org/eclipse/ui/IWorkingSetManager.java | 0
.../org/eclipse/ui/IWorkingSetUpdater.java | 0
.../org/eclipse/ui/IWorkingSetUpdater2.java | 0
.../org/eclipse/ui/LegacyHandlerSubmissionExpression.java | 0
.../org/eclipse/ui/MultiPartInitException.java | 0
.../org/eclipse/ui/NavigationLocation.java | 0
.../org/eclipse/ui/OpenAndLinkWithEditorHelper.java | 0
.../org/eclipse/ui/PartInitException.java | 0
.../org/eclipse/ui/PerspectiveAdapter.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/PlatformUI.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/Saveable.java | 0
.../org/eclipse/ui/SaveablesLifecycleEvent.java | 0
.../org/eclipse/ui/SelectionEnabler.java | 0
.../org/eclipse/ui/SelectionListenerFactory.java | 0
.../org/eclipse/ui/SubActionBars.java | 0
.../org/eclipse/ui/SubActionBars2.java | 0
.../org/eclipse/ui/WorkbenchEncoding.java | 0
.../org/eclipse/ui/WorkbenchException.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/XMLMemento.java | 0
.../org/eclipse/ui/about/IInstallationPageContainer.java | 0
.../org/eclipse/ui/about/ISystemSummarySection.java | 0
.../org/eclipse/ui/about/InstallationPage.java | 0
.../org/eclipse/ui/about/package.html | 0
.../org/eclipse/ui/actions/ActionContext.java | 0
.../org/eclipse/ui/actions/ActionDelegate.java | 0
.../org/eclipse/ui/actions/ActionFactory.java | 0
.../org/eclipse/ui/actions/ActionGroup.java | 0
.../org/eclipse/ui/actions/BaseNewWizardMenu.java | 0
.../org/eclipse/ui/actions/BaseSelectionListenerAction.java | 0
.../org/eclipse/ui/actions/CommandNotMappedException.java | 0
.../org/eclipse/ui/actions/CompoundContributionItem.java | 0
.../org/eclipse/ui/actions/ContributedAction.java | 0
.../org/eclipse/ui/actions/ContributionItemFactory.java | 0
.../org/eclipse/ui/actions/ExportResourcesAction.java | 0
.../org/eclipse/ui/actions/ImportResourcesAction.java | 0
.../org/eclipse/ui/actions/LabelRetargetAction.java | 0
.../org/eclipse/ui/actions/NewWizardAction.java | 0
.../org/eclipse/ui/actions/NewWizardDropDownAction.java | 0
.../org/eclipse/ui/actions/OpenInNewWindowAction.java | 0
.../org/eclipse/ui/actions/OpenNewPageMenu.java | 0
.../org/eclipse/ui/actions/OpenNewWindowMenu.java | 0
.../org/eclipse/ui/actions/OpenPerspectiveAction.java | 0
.../org/eclipse/ui/actions/OpenPerspectiveMenu.java | 0
.../org/eclipse/ui/actions/PartEventAction.java | 0
.../org/eclipse/ui/actions/PerspectiveMenu.java | 0
.../org/eclipse/ui/actions/QuickMenuCreator.java | 0
.../org/eclipse/ui/actions/RetargetAction.java | 0
.../org/eclipse/ui/actions/SelectionProviderAction.java | 0
.../org/eclipse/ui/actions/SimpleWildcardTester.java | 0
.../org/eclipse/ui/actions/WorkingSetFilterActionGroup.java | 0
.../org/eclipse/ui/actions/package.html | 0
.../org/eclipse/ui/activities/ActivitiesPreferencePage.java | 0
.../eclipse/ui/activities/ActivityCategoryPreferencePage.java | 0
.../org/eclipse/ui/activities/ActivityEvent.java | 0
.../org/eclipse/ui/activities/ActivityManagerEvent.java | 0
.../org/eclipse/ui/activities/CategoryEvent.java | 0
.../org/eclipse/ui/activities/IActivity.java | 0
.../org/eclipse/ui/activities/IActivityListener.java | 0
.../org/eclipse/ui/activities/IActivityManager.java | 0
.../org/eclipse/ui/activities/IActivityManagerListener.java | 0
.../org/eclipse/ui/activities/IActivityPatternBinding.java | 0
.../eclipse/ui/activities/IActivityRequirementBinding.java | 0
.../org/eclipse/ui/activities/ICategory.java | 0
.../org/eclipse/ui/activities/ICategoryActivityBinding.java | 0
.../org/eclipse/ui/activities/ICategoryListener.java | 0
.../org/eclipse/ui/activities/IIdentifier.java | 0
.../org/eclipse/ui/activities/IIdentifierListener.java | 0
.../org/eclipse/ui/activities/IMutableActivityManager.java | 0
.../org/eclipse/ui/activities/ITriggerPoint.java | 0
.../org/eclipse/ui/activities/ITriggerPointAdvisor.java | 0
.../org/eclipse/ui/activities/ITriggerPointManager.java | 0
.../org/eclipse/ui/activities/IWorkbenchActivitySupport.java | 0
.../org/eclipse/ui/activities/IdentifierEvent.java | 0
.../org/eclipse/ui/activities/NotDefinedException.java | 0
.../org/eclipse/ui/activities/WorkbenchActivityHelper.java | 0
.../eclipse/ui/activities/WorkbenchTriggerPointAdvisor.java | 0
.../org/eclipse/ui/activities/package.html | 0
.../org/eclipse/ui/application/ActionBarAdvisor.java | 0
.../org/eclipse/ui/application/DisplayAccess.java | 0
.../org/eclipse/ui/application/IActionBarConfigurer.java | 0
.../org/eclipse/ui/application/IWorkbenchConfigurer.java | 0
.../eclipse/ui/application/IWorkbenchWindowConfigurer.java | 0
.../org/eclipse/ui/application/WorkbenchAdvisor.java | 0
.../org/eclipse/ui/application/WorkbenchWindowAdvisor.java | 0
.../org/eclipse/ui/application/package.html | 0
.../org/eclipse/ui/branding/IBundleGroupConstants.java | 0
.../org/eclipse/ui/branding/IProductConstants.java | 0
.../org/eclipse/ui/branding/package.html | 0
.../org/eclipse/ui/browser/AbstractWebBrowser.java | 0
.../eclipse/ui/browser/AbstractWorkbenchBrowserSupport.java | 0
.../org/eclipse/ui/browser/IWebBrowser.java | 0
.../org/eclipse/ui/browser/IWorkbenchBrowserSupport.java | 0
.../org/eclipse/ui/browser/package.html | 0
.../org/eclipse/ui/commands/ExtensionParameterValues.java | 0
.../org/eclipse/ui/commands/ICommandImageService.java | 0
.../org/eclipse/ui/commands/ICommandService.java | 0
.../org/eclipse/ui/commands/IElementReference.java | 0
.../org/eclipse/ui/commands/IElementUpdater.java | 0
.../org/eclipse/ui/commands/package.html | 0
.../org/eclipse/ui/contexts/ContextEvent.java | 0
.../org/eclipse/ui/contexts/ContextException.java | 0
.../org/eclipse/ui/contexts/ContextManagerEvent.java | 0
.../org/eclipse/ui/contexts/EnabledSubmission.java | 0
.../org/eclipse/ui/contexts/IContext.java | 0
.../org/eclipse/ui/contexts/IContextActivation.java | 0
.../org/eclipse/ui/contexts/IContextListener.java | 0
.../org/eclipse/ui/contexts/IContextManager.java | 0
.../org/eclipse/ui/contexts/IContextManagerListener.java | 0
.../org/eclipse/ui/contexts/IContextService.java | 0
.../org/eclipse/ui/contexts/IWorkbenchContextSupport.java | 0
.../org/eclipse/ui/contexts/NotDefinedException.java | 0
.../org/eclipse/ui/contexts/package.html | 0
.../org/eclipse/ui/databinding/typed/WorkbenchProperties.java | 0
.../ui/dialogs/AbstractElementListSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/CheckedTreeSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/ContainerCheckedTreeViewer.java | 0
.../org/eclipse/ui/dialogs/EditorSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/ElementListSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/ElementTreeSelectionDialog.java | 0
.../eclipse/ui/dialogs/FileEditorMappingContentProvider.java | 0
.../eclipse/ui/dialogs/FileEditorMappingLabelProvider.java | 0
.../org/eclipse/ui/dialogs/FileSystemElement.java | 0
.../org/eclipse/ui/dialogs/FilteredItemsSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/FilteredList.java | 0
.../org/eclipse/ui/dialogs/FilteredTree.java | 0
.../org/eclipse/ui/dialogs/IOverwriteQuery.java | 0
.../org/eclipse/ui/dialogs/ISelectionStatusValidator.java | 0
.../org/eclipse/ui/dialogs/ISelectionValidator.java | 0
.../org/eclipse/ui/dialogs/IStyledStringHighlighter.java | 0
.../org/eclipse/ui/dialogs/IWorkingSetEditWizard.java | 0
.../org/eclipse/ui/dialogs/IWorkingSetNewWizard.java | 0
.../org/eclipse/ui/dialogs/IWorkingSetPage.java | 0
.../org/eclipse/ui/dialogs/IWorkingSetSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/ListDialog.java | 0
.../org/eclipse/ui/dialogs/ListSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/PatternFilter.java | 0
.../org/eclipse/ui/dialogs/PreferenceLinkArea.java | 0
.../org/eclipse/ui/dialogs/PreferencesUtil.java | 0
.../org/eclipse/ui/dialogs/PropertyDialogAction.java | 0
.../org/eclipse/ui/dialogs/PropertyPage.java | 0
.../org/eclipse/ui/dialogs/SearchPattern.java | 0
.../org/eclipse/ui/dialogs/SelectionDialog.java | 0
.../org/eclipse/ui/dialogs/SelectionStatusDialog.java | 0
.../org/eclipse/ui/dialogs/StyledStringHighlighter.java | 0
.../org/eclipse/ui/dialogs/TwoArrayQuickSorter.java | 0
.../org/eclipse/ui/dialogs/TwoPaneElementSelector.java | 0
.../org/eclipse/ui/dialogs/TypeFilteringDialog.java | 0
.../org/eclipse/ui/dialogs/WorkingSetConfigurationBlock.java | 0
.../org/eclipse/ui/dialogs/WorkingSetGroup.java | 0
.../eclipse/ui/dialogs/YesNoCancelListSelectionDialog.java | 0
.../org/eclipse/ui/dialogs/package.html | 0
.../org/eclipse/ui/dnd/IDragAndDropService.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/dnd/package.html | 0
.../eclipse/ui/fieldassist/ContentAssistCommandAdapter.java | 0
.../org/eclipse/ui/fieldassist/ContentAssistField.java | 0
.../org/eclipse/ui/fieldassist/package.html | 0
.../org/eclipse/ui/handlers/CollapseAllHandler.java | 0
.../org/eclipse/ui/handlers/ExpandAllHandler.java | 0
.../org/eclipse/ui/handlers/HandlerUtil.java | 0
.../org/eclipse/ui/handlers/IHandlerActivation.java | 0
.../org/eclipse/ui/handlers/IHandlerService.java | 0
.../org/eclipse/ui/handlers/RadioState.java | 0
.../org/eclipse/ui/handlers/RegistryRadioState.java | 0
.../org/eclipse/ui/handlers/RegistryToggleState.java | 0
.../org/eclipse/ui/handlers/ShowPerspectiveHandler.java | 0
.../org/eclipse/ui/handlers/ShowViewHandler.java | 0
.../org/eclipse/ui/handlers/package.html | 0
.../org/eclipse/ui/help/AbstractHelpUI.java | 0
.../org/eclipse/ui/help/IWorkbenchHelpSystem.java | 0
.../org/eclipse/ui/help/package.html | 0
.../org/eclipse/ui/internal/AbstractEnabledHandler.java | 0
.../org/eclipse/ui/internal/AbstractEvaluationHandler.java | 0
.../org/eclipse/ui/internal/AbstractWorkingSet.java | 0
.../org/eclipse/ui/internal/AbstractWorkingSetManager.java | 0
.../org/eclipse/ui/internal/ActionDescriptor.java | 0
.../org/eclipse/ui/internal/ActionExpression.java | 0
.../org/eclipse/ui/internal/ActionPresentation.java | 0
.../org/eclipse/ui/internal/ActionSetActionBars.java | 0
.../org/eclipse/ui/internal/ActionSetContributionItem.java | 0
.../org/eclipse/ui/internal/ActionSetManager.java | 0
.../org/eclipse/ui/internal/ActionSetMenuManager.java | 0
.../org/eclipse/ui/internal/ActionSetSeparator.java | 0
.../org/eclipse/ui/internal/ActionSetsEvent.java | 0
.../org/eclipse/ui/internal/ActivateEditorHandler.java | 0
.../org/eclipse/ui/internal/ActivityPersistanceHelper.java | 0
.../org/eclipse/ui/internal/AggregateWorkingSet.java | 0
.../org/eclipse/ui/internal/BindingToModelProcessor.java | 0
.../org/eclipse/ui/internal/BrandingProperties.java | 0
.../org/eclipse/ui/internal/BundleGroupProperties.java | 0
.../org/eclipse/ui/internal/ChangeToPerspectiveMenu.java | 0
.../org/eclipse/ui/internal/CloseAllHandler.java | 0
.../org/eclipse/ui/internal/CloseAllSavedAction.java | 0
.../org/eclipse/ui/internal/CloseEditorHandler.java | 0
.../org/eclipse/ui/internal/CloseOthersHandler.java | 0
.../org/eclipse/ui/internal/CommandToModelProcessor.java | 0
.../org/eclipse/ui/internal/ConfigurationInfo.java | 0
.../org/eclipse/ui/internal/ContextToModelProcessor.java | 0
.../org/eclipse/ui/internal/CoolBarToTrimManager.java | 0
.../org/eclipse/ui/internal/CycleEditorHandler.java | 0
.../org/eclipse/ui/internal/CyclePerspectiveHandler.java | 0
.../org/eclipse/ui/internal/CycleViewHandler.java | 0
.../org/eclipse/ui/internal/DefaultSaveable.java | 0
.../org/eclipse/ui/internal/DirtyPerspectiveMarker.java | 0
.../org/eclipse/ui/internal/E4PartWrapper.java | 0
.../org/eclipse/ui/internal/EarlyStartupRunnable.java | 0
.../org/eclipse/ui/internal/EditorActionBars.java | 0
.../org/eclipse/ui/internal/EditorActionBuilder.java | 0
.../org/eclipse/ui/internal/EditorHistory.java | 0
.../org/eclipse/ui/internal/EditorHistoryItem.java | 0
.../org/eclipse/ui/internal/EditorMenuManager.java | 0
.../org/eclipse/ui/internal/EditorPluginAction.java | 0
.../org/eclipse/ui/internal/EditorReference.java | 0
.../org/eclipse/ui/internal/EditorSite.java | 0
.../eclipse/ui/internal/EditorSiteDragAndDropServiceImpl.java | 0
.../org/eclipse/ui/internal/ErrorEditorPart.java | 0
.../org/eclipse/ui/internal/ErrorViewPart.java | 0
.../org/eclipse/ui/internal/ExceptionHandler.java | 0
.../org/eclipse/ui/internal/ExtensionEventHandler.java | 0
.../org/eclipse/ui/internal/ExtensionEventHandler.properties | 0
.../eclipse/ui/internal/ExtensionEventHandlerMessages.java | 0
.../org/eclipse/ui/internal/FilteredTableBaseHandler.java | 0
.../org/eclipse/ui/internal/HeapStatus.java | 0
.../org/eclipse/ui/internal/IActionSetContributionItem.java | 0
.../org/eclipse/ui/internal/IBackgroundSaveListener.java | 0
.../org/eclipse/ui/internal/IChangeListener.java | 0
.../org/eclipse/ui/internal/IHeapStatusConstants.java | 0
.../org/eclipse/ui/internal/IMenuServiceWorkaround.java | 0
.../org/eclipse/ui/internal/IObjectActionContributor.java | 0
.../org/eclipse/ui/internal/IObjectContributor.java | 0
.../org/eclipse/ui/internal/IPreferenceConstants.java | 0
.../org/eclipse/ui/internal/ISelectionConversionService.java | 0
.../org/eclipse/ui/internal/IWorkbenchConstants.java | 0
.../org/eclipse/ui/internal/IWorkbenchGraphicConstants.java | 0
.../org/eclipse/ui/internal/IWorkbenchHelpContextIds.java | 0
.../org/eclipse/ui/internal/IWorkbenchThemeConstants.java | 0
.../org/eclipse/ui/internal/InternalHandlerUtil.java | 0
.../org/eclipse/ui/internal/InternalSaveable.java | 0
.../org/eclipse/ui/internal/JFaceUtil.java | 0
.../org/eclipse/ui/internal/KeyBindingService.java | 0
.../eclipse/ui/internal/LargeFileLimitsPreferenceHandler.java | 0
.../org/eclipse/ui/internal/LegacyResourceSupport.java | 0
.../org/eclipse/ui/internal/LegacyTrim.java | 0
.../org/eclipse/ui/internal/LocalWorkingSetManager.java | 0
.../org/eclipse/ui/internal/NavigationHistory.java | 0
.../org/eclipse/ui/internal/NavigationHistoryAction.java | 0
.../org/eclipse/ui/internal/NavigationHistoryEditorInfo.java | 0
.../org/eclipse/ui/internal/NavigationHistoryEntry.java | 0
.../org/eclipse/ui/internal/ObjectActionContributor.java | 0
.../eclipse/ui/internal/ObjectActionContributorManager.java | 0
.../eclipse/ui/internal/ObjectActionContributorReader.java | 0
.../org/eclipse/ui/internal/ObjectContributorManager.java | 0
.../org/eclipse/ui/internal/ObjectFilterTest.java | 0
.../org/eclipse/ui/internal/ObjectPluginAction.java | 0
.../eclipse/ui/internal/OpenPerspectivePropertyTester.java | 0
.../org/eclipse/ui/internal/OpenPreferencesAction.java | 0
.../org/eclipse/ui/internal/PageEventAction.java | 0
.../org/eclipse/ui/internal/PageListenerList.java | 0
.../org/eclipse/ui/internal/PagePartSelectionTracker.java | 0
.../org/eclipse/ui/internal/PartPane.java | 0
.../org/eclipse/ui/internal/PartPluginAction.java | 0
.../org/eclipse/ui/internal/PartSelectionListener.java | 0
.../org/eclipse/ui/internal/PartService.java | 0
.../org/eclipse/ui/internal/PartSite.java | 0
.../eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java | 0
.../org/eclipse/ui/internal/PendingSyncExec.java | 0
.../org/eclipse/ui/internal/Perspective.java | 0
.../org/eclipse/ui/internal/PerspectiveAction.java | 0
.../org/eclipse/ui/internal/PerspectiveExtensionReader.java | 0
.../org/eclipse/ui/internal/PerspectiveListenerList.java | 0
.../org/eclipse/ui/internal/PerspectiveTagger.java | 0
.../org/eclipse/ui/internal/PerspectiveTracker.java | 0
.../org/eclipse/ui/internal/PlaceholderContributionItem.java | 0
.../org/eclipse/ui/internal/PlatformUIPreferenceListener.java | 0
.../org/eclipse/ui/internal/PluginAction.java | 0
.../org/eclipse/ui/internal/PluginActionBuilder.java | 0
.../org/eclipse/ui/internal/PluginActionContributionItem.java | 0
.../ui/internal/PluginActionCoolBarContributionItem.java | 0
.../org/eclipse/ui/internal/PluginActionSet.java | 0
.../org/eclipse/ui/internal/PluginActionSetBuilder.java | 0
.../org/eclipse/ui/internal/PopupMenuExtender.java | 0
.../org/eclipse/ui/internal/ProductInfo.java | 0
.../org/eclipse/ui/internal/ProductProperties.java | 0
.../org/eclipse/ui/internal/ReopenEditorMenu.java | 0
.../org/eclipse/ui/internal/SaveableHelper.java | 0
.../org/eclipse/ui/internal/SaveablesList.java | 0
.../org/eclipse/ui/internal/SelectionAdapterFactory.java | 0
.../org/eclipse/ui/internal/SelectionConversionService.java | 0
.../org/eclipse/ui/internal/SharedImages.java | 0
.../org/eclipse/ui/internal/ShowInHandler.java | 0
.../org/eclipse/ui/internal/ShowInMenu.java | 0
.../org/eclipse/ui/internal/ShowPartPaneMenuHandler.java | 0
.../org/eclipse/ui/internal/ShowViewMenu.java | 0
.../org/eclipse/ui/internal/ShowViewMenuHandler.java | 0
.../org/eclipse/ui/internal/SlavePageService.java | 0
.../org/eclipse/ui/internal/SlavePartService.java | 0
.../org/eclipse/ui/internal/SlaveSelectionService.java | 0
.../org/eclipse/ui/internal/SplitHandler.java | 0
.../org/eclipse/ui/internal/SplitValues.java | 0
.../org/eclipse/ui/internal/StandardTrim.java | 0
.../org/eclipse/ui/internal/StartupThreading.java | 0
.../org/eclipse/ui/internal/SwitchToWindowMenu.java | 0
.../eclipse/ui/internal/ToggleEditorsVisibilityAction.java | 0
.../org/eclipse/ui/internal/TrimUtil.java | 0
.../org/eclipse/ui/internal/UILockListener.java | 0
.../org/eclipse/ui/internal/UISynchronizer.java | 0
.../org/eclipse/ui/internal/ViewActionBuilder.java | 0
.../org/eclipse/ui/internal/ViewIntroAdapterPart.java | 0
.../org/eclipse/ui/internal/ViewIntroAdapterSite.java | 0
.../org/eclipse/ui/internal/ViewPluginAction.java | 0
.../org/eclipse/ui/internal/ViewReference.java | 0
.../org/eclipse/ui/internal/ViewSite.java | 0
.../org/eclipse/ui/internal/ViewerActionBuilder.java | 0
.../org/eclipse/ui/internal/WWinActionBars.java | 0
.../org/eclipse/ui/internal/WWinPluginAction.java | 0
.../org/eclipse/ui/internal/WWinPluginPulldown.java | 0
.../org/eclipse/ui/internal/WindowsDefenderConfigurator.java | 0
.../org/eclipse/ui/internal/Workbench.java | 0
.../org/eclipse/ui/internal/WorkbenchConfigurer.java | 0
.../org/eclipse/ui/internal/WorkbenchEditorsHandler.java | 0
.../org/eclipse/ui/internal/WorkbenchErrorHandlerProxy.java | 0
.../eclipse/ui/internal/WorkbenchHandlerServiceHandler.java | 0
.../org/eclipse/ui/internal/WorkbenchImages.java | 0
.../org/eclipse/ui/internal/WorkbenchIntroManager.java | 0
.../eclipse/ui/internal/WorkbenchLayoutSettingsTransfer.java | 0
.../org/eclipse/ui/internal/WorkbenchMessages.java | 0
.../org/eclipse/ui/internal/WorkbenchPage.java | 0
.../org/eclipse/ui/internal/WorkbenchPartReference.java | 0
.../org/eclipse/ui/internal/WorkbenchPlugin.java | 0
.../eclipse/ui/internal/WorkbenchPreferenceInitializer.java | 0
.../org/eclipse/ui/internal/WorkbenchSupportFactory.java | 0
.../org/eclipse/ui/internal/WorkbenchWindow.java | 0
.../org/eclipse/ui/internal/WorkbenchWindowConfigurer.java | 0
.../org/eclipse/ui/internal/WorkbookEditorsHandler.java | 0
.../org/eclipse/ui/internal/WorkingSet.java | 0
.../org/eclipse/ui/internal/WorkingSetComparator.java | 0
.../org/eclipse/ui/internal/WorkingSetFactory.java | 0
.../org/eclipse/ui/internal/WorkingSetManager.java | 0
.../eclipse/ui/internal/WorkingSetMenuContributionItem.java | 0
.../org/eclipse/ui/internal/about/AboutBundleData.java | 0
.../org/eclipse/ui/internal/about/AboutBundleGroupData.java | 0
.../org/eclipse/ui/internal/about/AboutData.java | 0
.../eclipse/ui/internal/about/AboutFeaturesButtonManager.java | 0
.../org/eclipse/ui/internal/about/AboutFeaturesPage.java | 0
.../org/eclipse/ui/internal/about/AboutHandler.java | 0
.../org/eclipse/ui/internal/about/AboutItem.java | 0
.../org/eclipse/ui/internal/about/AboutPluginsPage.java | 0
.../org/eclipse/ui/internal/about/AboutSystemPage.java | 0
.../org/eclipse/ui/internal/about/AboutTextManager.java | 0
.../org/eclipse/ui/internal/about/AboutUtils.java | 0
.../org/eclipse/ui/internal/about/BundleSigningInfo.java | 0
.../ui/internal/about/ConfigurationLogDefaultSection.java | 0
.../eclipse/ui/internal/about/CopyTableSelectionHandler.java | 0
.../org/eclipse/ui/internal/about/InstallationDialog.java | 0
.../org/eclipse/ui/internal/about/InstallationHandler.java | 0
.../org/eclipse/ui/internal/about/ProductInfoDialog.java | 0
.../org/eclipse/ui/internal/about/ProductInfoPage.java | 0
.../internal/actions/AbstractWorkingSetPulldownDelegate.java | 0
.../eclipse/ui/internal/actions/ClearWorkingSetAction.java | 0
.../org/eclipse/ui/internal/actions/CommandAction.java | 0
.../org/eclipse/ui/internal/actions/DynamicHelpAction.java | 0
.../org/eclipse/ui/internal/actions/EditWorkingSetAction.java | 0
.../org/eclipse/ui/internal/actions/HelpContentsAction.java | 0
.../org/eclipse/ui/internal/actions/HelpSearchAction.java | 0
.../ui/internal/actions/HelpSearchContributionItem.java | 0
.../eclipse/ui/internal/actions/ModifyWorkingSetDelegate.java | 0
.../eclipse/ui/internal/actions/NewWizardShortcutAction.java | 0
.../eclipse/ui/internal/actions/SelectWorkingSetAction.java | 0
.../eclipse/ui/internal/actions/SelectWorkingSetsAction.java | 0
.../ui/internal/activities/AbstractActivityManager.java | 0
.../ui/internal/activities/AbstractActivityRegistry.java | 0
.../org/eclipse/ui/internal/activities/Activity.java | 0
.../eclipse/ui/internal/activities/ActivityDefinition.java | 0
.../ui/internal/activities/ActivityPatternBinding.java | 0
.../internal/activities/ActivityPatternBindingDefinition.java | 0
.../ui/internal/activities/ActivityPropertyTester.java | 0
.../eclipse/ui/internal/activities/ActivityRegistryEvent.java | 0
.../ui/internal/activities/ActivityRequirementBinding.java | 0
.../activities/ActivityRequirementBindingDefinition.java | 0
.../org/eclipse/ui/internal/activities/Category.java | 0
.../ui/internal/activities/CategoryActivityBinding.java | 0
.../activities/CategoryActivityBindingDefinition.java | 0
.../eclipse/ui/internal/activities/CategoryDefinition.java | 0
.../ui/internal/activities/ExtensionActivityRegistry.java | 0
.../org/eclipse/ui/internal/activities/IActivityRegistry.java | 0
.../ui/internal/activities/IActivityRegistryListener.java | 0
.../org/eclipse/ui/internal/activities/Identifier.java | 0
.../ui/internal/activities/InternalActivityHelper.java | 0
.../ui/internal/activities/MutableActivityManager.java | 0
.../org/eclipse/ui/internal/activities/PatternUtil.java | 0
.../org/eclipse/ui/internal/activities/Persistence.java | 0
.../eclipse/ui/internal/activities/ProxyActivityManager.java | 0
.../ui/internal/activities/ws/AbstractTriggerPoint.java | 0
.../activities/ws/ActivityCategoryContentProvider.java | 0
.../internal/activities/ws/ActivityCategoryLabelProvider.java | 0
.../ui/internal/activities/ws/ActivityContentProvider.java | 0
.../eclipse/ui/internal/activities/ws/ActivityEnabler.java | 0
.../ui/internal/activities/ws/ActivityLabelProvider.java | 0
.../eclipse/ui/internal/activities/ws/ActivityMessages.java | 0
.../ui/internal/activities/ws/ActivityViewerFilter.java | 0
.../ui/internal/activities/ws/CategorizedActivity.java | 0
.../eclipse/ui/internal/activities/ws/EnablementDialog.java | 0
.../ui/internal/activities/ws/EnablementDialog.properties | 0
.../ui/internal/activities/ws/ImageBindingRegistry.java | 0
.../ui/internal/activities/ws/RegistryTriggerPoint.java | 0
.../internal/activities/ws/TriggerPointAdvisorDescriptor.java | 0
.../internal/activities/ws/TriggerPointAdvisorRegistry.java | 0
.../ui/internal/activities/ws/TriggerPointManager.java | 0
.../ui/internal/activities/ws/WorkbenchActivitySupport.java | 0
.../ui/internal/activities/ws/WorkbenchTriggerPoints.java | 0
.../org/eclipse/ui/internal/activities/ws/messages.properties | 0
.../internal/application/CompatibilityActionBarAdvisor.java | 0
.../application/CompatibilityWorkbenchWindowAdvisor.java | 0
.../org/eclipse/ui/internal/browser/DefaultWebBrowser.java | 0
.../ui/internal/browser/DefaultWorkbenchBrowserSupport.java | 0
.../eclipse/ui/internal/browser/WorkbenchBrowserSupport.java | 0
.../org/eclipse/ui/internal/commands/CommandImageManager.java | 0
.../ui/internal/commands/CommandImageManagerEvent.java | 0
.../eclipse/ui/internal/commands/CommandImagePersistence.java | 0
.../org/eclipse/ui/internal/commands/CommandImageService.java | 0
.../org/eclipse/ui/internal/commands/CommandPersistence.java | 0
.../org/eclipse/ui/internal/commands/CommandService.java | 0
.../eclipse/ui/internal/commands/CommandServiceFactory.java | 0
.../org/eclipse/ui/internal/commands/CommandStateProxy.java | 0
.../org/eclipse/ui/internal/commands/ElementReference.java | 0
.../ui/internal/commands/ICommandImageManagerListener.java | 0
.../eclipse/ui/internal/commands/ILegacyAttributeNames.java | 0
.../ui/internal/commands/ParameterValueConverterProxy.java | 0
.../org/eclipse/ui/internal/commands/SlaveCommandService.java | 0
.../ui/internal/contexts/ActiveContextSourceProvider.java | 0
.../org/eclipse/ui/internal/contexts/ContextActivation.java | 0
.../org/eclipse/ui/internal/contexts/ContextAuthority.java | 0
.../eclipse/ui/internal/contexts/ContextLegacyWrapper.java | 0
.../eclipse/ui/internal/contexts/ContextManagerFactory.java | 0
.../ui/internal/contexts/ContextManagerLegacyWrapper.java | 0
.../org/eclipse/ui/internal/contexts/ContextPersistence.java | 0
.../org/eclipse/ui/internal/contexts/ContextService.java | 0
.../eclipse/ui/internal/contexts/ContextServiceFactory.java | 0
.../ui/internal/contexts/LegacyContextListenerWrapper.java | 0
.../eclipse/ui/internal/contexts/NestableContextService.java | 0
.../org/eclipse/ui/internal/contexts/SlaveContextService.java | 0
.../eclipse/ui/internal/contexts/WorkbenchContextSupport.java | 0
.../eclipse/ui/internal/databinding/ActivePageProperty.java | 0
.../eclipse/ui/internal/databinding/ActivePartProperty.java | 0
.../eclipse/ui/internal/databinding/ActiveWindowProperty.java | 0
.../eclipse/ui/internal/databinding/AdaptedValueProperty.java | 0
.../eclipse/ui/internal/databinding/EditorInputProperty.java | 0
.../org/eclipse/ui/internal/databinding/ListeningValue.java | 0
.../ui/internal/databinding/MultiSelectionProperty.java | 0
.../ui/internal/databinding/SelectionServiceListener.java | 0
.../ui/internal/databinding/SingleSelectionProperty.java | 0
.../eclipse/ui/internal/decorators/DeclarativeDecorator.java | 0
.../org/eclipse/ui/internal/decorators/DecorationBuilder.java | 0
.../eclipse/ui/internal/decorators/DecorationReference.java | 0
.../org/eclipse/ui/internal/decorators/DecorationResult.java | 0
.../eclipse/ui/internal/decorators/DecorationScheduler.java | 0
.../eclipse/ui/internal/decorators/DecoratorDefinition.java | 0
.../org/eclipse/ui/internal/decorators/DecoratorManager.java | 0
.../ui/internal/decorators/DecoratorRegistryReader.java | 0
.../ui/internal/decorators/FullDecoratorDefinition.java | 0
.../eclipse/ui/internal/decorators/FullDecoratorRunnable.java | 0
.../ui/internal/decorators/FullImageDecoratorRunnable.java | 0
.../ui/internal/decorators/FullTextDecoratorRunnable.java | 0
.../ui/internal/decorators/LightweightActionDescriptor.java | 0
.../internal/decorators/LightweightDecoratorDefinition.java | 0
.../ui/internal/decorators/LightweightDecoratorManager.java | 0
.../org/eclipse/ui/internal/dialogs/AboutDialog.java | 0
.../org/eclipse/ui/internal/dialogs/AboutFeaturesDialog.java | 0
.../org/eclipse/ui/internal/dialogs/AboutPluginsDialog.java | 0
.../eclipse/ui/internal/dialogs/AbstractWorkingSetDialog.java | 0
.../org/eclipse/ui/internal/dialogs/AdaptableForwarder.java | 0
.../org/eclipse/ui/internal/dialogs/CapabilityFilter.java | 0
.../dialogs/ContentTypeFilenameAssociationDialog.java | 0
.../ui/internal/dialogs/ContentTypesPreferencePage.java | 0
.../dialogs/DataTransferWizardCollectionComparator.java | 0
.../eclipse/ui/internal/dialogs/DecoratorsPreferencePage.java | 0
.../org/eclipse/ui/internal/dialogs/DialogUtil.java | 0
.../eclipse/ui/internal/dialogs/EditorsPreferencePage.java | 0
.../org/eclipse/ui/internal/dialogs/EmptyPreferencePage.java | 0
.../org/eclipse/ui/internal/dialogs/EmptyPropertyPage.java | 0
.../org/eclipse/ui/internal/dialogs/ErrorPreferencePage.java | 0
.../eclipse/ui/internal/dialogs/EventLoopProgressMonitor.java | 0
.../org/eclipse/ui/internal/dialogs/ExportPage.java | 0
.../org/eclipse/ui/internal/dialogs/ExportWizard.java | 0
.../ui/internal/dialogs/FileEditorsPreferencePage.java | 0
.../org/eclipse/ui/internal/dialogs/FileExtensionDialog.java | 0
.../eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java | 0
.../ui/internal/dialogs/GlobalizationPreferencePage.java | 0
.../eclipse/ui/internal/dialogs/IPropertyPageContributor.java | 0
.../org/eclipse/ui/internal/dialogs/ImportExportPage.java | 0
.../org/eclipse/ui/internal/dialogs/ImportExportWizard.java | 0
.../org/eclipse/ui/internal/dialogs/ImportPage.java | 0
.../org/eclipse/ui/internal/dialogs/ImportWizard.java | 0
.../org/eclipse/ui/internal/dialogs/NewContentTypeDialog.java | 0
.../org/eclipse/ui/internal/dialogs/NewWizard.java | 0
.../ui/internal/dialogs/NewWizardCollectionComparator.java | 0
.../org/eclipse/ui/internal/dialogs/NewWizardNewPage.java | 0
.../eclipse/ui/internal/dialogs/NewWizardSelectionPage.java | 0
.../org/eclipse/ui/internal/dialogs/PerspContentProvider.java | 0
.../ui/internal/dialogs/PerspectivesPreferencePage.java | 0
.../ui/internal/dialogs/PreferenceBoldLabelProvider.java | 0
.../eclipse/ui/internal/dialogs/PreferenceHistoryEntry.java | 0
.../org/eclipse/ui/internal/dialogs/PreferenceNodeFilter.java | 0
.../eclipse/ui/internal/dialogs/PreferencePageHistory.java | 0
.../eclipse/ui/internal/dialogs/PreferencePatternFilter.java | 0
.../org/eclipse/ui/internal/dialogs/PropertyDialog.java | 0
.../ui/internal/dialogs/PropertyPageContributorManager.java | 0
.../org/eclipse/ui/internal/dialogs/PropertyPageManager.java | 0
.../org/eclipse/ui/internal/dialogs/PropertyPageNode.java | 0
.../eclipse/ui/internal/dialogs/RegistryPageContributor.java | 0
.../eclipse/ui/internal/dialogs/SavePerspectiveDialog.java | 0
.../eclipse/ui/internal/dialogs/SelectPerspectiveDialog.java | 0
.../org/eclipse/ui/internal/dialogs/ShowViewDialog.java | 0
.../ui/internal/dialogs/SimpleWorkingSetSelectionDialog.java | 0
.../eclipse/ui/internal/dialogs/StartupPreferencePage.java | 0
.../org/eclipse/ui/internal/dialogs/ViewComparator.java | 0
.../org/eclipse/ui/internal/dialogs/ViewContentProvider.java | 0
.../org/eclipse/ui/internal/dialogs/ViewLabelProvider.java | 0
.../org/eclipse/ui/internal/dialogs/ViewPatternFilter.java | 0
.../org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java | 0
.../org/eclipse/ui/internal/dialogs/WizardActivityFilter.java | 0
.../eclipse/ui/internal/dialogs/WizardCollectionElement.java | 0
.../eclipse/ui/internal/dialogs/WizardContentProvider.java | 0
.../org/eclipse/ui/internal/dialogs/WizardPatternFilter.java | 0
.../org/eclipse/ui/internal/dialogs/WizardTagFilter.java | 0
.../ui/internal/dialogs/WorkbenchDialogBlockedHandler.java | 0
.../eclipse/ui/internal/dialogs/WorkbenchEditorsDialog.java | 0
.../ui/internal/dialogs/WorkbenchPreferenceDialog.java | 0
.../ui/internal/dialogs/WorkbenchPreferenceManager.java | 0
.../eclipse/ui/internal/dialogs/WorkbenchPreferenceNode.java | 0
.../eclipse/ui/internal/dialogs/WorkbenchPreferencePage.java | 0
.../eclipse/ui/internal/dialogs/WorkbenchWizardElement.java | 0
.../ui/internal/dialogs/WorkbenchWizardListSelectionPage.java | 0
.../org/eclipse/ui/internal/dialogs/WorkbenchWizardNode.java | 0
.../ui/internal/dialogs/WorkbenchWizardSelectionPage.java | 0
.../org/eclipse/ui/internal/dialogs/WorkingSetEditWizard.java | 0
.../org/eclipse/ui/internal/dialogs/WorkingSetFilter.java | 0
.../eclipse/ui/internal/dialogs/WorkingSetLabelProvider.java | 0
.../org/eclipse/ui/internal/dialogs/WorkingSetNewWizard.java | 0
.../ui/internal/dialogs/WorkingSetSelectionDialog.java | 0
.../org/eclipse/ui/internal/dialogs/WorkingSetTypePage.java | 0
.../org/eclipse/ui/internal/dialogs/cpd/ActionSetFilter.java | 0
.../dialogs/cpd/ActionSetSelectionChangedListener.java | 0
.../ui/internal/dialogs/cpd/CategoryCheckProvider.java | 0
.../eclipse/ui/internal/dialogs/cpd/CustomizeActionBars.java | 0
.../ui/internal/dialogs/cpd/CustomizePerspectiveDialog.java | 0
.../ui/internal/dialogs/cpd/FilteredModelCheckListener.java | 0
.../ui/internal/dialogs/cpd/FilteredTreeCheckProvider.java | 0
.../ui/internal/dialogs/cpd/FilteredViewerCheckListener.java | 0
.../internal/dialogs/cpd/GrayOutUnavailableLabelProvider.java | 0
.../eclipse/ui/internal/dialogs/cpd/ItemDetailToolTip.java | 0
.../ui/internal/dialogs/cpd/NameAndDescriptionToolTip.java | 0
.../ui/internal/dialogs/cpd/ShortcutLabelProvider.java | 0
.../ui/internal/dialogs/cpd/ShowUsedActionSetsFilter.java | 0
.../org/eclipse/ui/internal/dialogs/cpd/TableToolTip.java | 0
.../org/eclipse/ui/internal/dialogs/cpd/TreeManager.java | 0
.../dialogs/cpd/UnavailableContributionItemCheckListener.java | 0
.../org/eclipse/ui/internal/e4/compatibility/ActionBars.java | 0
.../ui/internal/e4/compatibility/CompatibilityEditor.java | 0
.../ui/internal/e4/compatibility/CompatibilityPart.java | 0
.../ui/internal/e4/compatibility/CompatibilityView.java | 0
.../org/eclipse/ui/internal/e4/compatibility/E4Util.java | 0
.../ui/internal/e4/compatibility/ModeledFolderLayout.java | 0
.../ui/internal/e4/compatibility/ModeledPageLayout.java | 0
.../ui/internal/e4/compatibility/ModeledPageLayoutUtils.java | 0
.../e4/compatibility/ModeledPlaceholderFolderLayout.java | 0
.../ui/internal/e4/compatibility/ModeledViewLayout.java | 0
.../ui/internal/e4/compatibility/SelectionService.java | 0
.../org/eclipse/ui/internal/e4/migration/InfoReader.java | 0
.../org/eclipse/ui/internal/e4/migration/MementoReader.java | 0
.../eclipse/ui/internal/e4/migration/PerspectiveBuilder.java | 0
.../eclipse/ui/internal/e4/migration/PerspectiveReader.java | 0
.../eclipse/ui/internal/expressions/ActivePartExpression.java | 0
.../ui/internal/expressions/AlwaysEnabledExpression.java | 0
.../ui/internal/expressions/LegacyActionSetExpression.java | 0
.../internal/expressions/LegacyEditorActionBarExpression.java | 0
.../expressions/LegacyEditorContributionExpression.java | 0
.../internal/expressions/LegacySelectionEnablerWrapper.java | 0
.../expressions/LegacyViewContributionExpression.java | 0
.../ui/internal/expressions/WorkbenchWindowExpression.java | 0
.../org/eclipse/ui/internal/handlers/AbstractSaveHandler.java | 0
.../ui/internal/handlers/ActionCommandMappingService.java | 0
.../ui/internal/handlers/ActionDelegateHandlerProxy.java | 0
.../ui/internal/handlers/ActiveContextInfoHandler.java | 0
.../ui/internal/handlers/CloseAllPerspectivesHandler.java | 0
.../org/eclipse/ui/internal/handlers/ClosePartHandler.java | 0
.../eclipse/ui/internal/handlers/ClosePerspectiveHandler.java | 0
.../ui/internal/handlers/CommandLegacyActionWrapper.java | 0
.../org/eclipse/ui/internal/handlers/ContextMenuHandler.java | 0
.../org/eclipse/ui/internal/handlers/CyclePageHandler.java | 0
.../org/eclipse/ui/internal/handlers/DirtyStateTracker.java | 0
.../org/eclipse/ui/internal/handlers/DisplayHelpHandler.java | 0
.../org/eclipse/ui/internal/handlers/DynamicHelpHandler.java | 0
.../org/eclipse/ui/internal/handlers/E4HandlerProxy.java | 0
.../eclipse/ui/internal/handlers/EditActionSetsHandler.java | 0
.../ui/internal/handlers/ExecutableExtensionHandler.java | 0
.../org/eclipse/ui/internal/handlers/FullScreenHandler.java | 0
.../org/eclipse/ui/internal/handlers/HandlerActivation.java | 0
.../org/eclipse/ui/internal/handlers/HandlerPersistence.java | 0
.../org/eclipse/ui/internal/handlers/HandlerProxy.java | 0
.../org/eclipse/ui/internal/handlers/HelpContentsHandler.java | 0
.../org/eclipse/ui/internal/handlers/HelpSearchHandler.java | 0
.../org/eclipse/ui/internal/handlers/HideTrimBarsHandler.java | 0
.../ui/internal/handlers/IActionCommandMappingService.java | 0
.../ui/internal/handlers/IWorkbenchWindowHandlerDelegate.java | 0
.../org/eclipse/ui/internal/handlers/IntroHandler.java | 0
.../eclipse/ui/internal/handlers/LegacyHandlerService.java | 0
.../org/eclipse/ui/internal/handlers/LockToolBarHandler.java | 0
.../org/eclipse/ui/internal/handlers/MaximizePartHandler.java | 0
.../org/eclipse/ui/internal/handlers/MinimizePartHandler.java | 0
.../org/eclipse/ui/internal/handlers/NewEditorHandler.java | 0
.../eclipse/ui/internal/handlers/OpenInNewWindowHandler.java | 0
.../org/eclipse/ui/internal/handlers/PinEditorHandler.java | 0
.../eclipse/ui/internal/handlers/PropertyDialogHandler.java | 0
.../org/eclipse/ui/internal/handlers/QuickMenuHandler.java | 0
.../org/eclipse/ui/internal/handlers/QuitHandler.java | 0
.../eclipse/ui/internal/handlers/ResetPerspectiveHandler.java | 0
.../eclipse/ui/internal/handlers/RestartWorkbenchHandler.java | 0
.../org/eclipse/ui/internal/handlers/ReuseEditorTester.java | 0
.../org/eclipse/ui/internal/handlers/SaveAllHandler.java | 0
.../org/eclipse/ui/internal/handlers/SaveAsHandler.java | 0
.../org/eclipse/ui/internal/handlers/SaveHandler.java | 0
.../eclipse/ui/internal/handlers/SavePerspectiveHandler.java | 0
.../org/eclipse/ui/internal/handlers/SelectAllHandler.java | 0
.../eclipse/ui/internal/handlers/ShowKeyAssistHandler.java | 0
.../ui/internal/handlers/ShowPreferencePageHandler.java | 0
.../org/eclipse/ui/internal/handlers/SpyHandler.java | 0
.../eclipse/ui/internal/handlers/ToggleCoolbarHandler.java | 0
.../eclipse/ui/internal/handlers/ToggleStatusBarHandler.java | 0
.../org/eclipse/ui/internal/handlers/TraversePageHandler.java | 0
.../org/eclipse/ui/internal/handlers/WidgetMethodHandler.java | 0
.../org/eclipse/ui/internal/handlers/WizardHandler.java | 0
.../ui/internal/handlers/WorkbenchWindowHandlerDelegate.java | 0
.../org/eclipse/ui/internal/help/CommandHelpServiceImpl.java | 0
.../org/eclipse/ui/internal/help/HelpServiceImpl.java | 0
.../org/eclipse/ui/internal/help/WorkbenchHelpSystem.java | 0
.../org/eclipse/ui/internal/intro/IIntroConstants.java | 0
.../org/eclipse/ui/internal/intro/IIntroDescriptor.java | 0
.../org/eclipse/ui/internal/intro/IIntroRegistry.java | 0
.../org/eclipse/ui/internal/intro/IntroDescriptor.java | 0
.../org/eclipse/ui/internal/intro/IntroMessages.java | 0
.../org/eclipse/ui/internal/intro/IntroRegistry.java | 0
.../org/eclipse/ui/internal/intro/intro.properties | 0
.../org/eclipse/ui/internal/keys/AbstractKeyFormatter.java | 0
.../eclipse/ui/internal/keys/AbstractKeyFormatter.properties | 0
.../ui/internal/keys/AbstractModifierKeyComparator.java | 0
.../ui/internal/keys/AlphabeticModifierKeyComparator.java | 0
.../org/eclipse/ui/internal/keys/BindingPersistence.java | 0
.../org/eclipse/ui/internal/keys/BindingService.java | 0
.../org/eclipse/ui/internal/keys/CategoryPatternFilter.java | 0
.../org/eclipse/ui/internal/keys/CompactKeyFormatter.java | 0
.../org/eclipse/ui/internal/keys/EmacsKeyFormatter.java | 0
.../org/eclipse/ui/internal/keys/EmacsKeyFormatter.properties | 0
.../org/eclipse/ui/internal/keys/FormalKeyFormatter.java | 0
.../org/eclipse/ui/internal/keys/GlobalKeyAssistDialog.java | 0
.../org/eclipse/ui/internal/keys/GnomeKeyFormatter.properties | 0
.../org/eclipse/ui/internal/keys/ImageFactory.java | 0
.../org/eclipse/ui/internal/keys/KdeKeyFormatter.properties | 0
.../org/eclipse/ui/internal/keys/KeyAssistDialog.properties | 0
.../org/eclipse/ui/internal/keys/KeyAssistMessages.java | 0
.../eclipse/ui/internal/keys/KeysPreferenceFiltersDialog.java | 0
.../org/eclipse/ui/internal/keys/KeysPreferencePage.java | 0
.../eclipse/ui/internal/keys/KeysPreferencePage.properties | 0
.../org/eclipse/ui/internal/keys/MacKeyFormatter.java | 0
.../org/eclipse/ui/internal/keys/MacKeyFormatter.properties | 0
.../org/eclipse/ui/internal/keys/NativeKeyFormatter.java | 0
.../eclipse/ui/internal/keys/NativeKeyFormatter.properties | 0
.../eclipse/ui/internal/keys/NativeModifierKeyComparator.java | 0
.../eclipse/ui/internal/keys/NewKeysPreferenceMessages.java | 0
.../org/eclipse/ui/internal/keys/NewKeysPreferencePage.java | 0
.../eclipse/ui/internal/keys/NewKeysPreferencePage.properties | 0
.../org/eclipse/ui/internal/keys/NoKeysPreferencePage.java | 0
.../eclipse/ui/internal/keys/WindowsKeyFormatter.properties | 0
.../org/eclipse/ui/internal/keys/WorkbenchKeyboard.java | 0
.../org/eclipse/ui/internal/keys/WorkbenchKeyboard.properties | 0
.../org/eclipse/ui/internal/keys/model/BindingElement.java | 0
.../org/eclipse/ui/internal/keys/model/BindingModel.java | 0
.../org/eclipse/ui/internal/keys/model/CommonModel.java | 0
.../org/eclipse/ui/internal/keys/model/ConflictModel.java | 0
.../org/eclipse/ui/internal/keys/model/ContextElement.java | 0
.../org/eclipse/ui/internal/keys/model/ContextModel.java | 0
.../org/eclipse/ui/internal/keys/model/KeyController.java | 0
.../org/eclipse/ui/internal/keys/model/ModelElement.java | 0
.../org/eclipse/ui/internal/keys/model/SchemeElement.java | 0
.../org/eclipse/ui/internal/keys/model/SchemeModel.java | 0
.../org/eclipse/ui/internal/keys/show/ShowKeysListener.java | 0
.../eclipse/ui/internal/keys/show/ShowKeysToggleHandler.java | 0
.../org/eclipse/ui/internal/keys/show/ShowKeysUI.java | 0
.../org/eclipse/ui/internal/layout/CacheWrapper.java | 0
.../org/eclipse/ui/internal/layout/CellData.java | 0
.../org/eclipse/ui/internal/layout/CellLayout.java | 0
.../org/eclipse/ui/internal/layout/CellLayoutUtil.java | 0
.../org/eclipse/ui/internal/layout/GridInfo.java | 0
.../org/eclipse/ui/internal/layout/ICachingLayout.java | 0
.../org/eclipse/ui/internal/layout/LayoutCache.java | 0
.../org/eclipse/ui/internal/layout/LayoutUtil.java | 0
.../org/eclipse/ui/internal/layout/Row.java | 0
.../org/eclipse/ui/internal/layout/SizeCache.java | 0
.../org/eclipse/ui/internal/menus/CommandMessages.java | 0
.../CompatibilityWorkbenchWindowControlContribution.java | 0
.../ui/internal/menus/ContributionFactoryGenerator.java | 0
.../org/eclipse/ui/internal/menus/ContributionRoot.java | 0
.../ui/internal/menus/ControlContributionRegistry.java | 0
.../ui/internal/menus/DynamicMenuContributionItem.java | 0
.../ui/internal/menus/DynamicToolBarContributionItem.java | 0
.../eclipse/ui/internal/menus/FocusControlSourceProvider.java | 0
.../org/eclipse/ui/internal/menus/IActionSetsListener.java | 0
.../ui/internal/menus/InternalControlContribution.java | 0
.../eclipse/ui/internal/menus/LegacyActionPersistence.java | 0
.../org/eclipse/ui/internal/menus/MenuAdditionCacheEntry.java | 0
.../org/eclipse/ui/internal/menus/MenuFactoryGenerator.java | 0
.../org/eclipse/ui/internal/menus/MenuHelper.java | 0
.../org/eclipse/ui/internal/menus/MenuLocationURI.java | 0
.../org/eclipse/ui/internal/menus/MenuPersistence.java | 0
.../org/eclipse/ui/internal/menus/SlaveMenuService.java | 0
.../org/eclipse/ui/internal/menus/WorkbenchMenuService.java | 0
.../org/eclipse/ui/internal/menus/messages.properties | 0
.../org/eclipse/ui/internal/messages.properties | 0
.../org/eclipse/ui/internal/misc/ExternalEditor.java | 0
.../ui/internal/misc/ExternalProgramImageDescriptor.java | 0
.../org/eclipse/ui/internal/misc/Policy.java | 0
.../org/eclipse/ui/internal/misc/ProgramImageDescriptor.java | 0
.../org/eclipse/ui/internal/misc/StatusUtil.java | 0
.../org/eclipse/ui/internal/misc/TestPartListener.java | 0
.../org/eclipse/ui/internal/misc/TextMatcher.java | 0
.../org/eclipse/ui/internal/misc/UIListenerLogging.java | 0
.../org/eclipse/ui/internal/misc/UIStats.java | 0
.../org/eclipse/ui/internal/model/ContributionService.java | 0
.../internal/operations/AdvancedValidationUserApprover.java | 0
.../operations/TimeTriggeredProgressMonitorDialog.java | 0
.../ui/internal/operations/WorkbenchOperationSupport.java | 0
.../eclipse/ui/internal/part/IMultiPageEditorSiteHolder.java | 0
.../org/eclipse/ui/internal/part/IPageSiteHolder.java | 0
.../org/eclipse/ui/internal/part/NullEditorInput.java | 0
.../org/eclipse/ui/internal/part/StatusPart.java | 0
.../org/eclipse/ui/internal/preferences/Base64.java | 0
.../eclipse/ui/internal/preferences/IDynamicPropertyMap.java | 0
.../org/eclipse/ui/internal/preferences/IPropertyMap.java | 0
.../eclipse/ui/internal/preferences/IPropertyMapListener.java | 0
.../ui/internal/preferences/PreferenceTransferElement.java | 0
.../ui/internal/preferences/PreferenceTransferManager.java | 0
.../ui/internal/preferences/PreferencesSettingsTransfer.java | 0
.../eclipse/ui/internal/preferences/PropertyListenerList.java | 0
.../eclipse/ui/internal/preferences/PropertyMapAdapter.java | 0
.../org/eclipse/ui/internal/preferences/PropertyMapUnion.java | 0
.../internal/preferences/SettingsTransferRegistryReader.java | 0
.../org/eclipse/ui/internal/preferences/ThemeAdapter.java | 0
.../preferences/WorkbenchPreferenceExpressionNode.java | 0
.../preferences/WorkbenchPreferenceExtensionNode.java | 0
.../ui/internal/preferences/WorkbenchSettingsTransfer.java | 0
.../ui/internal/preferences/WorkingCopyPreferences.java | 0
.../ui/internal/preferences/WorkingSetPropertyPage.java | 0
.../ui/internal/preferences/WorkingSetSettingsTransfer.java | 0
.../eclipse/ui/internal/progress/AbstractProgressViewer.java | 0
.../org/eclipse/ui/internal/progress/AnimationItem.java | 0
.../org/eclipse/ui/internal/progress/AnimationManager.java | 0
.../org/eclipse/ui/internal/progress/BlockedJobsDialog.java | 0
.../eclipse/ui/internal/progress/DetailedProgressViewer.java | 0
.../org/eclipse/ui/internal/progress/FinishedJobs.java | 0
.../org/eclipse/ui/internal/progress/GroupInfo.java | 0
.../org/eclipse/ui/internal/progress/IAnimationProcessor.java | 0
.../org/eclipse/ui/internal/progress/IJobBusyListener.java | 0
.../ui/internal/progress/IJobProgressManagerListener.java | 0
.../ui/internal/progress/IProgressUpdateCollector.java | 0
.../org/eclipse/ui/internal/progress/JobInfo.java | 0
.../org/eclipse/ui/internal/progress/JobSnapshot.java | 0
.../org/eclipse/ui/internal/progress/JobTreeElement.java | 0
.../ui/internal/progress/JobsViewPreferenceDialog.java | 0
.../eclipse/ui/internal/progress/ProgressAnimationItem.java | 0
.../ui/internal/progress/ProgressAnimationProcessor.java | 0
.../eclipse/ui/internal/progress/ProgressCanvasViewer.java | 0
.../eclipse/ui/internal/progress/ProgressContentProvider.java | 0
.../org/eclipse/ui/internal/progress/ProgressInfoItem.java | 0
.../eclipse/ui/internal/progress/ProgressLabelProvider.java | 0
.../org/eclipse/ui/internal/progress/ProgressManager.java | 0
.../org/eclipse/ui/internal/progress/ProgressManagerUtil.java | 0
.../org/eclipse/ui/internal/progress/ProgressMessages.java | 0
.../ui/internal/progress/ProgressMonitorFocusJobDialog.java | 0
.../ui/internal/progress/ProgressMonitorJobsDialog.java | 0
.../org/eclipse/ui/internal/progress/ProgressRegion.java | 0
.../org/eclipse/ui/internal/progress/ProgressView.java | 0
.../org/eclipse/ui/internal/progress/ProgressViewUpdater.java | 0
.../ui/internal/progress/ProgressViewerContentProvider.java | 0
.../ui/internal/progress/ProgressViewerLabelProvider.java | 0
.../org/eclipse/ui/internal/progress/StatusAdapterHelper.java | 0
.../org/eclipse/ui/internal/progress/SubTaskInfo.java | 0
.../eclipse/ui/internal/progress/TaskBarProgressManager.java | 0
.../org/eclipse/ui/internal/progress/TaskInfo.java | 0
.../ui/internal/progress/WorkbenchSiteProgressService.java | 0
.../org/eclipse/ui/internal/progress/messages.properties | 0
.../provisional/application/IActionBarConfigurer2.java | 0
.../org/eclipse/ui/internal/quickaccess/CamelUtil.java | 0
.../ui/internal/quickaccess/PreviousPicksProvider.java | 0
.../eclipse/ui/internal/quickaccess/QuickAccessContents.java | 0
.../eclipse/ui/internal/quickaccess/QuickAccessDialog.java | 0
.../org/eclipse/ui/internal/quickaccess/QuickAccessEntry.java | 0
.../ui/internal/quickaccess/QuickAccessExtensionManager.java | 0
.../eclipse/ui/internal/quickaccess/QuickAccessHandler.java | 0
.../eclipse/ui/internal/quickaccess/QuickAccessMatcher.java | 0
.../eclipse/ui/internal/quickaccess/QuickAccessMessages.java | 0
.../eclipse/ui/internal/quickaccess/QuickAccessProvider.java | 0
.../org/eclipse/ui/internal/quickaccess/SearchField.java | 0
.../org/eclipse/ui/internal/quickaccess/messages.properties | 0
.../ui/internal/quickaccess/providers/ActionElement.java | 0
.../ui/internal/quickaccess/providers/ActionProvider.java | 0
.../ui/internal/quickaccess/providers/CommandElement.java | 0
.../ui/internal/quickaccess/providers/CommandProvider.java | 0
.../ui/internal/quickaccess/providers/EditorElement.java | 0
.../ui/internal/quickaccess/providers/EditorProvider.java | 0
.../ui/internal/quickaccess/providers/HelpSearchElement.java | 0
.../ui/internal/quickaccess/providers/HelpSearchProvider.java | 0
.../ui/internal/quickaccess/providers/PerspectiveElement.java | 0
.../internal/quickaccess/providers/PerspectiveProvider.java | 0
.../ui/internal/quickaccess/providers/PreferenceElement.java | 0
.../ui/internal/quickaccess/providers/PreferenceProvider.java | 0
.../ui/internal/quickaccess/providers/PropertiesElement.java | 0
.../ui/internal/quickaccess/providers/PropertiesProvider.java | 0
.../ui/internal/quickaccess/providers/ViewElement.java | 0
.../ui/internal/quickaccess/providers/ViewProvider.java | 0
.../ui/internal/quickaccess/providers/WizardElement.java | 0
.../ui/internal/quickaccess/providers/WizardProvider.java | 0
.../org/eclipse/ui/internal/registry/ActionSetDescriptor.java | 0
.../org/eclipse/ui/internal/registry/ActionSetRegistry.java | 0
.../ui/internal/registry/CategorizedPageRegistryReader.java | 0
.../org/eclipse/ui/internal/registry/Category.java | 0
.../org/eclipse/ui/internal/registry/EditorDescriptor.java | 0
.../org/eclipse/ui/internal/registry/EditorRegistry.java | 0
.../eclipse/ui/internal/registry/EditorRegistryReader.java | 0
.../org/eclipse/ui/internal/registry/FileEditorMapping.java | 0
.../org/eclipse/ui/internal/registry/IActionSet.java | 0
.../eclipse/ui/internal/registry/IActionSetDescriptor.java | 0
.../ui/internal/registry/IWorkbenchRegistryConstants.java | 0
.../ui/internal/registry/ImportExportPespectiveHandler.java | 0
.../org/eclipse/ui/internal/registry/KeywordRegistry.java | 0
.../eclipse/ui/internal/registry/PerspectiveDescriptor.java | 0
.../ui/internal/registry/PerspectiveParameterValues.java | 0
.../org/eclipse/ui/internal/registry/PerspectiveRegistry.java | 0
.../ui/internal/registry/PreferencePageParameterValues.java | 0
.../ui/internal/registry/PreferencePageRegistryReader.java | 0
.../internal/registry/PreferenceTransferRegistryReader.java | 0
.../ui/internal/registry/PropertyPagesRegistryReader.java | 0
.../org/eclipse/ui/internal/registry/RegistryReader.java | 0
.../eclipse/ui/internal/registry/StickyViewDescriptor.java | 0
.../org/eclipse/ui/internal/registry/ViewCategory.java | 0
.../org/eclipse/ui/internal/registry/ViewDescriptor.java | 0
.../org/eclipse/ui/internal/registry/ViewParameterValues.java | 0
.../org/eclipse/ui/internal/registry/ViewRegistry.java | 0
.../eclipse/ui/internal/registry/WizardParameterValues.java | 0
.../eclipse/ui/internal/registry/WizardsRegistryReader.java | 0
.../eclipse/ui/internal/registry/WorkingSetDescriptor.java | 0
.../org/eclipse/ui/internal/registry/WorkingSetRegistry.java | 0
.../ui/internal/registry/WorkingSetRegistryReader.java | 0
.../eclipse/ui/internal/services/ActionSetSourceProvider.java | 0
.../org/eclipse/ui/internal/services/EvaluationReference.java | 0
.../eclipse/ui/internal/services/EvaluationResultCache.java | 0
.../org/eclipse/ui/internal/services/EvaluationService.java | 0
.../ui/internal/services/EvaluationServiceFactory.java | 0
.../org/eclipse/ui/internal/services/ExpressionAuthority.java | 0
.../eclipse/ui/internal/services/IEvaluationResultCache.java | 0
.../org/eclipse/ui/internal/services/INestable.java | 0
.../eclipse/ui/internal/services/IServiceLocatorCreator.java | 0
.../ui/internal/services/IWorkbenchLocationService.java | 0
.../org/eclipse/ui/internal/services/LogThrottle.java | 0
.../org/eclipse/ui/internal/services/MenuSourceProvider.java | 0
.../eclipse/ui/internal/services/PreferencePersistence.java | 0
.../org/eclipse/ui/internal/services/RegistryPersistence.java | 0
.../org/eclipse/ui/internal/services/ServiceLocator.java | 0
.../eclipse/ui/internal/services/ServiceLocatorCreator.java | 0
.../eclipse/ui/internal/services/SlaveEvaluationService.java | 0
.../ui/internal/services/SourcePriorityNameMapping.java | 0
.../eclipse/ui/internal/services/SourceProviderService.java | 0
.../ui/internal/services/WorkbenchLocationService.java | 0
.../ui/internal/services/WorkbenchServiceRegistry.java | 0
.../eclipse/ui/internal/services/WorkbenchSourceProvider.java | 0
.../org/eclipse/ui/internal/splash/EclipseSplashHandler.java | 0
.../org/eclipse/ui/internal/splash/SplashHandlerFactory.java | 0
.../ui/internal/statushandlers/DefaultDetailsArea.java | 0
.../ui/internal/statushandlers/DetailsAreaManager.java | 0
.../ui/internal/statushandlers/IStatusDialogConstants.java | 0
.../eclipse/ui/internal/statushandlers/InternalDialog.java | 0
.../ui/internal/statushandlers/LabelProviderWrapper.java | 0
.../ui/internal/statushandlers/StackTraceSupportArea.java | 0
.../ui/internal/statushandlers/StatusHandlerDescriptor.java | 0
.../internal/statushandlers/StatusHandlerDescriptorsMap.java | 0
.../statushandlers/StatusHandlerProductBindingDescriptor.java | 0
.../ui/internal/statushandlers/StatusHandlerRegistry.java | 0
.../org/eclipse/ui/internal/statushandlers/SupportTray.java | 0
.../statushandlers/WorkbenchStatusDialogManagerImpl.java | 0
.../org/eclipse/ui/internal/statushandlers/package.html | 0
.../eclipse/ui/internal/testing/ContributionInfoMessages.java | 0
.../ui/internal/testing/PluginContributionAdapterFactory.java | 0
.../eclipse/ui/internal/testing/WorkbenchPartTestable.java | 0
.../org/eclipse/ui/internal/testing/WorkbenchTestable.java | 0
.../org/eclipse/ui/internal/testing/messages.properties | 0
.../eclipse/ui/internal/themes/CascadingColorRegistry.java | 0
.../org/eclipse/ui/internal/themes/CascadingFontRegistry.java | 0
.../org/eclipse/ui/internal/themes/CascadingMap.java | 0
.../org/eclipse/ui/internal/themes/CascadingTheme.java | 0
.../eclipse/ui/internal/themes/ColorAndFontProviderImpl.java | 0
.../org/eclipse/ui/internal/themes/ColorDefinition.java | 0
.../ui/internal/themes/ColorsAndFontsPreferencePage.java | 0
.../internal/themes/ColorsAndFontsPreferencePage.properties | 0
.../org/eclipse/ui/internal/themes/FontDefinition.java | 0
.../internal/themes/ICategorizedThemeElementDefinition.java | 0
.../org/eclipse/ui/internal/themes/IEditable.java | 0
.../ui/internal/themes/IHierarchalThemeElementDefinition.java | 0
.../org/eclipse/ui/internal/themes/IThemeDescriptor.java | 0
.../eclipse/ui/internal/themes/IThemeElementDefinition.java | 0
.../org/eclipse/ui/internal/themes/IThemeRegistry.java | 0
.../org/eclipse/ui/internal/themes/LightColorFactory.java | 0
.../eclipse/ui/internal/themes/RGBBrightnessColorFactory.java | 0
.../org/eclipse/ui/internal/themes/RGBContrastFactory.java | 0
.../org/eclipse/ui/internal/themes/RGBInfoColorFactory.java | 0
.../ui/internal/themes/RGBVisibleContrastColorFactory.java | 0
.../org/eclipse/ui/internal/themes/Theme.java | 0
.../org/eclipse/ui/internal/themes/Theme.properties | 0
.../org/eclipse/ui/internal/themes/ThemeDescriptor.java | 0
.../org/eclipse/ui/internal/themes/ThemeElementCategory.java | 0
.../eclipse/ui/internal/themes/ThemeElementDefinition.java | 0
.../org/eclipse/ui/internal/themes/ThemeElementHelper.java | 0
.../org/eclipse/ui/internal/themes/ThemeRegistry.java | 0
.../org/eclipse/ui/internal/themes/ThemeRegistryReader.java | 0
.../eclipse/ui/internal/themes/ThemeRegistryReader.properties | 0
.../org/eclipse/ui/internal/themes/ThemesExtension.java | 0
.../org/eclipse/ui/internal/themes/WorkbenchPreview.java | 0
.../org/eclipse/ui/internal/themes/WorkbenchThemeManager.java | 0
.../eclipse/ui/internal/tweaklets/DummyTitlePathUpdater.java | 0
.../eclipse/ui/internal/tweaklets/InterceptContributions.java | 0
.../org/eclipse/ui/internal/tweaklets/TabBehaviour.java | 0
.../org/eclipse/ui/internal/tweaklets/TabBehaviourMRU.java | 0
.../org/eclipse/ui/internal/tweaklets/TitlePathUpdater.java | 0
.../org/eclipse/ui/internal/tweaklets/Tweaklets.java | 0
.../org/eclipse/ui/internal/util/BundleUtility.java | 0
.../eclipse/ui/internal/util/ConfigurationElementMemento.java | 0
.../org/eclipse/ui/internal/util/Descriptors.java | 0
.../org/eclipse/ui/internal/util/ImageSupport.java | 0
.../org/eclipse/ui/internal/util/PrefUtil.java | 0
.../org/eclipse/ui/internal/util/Util.java | 0
.../ui/internal/wizards/AbstractExtensionWizardRegistry.java | 0
.../eclipse/ui/internal/wizards/AbstractWizardRegistry.java | 0
.../org/eclipse/ui/internal/wizards/ExportWizardRegistry.java | 0
.../org/eclipse/ui/internal/wizards/ImportWizardRegistry.java | 0
.../org/eclipse/ui/internal/wizards/NewWizardRegistry.java | 0
.../wizards/preferences/PreferencesContentProvider.java | 0
.../internal/wizards/preferences/PreferencesExportWizard.java | 0
.../internal/wizards/preferences/PreferencesImportWizard.java | 0
.../ui/internal/wizards/preferences/PreferencesMessages.java | 0
.../wizards/preferences/WizardPreferencesExportPage1.java | 0
.../wizards/preferences/WizardPreferencesImportPage1.java | 0
.../internal/wizards/preferences/WizardPreferencesPage.java | 0
.../ui/internal/wizards/preferences/messages.properties | 0
.../org/eclipse/ui/intro/IIntroManager.java | 0
.../org/eclipse/ui/intro/IIntroPart.java | 0
.../org/eclipse/ui/intro/IIntroSite.java | 0
.../org/eclipse/ui/intro/IntroContentDetector.java | 0
.../org/eclipse/ui/intro/package.html | 0
.../org/eclipse/ui/keys/CharacterKey.java | 0
.../org/eclipse/ui/keys/IBindingService.java | 0
.../org/eclipse/ui/keys/IKeyFormatter.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/keys/Key.java | 0
.../org/eclipse/ui/keys/KeyFormatterFactory.java | 0
.../org/eclipse/ui/keys/KeySequence.java | 0
.../org/eclipse/ui/keys/KeyStroke.java | 0
.../org/eclipse/ui/keys/ModifierKey.java | 0
.../org/eclipse/ui/keys/NaturalKey.java | 0
.../org/eclipse/ui/keys/ParseException.java | 0
.../org/eclipse/ui/keys/SWTKeySupport.java | 0
.../org/eclipse/ui/keys/SpecialKey.java | 0
.../org/eclipse/ui/keys/package.html | 0
.../org/eclipse/ui/menus/AbstractContributionFactory.java | 0
.../org/eclipse/ui/menus/AbstractWorkbenchTrimWidget.java | 0
.../org/eclipse/ui/menus/CommandContributionItem.java | 0
.../eclipse/ui/menus/CommandContributionItemParameter.java | 0
.../org/eclipse/ui/menus/ExtensionContributionFactory.java | 0
.../org/eclipse/ui/menus/IContributionRoot.java | 0
.../org/eclipse/ui/menus/IMenuService.java | 0
.../org/eclipse/ui/menus/IWorkbenchContribution.java | 0
.../org/eclipse/ui/menus/IWorkbenchWidget.java | 0
.../org/eclipse/ui/menus/MenuUtil.java | 0
.../org/eclipse/ui/menus/UIElement.java | 0
.../eclipse/ui/menus/WorkbenchWindowControlContribution.java | 0
.../org/eclipse/ui/menus/package.html | 0
.../org/eclipse/ui/model/AdaptableList.java | 0
.../org/eclipse/ui/model/BaseWorkbenchContentProvider.java | 0
.../org/eclipse/ui/model/ContributionComparator.java | 0
.../org/eclipse/ui/model/IComparableContribution.java | 0
.../org/eclipse/ui/model/IContributionService.java | 0
.../org/eclipse/ui/model/IWorkbenchAdapter.java | 0
.../org/eclipse/ui/model/IWorkbenchAdapter2.java | 0
.../org/eclipse/ui/model/IWorkbenchAdapter3.java | 0
.../org/eclipse/ui/model/PerspectiveLabelProvider.java | 0
.../org/eclipse/ui/model/WorkbenchAdapter.java | 0
.../org/eclipse/ui/model/WorkbenchLabelProvider.java | 0
.../org/eclipse/ui/model/WorkbenchPartLabelProvider.java | 0
.../org/eclipse/ui/model/WorkbenchViewerComparator.java | 0
.../org/eclipse/ui/model/WorkbenchViewerSorter.java | 0
.../org/eclipse/ui/model/package.html | 0
.../org/eclipse/ui/operations/IWorkbenchOperationSupport.java | 0
.../ui/operations/LinearUndoViolationUserApprover.java | 0
.../org/eclipse/ui/operations/NonLocalUndoUserApprover.java | 0
.../eclipse/ui/operations/OperationHistoryActionHandler.java | 0
.../org/eclipse/ui/operations/RedoActionHandler.java | 0
.../org/eclipse/ui/operations/UndoActionHandler.java | 0
.../org/eclipse/ui/operations/UndoRedoActionGroup.java | 0
.../org/eclipse/ui/operations/package.html | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/package.html | 0
.../org/eclipse/ui/part/AbstractMultiEditor.java | 0
.../org/eclipse/ui/part/CellEditorActionHandler.java | 0
.../org/eclipse/ui/part/CoolItemGroupMarker.java | 0
.../org/eclipse/ui/part/DrillDownAdapter.java | 0
.../org/eclipse/ui/part/DrillDownComposite.java | 0
.../org/eclipse/ui/part/DrillFrame.java | 0
.../org/eclipse/ui/part/DrillStack.java | 0
.../org/eclipse/ui/part/EditorActionBarContributor.java | 0
.../org/eclipse/ui/part/EditorInputTransfer.java | 0
.../org/eclipse/ui/part/EditorPart.java | 0
.../org/eclipse/ui/part/IContributedContentsView.java | 0
.../org/eclipse/ui/part/IDropActionDelegate.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/part/IPage.java | 0
.../org/eclipse/ui/part/IPageBookViewPage.java | 0
.../org/eclipse/ui/part/IPageSite.java | 0
.../org/eclipse/ui/part/ISetSelectionTarget.java | 0
.../org/eclipse/ui/part/IShowInSource.java | 0
.../org/eclipse/ui/part/IShowInTarget.java | 0
.../org/eclipse/ui/part/IShowInTargetList.java | 0
.../org/eclipse/ui/part/IWorkbenchPartOrientation.java | 0
.../org/eclipse/ui/part/IntroPart.java | 0
.../org/eclipse/ui/part/MessagePage.java | 0
.../org/eclipse/ui/part/MultiEditor.java | 0
.../org/eclipse/ui/part/MultiEditorInput.java | 0
.../eclipse/ui/part/MultiPageEditorActionBarContributor.java | 0
.../org/eclipse/ui/part/MultiPageEditorPart.java | 0
.../org/eclipse/ui/part/MultiPageEditorSite.java | 0
.../org/eclipse/ui/part/MultiPageSelectionProvider.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/part/Page.java | 0
.../org/eclipse/ui/part/PageBook.java | 0
.../org/eclipse/ui/part/PageBookView.java | 0
.../org/eclipse/ui/part/PageSite.java | 0
.../org/eclipse/ui/part/PageSwitcher.java | 0
.../org/eclipse/ui/part/PluginDropAdapter.java | 0
.../org/eclipse/ui/part/PluginTransfer.java | 0
.../org/eclipse/ui/part/PluginTransferData.java | 0
.../org/eclipse/ui/part/ShowInContext.java | 0
.../org/eclipse/ui/part/ViewPart.java | 0
.../org/eclipse/ui/part/WorkbenchPart.java | 0
.../org/eclipse/ui/part/package.html | 0
.../org/eclipse/ui/plugin/AbstractUIPlugin.java | 0
.../org/eclipse/ui/plugin/package.html | 0
.../eclipse/ui/preferences/IWorkbenchPreferenceContainer.java | 0
.../org/eclipse/ui/preferences/IWorkingCopyManager.java | 0
.../org/eclipse/ui/preferences/ScopedPreferenceStore.java | 0
.../org/eclipse/ui/preferences/SettingsTransfer.java | 0
.../org/eclipse/ui/preferences/ViewPreferencesAction.java | 0
.../org/eclipse/ui/preferences/ViewSettingsDialog.java | 0
.../org/eclipse/ui/preferences/WizardPropertyPage.java | 0
.../org/eclipse/ui/preferences/WorkingCopyManager.java | 0
.../org/eclipse/ui/preferences/package.html | 0
.../org/eclipse/ui/progress/DeferredTreeContentManager.java | 0
.../org/eclipse/ui/progress/IDeferredWorkbenchAdapter.java | 0
.../org/eclipse/ui/progress/IElementCollector.java | 0
.../org/eclipse/ui/progress/IJobRunnable.java | 0
.../org/eclipse/ui/progress/IProgressConstants.java | 0
.../org/eclipse/ui/progress/IProgressConstants2.java | 0
.../org/eclipse/ui/progress/IProgressService.java | 0
.../eclipse/ui/progress/IWorkbenchSiteProgressService.java | 0
.../org/eclipse/ui/progress/PendingUpdateAdapter.java | 0
.../org/eclipse/ui/progress/UIJob.java | 0
.../org/eclipse/ui/progress/WorkbenchJob.java | 0
.../org/eclipse/ui/progress/package.html | 0
.../org/eclipse/ui/quickaccess/IQuickAccessComputer.java | 0
.../eclipse/ui/quickaccess/IQuickAccessComputerExtension.java | 0
.../org/eclipse/ui/quickaccess/QuickAccessElement.java | 0
.../org/eclipse/ui/services/AbstractServiceFactory.java | 0
.../org/eclipse/ui/services/IDisposable.java | 0
.../org/eclipse/ui/services/IEvaluationReference.java | 0
.../org/eclipse/ui/services/IEvaluationService.java | 0
.../org/eclipse/ui/services/IServiceLocator.java | 0
.../org/eclipse/ui/services/IServiceScopes.java | 0
.../org/eclipse/ui/services/IServiceWithSources.java | 0
.../org/eclipse/ui/services/ISourceProviderService.java | 0
.../org/eclipse/ui/services/package.html | 0
.../org/eclipse/ui/splash/AbstractSplashHandler.java | 0
.../org/eclipse/ui/splash/BasicSplashHandler.java | 0
.../org/eclipse/ui/splash/package.html | 0
.../eclipse/ui/statushandlers/AbstractStatusAreaProvider.java | 0
.../org/eclipse/ui/statushandlers/AbstractStatusHandler.java | 0
.../eclipse/ui/statushandlers/IStatusAdapterConstants.java | 0
.../org/eclipse/ui/statushandlers/StatusAdapter.java | 0
.../org/eclipse/ui/statushandlers/StatusManager.java | 0
.../org/eclipse/ui/statushandlers/WorkbenchErrorHandler.java | 0
.../ui/statushandlers/WorkbenchStatusDialogManager.java | 0
.../org/eclipse/ui/statushandlers/package.html | 0
.../org/eclipse/ui/swt/IFocusService.java | 0
.../{Eclipse UI => eclipseui}/org/eclipse/ui/swt/package.html | 0
.../org/eclipse/ui/themes/ColorUtil.java | 0
.../org/eclipse/ui/themes/IColorFactory.java | 0
.../org/eclipse/ui/themes/ITheme.java | 0
.../org/eclipse/ui/themes/IThemeManager.java | 0
.../org/eclipse/ui/themes/IThemePreview.java | 0
.../org/eclipse/ui/themes/RGBBlendColorFactory.java | 0
.../org/eclipse/ui/themes/package.html | 0
.../org/eclipse/ui/views/IStickyViewDescriptor.java | 0
.../org/eclipse/ui/views/IViewCategory.java | 0
.../org/eclipse/ui/views/IViewDescriptor.java | 0
.../org/eclipse/ui/views/IViewRegistry.java | 0
.../org/eclipse/ui/views/WorkbenchViewerSetup.java | 0
.../org/eclipse/ui/views/package.html | 0
.../org/eclipse/ui/wizards/IWizardCategory.java | 0
.../org/eclipse/ui/wizards/IWizardDescriptor.java | 0
.../org/eclipse/ui/wizards/IWizardRegistry.java | 0
.../org/eclipse/ui/wizards/package.html | 0
.../eclipse/ui/internal/editorsupport/ComponentSupport.java | 0
1220 files changed, 4 insertions(+), 4 deletions(-)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/AbstractSourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ActiveShellExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/BasicWorkingSetElementAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ExtensionFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IActionBars2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IActionDelegate2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IActionDelegateWithEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IActionFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IAggregateWorkingSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IContainmentAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IDecoratorManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorActionBarContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorInput.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorLauncher.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorMatchingStrategy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IEditorSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IElementFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IExportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IFileEditorMapping.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IFolderLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IImportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IInPlaceEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IInPlaceEditorInput.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IKeyBindingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ILocalWorkingSetManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IMemento.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/INavigationHistory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/INavigationLocation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/INavigationLocationProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/INestableKeyBindingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/INewWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/INullSelectionListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IObjectActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPageLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPageListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPageService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPartListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPartListener2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPartService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPathEditorInput.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPersistable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPersistableEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPersistableElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveListener2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveListener3.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveListener4.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPerspectiveRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPlaceholderFolderLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPluginContribution.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IPropertyListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IReusableEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISaveableFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISaveablePart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISaveablePart2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISaveablesLifecycleListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISaveablesSource.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISecondarySaveableSource.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISelectionListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISelectionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISharedImages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IShowEditorInput.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISizeProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISourceProviderListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/ISources.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IStartup.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IViewActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IViewLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IViewPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IViewReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IViewSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWindowListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbench.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchActionConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchCommandConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPart2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPart3.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPartConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPartDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPartReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPartSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPreferenceConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPropertyPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchPropertyPageMulti.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchWindow.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchWindowActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchWindowPulldownDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchWindowPulldownDelegate2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkbenchWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkingSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkingSetElementAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkingSetManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkingSetUpdater.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/IWorkingSetUpdater2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/LegacyHandlerSubmissionExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/MultiPartInitException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/NavigationLocation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/OpenAndLinkWithEditorHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/PartInitException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/PerspectiveAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/PlatformUI.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/Saveable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/SaveablesLifecycleEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/SelectionEnabler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/SelectionListenerFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/SubActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/SubActionBars2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/WorkbenchEncoding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/WorkbenchException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/XMLMemento.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/about/IInstallationPageContainer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/about/ISystemSummarySection.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/about/InstallationPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/about/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ActionContext.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ActionFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ActionGroup.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/BaseNewWizardMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/BaseSelectionListenerAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/CommandNotMappedException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/CompoundContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ContributedAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ContributionItemFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ExportResourcesAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/ImportResourcesAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/LabelRetargetAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/NewWizardAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/NewWizardDropDownAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/OpenInNewWindowAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/OpenNewPageMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/OpenNewWindowMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/OpenPerspectiveAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/OpenPerspectiveMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/PartEventAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/PerspectiveMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/QuickMenuCreator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/RetargetAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/SelectionProviderAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/SimpleWildcardTester.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/WorkingSetFilterActionGroup.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/actions/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ActivitiesPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ActivityCategoryPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ActivityEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ActivityManagerEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/CategoryEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IActivity.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IActivityListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IActivityManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IActivityManagerListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IActivityPatternBinding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IActivityRequirementBinding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ICategory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ICategoryActivityBinding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ICategoryListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IIdentifier.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IIdentifierListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IMutableActivityManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ITriggerPoint.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ITriggerPointAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/ITriggerPointManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IWorkbenchActivitySupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/IdentifierEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/NotDefinedException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/WorkbenchActivityHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/WorkbenchTriggerPointAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/activities/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/ActionBarAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/DisplayAccess.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/IActionBarConfigurer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/IWorkbenchConfigurer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/IWorkbenchWindowConfigurer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/WorkbenchAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/WorkbenchWindowAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/application/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/branding/IBundleGroupConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/branding/IProductConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/branding/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/browser/AbstractWebBrowser.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/browser/AbstractWorkbenchBrowserSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/browser/IWebBrowser.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/browser/IWorkbenchBrowserSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/browser/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/commands/ExtensionParameterValues.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/commands/ICommandImageService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/commands/ICommandService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/commands/IElementReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/commands/IElementUpdater.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/commands/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/ContextEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/ContextException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/ContextManagerEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/EnabledSubmission.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IContext.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IContextActivation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IContextListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IContextManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IContextManagerListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IContextService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/IWorkbenchContextSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/NotDefinedException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/contexts/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/databinding/typed/WorkbenchProperties.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/AbstractElementListSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/CheckedTreeSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ContainerCheckedTreeViewer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/EditorSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ElementListSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ElementTreeSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/FileEditorMappingContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/FileEditorMappingLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/FileSystemElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/FilteredItemsSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/FilteredList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/FilteredTree.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/IOverwriteQuery.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ISelectionStatusValidator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ISelectionValidator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/IStyledStringHighlighter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/IWorkingSetEditWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/IWorkingSetNewWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/IWorkingSetPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/IWorkingSetSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ListDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/ListSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/PatternFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/PreferenceLinkArea.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/PreferencesUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/PropertyDialogAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/PropertyPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/SearchPattern.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/SelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/SelectionStatusDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/StyledStringHighlighter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/TwoArrayQuickSorter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/TwoPaneElementSelector.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/TypeFilteringDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/WorkingSetConfigurationBlock.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/WorkingSetGroup.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/YesNoCancelListSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dialogs/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dnd/IDragAndDropService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/dnd/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/fieldassist/ContentAssistCommandAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/fieldassist/ContentAssistField.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/fieldassist/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/CollapseAllHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/ExpandAllHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/HandlerUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/IHandlerActivation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/IHandlerService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/RadioState.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/RegistryRadioState.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/RegistryToggleState.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/ShowPerspectiveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/ShowViewHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/handlers/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/help/AbstractHelpUI.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/help/IWorkbenchHelpSystem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/help/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/AbstractEnabledHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/AbstractEvaluationHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/AbstractWorkingSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/AbstractWorkingSetManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionPresentation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionSetActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionSetContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionSetManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionSetMenuManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionSetSeparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActionSetsEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActivateEditorHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ActivityPersistanceHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/AggregateWorkingSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/BindingToModelProcessor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/BrandingProperties.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/BundleGroupProperties.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ChangeToPerspectiveMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CloseAllHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CloseAllSavedAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CloseEditorHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CloseOthersHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CommandToModelProcessor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ConfigurationInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ContextToModelProcessor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CoolBarToTrimManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CycleEditorHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CyclePerspectiveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/CycleViewHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/DefaultSaveable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/DirtyPerspectiveMarker.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/E4PartWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EarlyStartupRunnable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorActionBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorHistory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorHistoryItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorMenuManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorPluginAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/EditorSiteDragAndDropServiceImpl.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ErrorEditorPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ErrorViewPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ExceptionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ExtensionEventHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ExtensionEventHandler.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ExtensionEventHandlerMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/FilteredTableBaseHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/HeapStatus.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IActionSetContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IBackgroundSaveListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IChangeListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IHeapStatusConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IMenuServiceWorkaround.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IObjectActionContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IObjectContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IPreferenceConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ISelectionConversionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IWorkbenchConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IWorkbenchGraphicConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IWorkbenchHelpContextIds.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/IWorkbenchThemeConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/InternalHandlerUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/InternalSaveable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/JFaceUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/KeyBindingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/LargeFileLimitsPreferenceHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/LegacyResourceSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/LegacyTrim.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/LocalWorkingSetManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/NavigationHistory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/NavigationHistoryAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/NavigationHistoryEditorInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/NavigationHistoryEntry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ObjectActionContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ObjectActionContributorManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ObjectActionContributorReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ObjectContributorManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ObjectFilterTest.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ObjectPluginAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/OpenPerspectivePropertyTester.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/OpenPreferencesAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PageEventAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PageListenerList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PagePartSelectionTracker.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PartPane.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PartPluginAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PartSelectionListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PartService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PartSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PendingSyncExec.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/Perspective.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PerspectiveAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PerspectiveExtensionReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PerspectiveListenerList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PerspectiveTagger.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PerspectiveTracker.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PlaceholderContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PlatformUIPreferenceListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PluginAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PluginActionBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PluginActionContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PluginActionCoolBarContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PluginActionSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PluginActionSetBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/PopupMenuExtender.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ProductInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ProductProperties.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ReopenEditorMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SaveableHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SaveablesList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SelectionAdapterFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SelectionConversionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SharedImages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ShowInHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ShowInMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ShowPartPaneMenuHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ShowViewMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ShowViewMenuHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SlavePageService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SlavePartService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SlaveSelectionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SplitHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SplitValues.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/StandardTrim.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/StartupThreading.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/SwitchToWindowMenu.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ToggleEditorsVisibilityAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/TrimUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/UILockListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/UISynchronizer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewActionBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewIntroAdapterPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewIntroAdapterSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewPluginAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/ViewerActionBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WWinActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WWinPluginAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WWinPluginPulldown.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WindowsDefenderConfigurator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/Workbench.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchConfigurer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchEditorsHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchErrorHandlerProxy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchHandlerServiceHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchImages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchIntroManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchLayoutSettingsTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchPartReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchPlugin.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchSupportFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchWindow.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbenchWindowConfigurer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkbookEditorsHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkingSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkingSetComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkingSetFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkingSetManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/WorkingSetMenuContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutBundleData.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutBundleGroupData.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutData.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutFeaturesButtonManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutFeaturesPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutPluginsPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutSystemPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutTextManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/AboutUtils.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/BundleSigningInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/ConfigurationLogDefaultSection.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/CopyTableSelectionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/InstallationDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/InstallationHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/ProductInfoDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/about/ProductInfoPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/AbstractWorkingSetPulldownDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/ClearWorkingSetAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/CommandAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/DynamicHelpAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/EditWorkingSetAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/HelpContentsAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/HelpSearchAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/HelpSearchContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/ModifyWorkingSetDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/NewWizardShortcutAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/SelectWorkingSetAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/actions/SelectWorkingSetsAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/AbstractActivityManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/AbstractActivityRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/Activity.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityPatternBinding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityPatternBindingDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityPropertyTester.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityRegistryEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityRequirementBinding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ActivityRequirementBindingDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/Category.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/CategoryActivityBinding.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/CategoryActivityBindingDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/CategoryDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ExtensionActivityRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/IActivityRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/IActivityRegistryListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/Identifier.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/InternalActivityHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/MutableActivityManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/PatternUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/Persistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ProxyActivityManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/AbstractTriggerPoint.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityCategoryContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityCategoryLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityEnabler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ActivityViewerFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/CategorizedActivity.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/EnablementDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/EnablementDialog.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/ImageBindingRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/RegistryTriggerPoint.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/TriggerPointManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/WorkbenchActivitySupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/WorkbenchTriggerPoints.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/activities/ws/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/application/CompatibilityActionBarAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/application/CompatibilityWorkbenchWindowAdvisor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/browser/DefaultWebBrowser.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/browser/DefaultWorkbenchBrowserSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/browser/WorkbenchBrowserSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandImageManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandImageManagerEvent.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandImagePersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandImageService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandServiceFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/CommandStateProxy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/ElementReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/ICommandImageManagerListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/ILegacyAttributeNames.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/ParameterValueConverterProxy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/commands/SlaveCommandService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ActiveContextSourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextActivation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextAuthority.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextLegacyWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextManagerFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextManagerLegacyWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/ContextServiceFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/LegacyContextListenerWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/NestableContextService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/SlaveContextService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/contexts/WorkbenchContextSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/ActivePageProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/ActivePartProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/ActiveWindowProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/AdaptedValueProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/EditorInputProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/ListeningValue.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/MultiSelectionProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/SelectionServiceListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/databinding/SingleSelectionProperty.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DeclarativeDecorator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecorationBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecorationReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecorationResult.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecorationScheduler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecoratorDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecoratorManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/DecoratorRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/FullDecoratorDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/FullDecoratorRunnable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/FullImageDecoratorRunnable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/FullTextDecoratorRunnable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/LightweightActionDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/LightweightDecoratorDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/decorators/LightweightDecoratorManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/AboutDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/AboutFeaturesDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/AboutPluginsDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/AbstractWorkingSetDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/AdaptableForwarder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/CapabilityFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ContentTypeFilenameAssociationDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ContentTypesPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/DataTransferWizardCollectionComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/DecoratorsPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/DialogUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/EmptyPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/EmptyPropertyPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ErrorPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/EventLoopProgressMonitor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ExportPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ExportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/FileEditorsPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/FileExtensionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/GlobalizationPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/IPropertyPageContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ImportExportPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ImportExportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ImportPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ImportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/NewContentTypeDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/NewWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/NewWizardCollectionComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/NewWizardNewPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/NewWizardSelectionPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PerspContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PerspectivesPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PreferenceBoldLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PreferenceHistoryEntry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PreferenceNodeFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PreferencePageHistory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PreferencePatternFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PropertyDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PropertyPageContributorManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PropertyPageManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/PropertyPageNode.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/RegistryPageContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/SavePerspectiveDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/SelectPerspectiveDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ShowViewDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/SimpleWorkingSetSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/StartupPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ViewComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ViewContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ViewLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ViewPatternFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WizardActivityFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WizardCollectionElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WizardContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WizardPatternFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WizardTagFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchDialogBlockedHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchEditorsDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceNode.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchWizardElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchWizardListSelectionPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchWizardNode.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkbenchWizardSelectionPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkingSetEditWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkingSetFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkingSetLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkingSetNewWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkingSetSelectionDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/WorkingSetTypePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/ActionSetFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/ActionSetSelectionChangedListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/CategoryCheckProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/CustomizeActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/CustomizePerspectiveDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/FilteredModelCheckListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/FilteredTreeCheckProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/FilteredViewerCheckListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/GrayOutUnavailableLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/ItemDetailToolTip.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/NameAndDescriptionToolTip.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/ShortcutLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/ShowUsedActionSetsFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/TableToolTip.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/TreeManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/dialogs/cpd/UnavailableContributionItemCheckListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/ActionBars.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/CompatibilityEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/CompatibilityPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/CompatibilityView.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/E4Util.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/ModeledFolderLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayoutUtils.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/ModeledPlaceholderFolderLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/ModeledViewLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/compatibility/SelectionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/migration/InfoReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/migration/MementoReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/migration/PerspectiveBuilder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/e4/migration/PerspectiveReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/ActivePartExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/AlwaysEnabledExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/LegacyActionSetExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/LegacyEditorActionBarExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/LegacyEditorContributionExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/LegacySelectionEnablerWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/LegacyViewContributionExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/expressions/WorkbenchWindowExpression.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/AbstractSaveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ActionCommandMappingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ActionDelegateHandlerProxy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ActiveContextInfoHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/CloseAllPerspectivesHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ClosePartHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ClosePerspectiveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/CommandLegacyActionWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ContextMenuHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/CyclePageHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/DirtyStateTracker.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/DisplayHelpHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/DynamicHelpHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/E4HandlerProxy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/EditActionSetsHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ExecutableExtensionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/FullScreenHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/HandlerActivation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/HandlerPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/HandlerProxy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/HelpContentsHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/HelpSearchHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/HideTrimBarsHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/IActionCommandMappingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/IWorkbenchWindowHandlerDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/IntroHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/LegacyHandlerService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/LockToolBarHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/MaximizePartHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/MinimizePartHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/NewEditorHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/OpenInNewWindowHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/PinEditorHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/PropertyDialogHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/QuickMenuHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/QuitHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ResetPerspectiveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/RestartWorkbenchHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ReuseEditorTester.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/SaveAllHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/SaveAsHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/SaveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/SavePerspectiveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/SelectAllHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ShowKeyAssistHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ShowPreferencePageHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/SpyHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ToggleCoolbarHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/ToggleStatusBarHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/TraversePageHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/WidgetMethodHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/WizardHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/handlers/WorkbenchWindowHandlerDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/help/CommandHelpServiceImpl.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/help/HelpServiceImpl.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/help/WorkbenchHelpSystem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/IIntroConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/IIntroDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/IIntroRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/IntroDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/IntroMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/IntroRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/intro/intro.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/AbstractKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/AbstractKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/AbstractModifierKeyComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/AlphabeticModifierKeyComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/BindingPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/BindingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/CategoryPatternFilter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/CompactKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/EmacsKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/EmacsKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/FormalKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/GlobalKeyAssistDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/GnomeKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/ImageFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/KdeKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/KeyAssistDialog.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/KeyAssistMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/KeysPreferenceFiltersDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/KeysPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/KeysPreferencePage.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/MacKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/MacKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NativeKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NativeKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NativeModifierKeyComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NewKeysPreferenceMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NewKeysPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NewKeysPreferencePage.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/NoKeysPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/WindowsKeyFormatter.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/WorkbenchKeyboard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/WorkbenchKeyboard.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/BindingElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/BindingModel.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/CommonModel.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/ConflictModel.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/ContextElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/ContextModel.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/KeyController.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/ModelElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/SchemeElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/model/SchemeModel.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/show/ShowKeysListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/show/ShowKeysToggleHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/keys/show/ShowKeysUI.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/CacheWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/CellData.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/CellLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/CellLayoutUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/GridInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/ICachingLayout.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/LayoutCache.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/LayoutUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/Row.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/layout/SizeCache.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/CommandMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/CompatibilityWorkbenchWindowControlContribution.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/ContributionFactoryGenerator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/ContributionRoot.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/ControlContributionRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/DynamicMenuContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/DynamicToolBarContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/FocusControlSourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/IActionSetsListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/InternalControlContribution.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/LegacyActionPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/MenuAdditionCacheEntry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/MenuFactoryGenerator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/MenuHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/MenuLocationURI.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/MenuPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/SlaveMenuService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/WorkbenchMenuService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/menus/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/ExternalEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/Policy.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/ProgramImageDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/StatusUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/TestPartListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/TextMatcher.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/UIListenerLogging.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/misc/UIStats.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/model/ContributionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/operations/AdvancedValidationUserApprover.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/operations/TimeTriggeredProgressMonitorDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/operations/WorkbenchOperationSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/part/IMultiPageEditorSiteHolder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/part/IPageSiteHolder.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/part/NullEditorInput.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/part/StatusPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/Base64.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/IDynamicPropertyMap.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/IPropertyMap.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/IPropertyMapListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/PreferenceTransferElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/PreferenceTransferManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/PreferencesSettingsTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/PropertyListenerList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/PropertyMapAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/PropertyMapUnion.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/SettingsTransferRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/ThemeAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExpressionNode.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExtensionNode.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/WorkbenchSettingsTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/WorkingCopyPreferences.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/WorkingSetPropertyPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/preferences/WorkingSetSettingsTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/AbstractProgressViewer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/AnimationItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/AnimationManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/BlockedJobsDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/DetailedProgressViewer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/FinishedJobs.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/GroupInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/IAnimationProcessor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/IJobBusyListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/IJobProgressManagerListener.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/IProgressUpdateCollector.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/JobInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/JobSnapshot.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/JobTreeElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/JobsViewPreferenceDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressAnimationItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressAnimationProcessor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressCanvasViewer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressInfoItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressManagerUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressMonitorFocusJobDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressRegion.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressView.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressViewUpdater.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressViewerContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/ProgressViewerLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/StatusAdapterHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/SubTaskInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/TaskBarProgressManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/TaskInfo.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/WorkbenchSiteProgressService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/progress/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/provisional/application/IActionBarConfigurer2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/CamelUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/PreviousPicksProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessContents.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessEntry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessExtensionManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessMatcher.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/QuickAccessProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/SearchField.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/ActionElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/ActionProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/CommandElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/CommandProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/EditorElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/EditorProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/HelpSearchElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/HelpSearchProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/PerspectiveElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/PerspectiveProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/PreferenceElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/PreferenceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/PropertiesElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/PropertiesProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/ViewElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/ViewProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/WizardElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/quickaccess/providers/WizardProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ActionSetDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ActionSetRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/CategorizedPageRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/Category.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/EditorDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/EditorRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/EditorRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/FileEditorMapping.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/IActionSet.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/IActionSetDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/IWorkbenchRegistryConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ImportExportPespectiveHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/KeywordRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PerspectiveDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PerspectiveParameterValues.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PerspectiveRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PreferencePageParameterValues.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PreferencePageRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PreferenceTransferRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/PropertyPagesRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/RegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/StickyViewDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ViewCategory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ViewDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ViewParameterValues.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/ViewRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/WizardParameterValues.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/WizardsRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/WorkingSetDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/WorkingSetRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/registry/WorkingSetRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/ActionSetSourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/EvaluationReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/EvaluationResultCache.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/EvaluationService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/EvaluationServiceFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/ExpressionAuthority.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/IEvaluationResultCache.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/INestable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/IServiceLocatorCreator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/IWorkbenchLocationService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/LogThrottle.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/MenuSourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/PreferencePersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/RegistryPersistence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/ServiceLocator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/ServiceLocatorCreator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/SlaveEvaluationService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/SourcePriorityNameMapping.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/SourceProviderService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/WorkbenchLocationService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/WorkbenchServiceRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/services/WorkbenchSourceProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/splash/EclipseSplashHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/splash/SplashHandlerFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/DefaultDetailsArea.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/DetailsAreaManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/IStatusDialogConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/InternalDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/LabelProviderWrapper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/StackTraceSupportArea.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptorsMap.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/StatusHandlerProductBindingDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/StatusHandlerRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/SupportTray.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/WorkbenchStatusDialogManagerImpl.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/statushandlers/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/testing/ContributionInfoMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/testing/PluginContributionAdapterFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/testing/WorkbenchPartTestable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/testing/WorkbenchTestable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/testing/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/CascadingColorRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/CascadingFontRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/CascadingMap.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/CascadingTheme.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ColorAndFontProviderImpl.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ColorDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/FontDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ICategorizedThemeElementDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/IEditable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/IHierarchalThemeElementDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/IThemeDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/IThemeElementDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/IThemeRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/LightColorFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/RGBBrightnessColorFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/RGBContrastFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/RGBInfoColorFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/RGBVisibleContrastColorFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/Theme.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/Theme.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeElementCategory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeElementDefinition.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeElementHelper.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeRegistryReader.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemeRegistryReader.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/ThemesExtension.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/WorkbenchPreview.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/themes/WorkbenchThemeManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/tweaklets/DummyTitlePathUpdater.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/tweaklets/InterceptContributions.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/tweaklets/TabBehaviour.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/tweaklets/TabBehaviourMRU.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/tweaklets/TitlePathUpdater.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/tweaklets/Tweaklets.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/util/BundleUtility.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/util/ConfigurationElementMemento.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/util/Descriptors.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/util/ImageSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/util/PrefUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/util/Util.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/AbstractExtensionWizardRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/AbstractWizardRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/ExportWizardRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/ImportWizardRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/NewWizardRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/PreferencesContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/PreferencesExportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/PreferencesImportWizard.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/PreferencesMessages.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesExportPage1.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesImportPage1.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/internal/wizards/preferences/messages.properties (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/intro/IIntroManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/intro/IIntroPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/intro/IIntroSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/intro/IntroContentDetector.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/intro/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/CharacterKey.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/IBindingService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/IKeyFormatter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/Key.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/KeyFormatterFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/KeySequence.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/KeyStroke.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/ModifierKey.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/NaturalKey.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/ParseException.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/SWTKeySupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/SpecialKey.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/keys/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/AbstractContributionFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/AbstractWorkbenchTrimWidget.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/CommandContributionItem.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/CommandContributionItemParameter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/ExtensionContributionFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/IContributionRoot.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/IMenuService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/IWorkbenchContribution.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/IWorkbenchWidget.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/MenuUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/UIElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/WorkbenchWindowControlContribution.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/menus/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/AdaptableList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/BaseWorkbenchContentProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/ContributionComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/IComparableContribution.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/IContributionService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/IWorkbenchAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/IWorkbenchAdapter2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/IWorkbenchAdapter3.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/PerspectiveLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/WorkbenchAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/WorkbenchLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/WorkbenchPartLabelProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/WorkbenchViewerComparator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/WorkbenchViewerSorter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/model/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/IWorkbenchOperationSupport.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/LinearUndoViolationUserApprover.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/NonLocalUndoUserApprover.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/OperationHistoryActionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/RedoActionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/UndoActionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/UndoRedoActionGroup.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/operations/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/AbstractMultiEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/CellEditorActionHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/CoolItemGroupMarker.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/DrillDownAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/DrillDownComposite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/DrillFrame.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/DrillStack.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/EditorActionBarContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/EditorInputTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/EditorPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IContributedContentsView.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IDropActionDelegate.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IPageBookViewPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IPageSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/ISetSelectionTarget.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IShowInSource.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IShowInTarget.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IShowInTargetList.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IWorkbenchPartOrientation.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/IntroPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MessagePage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MultiEditor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MultiEditorInput.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MultiPageEditorActionBarContributor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MultiPageEditorPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MultiPageEditorSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/MultiPageSelectionProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/Page.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PageBook.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PageBookView.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PageSite.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PageSwitcher.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PluginDropAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PluginTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/PluginTransferData.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/ShowInContext.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/ViewPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/WorkbenchPart.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/part/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/plugin/AbstractUIPlugin.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/plugin/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/IWorkbenchPreferenceContainer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/IWorkingCopyManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/ScopedPreferenceStore.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/SettingsTransfer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/ViewPreferencesAction.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/ViewSettingsDialog.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/WizardPropertyPage.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/WorkingCopyManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/preferences/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/DeferredTreeContentManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IDeferredWorkbenchAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IElementCollector.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IJobRunnable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IProgressConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IProgressConstants2.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IProgressService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/IWorkbenchSiteProgressService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/PendingUpdateAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/UIJob.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/WorkbenchJob.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/progress/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/quickaccess/IQuickAccessComputer.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/quickaccess/IQuickAccessComputerExtension.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/quickaccess/QuickAccessElement.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/AbstractServiceFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/IDisposable.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/IEvaluationReference.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/IEvaluationService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/IServiceLocator.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/IServiceScopes.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/IServiceWithSources.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/ISourceProviderService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/services/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/splash/AbstractSplashHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/splash/BasicSplashHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/splash/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/AbstractStatusAreaProvider.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/AbstractStatusHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/IStatusAdapterConstants.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/StatusAdapter.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/StatusManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/WorkbenchErrorHandler.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/WorkbenchStatusDialogManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/statushandlers/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/swt/IFocusService.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/swt/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/ColorUtil.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/IColorFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/ITheme.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/IThemeManager.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/IThemePreview.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/RGBBlendColorFactory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/themes/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/views/IStickyViewDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/views/IViewCategory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/views/IViewDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/views/IViewRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/views/WorkbenchViewerSetup.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/views/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/wizards/IWizardCategory.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/wizards/IWizardDescriptor.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/wizards/IWizardRegistry.java (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI => eclipseui}/org/eclipse/ui/wizards/package.html (100%)
rename bundles/org.eclipse.ui.workbench/{Eclipse UI Editor Support => eclipseuieditorsupport}/org/eclipse/ui/internal/editorsupport/ComponentSupport.java (100%)
diff --git a/bundles/org.eclipse.ui.workbench/.classpath b/bundles/org.eclipse.ui.workbench/.classpath
index 095ce0d5eaf..71787b2a7b2 100644
--- a/bundles/org.eclipse.ui.workbench/.classpath
+++ b/bundles/org.eclipse.ui.workbench/.classpath
@@ -2,7 +2,7 @@
-
-
+
+
diff --git a/bundles/org.eclipse.ui.workbench/build.properties b/bundles/org.eclipse.ui.workbench/build.properties
index 0bb95f1d0c3..fd4ce5a82bf 100644
--- a/bundles/org.eclipse.ui.workbench/build.properties
+++ b/bundles/org.eclipse.ui.workbench/build.properties
@@ -20,8 +20,8 @@ bin.includes = plugin.properties,\
LegacyIDE.e4xmi,\
OSGI-INF/
src.includes = about.html
-source.. = Eclipse UI/,\
- Eclipse UI Editor Support/
+source.. = eclipseui/,\
+ eclipseuieditorsupport/
output.. = bin/
# Maven properties, see https://github.com/eclipse/tycho/wiki/Tycho-Pomless
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/e4/ui/workbench/addons/perspectiveswitcher/PerspectiveSwitcher.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/AbstractSourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/AbstractSourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/AbstractSourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/AbstractSourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ActiveShellExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ActiveShellExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ActiveShellExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ActiveShellExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/BasicWorkingSetElementAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/BasicWorkingSetElementAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/BasicWorkingSetElementAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/BasicWorkingSetElementAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ExtensionFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ExtensionFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ExtensionFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ExtensionFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionBars2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionBars2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionBars2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionBars2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionDelegate2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionDelegate2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionDelegate2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionDelegate2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionDelegateWithEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionDelegateWithEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionDelegateWithEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionDelegateWithEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IActionFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IActionFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IAggregateWorkingSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IAggregateWorkingSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IAggregateWorkingSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IAggregateWorkingSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IContainmentAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IContainmentAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IContainmentAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IContainmentAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IDecoratorManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IDecoratorManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IDecoratorManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IDecoratorManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorActionBarContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorActionBarContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorActionBarContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorActionBarContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorInput.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorInput.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorInput.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorInput.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorLauncher.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorLauncher.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorLauncher.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorLauncher.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorMatchingStrategy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorMatchingStrategy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorMatchingStrategy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorMatchingStrategy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IEditorSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IEditorSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IElementFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IElementFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IElementFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IElementFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IExportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IExportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IExportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IExportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IFileEditorMapping.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IFileEditorMapping.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IFileEditorMapping.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IFileEditorMapping.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IFolderLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IFolderLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IFolderLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IFolderLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IImportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IImportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IImportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IImportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IInPlaceEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IInPlaceEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IInPlaceEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IInPlaceEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IInPlaceEditorInput.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IInPlaceEditorInput.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IInPlaceEditorInput.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IInPlaceEditorInput.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IKeyBindingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IKeyBindingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IKeyBindingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IKeyBindingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ILocalWorkingSetManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ILocalWorkingSetManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ILocalWorkingSetManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ILocalWorkingSetManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IMemento.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IMemento.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IMemento.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IMemento.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INavigationHistory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INavigationHistory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INavigationHistory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INavigationHistory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INavigationLocation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INavigationLocation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INavigationLocation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INavigationLocation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INavigationLocationProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INavigationLocationProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INavigationLocationProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INavigationLocationProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INestableKeyBindingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INestableKeyBindingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INestableKeyBindingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INestableKeyBindingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INewWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INewWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INewWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INewWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INullSelectionListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INullSelectionListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/INullSelectionListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/INullSelectionListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IObjectActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IObjectActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IObjectActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IObjectActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPageLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPageLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPageLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPageLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPageListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPageListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPageListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPageListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPageService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPageService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPageService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPageService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPartListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPartListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPartListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPartListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPartListener2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPartListener2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPartListener2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPartListener2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPartService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPartService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPartService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPartService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPathEditorInput.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPathEditorInput.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPathEditorInput.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPathEditorInput.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPersistable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPersistable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPersistable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPersistable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPersistableEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPersistableEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPersistableEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPersistableEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPersistableElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPersistableElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPersistableElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPersistableElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener3.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener3.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener3.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener3.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener4.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener4.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveListener4.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveListener4.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPerspectiveRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPerspectiveRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPlaceholderFolderLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPlaceholderFolderLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPlaceholderFolderLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPlaceholderFolderLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPluginContribution.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPluginContribution.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPluginContribution.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPluginContribution.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPropertyListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPropertyListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IPropertyListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IPropertyListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IReusableEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IReusableEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IReusableEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IReusableEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveableFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveableFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveableFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveableFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablePart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablePart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablePart2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablePart2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablesLifecycleListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablesLifecycleListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablesLifecycleListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablesLifecycleListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablesSource.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablesSource.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablesSource.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISaveablesSource.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISecondarySaveableSource.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISecondarySaveableSource.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISecondarySaveableSource.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISecondarySaveableSource.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISelectionListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISelectionListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISelectionListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISelectionListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISelectionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISelectionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISelectionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISelectionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISharedImages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISharedImages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISharedImages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISharedImages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IShowEditorInput.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IShowEditorInput.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IShowEditorInput.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IShowEditorInput.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISizeProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISizeProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISizeProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISizeProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISourceProviderListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISourceProviderListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISourceProviderListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISourceProviderListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISources.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISources.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISources.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/ISources.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IStartup.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IStartup.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IStartup.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IStartup.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IViewSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IViewSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWindowListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWindowListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWindowListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWindowListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbench.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbench.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbench.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbench.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchActionConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchActionConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchActionConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchActionConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchCommandConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchCommandConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchCommandConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchCommandConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPart2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPart2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPart2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPart2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPart3.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPart3.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPart3.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPart3.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPartSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPartSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPreferenceConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferenceConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPreferenceConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPropertyPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPropertyPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPropertyPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPropertyPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPropertyPageMulti.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPropertyPageMulti.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchPropertyPageMulti.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchPropertyPageMulti.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindow.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindow.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindow.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindow.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindowActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindowActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindowActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindowActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindowPulldownDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindowPulldownDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindowPulldownDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindowPulldownDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindowPulldownDelegate2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindowPulldownDelegate2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWindowPulldownDelegate2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWindowPulldownDelegate2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkbenchWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkbenchWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetElementAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetElementAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetElementAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetElementAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetUpdater.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetUpdater.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetUpdater.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetUpdater.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetUpdater2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetUpdater2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/IWorkingSetUpdater2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/IWorkingSetUpdater2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/LegacyHandlerSubmissionExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/LegacyHandlerSubmissionExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/LegacyHandlerSubmissionExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/LegacyHandlerSubmissionExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/MultiPartInitException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/MultiPartInitException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/MultiPartInitException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/MultiPartInitException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/NavigationLocation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/NavigationLocation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/NavigationLocation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/NavigationLocation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/OpenAndLinkWithEditorHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/OpenAndLinkWithEditorHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/OpenAndLinkWithEditorHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/OpenAndLinkWithEditorHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/PartInitException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/PartInitException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/PartInitException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/PartInitException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/PerspectiveAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/PerspectiveAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/PerspectiveAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/PerspectiveAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/PlatformUI.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/PlatformUI.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/PlatformUI.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/PlatformUI.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/Saveable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/Saveable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/Saveable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/Saveable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SaveablesLifecycleEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SaveablesLifecycleEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SaveablesLifecycleEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SaveablesLifecycleEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SelectionEnabler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SelectionEnabler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SelectionEnabler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SelectionEnabler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SelectionListenerFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SelectionListenerFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SelectionListenerFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SelectionListenerFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SubActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SubActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SubActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SubActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SubActionBars2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SubActionBars2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/SubActionBars2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/SubActionBars2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/WorkbenchEncoding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/WorkbenchEncoding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/WorkbenchEncoding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/WorkbenchEncoding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/WorkbenchException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/WorkbenchException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/WorkbenchException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/WorkbenchException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/XMLMemento.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/XMLMemento.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/XMLMemento.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/XMLMemento.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/IInstallationPageContainer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/IInstallationPageContainer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/IInstallationPageContainer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/IInstallationPageContainer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/ISystemSummarySection.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/ISystemSummarySection.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/ISystemSummarySection.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/ISystemSummarySection.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/InstallationPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/InstallationPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/InstallationPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/InstallationPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/about/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/about/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionContext.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionContext.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionContext.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionContext.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionGroup.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionGroup.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ActionGroup.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ActionGroup.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/BaseNewWizardMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/BaseNewWizardMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/BaseNewWizardMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/BaseNewWizardMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/BaseSelectionListenerAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/BaseSelectionListenerAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/BaseSelectionListenerAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/BaseSelectionListenerAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/CommandNotMappedException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/CommandNotMappedException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/CommandNotMappedException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/CommandNotMappedException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/CompoundContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/CompoundContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/CompoundContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/CompoundContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ContributedAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ContributedAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ContributedAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ContributedAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ContributionItemFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ContributionItemFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ContributionItemFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ContributionItemFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ExportResourcesAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ExportResourcesAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ExportResourcesAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ExportResourcesAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ImportResourcesAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ImportResourcesAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/ImportResourcesAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/ImportResourcesAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/LabelRetargetAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/LabelRetargetAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/LabelRetargetAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/LabelRetargetAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/NewWizardAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/NewWizardAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/NewWizardAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/NewWizardAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/NewWizardDropDownAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/NewWizardDropDownAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/NewWizardDropDownAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/NewWizardDropDownAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenInNewWindowAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenInNewWindowAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenInNewWindowAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenInNewWindowAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenNewPageMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenNewPageMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenNewPageMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenNewPageMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenNewWindowMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenNewWindowMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenNewWindowMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenNewWindowMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenPerspectiveAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenPerspectiveAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenPerspectiveAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenPerspectiveAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenPerspectiveMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenPerspectiveMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/OpenPerspectiveMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/OpenPerspectiveMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PartEventAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/PartEventAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PartEventAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/PartEventAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PerspectiveMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/PerspectiveMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PerspectiveMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/PerspectiveMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/QuickMenuCreator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/QuickMenuCreator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/QuickMenuCreator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/QuickMenuCreator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/RetargetAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/RetargetAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/RetargetAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/RetargetAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/SelectionProviderAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/SelectionProviderAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/SelectionProviderAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/SelectionProviderAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/SimpleWildcardTester.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/SimpleWildcardTester.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/SimpleWildcardTester.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/SimpleWildcardTester.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/WorkingSetFilterActionGroup.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/WorkingSetFilterActionGroup.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/WorkingSetFilterActionGroup.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/WorkingSetFilterActionGroup.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/actions/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivitiesPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivitiesPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivitiesPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivitiesPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivityCategoryPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivityCategoryPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivityCategoryPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivityCategoryPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivityEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivityEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivityEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivityEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivityManagerEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivityManagerEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ActivityManagerEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ActivityManagerEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/CategoryEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/CategoryEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/CategoryEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/CategoryEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivity.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivity.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivity.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivity.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManagerListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityManagerListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManagerListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityManagerListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityPatternBinding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityPatternBinding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityPatternBinding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityPatternBinding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityRequirementBinding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityRequirementBinding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityRequirementBinding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IActivityRequirementBinding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ICategory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ICategory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ICategory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ICategory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ICategoryActivityBinding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ICategoryActivityBinding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ICategoryActivityBinding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ICategoryActivityBinding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ICategoryListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ICategoryListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ICategoryListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ICategoryListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IIdentifier.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IIdentifier.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IIdentifier.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IIdentifier.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IIdentifierListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IIdentifierListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IIdentifierListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IIdentifierListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IMutableActivityManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IMutableActivityManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IMutableActivityManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IMutableActivityManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ITriggerPoint.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ITriggerPoint.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ITriggerPoint.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ITriggerPoint.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ITriggerPointAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ITriggerPointAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ITriggerPointAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ITriggerPointAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ITriggerPointManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ITriggerPointManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/ITriggerPointManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/ITriggerPointManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IWorkbenchActivitySupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IWorkbenchActivitySupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IWorkbenchActivitySupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IWorkbenchActivitySupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IdentifierEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IdentifierEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IdentifierEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/IdentifierEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/NotDefinedException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/NotDefinedException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/NotDefinedException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/NotDefinedException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/WorkbenchActivityHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/WorkbenchActivityHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/WorkbenchActivityHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/WorkbenchActivityHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/WorkbenchTriggerPointAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/WorkbenchTriggerPointAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/WorkbenchTriggerPointAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/WorkbenchTriggerPointAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/activities/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/ActionBarAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/ActionBarAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/ActionBarAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/ActionBarAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/DisplayAccess.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/DisplayAccess.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/DisplayAccess.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/DisplayAccess.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/IActionBarConfigurer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/IActionBarConfigurer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/IActionBarConfigurer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/IActionBarConfigurer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/IWorkbenchConfigurer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/IWorkbenchConfigurer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/IWorkbenchConfigurer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/IWorkbenchConfigurer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/IWorkbenchWindowConfigurer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/IWorkbenchWindowConfigurer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/IWorkbenchWindowConfigurer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/IWorkbenchWindowConfigurer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/WorkbenchAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/WorkbenchAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/WorkbenchAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/WorkbenchAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/WorkbenchWindowAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/WorkbenchWindowAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/WorkbenchWindowAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/WorkbenchWindowAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/application/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/application/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/branding/IBundleGroupConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/branding/IBundleGroupConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/branding/IBundleGroupConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/branding/IBundleGroupConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/branding/IProductConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/branding/IProductConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/branding/IProductConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/branding/IProductConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/branding/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/branding/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/branding/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/branding/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/AbstractWebBrowser.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/AbstractWebBrowser.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/AbstractWebBrowser.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/AbstractWebBrowser.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/AbstractWorkbenchBrowserSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/AbstractWorkbenchBrowserSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/AbstractWorkbenchBrowserSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/AbstractWorkbenchBrowserSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/IWebBrowser.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/IWebBrowser.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/IWebBrowser.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/IWebBrowser.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/IWorkbenchBrowserSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/IWorkbenchBrowserSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/IWorkbenchBrowserSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/IWorkbenchBrowserSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/browser/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/browser/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/ExtensionParameterValues.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/ExtensionParameterValues.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/ExtensionParameterValues.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/ExtensionParameterValues.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/ICommandImageService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/ICommandImageService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/ICommandImageService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/ICommandImageService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/ICommandService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/ICommandService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/ICommandService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/ICommandService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/IElementReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/IElementReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/IElementReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/IElementReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/IElementUpdater.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/IElementUpdater.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/IElementUpdater.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/IElementUpdater.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/commands/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/commands/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/ContextEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/ContextEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/ContextEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/ContextEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/ContextException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/ContextException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/ContextException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/ContextException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/ContextManagerEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/ContextManagerEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/ContextManagerEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/ContextManagerEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/EnabledSubmission.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/EnabledSubmission.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/EnabledSubmission.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/EnabledSubmission.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContext.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContext.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContext.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContext.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextActivation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextActivation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextActivation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextActivation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextManagerListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextManagerListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextManagerListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextManagerListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IContextService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IContextService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IWorkbenchContextSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IWorkbenchContextSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/IWorkbenchContextSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/IWorkbenchContextSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/NotDefinedException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/NotDefinedException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/NotDefinedException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/NotDefinedException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/contexts/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/contexts/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/databinding/typed/WorkbenchProperties.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/databinding/typed/WorkbenchProperties.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/databinding/typed/WorkbenchProperties.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/databinding/typed/WorkbenchProperties.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/AbstractElementListSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/AbstractElementListSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/AbstractElementListSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/AbstractElementListSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/CheckedTreeSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/CheckedTreeSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/CheckedTreeSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/CheckedTreeSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ContainerCheckedTreeViewer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ContainerCheckedTreeViewer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ContainerCheckedTreeViewer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ContainerCheckedTreeViewer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/EditorSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/EditorSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/EditorSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/EditorSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ElementListSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ElementListSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ElementListSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ElementListSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ElementTreeSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ElementTreeSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ElementTreeSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ElementTreeSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FileEditorMappingContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FileEditorMappingContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FileEditorMappingContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FileEditorMappingContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FileEditorMappingLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FileEditorMappingLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FileEditorMappingLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FileEditorMappingLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FileSystemElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FileSystemElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FileSystemElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FileSystemElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FilteredItemsSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FilteredItemsSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FilteredItemsSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FilteredItemsSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FilteredList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FilteredList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FilteredList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FilteredList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FilteredTree.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FilteredTree.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/FilteredTree.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/FilteredTree.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IOverwriteQuery.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IOverwriteQuery.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IOverwriteQuery.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IOverwriteQuery.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ISelectionStatusValidator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ISelectionStatusValidator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ISelectionStatusValidator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ISelectionStatusValidator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ISelectionValidator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ISelectionValidator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ISelectionValidator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ISelectionValidator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IStyledStringHighlighter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IStyledStringHighlighter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IStyledStringHighlighter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IStyledStringHighlighter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetEditWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetEditWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetEditWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetEditWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetNewWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetNewWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetNewWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetNewWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/IWorkingSetSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/IWorkingSetSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ListDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ListDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ListDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ListDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ListSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ListSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ListSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/ListSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PatternFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PatternFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PatternFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PatternFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PreferenceLinkArea.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PreferenceLinkArea.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PreferenceLinkArea.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PreferenceLinkArea.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PreferencesUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PreferencesUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PreferencesUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PreferencesUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PropertyDialogAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PropertyDialogAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PropertyDialogAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PropertyDialogAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PropertyPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PropertyPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/PropertyPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/PropertyPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/SearchPattern.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/SearchPattern.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/SearchPattern.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/SearchPattern.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/SelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/SelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/SelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/SelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/SelectionStatusDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/SelectionStatusDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/SelectionStatusDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/SelectionStatusDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/StyledStringHighlighter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/StyledStringHighlighter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/StyledStringHighlighter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/StyledStringHighlighter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/TwoArrayQuickSorter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/TwoArrayQuickSorter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/TwoArrayQuickSorter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/TwoArrayQuickSorter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/TwoPaneElementSelector.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/TwoPaneElementSelector.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/TwoPaneElementSelector.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/TwoPaneElementSelector.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/TypeFilteringDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/TypeFilteringDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/TypeFilteringDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/TypeFilteringDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/WorkingSetConfigurationBlock.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/WorkingSetConfigurationBlock.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/WorkingSetConfigurationBlock.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/WorkingSetConfigurationBlock.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/WorkingSetGroup.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/WorkingSetGroup.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/WorkingSetGroup.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/WorkingSetGroup.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/YesNoCancelListSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/YesNoCancelListSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/YesNoCancelListSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/YesNoCancelListSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dialogs/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dnd/IDragAndDropService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dnd/IDragAndDropService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dnd/IDragAndDropService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dnd/IDragAndDropService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dnd/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dnd/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dnd/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/dnd/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/fieldassist/ContentAssistCommandAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/fieldassist/ContentAssistCommandAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/fieldassist/ContentAssistCommandAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/fieldassist/ContentAssistCommandAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/fieldassist/ContentAssistField.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/fieldassist/ContentAssistField.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/fieldassist/ContentAssistField.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/fieldassist/ContentAssistField.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/fieldassist/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/fieldassist/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/fieldassist/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/fieldassist/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/CollapseAllHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/CollapseAllHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/CollapseAllHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/CollapseAllHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/ExpandAllHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/ExpandAllHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/ExpandAllHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/ExpandAllHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/HandlerUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/HandlerUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/HandlerUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/HandlerUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/IHandlerActivation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/IHandlerActivation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/IHandlerActivation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/IHandlerActivation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/IHandlerService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/IHandlerService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/IHandlerService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/IHandlerService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/RadioState.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/RadioState.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/RadioState.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/RadioState.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/RegistryRadioState.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/RegistryRadioState.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/RegistryRadioState.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/RegistryRadioState.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/RegistryToggleState.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/RegistryToggleState.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/RegistryToggleState.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/RegistryToggleState.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/ShowPerspectiveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/ShowPerspectiveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/ShowPerspectiveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/ShowPerspectiveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/ShowViewHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/ShowViewHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/ShowViewHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/ShowViewHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/handlers/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/handlers/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/help/AbstractHelpUI.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/help/AbstractHelpUI.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/help/AbstractHelpUI.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/help/AbstractHelpUI.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/help/IWorkbenchHelpSystem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/help/IWorkbenchHelpSystem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/help/IWorkbenchHelpSystem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/help/IWorkbenchHelpSystem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/help/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/help/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/help/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/help/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractEnabledHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractEnabledHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractEnabledHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractEnabledHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractEvaluationHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractEvaluationHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractEvaluationHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractEvaluationHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractWorkingSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractWorkingSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractWorkingSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractWorkingSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractWorkingSetManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractWorkingSetManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractWorkingSetManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AbstractWorkingSetManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionPresentation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionPresentation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionPresentation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionPresentation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetMenuManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetMenuManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetMenuManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetMenuManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetSeparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetSeparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetSeparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetSeparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetsEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetsEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActionSetsEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActionSetsEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActivateEditorHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActivateEditorHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActivateEditorHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActivateEditorHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActivityPersistanceHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActivityPersistanceHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ActivityPersistanceHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ActivityPersistanceHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AggregateWorkingSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AggregateWorkingSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AggregateWorkingSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/AggregateWorkingSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/BindingToModelProcessor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/BindingToModelProcessor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/BindingToModelProcessor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/BindingToModelProcessor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/BrandingProperties.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/BrandingProperties.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/BrandingProperties.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/BrandingProperties.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/BundleGroupProperties.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/BundleGroupProperties.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/BundleGroupProperties.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/BundleGroupProperties.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ChangeToPerspectiveMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ChangeToPerspectiveMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ChangeToPerspectiveMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ChangeToPerspectiveMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseAllHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseAllHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllSavedAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseAllSavedAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseAllSavedAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseAllSavedAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseEditorHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseEditorHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseEditorHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseEditorHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseOthersHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseOthersHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CloseOthersHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CloseOthersHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CommandToModelProcessor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CommandToModelProcessor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CommandToModelProcessor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CommandToModelProcessor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ConfigurationInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ConfigurationInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ConfigurationInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ConfigurationInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ContextToModelProcessor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ContextToModelProcessor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ContextToModelProcessor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ContextToModelProcessor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CoolBarToTrimManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CoolBarToTrimManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CoolBarToTrimManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CoolBarToTrimManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CycleEditorHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CycleEditorHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CycleEditorHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CycleEditorHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CyclePerspectiveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CyclePerspectiveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CyclePerspectiveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CyclePerspectiveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CycleViewHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CycleViewHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/CycleViewHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/CycleViewHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/DefaultSaveable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/DefaultSaveable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/DefaultSaveable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/DefaultSaveable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/DirtyPerspectiveMarker.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/DirtyPerspectiveMarker.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/DirtyPerspectiveMarker.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/DirtyPerspectiveMarker.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/E4PartWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/E4PartWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/E4PartWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/E4PartWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EarlyStartupRunnable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EarlyStartupRunnable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EarlyStartupRunnable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EarlyStartupRunnable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorActionBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorActionBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorActionBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorActionBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorHistory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorHistory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorHistory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorHistory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorHistoryItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorHistoryItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorHistoryItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorHistoryItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorMenuManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorMenuManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorMenuManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorMenuManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorPluginAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorPluginAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorPluginAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorPluginAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorSiteDragAndDropServiceImpl.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorSiteDragAndDropServiceImpl.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/EditorSiteDragAndDropServiceImpl.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/EditorSiteDragAndDropServiceImpl.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ErrorEditorPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ErrorEditorPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ErrorEditorPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ErrorEditorPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ErrorViewPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ErrorViewPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ErrorViewPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ErrorViewPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExceptionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExceptionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExceptionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExceptionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExtensionEventHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExtensionEventHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExtensionEventHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExtensionEventHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExtensionEventHandler.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExtensionEventHandler.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExtensionEventHandler.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExtensionEventHandler.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExtensionEventHandlerMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExtensionEventHandlerMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ExtensionEventHandlerMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ExtensionEventHandlerMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/FilteredTableBaseHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/FilteredTableBaseHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/FilteredTableBaseHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/FilteredTableBaseHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/HeapStatus.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/HeapStatus.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/HeapStatus.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/HeapStatus.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IActionSetContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IActionSetContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IActionSetContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IActionSetContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IBackgroundSaveListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IBackgroundSaveListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IBackgroundSaveListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IBackgroundSaveListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IChangeListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IChangeListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IChangeListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IChangeListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IHeapStatusConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IHeapStatusConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IHeapStatusConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IHeapStatusConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IMenuServiceWorkaround.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IMenuServiceWorkaround.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IMenuServiceWorkaround.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IMenuServiceWorkaround.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IObjectActionContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IObjectActionContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IObjectActionContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IObjectActionContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IObjectContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IObjectContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IObjectContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IObjectContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IPreferenceConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IPreferenceConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IPreferenceConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IPreferenceConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ISelectionConversionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ISelectionConversionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ISelectionConversionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ISelectionConversionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchGraphicConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchGraphicConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchGraphicConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchGraphicConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchHelpContextIds.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchHelpContextIds.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchHelpContextIds.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchHelpContextIds.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchThemeConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchThemeConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/IWorkbenchThemeConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/IWorkbenchThemeConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/InternalHandlerUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/InternalHandlerUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/InternalHandlerUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/InternalHandlerUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/InternalSaveable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/InternalSaveable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/InternalSaveable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/InternalSaveable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/JFaceUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/JFaceUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/JFaceUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/JFaceUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/KeyBindingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/KeyBindingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/KeyBindingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/KeyBindingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LargeFileLimitsPreferenceHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LargeFileLimitsPreferenceHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LargeFileLimitsPreferenceHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LargeFileLimitsPreferenceHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LegacyResourceSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LegacyResourceSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LegacyResourceSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LegacyResourceSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LegacyTrim.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LegacyTrim.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LegacyTrim.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LegacyTrim.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LocalWorkingSetManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LocalWorkingSetManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/LocalWorkingSetManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/LocalWorkingSetManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistoryAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistoryAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistoryAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistoryAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistoryEditorInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistoryEditorInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistoryEditorInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistoryEditorInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistoryEntry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistoryEntry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/NavigationHistoryEntry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/NavigationHistoryEntry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectActionContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectActionContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributorManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectActionContributorManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributorManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectActionContributorManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributorReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectActionContributorReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributorReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectActionContributorReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectContributorManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectContributorManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectContributorManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectContributorManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectFilterTest.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectFilterTest.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectFilterTest.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectFilterTest.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectPluginAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectPluginAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectPluginAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ObjectPluginAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/OpenPerspectivePropertyTester.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/OpenPerspectivePropertyTester.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/OpenPerspectivePropertyTester.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/OpenPerspectivePropertyTester.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/OpenPreferencesAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/OpenPreferencesAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/OpenPreferencesAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/OpenPreferencesAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PageEventAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PageEventAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PageEventAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PageEventAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PageListenerList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PageListenerList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PageListenerList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PageListenerList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PagePartSelectionTracker.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PagePartSelectionTracker.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PagePartSelectionTracker.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PagePartSelectionTracker.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartPane.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartPane.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartPane.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartPane.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartPluginAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartPluginAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartPluginAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartPluginAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartSelectionListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartSelectionListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartSelectionListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartSelectionListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PartTaggedAsEditorPropertyTester.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PendingSyncExec.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PendingSyncExec.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PendingSyncExec.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PendingSyncExec.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Perspective.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/Perspective.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Perspective.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/Perspective.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveExtensionReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveExtensionReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveExtensionReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveExtensionReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveListenerList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveListenerList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveListenerList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveListenerList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveTagger.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveTagger.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveTagger.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveTagger.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveTracker.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveTracker.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PerspectiveTracker.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PerspectiveTracker.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PlaceholderContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PlaceholderContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PlaceholderContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PlaceholderContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PlatformUIPreferenceListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PlatformUIPreferenceListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PlatformUIPreferenceListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PlatformUIPreferenceListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionCoolBarContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionCoolBarContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionCoolBarContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionCoolBarContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionSetBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionSetBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionSetBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PluginActionSetBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PopupMenuExtender.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PopupMenuExtender.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PopupMenuExtender.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/PopupMenuExtender.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ProductInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ProductInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ProductInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ProductInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ProductProperties.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ProductProperties.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ProductProperties.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ProductProperties.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ReopenEditorMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ReopenEditorMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ReopenEditorMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ReopenEditorMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SaveableHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SaveableHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SaveableHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SaveableHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SaveablesList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SaveablesList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SaveablesList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SaveablesList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SelectionAdapterFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SelectionAdapterFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SelectionAdapterFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SelectionAdapterFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SelectionConversionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SelectionConversionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SelectionConversionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SelectionConversionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SharedImages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SharedImages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SharedImages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SharedImages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowInHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowInHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowInHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowInHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowInMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowInMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowInMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowInMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowPartPaneMenuHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowPartPaneMenuHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowPartPaneMenuHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowPartPaneMenuHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowViewMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowViewMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenuHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowViewMenuHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenuHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ShowViewMenuHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SlavePageService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SlavePageService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SlavePageService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SlavePageService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SlavePartService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SlavePartService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SlavePartService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SlavePartService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SlaveSelectionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SlaveSelectionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SlaveSelectionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SlaveSelectionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SplitHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SplitHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SplitHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SplitHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SplitValues.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SplitValues.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SplitValues.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SplitValues.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/StandardTrim.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/StandardTrim.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/StandardTrim.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/StandardTrim.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/StartupThreading.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/StartupThreading.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/StartupThreading.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/StartupThreading.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SwitchToWindowMenu.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SwitchToWindowMenu.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/SwitchToWindowMenu.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/SwitchToWindowMenu.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ToggleEditorsVisibilityAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ToggleEditorsVisibilityAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ToggleEditorsVisibilityAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ToggleEditorsVisibilityAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/TrimUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/TrimUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/TrimUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/TrimUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/UILockListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/UILockListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/UILockListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/UILockListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/UISynchronizer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/UISynchronizer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/UISynchronizer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/UISynchronizer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewActionBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewActionBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewActionBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewActionBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewIntroAdapterPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewIntroAdapterPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewIntroAdapterPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewIntroAdapterPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewIntroAdapterSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewIntroAdapterSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewIntroAdapterSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewIntroAdapterSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewPluginAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewPluginAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewPluginAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewPluginAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewerActionBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewerActionBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ViewerActionBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/ViewerActionBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WWinActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WWinActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WWinActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WWinActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WWinPluginAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WWinPluginAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WWinPluginAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WWinPluginAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WWinPluginPulldown.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WWinPluginPulldown.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WWinPluginPulldown.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WWinPluginPulldown.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WindowsDefenderConfigurator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WindowsDefenderConfigurator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WindowsDefenderConfigurator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WindowsDefenderConfigurator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/Workbench.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/Workbench.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/Workbench.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchConfigurer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchConfigurer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchConfigurer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchConfigurer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchEditorsHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchEditorsHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchEditorsHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchEditorsHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchErrorHandlerProxy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchErrorHandlerProxy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchErrorHandlerProxy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchErrorHandlerProxy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchHandlerServiceHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchHandlerServiceHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchHandlerServiceHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchHandlerServiceHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchImages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchImages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchImages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchImages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchIntroManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchIntroManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchIntroManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchIntroManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchLayoutSettingsTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchLayoutSettingsTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchLayoutSettingsTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchLayoutSettingsTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPartReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPartReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPartReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPartReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPlugin.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPlugin.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPlugin.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPlugin.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchPreferenceInitializer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchSupportFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchSupportFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchSupportFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchSupportFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindow.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchWindow.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindow.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchWindow.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindowConfigurer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchWindowConfigurer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindowConfigurer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbenchWindowConfigurer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbookEditorsHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbookEditorsHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbookEditorsHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkbookEditorsHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetMenuContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetMenuContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetMenuContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/WorkingSetMenuContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutBundleData.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutBundleData.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutBundleData.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutBundleData.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutBundleGroupData.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutBundleGroupData.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutBundleGroupData.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutBundleGroupData.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutData.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutData.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutData.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutData.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutFeaturesButtonManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutFeaturesButtonManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutFeaturesButtonManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutFeaturesButtonManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutFeaturesPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutFeaturesPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutFeaturesPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutFeaturesPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutPluginsPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutPluginsPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutPluginsPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutPluginsPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutSystemPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutSystemPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutSystemPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutSystemPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutTextManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutTextManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutTextManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutTextManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutUtils.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutUtils.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/AboutUtils.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/AboutUtils.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/BundleSigningInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/BundleSigningInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/BundleSigningInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/BundleSigningInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/ConfigurationLogDefaultSection.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/ConfigurationLogDefaultSection.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/ConfigurationLogDefaultSection.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/ConfigurationLogDefaultSection.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/CopyTableSelectionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/CopyTableSelectionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/CopyTableSelectionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/CopyTableSelectionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/InstallationDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/InstallationDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/InstallationDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/InstallationDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/InstallationHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/InstallationHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/InstallationHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/InstallationHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/ProductInfoDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/ProductInfoDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/ProductInfoDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/ProductInfoDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/ProductInfoPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/ProductInfoPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/about/ProductInfoPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/about/ProductInfoPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/AbstractWorkingSetPulldownDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/AbstractWorkingSetPulldownDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/AbstractWorkingSetPulldownDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/AbstractWorkingSetPulldownDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/ClearWorkingSetAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/ClearWorkingSetAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/ClearWorkingSetAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/ClearWorkingSetAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/CommandAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/CommandAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/CommandAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/CommandAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/DynamicHelpAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/DynamicHelpAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/DynamicHelpAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/DynamicHelpAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/EditWorkingSetAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/EditWorkingSetAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/EditWorkingSetAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/EditWorkingSetAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/HelpContentsAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/HelpContentsAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/HelpContentsAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/HelpContentsAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/HelpSearchAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/HelpSearchAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/HelpSearchAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/HelpSearchAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/HelpSearchContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/HelpSearchContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/HelpSearchContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/HelpSearchContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/ModifyWorkingSetDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/ModifyWorkingSetDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/ModifyWorkingSetDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/ModifyWorkingSetDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/NewWizardShortcutAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/NewWizardShortcutAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/NewWizardShortcutAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/NewWizardShortcutAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/SelectWorkingSetAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/SelectWorkingSetAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/SelectWorkingSetAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/SelectWorkingSetAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/SelectWorkingSetsAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/SelectWorkingSetsAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/actions/SelectWorkingSetsAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/actions/SelectWorkingSetsAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/AbstractActivityManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/AbstractActivityManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/AbstractActivityManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/AbstractActivityManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/AbstractActivityRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/AbstractActivityRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/AbstractActivityRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/AbstractActivityRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Activity.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Activity.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Activity.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Activity.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityPatternBinding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityPatternBinding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityPatternBinding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityPatternBinding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityPatternBindingDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityPatternBindingDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityPatternBindingDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityPatternBindingDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityPropertyTester.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityPropertyTester.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityPropertyTester.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityPropertyTester.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityRegistryEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityRegistryEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityRegistryEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityRegistryEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityRequirementBinding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityRequirementBinding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityRequirementBinding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityRequirementBinding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityRequirementBindingDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityRequirementBindingDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ActivityRequirementBindingDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ActivityRequirementBindingDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Category.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Category.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Category.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Category.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/CategoryActivityBinding.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/CategoryActivityBinding.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/CategoryActivityBinding.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/CategoryActivityBinding.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/CategoryActivityBindingDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/CategoryActivityBindingDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/CategoryActivityBindingDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/CategoryActivityBindingDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/CategoryDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/CategoryDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/CategoryDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/CategoryDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ExtensionActivityRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ExtensionActivityRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ExtensionActivityRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ExtensionActivityRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/IActivityRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/IActivityRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/IActivityRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/IActivityRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/IActivityRegistryListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/IActivityRegistryListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/IActivityRegistryListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/IActivityRegistryListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Identifier.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Identifier.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Identifier.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Identifier.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/InternalActivityHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/InternalActivityHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/InternalActivityHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/InternalActivityHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/MutableActivityManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/MutableActivityManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/MutableActivityManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/MutableActivityManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/PatternUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/PatternUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/PatternUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/PatternUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Persistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Persistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/Persistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/Persistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ProxyActivityManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ProxyActivityManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ProxyActivityManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ProxyActivityManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/AbstractTriggerPoint.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/AbstractTriggerPoint.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/AbstractTriggerPoint.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/AbstractTriggerPoint.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityCategoryContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityCategoryContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityCategoryContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityCategoryContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityCategoryLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityCategoryLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityCategoryLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityCategoryLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityEnabler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityEnabler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityEnabler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityEnabler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityViewerFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityViewerFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ActivityViewerFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ActivityViewerFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/CategorizedActivity.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/CategorizedActivity.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/CategorizedActivity.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/CategorizedActivity.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/EnablementDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/EnablementDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/EnablementDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/EnablementDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/EnablementDialog.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/EnablementDialog.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/EnablementDialog.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/EnablementDialog.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ImageBindingRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ImageBindingRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/ImageBindingRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/ImageBindingRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/RegistryTriggerPoint.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/RegistryTriggerPoint.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/RegistryTriggerPoint.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/RegistryTriggerPoint.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/TriggerPointAdvisorRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/TriggerPointManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/TriggerPointManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/TriggerPointManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/TriggerPointManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/WorkbenchActivitySupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/WorkbenchActivitySupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/WorkbenchActivitySupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/WorkbenchActivitySupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/WorkbenchTriggerPoints.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/WorkbenchTriggerPoints.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/WorkbenchTriggerPoints.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/WorkbenchTriggerPoints.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ws/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/activities/ws/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/application/CompatibilityActionBarAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/application/CompatibilityActionBarAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/application/CompatibilityActionBarAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/application/CompatibilityActionBarAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/application/CompatibilityWorkbenchWindowAdvisor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/application/CompatibilityWorkbenchWindowAdvisor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/application/CompatibilityWorkbenchWindowAdvisor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/application/CompatibilityWorkbenchWindowAdvisor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/browser/DefaultWebBrowser.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/browser/DefaultWebBrowser.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/browser/DefaultWebBrowser.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/browser/DefaultWebBrowser.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/browser/DefaultWorkbenchBrowserSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/browser/DefaultWorkbenchBrowserSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/browser/DefaultWorkbenchBrowserSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/browser/DefaultWorkbenchBrowserSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/browser/WorkbenchBrowserSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/browser/WorkbenchBrowserSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/browser/WorkbenchBrowserSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/browser/WorkbenchBrowserSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImageManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImageManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImageManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImageManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImageManagerEvent.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImageManagerEvent.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImageManagerEvent.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImageManagerEvent.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImagePersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImagePersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImagePersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImagePersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImageService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImageService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandImageService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandImageService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandServiceFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandServiceFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandServiceFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandServiceFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandStateProxy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandStateProxy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/CommandStateProxy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/CommandStateProxy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ElementReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ElementReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ElementReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ElementReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ICommandImageManagerListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ICommandImageManagerListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ICommandImageManagerListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ICommandImageManagerListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ILegacyAttributeNames.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ILegacyAttributeNames.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ILegacyAttributeNames.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ILegacyAttributeNames.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ParameterValueConverterProxy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ParameterValueConverterProxy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/ParameterValueConverterProxy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/ParameterValueConverterProxy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/SlaveCommandService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/SlaveCommandService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/commands/SlaveCommandService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/commands/SlaveCommandService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ActiveContextSourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ActiveContextSourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ActiveContextSourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ActiveContextSourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextActivation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextActivation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextActivation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextActivation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextAuthority.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextAuthority.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextAuthority.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextAuthority.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextLegacyWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextLegacyWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextLegacyWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextLegacyWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextManagerFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextManagerFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextManagerFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextManagerFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextManagerLegacyWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextManagerLegacyWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextManagerLegacyWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextManagerLegacyWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextServiceFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextServiceFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/ContextServiceFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/ContextServiceFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/LegacyContextListenerWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/LegacyContextListenerWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/LegacyContextListenerWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/LegacyContextListenerWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/NestableContextService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/NestableContextService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/NestableContextService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/NestableContextService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/SlaveContextService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/SlaveContextService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/SlaveContextService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/SlaveContextService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/WorkbenchContextSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/WorkbenchContextSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/contexts/WorkbenchContextSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/contexts/WorkbenchContextSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ActivePageProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ActivePageProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ActivePageProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ActivePageProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ActivePartProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ActivePartProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ActivePartProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ActivePartProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ActiveWindowProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ActiveWindowProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ActiveWindowProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ActiveWindowProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/AdaptedValueProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/AdaptedValueProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/AdaptedValueProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/AdaptedValueProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/EditorInputProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/EditorInputProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/EditorInputProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/EditorInputProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ListeningValue.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ListeningValue.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/ListeningValue.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/ListeningValue.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/MultiSelectionProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/MultiSelectionProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/MultiSelectionProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/MultiSelectionProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/SelectionServiceListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/SelectionServiceListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/SelectionServiceListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/SelectionServiceListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/SingleSelectionProperty.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/SingleSelectionProperty.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/databinding/SingleSelectionProperty.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/databinding/SingleSelectionProperty.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DeclarativeDecorator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DeclarativeDecorator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DeclarativeDecorator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DeclarativeDecorator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationResult.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationResult.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationResult.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationResult.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationScheduler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationScheduler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecorationScheduler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecorationScheduler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecoratorDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecoratorDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecoratorManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecoratorManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecoratorRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/DecoratorRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/DecoratorRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullDecoratorDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullDecoratorDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullDecoratorDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullDecoratorDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullDecoratorRunnable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullDecoratorRunnable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullDecoratorRunnable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullDecoratorRunnable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullImageDecoratorRunnable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullImageDecoratorRunnable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullImageDecoratorRunnable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullImageDecoratorRunnable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullTextDecoratorRunnable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullTextDecoratorRunnable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/FullTextDecoratorRunnable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/FullTextDecoratorRunnable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightActionDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/LightweightActionDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightActionDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/LightweightActionDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightDecoratorDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/LightweightDecoratorDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightDecoratorDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/LightweightDecoratorDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightDecoratorManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/LightweightDecoratorManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightDecoratorManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/decorators/LightweightDecoratorManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AboutDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AboutDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AboutDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AboutDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AboutFeaturesDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AboutFeaturesDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AboutFeaturesDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AboutFeaturesDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AboutPluginsDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AboutPluginsDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AboutPluginsDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AboutPluginsDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AbstractWorkingSetDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AbstractWorkingSetDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AbstractWorkingSetDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AbstractWorkingSetDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AdaptableForwarder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AdaptableForwarder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/AdaptableForwarder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/AdaptableForwarder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/CapabilityFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/CapabilityFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/CapabilityFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/CapabilityFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ContentTypeFilenameAssociationDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ContentTypeFilenameAssociationDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ContentTypeFilenameAssociationDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ContentTypeFilenameAssociationDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ContentTypesPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ContentTypesPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ContentTypesPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ContentTypesPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/DataTransferWizardCollectionComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/DataTransferWizardCollectionComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/DataTransferWizardCollectionComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/DataTransferWizardCollectionComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/DecoratorsPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/DecoratorsPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/DecoratorsPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/DecoratorsPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/DialogUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/DialogUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/DialogUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/DialogUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EditorsPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EmptyPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EmptyPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EmptyPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EmptyPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EmptyPropertyPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EmptyPropertyPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EmptyPropertyPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EmptyPropertyPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ErrorPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ErrorPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ErrorPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ErrorPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EventLoopProgressMonitor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EventLoopProgressMonitor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/EventLoopProgressMonitor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/EventLoopProgressMonitor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ExportPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ExportPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ExportPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ExportPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ExportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ExportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ExportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ExportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FileEditorsPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/FileEditorsPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FileEditorsPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/FileEditorsPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FileExtensionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/FileExtensionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FileExtensionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/FileExtensionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/GlobalizationPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/GlobalizationPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/GlobalizationPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/GlobalizationPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/IPropertyPageContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/IPropertyPageContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/IPropertyPageContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/IPropertyPageContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportExportPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportExportPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportExportPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportExportPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportExportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportExportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportExportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportExportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ImportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ImportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewContentTypeDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewContentTypeDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewContentTypeDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewContentTypeDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizardCollectionComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizardCollectionComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizardCollectionComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizardCollectionComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizardNewPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizardNewPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizardNewPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizardNewPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizardSelectionPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizardSelectionPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/NewWizardSelectionPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/NewWizardSelectionPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PerspContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PerspContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspectivesPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PerspectivesPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspectivesPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PerspectivesPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceBoldLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferenceBoldLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceBoldLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferenceBoldLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceHistoryEntry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferenceHistoryEntry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceHistoryEntry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferenceHistoryEntry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceNodeFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferenceNodeFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceNodeFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferenceNodeFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferencePageHistory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferencePageHistory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferencePageHistory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferencePageHistory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferencePatternFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferencePatternFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferencePatternFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PreferencePatternFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageContributorManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyPageContributorManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageContributorManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyPageContributorManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyPageManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyPageManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageNode.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyPageNode.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageNode.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/PropertyPageNode.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/RegistryPageContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/RegistryPageContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/RegistryPageContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/RegistryPageContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/SavePerspectiveDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/SavePerspectiveDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/SavePerspectiveDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/SavePerspectiveDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/SelectPerspectiveDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/SelectPerspectiveDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/SelectPerspectiveDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/SelectPerspectiveDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ShowViewDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ShowViewDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ShowViewDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ShowViewDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/SimpleWorkingSetSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/SimpleWorkingSetSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/SimpleWorkingSetSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/SimpleWorkingSetSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/StartupPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/StartupPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/StartupPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/StartupPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewPatternFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewPatternFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewPatternFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewPatternFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardActivityFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardActivityFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardActivityFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardActivityFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardCollectionElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardCollectionElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardCollectionElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardCollectionElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardPatternFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardPatternFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardPatternFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardPatternFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardTagFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardTagFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WizardTagFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WizardTagFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchDialogBlockedHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchDialogBlockedHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchDialogBlockedHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchDialogBlockedHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchEditorsDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchEditorsDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchEditorsDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchEditorsDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceNode.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceNode.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceNode.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceNode.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardListSelectionPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardListSelectionPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardListSelectionPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardListSelectionPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardNode.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardNode.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardNode.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardNode.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardSelectionPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardSelectionPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchWizardSelectionPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkbenchWizardSelectionPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetEditWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetEditWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetEditWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetEditWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetNewWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetNewWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetNewWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetNewWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetSelectionDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetSelectionDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetSelectionDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetSelectionDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetTypePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetTypePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkingSetTypePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/WorkingSetTypePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ActionSetFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ActionSetFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ActionSetFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ActionSetFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ActionSetSelectionChangedListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ActionSetSelectionChangedListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ActionSetSelectionChangedListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ActionSetSelectionChangedListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/CategoryCheckProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/CategoryCheckProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/CategoryCheckProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/CategoryCheckProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/CustomizeActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/CustomizeActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/CustomizeActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/CustomizeActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/CustomizePerspectiveDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/CustomizePerspectiveDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/CustomizePerspectiveDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/CustomizePerspectiveDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/FilteredModelCheckListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/FilteredModelCheckListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/FilteredModelCheckListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/FilteredModelCheckListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/FilteredTreeCheckProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/FilteredTreeCheckProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/FilteredTreeCheckProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/FilteredTreeCheckProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/FilteredViewerCheckListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/FilteredViewerCheckListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/FilteredViewerCheckListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/FilteredViewerCheckListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/GrayOutUnavailableLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/GrayOutUnavailableLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/GrayOutUnavailableLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/GrayOutUnavailableLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ItemDetailToolTip.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ItemDetailToolTip.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ItemDetailToolTip.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ItemDetailToolTip.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/NameAndDescriptionToolTip.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/NameAndDescriptionToolTip.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/NameAndDescriptionToolTip.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/NameAndDescriptionToolTip.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ShortcutLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ShortcutLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ShortcutLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ShortcutLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ShowUsedActionSetsFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ShowUsedActionSetsFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/ShowUsedActionSetsFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/ShowUsedActionSetsFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/TableToolTip.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/TableToolTip.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/TableToolTip.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/TableToolTip.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/TreeManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/TreeManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/TreeManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/TreeManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/UnavailableContributionItemCheckListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/UnavailableContributionItemCheckListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/cpd/UnavailableContributionItemCheckListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/dialogs/cpd/UnavailableContributionItemCheckListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ActionBars.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ActionBars.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ActionBars.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ActionBars.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/CompatibilityEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/CompatibilityEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/CompatibilityEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/CompatibilityEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/CompatibilityPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/CompatibilityPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/CompatibilityPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/CompatibilityPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/CompatibilityView.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/CompatibilityView.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/CompatibilityView.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/CompatibilityView.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/E4Util.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/E4Util.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/E4Util.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/E4Util.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledFolderLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledFolderLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledFolderLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledFolderLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayoutUtils.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayoutUtils.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayoutUtils.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledPageLayoutUtils.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledPlaceholderFolderLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledPlaceholderFolderLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledPlaceholderFolderLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledPlaceholderFolderLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledViewLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledViewLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/ModeledViewLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/ModeledViewLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/SelectionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/SelectionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/compatibility/SelectionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/compatibility/SelectionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/InfoReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/InfoReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/InfoReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/InfoReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/MementoReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/MementoReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/MementoReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/MementoReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/PerspectiveBuilder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/PerspectiveBuilder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/PerspectiveBuilder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/PerspectiveBuilder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/PerspectiveReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/PerspectiveReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/e4/migration/PerspectiveReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/e4/migration/PerspectiveReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/ActivePartExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/ActivePartExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/ActivePartExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/ActivePartExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/AlwaysEnabledExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/AlwaysEnabledExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/AlwaysEnabledExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/AlwaysEnabledExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyActionSetExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyActionSetExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyActionSetExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyActionSetExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyEditorActionBarExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyEditorActionBarExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyEditorActionBarExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyEditorActionBarExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyEditorContributionExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyEditorContributionExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyEditorContributionExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyEditorContributionExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacySelectionEnablerWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacySelectionEnablerWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacySelectionEnablerWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacySelectionEnablerWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyViewContributionExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyViewContributionExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/LegacyViewContributionExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/LegacyViewContributionExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/WorkbenchWindowExpression.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/WorkbenchWindowExpression.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/expressions/WorkbenchWindowExpression.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/expressions/WorkbenchWindowExpression.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/AbstractSaveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/AbstractSaveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/AbstractSaveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/AbstractSaveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ActionCommandMappingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ActionCommandMappingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ActionCommandMappingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ActionCommandMappingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ActionDelegateHandlerProxy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ActionDelegateHandlerProxy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ActionDelegateHandlerProxy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ActionDelegateHandlerProxy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ActiveContextInfoHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ActiveContextInfoHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ActiveContextInfoHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ActiveContextInfoHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/CloseAllPerspectivesHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/CloseAllPerspectivesHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/CloseAllPerspectivesHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/CloseAllPerspectivesHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ClosePartHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ClosePartHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ClosePartHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ClosePartHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ClosePerspectiveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ClosePerspectiveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ClosePerspectiveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ClosePerspectiveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/CommandLegacyActionWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/CommandLegacyActionWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/CommandLegacyActionWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/CommandLegacyActionWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ContextMenuHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ContextMenuHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ContextMenuHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ContextMenuHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/CyclePageHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/CyclePageHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/CyclePageHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/CyclePageHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/DirtyStateTracker.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/DirtyStateTracker.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/DirtyStateTracker.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/DirtyStateTracker.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/DisplayHelpHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/DisplayHelpHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/DisplayHelpHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/DisplayHelpHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/DynamicHelpHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/DynamicHelpHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/DynamicHelpHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/DynamicHelpHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/E4HandlerProxy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/E4HandlerProxy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/E4HandlerProxy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/E4HandlerProxy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/EditActionSetsHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/EditActionSetsHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/EditActionSetsHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/EditActionSetsHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ExecutableExtensionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ExecutableExtensionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ExecutableExtensionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ExecutableExtensionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/FullScreenHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/FullScreenHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/FullScreenHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/FullScreenHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HandlerActivation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HandlerActivation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HandlerActivation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HandlerActivation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HandlerPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HandlerPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HandlerPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HandlerPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HandlerProxy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HandlerProxy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HandlerProxy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HandlerProxy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HelpContentsHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HelpContentsHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HelpContentsHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HelpContentsHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HelpSearchHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HelpSearchHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HelpSearchHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HelpSearchHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HideTrimBarsHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HideTrimBarsHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/HideTrimBarsHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/HideTrimBarsHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/IActionCommandMappingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/IActionCommandMappingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/IActionCommandMappingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/IActionCommandMappingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/IWorkbenchWindowHandlerDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/IWorkbenchWindowHandlerDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/IWorkbenchWindowHandlerDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/IWorkbenchWindowHandlerDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/IntroHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/IntroHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/IntroHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/IntroHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/LegacyHandlerService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/LegacyHandlerService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/LegacyHandlerService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/LegacyHandlerService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/LockToolBarHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/LockToolBarHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/LockToolBarHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/LockToolBarHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/MaximizePartHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/MaximizePartHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/MaximizePartHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/MaximizePartHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/MinimizePartHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/MinimizePartHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/MinimizePartHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/MinimizePartHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/NewEditorHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/NewEditorHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/NewEditorHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/NewEditorHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/OpenInNewWindowHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/OpenInNewWindowHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/OpenInNewWindowHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/OpenInNewWindowHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/PinEditorHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/PinEditorHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/PinEditorHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/PinEditorHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/PropertyDialogHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/PropertyDialogHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/PropertyDialogHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/PropertyDialogHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/QuickMenuHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/QuickMenuHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/QuickMenuHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/QuickMenuHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/QuitHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/QuitHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/QuitHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/QuitHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ResetPerspectiveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ResetPerspectiveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ResetPerspectiveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ResetPerspectiveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/RestartWorkbenchHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/RestartWorkbenchHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/RestartWorkbenchHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/RestartWorkbenchHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ReuseEditorTester.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ReuseEditorTester.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ReuseEditorTester.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ReuseEditorTester.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SaveAllHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SaveAllHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SaveAllHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SaveAllHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SaveAsHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SaveAsHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SaveAsHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SaveAsHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SaveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SaveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SaveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SaveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SavePerspectiveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SavePerspectiveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SavePerspectiveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SavePerspectiveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SelectAllHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SelectAllHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SelectAllHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SelectAllHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ShowKeyAssistHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ShowKeyAssistHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ShowKeyAssistHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ShowKeyAssistHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ShowPreferencePageHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ShowPreferencePageHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ShowPreferencePageHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ShowPreferencePageHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SpyHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SpyHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/SpyHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/SpyHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ToggleCoolbarHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ToggleCoolbarHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ToggleCoolbarHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ToggleCoolbarHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ToggleStatusBarHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ToggleStatusBarHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/ToggleStatusBarHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/ToggleStatusBarHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/TraversePageHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/TraversePageHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/TraversePageHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/TraversePageHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/WidgetMethodHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/WidgetMethodHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/WidgetMethodHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/WidgetMethodHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/WizardHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/WizardHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/WizardHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/WizardHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/WorkbenchWindowHandlerDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/WorkbenchWindowHandlerDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/handlers/WorkbenchWindowHandlerDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/handlers/WorkbenchWindowHandlerDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/help/CommandHelpServiceImpl.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/help/CommandHelpServiceImpl.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/help/CommandHelpServiceImpl.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/help/CommandHelpServiceImpl.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/help/HelpServiceImpl.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/help/HelpServiceImpl.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/help/HelpServiceImpl.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/help/HelpServiceImpl.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/help/WorkbenchHelpSystem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/help/WorkbenchHelpSystem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/help/WorkbenchHelpSystem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/help/WorkbenchHelpSystem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IIntroConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IIntroConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IIntroConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IIntroConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IIntroDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IIntroDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IIntroDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IIntroDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IIntroRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IIntroRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IIntroRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IIntroRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IntroDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IntroDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IntroDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IntroDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IntroMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IntroMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IntroMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IntroMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IntroRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IntroRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/IntroRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/IntroRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/intro.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/intro.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/intro/intro.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/intro/intro.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AbstractKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AbstractKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AbstractKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AbstractKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AbstractKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AbstractKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AbstractKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AbstractKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AbstractModifierKeyComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AbstractModifierKeyComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AbstractModifierKeyComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AbstractModifierKeyComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AlphabeticModifierKeyComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AlphabeticModifierKeyComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/AlphabeticModifierKeyComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/AlphabeticModifierKeyComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/BindingPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/BindingPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/BindingPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/BindingPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/BindingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/BindingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/BindingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/BindingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/CategoryPatternFilter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/CategoryPatternFilter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/CategoryPatternFilter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/CategoryPatternFilter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/CompactKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/CompactKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/CompactKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/CompactKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/EmacsKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/EmacsKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/EmacsKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/EmacsKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/EmacsKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/EmacsKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/EmacsKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/EmacsKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/FormalKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/FormalKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/FormalKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/FormalKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/GlobalKeyAssistDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/GlobalKeyAssistDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/GlobalKeyAssistDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/GlobalKeyAssistDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/GnomeKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/GnomeKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/GnomeKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/GnomeKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/ImageFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/ImageFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/ImageFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/ImageFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KdeKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KdeKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KdeKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KdeKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeyAssistDialog.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeyAssistDialog.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeyAssistDialog.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeyAssistDialog.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeyAssistMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeyAssistMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeyAssistMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeyAssistMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeysPreferenceFiltersDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeysPreferenceFiltersDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeysPreferenceFiltersDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeysPreferenceFiltersDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeysPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeysPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeysPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeysPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeysPreferencePage.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeysPreferencePage.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/KeysPreferencePage.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/KeysPreferencePage.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/MacKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/MacKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/MacKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/MacKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/MacKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/MacKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/MacKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/MacKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NativeKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NativeKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NativeKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NativeKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NativeKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NativeKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NativeKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NativeKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NativeModifierKeyComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NativeModifierKeyComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NativeModifierKeyComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NativeModifierKeyComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NewKeysPreferenceMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NewKeysPreferenceMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NewKeysPreferenceMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NewKeysPreferenceMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NewKeysPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NewKeysPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NewKeysPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NewKeysPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NewKeysPreferencePage.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NewKeysPreferencePage.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NewKeysPreferencePage.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NewKeysPreferencePage.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NoKeysPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NoKeysPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/NoKeysPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/NoKeysPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/WindowsKeyFormatter.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/WindowsKeyFormatter.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/WindowsKeyFormatter.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/WindowsKeyFormatter.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/WorkbenchKeyboard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/WorkbenchKeyboard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/WorkbenchKeyboard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/WorkbenchKeyboard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/WorkbenchKeyboard.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/WorkbenchKeyboard.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/WorkbenchKeyboard.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/WorkbenchKeyboard.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/BindingElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/BindingElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/BindingElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/BindingElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/BindingModel.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/BindingModel.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/BindingModel.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/BindingModel.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/CommonModel.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/CommonModel.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/CommonModel.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/CommonModel.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ConflictModel.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ConflictModel.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ConflictModel.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ConflictModel.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ContextElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ContextElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ContextElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ContextElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ContextModel.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ContextModel.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ContextModel.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ContextModel.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/KeyController.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/KeyController.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/KeyController.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/KeyController.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ModelElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ModelElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/ModelElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/ModelElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/SchemeElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/SchemeElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/SchemeElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/SchemeElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/SchemeModel.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/SchemeModel.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/model/SchemeModel.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/model/SchemeModel.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/show/ShowKeysListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/show/ShowKeysListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/show/ShowKeysListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/show/ShowKeysListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/show/ShowKeysToggleHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/show/ShowKeysToggleHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/show/ShowKeysToggleHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/show/ShowKeysToggleHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/show/ShowKeysUI.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/show/ShowKeysUI.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/keys/show/ShowKeysUI.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/keys/show/ShowKeysUI.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CacheWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CacheWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CacheWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CacheWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CellData.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CellData.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CellData.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CellData.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CellLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CellLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CellLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CellLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CellLayoutUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CellLayoutUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/CellLayoutUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/CellLayoutUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/GridInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/GridInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/GridInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/GridInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/ICachingLayout.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/ICachingLayout.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/ICachingLayout.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/ICachingLayout.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/LayoutCache.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/LayoutCache.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/LayoutCache.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/LayoutCache.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/LayoutUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/LayoutUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/LayoutUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/LayoutUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/Row.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/Row.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/Row.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/Row.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/SizeCache.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/SizeCache.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/layout/SizeCache.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/layout/SizeCache.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/CommandMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/CommandMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/CommandMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/CommandMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/CompatibilityWorkbenchWindowControlContribution.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/CompatibilityWorkbenchWindowControlContribution.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/CompatibilityWorkbenchWindowControlContribution.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/CompatibilityWorkbenchWindowControlContribution.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/ContributionFactoryGenerator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/ContributionFactoryGenerator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/ContributionFactoryGenerator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/ContributionFactoryGenerator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/ContributionRoot.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/ContributionRoot.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/ContributionRoot.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/ContributionRoot.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/ControlContributionRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/ControlContributionRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/ControlContributionRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/ControlContributionRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/DynamicMenuContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/DynamicMenuContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/DynamicMenuContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/DynamicMenuContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/DynamicToolBarContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/DynamicToolBarContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/DynamicToolBarContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/DynamicToolBarContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/FocusControlSourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/FocusControlSourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/FocusControlSourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/FocusControlSourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/IActionSetsListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/IActionSetsListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/IActionSetsListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/IActionSetsListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/InternalControlContribution.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/InternalControlContribution.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/InternalControlContribution.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/InternalControlContribution.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/LegacyActionPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/LegacyActionPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/LegacyActionPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/LegacyActionPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuAdditionCacheEntry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuAdditionCacheEntry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuAdditionCacheEntry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuAdditionCacheEntry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuFactoryGenerator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuFactoryGenerator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuFactoryGenerator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuFactoryGenerator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuLocationURI.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuLocationURI.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuLocationURI.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuLocationURI.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/MenuPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/MenuPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/SlaveMenuService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/SlaveMenuService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/SlaveMenuService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/SlaveMenuService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/WorkbenchMenuService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/WorkbenchMenuService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/WorkbenchMenuService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/WorkbenchMenuService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/menus/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/menus/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/ExternalEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/ExternalEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/Policy.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/Policy.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/Policy.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/Policy.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/ProgramImageDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ProgramImageDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/ProgramImageDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ProgramImageDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/StatusUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/StatusUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/StatusUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/StatusUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/TestPartListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/TestPartListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/TestPartListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/TestPartListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/TextMatcher.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/TextMatcher.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/TextMatcher.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/TextMatcher.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/UIListenerLogging.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/UIListenerLogging.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/UIListenerLogging.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/UIListenerLogging.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/UIStats.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/UIStats.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/misc/UIStats.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/UIStats.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/model/ContributionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/model/ContributionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/model/ContributionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/model/ContributionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/operations/AdvancedValidationUserApprover.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/operations/AdvancedValidationUserApprover.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/operations/AdvancedValidationUserApprover.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/operations/AdvancedValidationUserApprover.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/operations/TimeTriggeredProgressMonitorDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/operations/TimeTriggeredProgressMonitorDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/operations/TimeTriggeredProgressMonitorDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/operations/TimeTriggeredProgressMonitorDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/operations/WorkbenchOperationSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/operations/WorkbenchOperationSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/operations/WorkbenchOperationSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/operations/WorkbenchOperationSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/IMultiPageEditorSiteHolder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/IMultiPageEditorSiteHolder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/IMultiPageEditorSiteHolder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/IMultiPageEditorSiteHolder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/IPageSiteHolder.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/IPageSiteHolder.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/IPageSiteHolder.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/IPageSiteHolder.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/NullEditorInput.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/NullEditorInput.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/NullEditorInput.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/NullEditorInput.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/StatusPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/part/StatusPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/Base64.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/Base64.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/Base64.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/Base64.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/IDynamicPropertyMap.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/IDynamicPropertyMap.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/IDynamicPropertyMap.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/IDynamicPropertyMap.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/IPropertyMap.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/IPropertyMap.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/IPropertyMap.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/IPropertyMap.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/IPropertyMapListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/IPropertyMapListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/IPropertyMapListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/IPropertyMapListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PreferenceTransferElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PreferenceTransferElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PreferenceTransferElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PreferenceTransferElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PreferenceTransferManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PreferenceTransferManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PreferenceTransferManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PreferenceTransferManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PreferencesSettingsTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PreferencesSettingsTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PreferencesSettingsTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PreferencesSettingsTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PropertyListenerList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PropertyListenerList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PropertyListenerList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PropertyListenerList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PropertyMapAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PropertyMapAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PropertyMapAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PropertyMapAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PropertyMapUnion.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PropertyMapUnion.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/PropertyMapUnion.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/PropertyMapUnion.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/SettingsTransferRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/SettingsTransferRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/SettingsTransferRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/SettingsTransferRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/ThemeAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/ThemeAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/ThemeAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/ThemeAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExpressionNode.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExpressionNode.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExpressionNode.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExpressionNode.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExtensionNode.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExtensionNode.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExtensionNode.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkbenchPreferenceExtensionNode.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkbenchSettingsTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkbenchSettingsTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkbenchSettingsTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkbenchSettingsTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkingCopyPreferences.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkingCopyPreferences.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkingCopyPreferences.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkingCopyPreferences.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkingSetPropertyPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkingSetPropertyPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkingSetPropertyPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkingSetPropertyPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkingSetSettingsTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkingSetSettingsTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/preferences/WorkingSetSettingsTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/preferences/WorkingSetSettingsTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/AbstractProgressViewer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/AbstractProgressViewer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/AbstractProgressViewer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/AbstractProgressViewer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/AnimationItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/AnimationItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/AnimationItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/AnimationItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/AnimationManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/AnimationManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/AnimationManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/AnimationManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/BlockedJobsDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/BlockedJobsDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/BlockedJobsDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/BlockedJobsDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/DetailedProgressViewer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/DetailedProgressViewer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/DetailedProgressViewer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/DetailedProgressViewer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/FinishedJobs.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/FinishedJobs.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/FinishedJobs.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/FinishedJobs.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/GroupInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/GroupInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/GroupInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/GroupInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IAnimationProcessor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IAnimationProcessor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IAnimationProcessor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IAnimationProcessor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IJobBusyListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IJobBusyListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IJobBusyListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IJobBusyListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IJobProgressManagerListener.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IJobProgressManagerListener.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IJobProgressManagerListener.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IJobProgressManagerListener.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IProgressUpdateCollector.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IProgressUpdateCollector.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/IProgressUpdateCollector.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/IProgressUpdateCollector.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobSnapshot.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobSnapshot.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobSnapshot.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobSnapshot.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobTreeElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobTreeElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobTreeElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobTreeElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobsViewPreferenceDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobsViewPreferenceDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/JobsViewPreferenceDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/JobsViewPreferenceDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressAnimationItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressAnimationItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressAnimationItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressAnimationItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressAnimationProcessor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressAnimationProcessor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressAnimationProcessor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressAnimationProcessor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressCanvasViewer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressCanvasViewer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressCanvasViewer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressCanvasViewer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressInfoItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressInfoItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressInfoItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressInfoItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressManagerUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressManagerUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressManagerUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorFocusJobDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressMonitorFocusJobDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorFocusJobDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressMonitorFocusJobDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressRegion.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressRegion.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressRegion.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressRegion.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressView.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressView.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressView.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressView.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressViewUpdater.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressViewUpdater.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressViewUpdater.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressViewUpdater.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressViewerContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressViewerContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressViewerContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressViewerContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressViewerLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressViewerLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressViewerLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/ProgressViewerLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/StatusAdapterHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/StatusAdapterHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/StatusAdapterHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/StatusAdapterHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/SubTaskInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/SubTaskInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/SubTaskInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/SubTaskInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/TaskBarProgressManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/TaskBarProgressManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/TaskBarProgressManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/TaskBarProgressManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/TaskInfo.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/TaskInfo.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/TaskInfo.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/TaskInfo.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/WorkbenchSiteProgressService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/WorkbenchSiteProgressService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/WorkbenchSiteProgressService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/WorkbenchSiteProgressService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/progress/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/provisional/application/IActionBarConfigurer2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/provisional/application/IActionBarConfigurer2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/provisional/application/IActionBarConfigurer2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/provisional/application/IActionBarConfigurer2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/CamelUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/CamelUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/CamelUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/CamelUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/PreviousPicksProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/PreviousPicksProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/PreviousPicksProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/PreviousPicksProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessContents.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessContents.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessContents.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessContents.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessEntry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessEntry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessEntry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessEntry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessExtensionManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessExtensionManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessExtensionManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessExtensionManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessMatcher.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessMatcher.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessMatcher.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessMatcher.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/QuickAccessProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/QuickAccessProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/SearchField.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/SearchField.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/SearchField.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/SearchField.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ActionElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ActionElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ActionElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ActionElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ActionProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ActionProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ActionProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ActionProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/CommandElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/CommandElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/CommandElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/CommandElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/CommandProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/CommandProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/CommandProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/CommandProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/EditorElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/EditorElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/EditorElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/EditorElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/EditorProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/EditorProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/EditorProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/EditorProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/HelpSearchElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/HelpSearchElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/HelpSearchElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/HelpSearchElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/HelpSearchProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/HelpSearchProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/HelpSearchProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/HelpSearchProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PerspectiveElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PerspectiveElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PerspectiveElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PerspectiveElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PerspectiveProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PerspectiveProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PerspectiveProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PerspectiveProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PreferenceElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PreferenceElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PreferenceElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PreferenceElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PreferenceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PreferenceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PreferenceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PreferenceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PropertiesElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PropertiesElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PropertiesElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PropertiesElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PropertiesProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PropertiesProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/PropertiesProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/PropertiesProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ViewElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ViewElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ViewElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ViewElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ViewProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ViewProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/ViewProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/ViewProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/WizardElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/WizardElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/WizardElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/WizardElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/WizardProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/WizardProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/quickaccess/providers/WizardProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess/providers/WizardProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ActionSetDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ActionSetDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ActionSetDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ActionSetDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ActionSetRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ActionSetRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ActionSetRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ActionSetRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/CategorizedPageRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/CategorizedPageRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/CategorizedPageRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/CategorizedPageRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/Category.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/Category.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/Category.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/Category.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/EditorDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/EditorDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/EditorDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/EditorDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/EditorRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/EditorRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/EditorRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/EditorRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/EditorRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/EditorRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/EditorRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/EditorRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/FileEditorMapping.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/FileEditorMapping.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/FileEditorMapping.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/FileEditorMapping.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/IActionSet.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/IActionSet.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/IActionSet.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/IActionSet.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/IActionSetDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/IActionSetDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/IActionSetDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/IActionSetDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/IWorkbenchRegistryConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/IWorkbenchRegistryConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/IWorkbenchRegistryConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/IWorkbenchRegistryConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ImportExportPespectiveHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ImportExportPespectiveHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ImportExportPespectiveHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ImportExportPespectiveHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/KeywordRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/KeywordRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/KeywordRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/KeywordRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PerspectiveDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PerspectiveDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PerspectiveDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PerspectiveDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PerspectiveParameterValues.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PerspectiveParameterValues.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PerspectiveParameterValues.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PerspectiveParameterValues.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PerspectiveRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PerspectiveRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PerspectiveRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PerspectiveRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PreferencePageParameterValues.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PreferencePageParameterValues.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PreferencePageParameterValues.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PreferencePageParameterValues.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PreferencePageRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PreferencePageRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PreferencePageRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PreferencePageRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PreferenceTransferRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PreferenceTransferRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PreferenceTransferRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PreferenceTransferRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PropertyPagesRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PropertyPagesRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/PropertyPagesRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/PropertyPagesRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/RegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/RegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/RegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/RegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/StickyViewDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/StickyViewDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/StickyViewDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/StickyViewDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewCategory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewCategory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewCategory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewCategory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewParameterValues.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewParameterValues.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewParameterValues.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewParameterValues.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/ViewRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/ViewRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WizardParameterValues.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WizardParameterValues.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WizardParameterValues.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WizardParameterValues.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WizardsRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WizardsRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WizardsRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WizardsRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WorkingSetDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WorkingSetDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WorkingSetDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WorkingSetDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WorkingSetRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WorkingSetRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WorkingSetRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WorkingSetRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WorkingSetRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WorkingSetRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/WorkingSetRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/registry/WorkingSetRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ActionSetSourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ActionSetSourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ActionSetSourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ActionSetSourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationResultCache.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationResultCache.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationResultCache.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationResultCache.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationServiceFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationServiceFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/EvaluationServiceFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/EvaluationServiceFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ExpressionAuthority.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ExpressionAuthority.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ExpressionAuthority.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ExpressionAuthority.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/IEvaluationResultCache.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/IEvaluationResultCache.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/IEvaluationResultCache.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/IEvaluationResultCache.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/INestable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/INestable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/INestable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/INestable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/IServiceLocatorCreator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/IServiceLocatorCreator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/IServiceLocatorCreator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/IServiceLocatorCreator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/IWorkbenchLocationService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/IWorkbenchLocationService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/IWorkbenchLocationService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/IWorkbenchLocationService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/LogThrottle.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/LogThrottle.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/LogThrottle.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/LogThrottle.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/MenuSourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/MenuSourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/MenuSourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/MenuSourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/PreferencePersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/PreferencePersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/PreferencePersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/PreferencePersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/RegistryPersistence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/RegistryPersistence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/RegistryPersistence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/RegistryPersistence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ServiceLocator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ServiceLocator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ServiceLocator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ServiceLocator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ServiceLocatorCreator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ServiceLocatorCreator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/ServiceLocatorCreator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/ServiceLocatorCreator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/SlaveEvaluationService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/SlaveEvaluationService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/SlaveEvaluationService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/SlaveEvaluationService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/SourcePriorityNameMapping.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/SourcePriorityNameMapping.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/SourcePriorityNameMapping.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/SourcePriorityNameMapping.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/SourceProviderService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/SourceProviderService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/SourceProviderService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/SourceProviderService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/WorkbenchLocationService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/WorkbenchLocationService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/WorkbenchLocationService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/WorkbenchLocationService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/WorkbenchServiceRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/WorkbenchServiceRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/WorkbenchServiceRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/WorkbenchServiceRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/WorkbenchSourceProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/WorkbenchSourceProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/services/WorkbenchSourceProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/services/WorkbenchSourceProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/splash/EclipseSplashHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/splash/EclipseSplashHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/splash/EclipseSplashHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/splash/EclipseSplashHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/splash/SplashHandlerFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/splash/SplashHandlerFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/splash/SplashHandlerFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/splash/SplashHandlerFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/DefaultDetailsArea.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/DefaultDetailsArea.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/DefaultDetailsArea.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/DefaultDetailsArea.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/DetailsAreaManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/DetailsAreaManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/DetailsAreaManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/DetailsAreaManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/IStatusDialogConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/IStatusDialogConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/IStatusDialogConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/IStatusDialogConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/InternalDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/InternalDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/InternalDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/InternalDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/LabelProviderWrapper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/LabelProviderWrapper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/LabelProviderWrapper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/LabelProviderWrapper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StackTraceSupportArea.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StackTraceSupportArea.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StackTraceSupportArea.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StackTraceSupportArea.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptorsMap.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptorsMap.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptorsMap.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerDescriptorsMap.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerProductBindingDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerProductBindingDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerProductBindingDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerProductBindingDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/StatusHandlerRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/StatusHandlerRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/SupportTray.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/SupportTray.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/SupportTray.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/SupportTray.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/WorkbenchStatusDialogManagerImpl.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/WorkbenchStatusDialogManagerImpl.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/WorkbenchStatusDialogManagerImpl.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/WorkbenchStatusDialogManagerImpl.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/statushandlers/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/statushandlers/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/ContributionInfoMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/ContributionInfoMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/ContributionInfoMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/ContributionInfoMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/PluginContributionAdapterFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/PluginContributionAdapterFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/PluginContributionAdapterFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/PluginContributionAdapterFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/WorkbenchPartTestable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/WorkbenchPartTestable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/WorkbenchPartTestable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/WorkbenchPartTestable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/WorkbenchTestable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/WorkbenchTestable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/WorkbenchTestable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/WorkbenchTestable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/testing/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/testing/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingColorRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingColorRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingColorRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingColorRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingFontRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingFontRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingFontRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingFontRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingMap.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingMap.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingMap.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingMap.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingTheme.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingTheme.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/CascadingTheme.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/CascadingTheme.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorAndFontProviderImpl.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorAndFontProviderImpl.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorAndFontProviderImpl.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorAndFontProviderImpl.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ColorsAndFontsPreferencePage.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/FontDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/FontDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/FontDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/FontDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ICategorizedThemeElementDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ICategorizedThemeElementDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ICategorizedThemeElementDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ICategorizedThemeElementDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IEditable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IEditable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IEditable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IEditable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IHierarchalThemeElementDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IHierarchalThemeElementDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IHierarchalThemeElementDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IHierarchalThemeElementDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IThemeDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IThemeDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IThemeDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IThemeDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IThemeElementDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IThemeElementDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IThemeElementDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IThemeElementDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IThemeRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IThemeRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/IThemeRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/IThemeRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/LightColorFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/LightColorFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/LightColorFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/LightColorFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBBrightnessColorFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBBrightnessColorFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBBrightnessColorFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBBrightnessColorFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBContrastFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBContrastFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBContrastFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBContrastFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBInfoColorFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBInfoColorFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBInfoColorFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBInfoColorFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBVisibleContrastColorFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBVisibleContrastColorFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/RGBVisibleContrastColorFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/RGBVisibleContrastColorFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/Theme.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/Theme.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/Theme.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/Theme.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/Theme.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/Theme.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/Theme.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/Theme.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeElementCategory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeElementCategory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeElementCategory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeElementCategory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeElementDefinition.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeElementDefinition.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeElementDefinition.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeElementDefinition.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeElementHelper.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeElementHelper.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeElementHelper.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeElementHelper.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeRegistryReader.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeRegistryReader.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeRegistryReader.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeRegistryReader.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeRegistryReader.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeRegistryReader.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemeRegistryReader.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemeRegistryReader.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemesExtension.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemesExtension.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/ThemesExtension.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/ThemesExtension.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/WorkbenchPreview.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/WorkbenchPreview.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/WorkbenchPreview.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/WorkbenchPreview.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/WorkbenchThemeManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/WorkbenchThemeManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/themes/WorkbenchThemeManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/themes/WorkbenchThemeManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/DummyTitlePathUpdater.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/DummyTitlePathUpdater.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/DummyTitlePathUpdater.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/DummyTitlePathUpdater.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/InterceptContributions.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/InterceptContributions.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/InterceptContributions.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/InterceptContributions.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/TabBehaviour.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/TabBehaviour.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/TabBehaviour.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/TabBehaviour.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/TabBehaviourMRU.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/TabBehaviourMRU.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/TabBehaviourMRU.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/TabBehaviourMRU.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/TitlePathUpdater.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/TitlePathUpdater.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/TitlePathUpdater.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/TitlePathUpdater.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/Tweaklets.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/Tweaklets.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/tweaklets/Tweaklets.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/tweaklets/Tweaklets.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/BundleUtility.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/BundleUtility.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/BundleUtility.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/BundleUtility.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/ConfigurationElementMemento.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/ConfigurationElementMemento.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/ConfigurationElementMemento.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/ConfigurationElementMemento.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/Descriptors.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/Descriptors.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/Descriptors.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/Descriptors.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/ImageSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/ImageSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/ImageSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/ImageSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/PrefUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/PrefUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/PrefUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/PrefUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/Util.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/Util.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/util/Util.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/util/Util.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/AbstractExtensionWizardRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/AbstractExtensionWizardRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/AbstractExtensionWizardRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/AbstractExtensionWizardRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/AbstractWizardRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/AbstractWizardRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/AbstractWizardRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/AbstractWizardRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/ExportWizardRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/ExportWizardRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/ExportWizardRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/ExportWizardRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/ImportWizardRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/ImportWizardRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/ImportWizardRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/ImportWizardRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/NewWizardRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/NewWizardRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/NewWizardRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/NewWizardRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesExportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesExportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesExportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesExportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesImportWizard.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesImportWizard.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesImportWizard.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesImportWizard.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesMessages.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesMessages.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/PreferencesMessages.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/PreferencesMessages.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesExportPage1.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesExportPage1.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesExportPage1.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesExportPage1.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesImportPage1.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesImportPage1.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesImportPage1.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesImportPage1.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/WizardPreferencesPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/messages.properties b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/messages.properties
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/wizards/preferences/messages.properties
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/wizards/preferences/messages.properties
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IIntroManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IIntroManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IIntroManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IIntroManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IIntroPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IIntroPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IIntroPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IIntroPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IIntroSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IIntroSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IIntroSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IIntroSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IntroContentDetector.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IntroContentDetector.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/IntroContentDetector.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/IntroContentDetector.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/intro/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/intro/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/CharacterKey.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/CharacterKey.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/CharacterKey.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/CharacterKey.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/IBindingService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/IBindingService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/IBindingService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/IBindingService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/IKeyFormatter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/IKeyFormatter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/IKeyFormatter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/IKeyFormatter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/Key.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/Key.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/Key.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/Key.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/KeyFormatterFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/KeyFormatterFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/KeyFormatterFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/KeyFormatterFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/KeySequence.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/KeySequence.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/KeySequence.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/KeySequence.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/KeyStroke.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/KeyStroke.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/KeyStroke.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/KeyStroke.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/ModifierKey.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/ModifierKey.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/ModifierKey.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/ModifierKey.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/NaturalKey.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/NaturalKey.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/NaturalKey.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/NaturalKey.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/ParseException.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/ParseException.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/ParseException.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/ParseException.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/SWTKeySupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/SWTKeySupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/SWTKeySupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/SWTKeySupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/SpecialKey.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/SpecialKey.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/SpecialKey.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/SpecialKey.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/keys/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/keys/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/AbstractContributionFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/AbstractContributionFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/AbstractContributionFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/AbstractContributionFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/AbstractWorkbenchTrimWidget.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/AbstractWorkbenchTrimWidget.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/AbstractWorkbenchTrimWidget.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/AbstractWorkbenchTrimWidget.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/CommandContributionItem.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/CommandContributionItem.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/CommandContributionItem.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/CommandContributionItem.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/CommandContributionItemParameter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/CommandContributionItemParameter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/CommandContributionItemParameter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/CommandContributionItemParameter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/ExtensionContributionFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/ExtensionContributionFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/ExtensionContributionFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/ExtensionContributionFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IContributionRoot.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IContributionRoot.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IContributionRoot.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IContributionRoot.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IMenuService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IMenuService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IMenuService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IMenuService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IWorkbenchContribution.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IWorkbenchContribution.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IWorkbenchContribution.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IWorkbenchContribution.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IWorkbenchWidget.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IWorkbenchWidget.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/IWorkbenchWidget.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/IWorkbenchWidget.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/MenuUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/MenuUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/MenuUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/MenuUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/UIElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/UIElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/UIElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/UIElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/WorkbenchWindowControlContribution.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/WorkbenchWindowControlContribution.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/WorkbenchWindowControlContribution.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/WorkbenchWindowControlContribution.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/menus/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/menus/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/AdaptableList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/AdaptableList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/AdaptableList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/AdaptableList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/BaseWorkbenchContentProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/BaseWorkbenchContentProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/BaseWorkbenchContentProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/BaseWorkbenchContentProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/ContributionComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/ContributionComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/ContributionComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/ContributionComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IComparableContribution.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IComparableContribution.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IComparableContribution.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IComparableContribution.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IContributionService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IContributionService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IContributionService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IContributionService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IWorkbenchAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IWorkbenchAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IWorkbenchAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IWorkbenchAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IWorkbenchAdapter2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IWorkbenchAdapter2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IWorkbenchAdapter2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IWorkbenchAdapter2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IWorkbenchAdapter3.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IWorkbenchAdapter3.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/IWorkbenchAdapter3.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/IWorkbenchAdapter3.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/PerspectiveLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/PerspectiveLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/PerspectiveLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/PerspectiveLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchPartLabelProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchPartLabelProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchPartLabelProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchPartLabelProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchViewerComparator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchViewerComparator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchViewerComparator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchViewerComparator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchViewerSorter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchViewerSorter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/WorkbenchViewerSorter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/WorkbenchViewerSorter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/model/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/model/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/IWorkbenchOperationSupport.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/IWorkbenchOperationSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/IWorkbenchOperationSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/IWorkbenchOperationSupport.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/LinearUndoViolationUserApprover.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/LinearUndoViolationUserApprover.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/LinearUndoViolationUserApprover.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/LinearUndoViolationUserApprover.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/NonLocalUndoUserApprover.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/NonLocalUndoUserApprover.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/NonLocalUndoUserApprover.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/NonLocalUndoUserApprover.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/OperationHistoryActionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/OperationHistoryActionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/OperationHistoryActionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/OperationHistoryActionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/RedoActionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/RedoActionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/RedoActionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/RedoActionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/UndoActionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/UndoActionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/UndoActionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/UndoActionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/UndoRedoActionGroup.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/UndoRedoActionGroup.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/UndoRedoActionGroup.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/UndoRedoActionGroup.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/operations/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/operations/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/AbstractMultiEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/AbstractMultiEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/AbstractMultiEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/AbstractMultiEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/CellEditorActionHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/CellEditorActionHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/CellEditorActionHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/CellEditorActionHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/CoolItemGroupMarker.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/CoolItemGroupMarker.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/CoolItemGroupMarker.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/CoolItemGroupMarker.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillDownAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillDownAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillDownAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillDownAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillDownComposite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillDownComposite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillDownComposite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillDownComposite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillFrame.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillFrame.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillFrame.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillFrame.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillStack.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillStack.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/DrillStack.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/DrillStack.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/EditorActionBarContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/EditorActionBarContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/EditorActionBarContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/EditorActionBarContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/EditorInputTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/EditorInputTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/EditorInputTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/EditorInputTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/EditorPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/EditorPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/EditorPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/EditorPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IContributedContentsView.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IContributedContentsView.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IContributedContentsView.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IContributedContentsView.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IDropActionDelegate.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IDropActionDelegate.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IDropActionDelegate.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IDropActionDelegate.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IPageBookViewPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IPageBookViewPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IPageBookViewPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IPageBookViewPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IPageSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IPageSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IPageSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IPageSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/ISetSelectionTarget.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/ISetSelectionTarget.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/ISetSelectionTarget.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/ISetSelectionTarget.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IShowInSource.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IShowInSource.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IShowInSource.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IShowInSource.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IShowInTarget.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IShowInTarget.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IShowInTarget.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IShowInTarget.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IShowInTargetList.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IShowInTargetList.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IShowInTargetList.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IShowInTargetList.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IWorkbenchPartOrientation.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IWorkbenchPartOrientation.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IWorkbenchPartOrientation.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IWorkbenchPartOrientation.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IntroPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IntroPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/IntroPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/IntroPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MessagePage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MessagePage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MessagePage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MessagePage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiEditor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiEditor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiEditor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiEditor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiEditorInput.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiEditorInput.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiEditorInput.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiEditorInput.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorActionBarContributor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageEditorActionBarContributor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorActionBarContributor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageEditorActionBarContributor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageEditorPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageEditorPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageEditorSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageEditorSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageEditorSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageSelectionProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageSelectionProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/MultiPageSelectionProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/MultiPageSelectionProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/Page.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/Page.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/Page.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/Page.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageBook.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageBook.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageBook.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageBook.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageBookView.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageBookView.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageBookView.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageBookView.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageSite.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageSite.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageSite.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageSite.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageSwitcher.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageSwitcher.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PageSwitcher.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PageSwitcher.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PluginDropAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PluginDropAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PluginDropAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PluginDropAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PluginTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PluginTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PluginTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PluginTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PluginTransferData.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PluginTransferData.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/PluginTransferData.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/PluginTransferData.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/ShowInContext.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/ShowInContext.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/ShowInContext.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/ShowInContext.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/ViewPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/ViewPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/ViewPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/ViewPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/WorkbenchPart.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/WorkbenchPart.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/WorkbenchPart.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/WorkbenchPart.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/part/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/part/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/plugin/AbstractUIPlugin.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/plugin/AbstractUIPlugin.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/plugin/AbstractUIPlugin.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/plugin/AbstractUIPlugin.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/plugin/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/plugin/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/plugin/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/plugin/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/IWorkbenchPreferenceContainer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/IWorkbenchPreferenceContainer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/IWorkbenchPreferenceContainer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/IWorkbenchPreferenceContainer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/IWorkingCopyManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/IWorkingCopyManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/IWorkingCopyManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/IWorkingCopyManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/ScopedPreferenceStore.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/ScopedPreferenceStore.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/ScopedPreferenceStore.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/ScopedPreferenceStore.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/SettingsTransfer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/SettingsTransfer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/SettingsTransfer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/SettingsTransfer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/ViewPreferencesAction.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/ViewPreferencesAction.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/ViewPreferencesAction.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/ViewPreferencesAction.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/ViewSettingsDialog.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/ViewSettingsDialog.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/ViewSettingsDialog.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/ViewSettingsDialog.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/WizardPropertyPage.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/WizardPropertyPage.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/WizardPropertyPage.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/WizardPropertyPage.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/WorkingCopyManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/WorkingCopyManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/WorkingCopyManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/WorkingCopyManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/preferences/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/preferences/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/DeferredTreeContentManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/DeferredTreeContentManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/DeferredTreeContentManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/DeferredTreeContentManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IDeferredWorkbenchAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IDeferredWorkbenchAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IDeferredWorkbenchAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IDeferredWorkbenchAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IElementCollector.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IElementCollector.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IElementCollector.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IElementCollector.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IJobRunnable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IJobRunnable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IJobRunnable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IJobRunnable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IProgressConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IProgressConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IProgressConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IProgressConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IProgressConstants2.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IProgressConstants2.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IProgressConstants2.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IProgressConstants2.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IProgressService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IProgressService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IProgressService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IProgressService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IWorkbenchSiteProgressService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IWorkbenchSiteProgressService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/IWorkbenchSiteProgressService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/IWorkbenchSiteProgressService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/PendingUpdateAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/PendingUpdateAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/PendingUpdateAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/PendingUpdateAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/UIJob.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/UIJob.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/UIJob.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/UIJob.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/WorkbenchJob.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/WorkbenchJob.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/WorkbenchJob.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/WorkbenchJob.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/progress/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/quickaccess/IQuickAccessComputer.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/quickaccess/IQuickAccessComputer.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/quickaccess/IQuickAccessComputer.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/quickaccess/IQuickAccessComputer.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/quickaccess/IQuickAccessComputerExtension.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/quickaccess/IQuickAccessComputerExtension.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/quickaccess/IQuickAccessComputerExtension.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/quickaccess/IQuickAccessComputerExtension.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/quickaccess/QuickAccessElement.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/quickaccess/QuickAccessElement.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/quickaccess/QuickAccessElement.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/quickaccess/QuickAccessElement.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/AbstractServiceFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/AbstractServiceFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/AbstractServiceFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/AbstractServiceFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IDisposable.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IDisposable.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IDisposable.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IDisposable.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IEvaluationReference.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IEvaluationReference.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IEvaluationReference.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IEvaluationReference.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IEvaluationService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IEvaluationService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IEvaluationService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IEvaluationService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IServiceLocator.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IServiceLocator.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IServiceLocator.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IServiceLocator.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IServiceScopes.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IServiceScopes.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IServiceScopes.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IServiceScopes.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IServiceWithSources.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IServiceWithSources.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/IServiceWithSources.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/IServiceWithSources.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/ISourceProviderService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/ISourceProviderService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/ISourceProviderService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/ISourceProviderService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/services/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/services/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/splash/AbstractSplashHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/splash/AbstractSplashHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/splash/AbstractSplashHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/splash/AbstractSplashHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/splash/BasicSplashHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/splash/BasicSplashHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/splash/BasicSplashHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/splash/BasicSplashHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/splash/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/splash/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/splash/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/splash/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/AbstractStatusAreaProvider.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/AbstractStatusAreaProvider.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/AbstractStatusAreaProvider.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/AbstractStatusAreaProvider.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/AbstractStatusHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/AbstractStatusHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/AbstractStatusHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/AbstractStatusHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/IStatusAdapterConstants.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/IStatusAdapterConstants.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/IStatusAdapterConstants.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/IStatusAdapterConstants.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/StatusAdapter.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/StatusAdapter.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/StatusAdapter.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/StatusAdapter.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/StatusManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/StatusManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/StatusManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/StatusManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/WorkbenchErrorHandler.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/WorkbenchErrorHandler.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/WorkbenchErrorHandler.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/WorkbenchErrorHandler.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/WorkbenchStatusDialogManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/WorkbenchStatusDialogManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/WorkbenchStatusDialogManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/WorkbenchStatusDialogManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/statushandlers/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/statushandlers/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/swt/IFocusService.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/swt/IFocusService.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/swt/IFocusService.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/swt/IFocusService.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/swt/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/swt/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/swt/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/swt/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/ColorUtil.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/ColorUtil.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/ColorUtil.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/ColorUtil.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/IColorFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/IColorFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/IColorFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/IColorFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/ITheme.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/ITheme.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/ITheme.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/ITheme.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/IThemeManager.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/IThemeManager.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/IThemeManager.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/IThemeManager.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/IThemePreview.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/IThemePreview.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/IThemePreview.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/IThemePreview.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/RGBBlendColorFactory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/RGBBlendColorFactory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/RGBBlendColorFactory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/RGBBlendColorFactory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/themes/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/themes/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IStickyViewDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IStickyViewDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IStickyViewDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IStickyViewDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IViewCategory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IViewCategory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IViewCategory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IViewCategory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IViewDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IViewDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IViewDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IViewDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IViewRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IViewRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/IViewRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/IViewRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/WorkbenchViewerSetup.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/WorkbenchViewerSetup.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/WorkbenchViewerSetup.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/WorkbenchViewerSetup.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/views/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/views/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/IWizardCategory.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/IWizardCategory.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/IWizardCategory.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/IWizardCategory.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/IWizardDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/IWizardDescriptor.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/IWizardDescriptor.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/IWizardDescriptor.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/IWizardRegistry.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/IWizardRegistry.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/IWizardRegistry.java
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/IWizardRegistry.java
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/package.html b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/package.html
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/wizards/package.html
rename to bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/wizards/package.html
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI Editor Support/org/eclipse/ui/internal/editorsupport/ComponentSupport.java b/bundles/org.eclipse.ui.workbench/eclipseuieditorsupport/org/eclipse/ui/internal/editorsupport/ComponentSupport.java
similarity index 100%
rename from bundles/org.eclipse.ui.workbench/Eclipse UI Editor Support/org/eclipse/ui/internal/editorsupport/ComponentSupport.java
rename to bundles/org.eclipse.ui.workbench/eclipseuieditorsupport/org/eclipse/ui/internal/editorsupport/ComponentSupport.java
From 908db0fb1d57c9c3c9e083deccbc876e121cb5d4 Mon Sep 17 00:00:00 2001
From: Hannes Wellmann
Date: Sat, 19 Oct 2024 12:22:47 +0200
Subject: [PATCH 117/232] Clean-up and simplify E4 ModelAssembler
---
.../ui/internal/workbench/ModelAssembler.java | 259 ++++++++----------
1 file changed, 108 insertions(+), 151 deletions(-)
diff --git a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ModelAssembler.java b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ModelAssembler.java
index 325023c8402..5965a64d48c 100644
--- a/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ModelAssembler.java
+++ b/bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/ModelAssembler.java
@@ -19,24 +19,26 @@
package org.eclipse.e4.ui.internal.workbench;
+import static org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution.APPLY_ALWAYS;
+import static org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution.APPLY_PROPERTY_KEY;
+import static org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution.BEFORE_FRAGMENT_PROPERTY_KEY;
+
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
+import java.io.PrintStream;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Dictionary;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
-import java.util.Map.Entry;
import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.atomic.AtomicReference;
-import java.util.stream.Collectors;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.IExtension;
import org.eclipse.core.runtime.IExtensionPoint;
@@ -58,8 +60,6 @@
import org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution;
import org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution.ModelElement;
import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.TreeIterator;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
@@ -80,7 +80,6 @@
import org.osgi.service.component.annotations.ReferenceCardinality;
import org.osgi.service.component.annotations.ReferencePolicy;
import org.osgi.service.component.annotations.ReferencePolicyOption;
-import org.osgi.service.log.LogLevel;
import org.osgi.service.log.Logger;
import org.osgi.service.log.LoggerFactory;
import org.osgi.util.tracker.BundleTracker;
@@ -101,9 +100,8 @@ private class Bucket {
Set containedElementIds = new LinkedHashSet<>();
}
- private static class FragmentWrapperElementMapping {
- ModelFragmentWrapper wrapper;
- List elements;
+ private static record FragmentWrapperElementMapping(ModelFragmentWrapper wrapper,
+ List elements) {
}
private class ModelFragmentBundleTracker implements BundleTrackerCustomizer> {
@@ -116,12 +114,9 @@ public List addingBundle(Bundle bundle, BundleEve
List wrappers = getModelFragmentWrapperFromBundle(bundle,
ModelAssembler.this.initial);
- List mappings = wrappers.stream().map(w -> {
- FragmentWrapperElementMapping mapping = new FragmentWrapperElementMapping();
- mapping.wrapper = w;
- mapping.elements = new ArrayList<>(w.getModelFragment().getElements());
- return mapping;
- }).collect(Collectors.toList());
+ List mappings = wrappers.stream()
+ .map(w -> new FragmentWrapperElementMapping(w, List.copyOf(w.getModelFragment().getElements())))
+ .toList();
// we skip direct processing in case the startup model processing is not done
// yet
@@ -147,8 +142,7 @@ public void removedBundle(Bundle bundle, BundleEvent event, List m.elements.stream()).forEach(appElement -> {
// TODO implement removal of contributions, e.g. MenuContributions
- if (appElement instanceof MUIElement) {
- MUIElement element = (MUIElement) appElement;
+ if (appElement instanceof MUIElement element) {
element.setToBeRendered(false);
if (element.getParent() != null) {
element.getParent().getChildren().remove(element);
@@ -165,7 +159,7 @@ public void removedBundle(Bundle bundle, BundleEvent event, List registry = new AtomicReference<>();
+ private final AtomicReference registry = new AtomicReference<>();
- private CopyOnWriteArrayList> processorContributions = new CopyOnWriteArrayList<>();
+ private final List> processorContributions = new CopyOnWriteArrayList<>();
- BundleContext bundleContext;
+ private BundleContext bundleContext;
- BundleTracker> tracker;
+ private BundleTracker> tracker;
private boolean processModelExecuted = false;
@@ -276,8 +268,7 @@ void unregisterModelProcessorContribution(ServiceReference collect = this.tracker.getTracked().values().stream().flatMap(List::stream)
- .map(w -> w.wrapper).collect(Collectors.toList());
- wrappers.addAll(collect);
+ this.tracker.getTracked().values().stream().flatMap(List::stream)
+ .map(FragmentWrapperElementMapping::wrapper).forEach(wrappers::add);
}
processFragmentWrappers(wrappers);
@@ -388,8 +379,7 @@ private List getModelFragmentWrapperFromBundle(Bundle bund
// check if the value for apply is valid
if (!ALWAYS.equals(apply) && !INITIAL.equals(apply) && !NOTEXISTS.equals(apply)) {
- log(LogLevel.WARN, "Model-Fragment header apply attribute {} is invalid, falling back to always", //$NON-NLS-1$
- apply);
+ warn("Model-Fragment header apply attribute {} is invalid, falling back to always", apply); //$NON-NLS-1$
apply = ALWAYS;
}
@@ -404,8 +394,7 @@ private List getModelFragmentWrapperFromBundle(Bundle bund
}
}
} else {
- log(LogLevel.ERROR, "Model-Fragment header value {} in bundle {} is invalid", //$NON-NLS-1$
- fragmentHeader, bundle.getSymbolicName());
+ error("Model-Fragment header value {} in bundle {} is invalid", fragmentHeader, bundle.getSymbolicName()); //$NON-NLS-1$
}
return wrappers;
@@ -422,11 +411,8 @@ public void processFragmentWrappers(Collection wrappers) {
Map parentIdToBuckets = new LinkedHashMap<>();
for (ModelFragmentWrapper fragmentWrapper : wrappers) {
MModelFragment fragment = fragmentWrapper.getModelFragment();
- String parentId = MStringModelFragment.class.cast(fragment).getParentElementId();
- if (!parentIdToBuckets.containsKey(parentId)) {
- parentIdToBuckets.put(parentId, new Bucket());
- }
- Bucket b = parentIdToBuckets.get(parentId);
+ String parentId = ((MStringModelFragment) fragment).getParentElementId();
+ Bucket b = parentIdToBuckets.computeIfAbsent(parentId, id -> new Bucket());
if (elementIdToBucket.containsKey(parentId)) {
Bucket parentBucket = elementIdToBucket.get(parentId);
parentBucket.dependencies.add(b);
@@ -454,16 +440,15 @@ public void processFragmentWrappers(Collection wrappers) {
private List createUnifiedFragmentList(Map elementIdToBucket) {
List fragmentList = new ArrayList<>();
Set checkedElementIds = new LinkedHashSet<>();
- for (Entry entry : elementIdToBucket.entrySet()) {
- if (checkedElementIds.contains(entry.getKey())) {
- continue;
+ elementIdToBucket.forEach((key, bucket) -> {
+ if (checkedElementIds.contains(key)) {
+ return;
}
- Bucket bucket = entry.getValue();
while (bucket.dependentOn != null) {
bucket = bucket.dependentOn;
}
addAllBucketFragmentWrapper(bucket, fragmentList, checkedElementIds);
- }
+ });
return fragmentList;
}
@@ -513,10 +498,8 @@ public void processFragment(MModelFragments fragmentsContainer, MModelFragment f
Diagnostic validationResult = Diagnostician.INSTANCE.validate((EObject) fragment);
int severity = validationResult.getSeverity();
if (severity == Diagnostic.ERROR) {
- log(LogLevel.ERROR,
- "Fragment from {} of {} could not be validated and was not merged: -> Validation result: {}" //$NON-NLS-1$
- + fragment,
- contributorURI, contributorName, validationResult);
+ error("Fragment from {} of {} could not be validated and was not merged: -> Validation result: {}" //$NON-NLS-1$
+ + fragment, contributorURI, contributorName, validationResult);
}
List merged = processModelFragment(fragment, contributorURI, checkExist);
@@ -524,8 +507,7 @@ public void processFragment(MModelFragments fragmentsContainer, MModelFragment f
evalImports = true;
addedElements.addAll(merged);
} else {
- log(LogLevel.DEBUG, "Nothing to merge for fragment {} of {}", contributorURI, //$NON-NLS-1$
- contributorName);
+ debug("Nothing to merge for fragment {} of {}", contributorURI, contributorName); //$NON-NLS-1$
}
if (evalImports && !fragmentsContainer.getImports().isEmpty()) {
resolveImports(fragmentsContainer.getImports(), addedElements);
@@ -536,7 +518,7 @@ private MModelFragments getFragmentsContainer(String attrURI, String bundleName)
E4XMIResource applicationResource = (E4XMIResource) ((EObject) application).eResource();
ResourceSet resourceSet = applicationResource.getResourceSet();
if (attrURI == null) {
- log(LogLevel.WARN, "Unable to find location for the model extension {}", bundleName); //$NON-NLS-1$
+ warn("Unable to find location for the model extension {}", bundleName); //$NON-NLS-1$
return null;
}
@@ -550,7 +532,7 @@ private MModelFragments getFragmentsContainer(String attrURI, String bundleName)
uri = URI.createPlatformPluginURI(path, false);
}
} catch (RuntimeException e) {
- log(LogLevel.WARN, "Invalid location {} of model extension {}", attrURI, bundleName, e); //$NON-NLS-1$
+ warn("Invalid location {} of model extension {}", attrURI, bundleName, e); //$NON-NLS-1$
return null;
}
@@ -558,22 +540,22 @@ private MModelFragments getFragmentsContainer(String attrURI, String bundleName)
try {
resource = resourceSet.getResource(uri, true);
} catch (RuntimeException e) {
- log(LogLevel.WARN, "Unable to read model extension from {} of {}", uri, bundleName); //$NON-NLS-1$
+ warn("Unable to read model extension from {} of {}", uri, bundleName); //$NON-NLS-1$
return null;
}
- EList> contents = resource.getContents();
+ List> contents = resource.getContents();
if (contents.isEmpty()) {
return null;
}
Object extensionRoot = contents.get(0);
- if (!(extensionRoot instanceof MModelFragments)) {
- log(LogLevel.WARN, "Unable to create model extension {}", bundleName); //$NON-NLS-1$
+ if (!(extensionRoot instanceof MModelFragments modelFragments)) {
+ warn("Unable to create model extension {}", bundleName); //$NON-NLS-1$
return null;
}
- return (MModelFragments) extensionRoot;
+ return modelFragments;
}
/**
@@ -613,12 +595,11 @@ public List processModelFragment(MModelFragment fragment, S
}
// Remember IDs of subitems
- TreeIterator treeIt = EcoreUtil.getAllContents(o, true);
- while (treeIt.hasNext()) {
- EObject eObj = treeIt.next();
+ Iterable contents = () -> EcoreUtil.getAllContents(o, true);
+ for (EObject eObj : contents) {
r = (E4XMIResource) eObj.eResource();
- if (contributorURI != null && (eObj instanceof MApplicationElement)) {
- ((MApplicationElement) eObj).setContributorURI(contributorURI);
+ if (contributorURI != null && eObj instanceof MApplicationElement application) {
+ application.setContributorURI(contributorURI);
}
applicationResource.setID(eObj, r.getInternalId(eObj));
}
@@ -643,9 +624,9 @@ public void runProcessors(IExtension[] extensions, boolean initial, boolean afte
for (IExtension extension : extensions) {
IConfigurationElement[] ces = extension.getConfigurationElements();
for (IConfigurationElement ce : ces) {
- boolean parseBoolean = Boolean.parseBoolean(ce.getAttribute("beforefragment")); //$NON-NLS-1$
+ boolean parseBoolean = Boolean.parseBoolean(ce.getAttribute(BEFORE_FRAGMENT_PROPERTY_KEY));
if ("processor".equals(ce.getName()) && afterFragments != parseBoolean) { //$NON-NLS-1$
- if (initial || !INITIAL.equals(ce.getAttribute("apply"))) { //$NON-NLS-1$
+ if (initial || !INITIAL.equals(ce.getAttribute(APPLY_PROPERTY_KEY))) {
runProcessor(ce);
}
}
@@ -653,31 +634,23 @@ public void runProcessors(IExtension[] extensions, boolean initial, boolean afte
}
this.processorContributions.stream().filter(sr -> {
- Dictionary dict = sr.getProperties();
-
- Object before = dict.get(IModelProcessorContribution.BEFORE_FRAGMENT_PROPERTY_KEY);
+ Object before = sr.getProperty(BEFORE_FRAGMENT_PROPERTY_KEY);
boolean beforeFragments = true;
- if (before instanceof Boolean) {
- beforeFragments = (Boolean) before;
- } else if (before instanceof String) {
- beforeFragments = Boolean.parseBoolean((String) before);
+ if (before instanceof Boolean beforeValue) {
+ beforeFragments = beforeValue;
+ } else if (before instanceof String beforeValue) {
+ beforeFragments = Boolean.parseBoolean(beforeValue);
}
- Object applyObject = dict.get(IModelProcessorContribution.APPLY_PROPERTY_KEY);
- String apply = applyObject instanceof String ? (String) applyObject
- : IModelProcessorContribution.APPLY_ALWAYS;
-
+ String apply = sr.getProperty(APPLY_PROPERTY_KEY) instanceof String applyValue ? applyValue : APPLY_ALWAYS;
// check if the value for apply is valid
if (!ALWAYS.equals(apply) && !INITIAL.equals(apply)) {
- log(LogLevel.WARN,
- "IModelProcessorContribution apply property value {} is invalid, falling back to always", //$NON-NLS-1$
- apply);
- apply = IModelProcessorContribution.APPLY_ALWAYS;
+ warn("IModelProcessorContribution apply property value {} is invalid, falling back to always", apply); //$NON-NLS-1$
+ apply = APPLY_ALWAYS;
}
- return ((afterFragments != beforeFragments)
- && (initial || IModelProcessorContribution.APPLY_ALWAYS.equals(apply)));
- }).map(sr -> bundleContext.getService(sr)).forEach(ModelAssembler.this::runProcessor);
+ return afterFragments != beforeFragments && (initial || APPLY_ALWAYS.equals(apply));
+ }).map(bundleContext::getService).forEach(this::runProcessor);
}
private void runProcessor(IConfigurationElement ce) {
@@ -688,7 +661,7 @@ private void runProcessor(IConfigurationElement ce) {
String id = ceEl.getAttribute("id"); //$NON-NLS-1$
if (id == null) {
- log(LogLevel.WARN, "No element id given"); //$NON-NLS-1$
+ warn("No element id given"); //$NON-NLS-1$
continue;
}
@@ -699,7 +672,7 @@ private void runProcessor(IConfigurationElement ce) {
MApplicationElement el = ModelUtils.findElementById(application, id);
if (el == null) {
- log(LogLevel.WARN, "Could not find element with id {}", id); //$NON-NLS-1$
+ warn("Could not find element with id {}", id); //$NON-NLS-1$
}
localContext.set(key, el);
}
@@ -708,14 +681,12 @@ private void runProcessor(IConfigurationElement ce) {
Object o = factory.create("bundleclass://" + ce.getContributor().getName() + "/" + ce.getAttribute("class"), //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
context, localContext);
if (o == null) {
- log(LogLevel.WARN, "Unable to create processor {} from {}", //$NON-NLS-1$
- ce.getAttribute("class"), //$NON-NLS-1$
- ce.getContributor().getName());
+ warn("Unable to create processor {} from {}", ce.getAttribute("class"), ce.getContributor().getName()); //$NON-NLS-1$//$NON-NLS-2$
} else {
ContextInjectionFactory.invoke(o, Execute.class, context, localContext, null);
}
} catch (Exception e) {
- log(LogLevel.WARN, "Could not run processor: {}", e); //$NON-NLS-1$
+ warn("Could not run processor: {}", e); //$NON-NLS-1$
}
}
@@ -726,7 +697,7 @@ private void runProcessor(IModelProcessorContribution processor) {
String id = element.getId();
if (id == null) {
- log(LogLevel.WARN, "No element id given"); //$NON-NLS-1$
+ warn("No element id given"); //$NON-NLS-1$
continue;
}
@@ -737,7 +708,7 @@ private void runProcessor(IModelProcessorContribution processor) {
MApplicationElement el = ModelUtils.findElementById(application, id);
if (el == null) {
- log(LogLevel.WARN, "Could not find element with id {}", id); //$NON-NLS-1$
+ warn("Could not find element with id {}", id); //$NON-NLS-1$
}
localContext.set(key, el);
}
@@ -750,14 +721,13 @@ private void runProcessor(IModelProcessorContribution processor) {
o = processor;
}
if (o == null) {
- log(LogLevel.WARN, "Unable to create processor {} from {}", //$NON-NLS-1$
- processor.getProcessorClass().getName(),
+ warn("Unable to create processor {} from {}", processor.getProcessorClass().getName(), //$NON-NLS-1$
FrameworkUtil.getBundle(processor.getProcessorClass()).getSymbolicName());
} else {
ContextInjectionFactory.invoke(o, Execute.class, context, localContext, null);
}
} catch (Exception e) {
- log(LogLevel.WARN, "Could not run processor: {}", e); //$NON-NLS-1$
+ warn("Could not run processor: {}", e); //$NON-NLS-1$
}
}
@@ -781,48 +751,42 @@ public void resolveImports(List imports, List it = EcoreUtil.getAllContents(addedElements);
+ Iterable contents = () -> EcoreUtil.getAllContents(addedElements);
List commands = new ArrayList<>();
-
- while (it.hasNext()) {
- EObject o = it.next();
-
- EContentsEList.FeatureIterator featureIterator = (EContentsEList.FeatureIterator) o
+ for (EObject target : contents) {
+ EContentsEList.FeatureIterator featureIterator = (EContentsEList.FeatureIterator) target
.eCrossReferences().iterator();
while (featureIterator.hasNext()) {
EObject importObject = featureIterator.next();
if (importObject.eContainmentFeature() == FragmentPackageImpl.Literals.MODEL_FRAGMENTS__IMPORTS) {
EStructuralFeature feature = featureIterator.feature();
- MApplicationElement el = null;
+ MApplicationElement element;
if (importObject instanceof MApplicationElement applicationElement) {
- el = importMaps.get(applicationElement);
-
- if (el == null) {
- log(LogLevel.WARN, "Could not resolve import for {}", //$NON-NLS-1$
- ((MApplicationElement) importObject).getElementId());
+ element = importMaps.get(applicationElement);
+ if (element == null) {
+ warn("Could not resolve import for {}", applicationElement.getElementId()); //$NON-NLS-1$
}
+ } else {
+ element = null;
}
-
- final EObject interalTarget = o;
- final EStructuralFeature internalFeature = feature;
- final MApplicationElement internalElement = el;
- final EObject internalImportObject = importObject;
-
commands.add(() -> {
- if (internalFeature.isMany()) {
- log(LogLevel.ERROR,
- "Replacing in {}.\n\nFeature={}.\n\nInternalElement={} contributed by {}.\n\nImportObject={}", //$NON-NLS-1$
- interalTarget, internalFeature.getName(), internalElement.getElementId(),
- internalElement.getContributorURI(), internalImportObject);
+ if (feature.isMany()) {
+ error("""
+ Replacing in {}.
+ Feature={}.
+ InternalElement={} contributed by {}.
+ ImportObject={}
+ """, target, feature.getName(), element.getElementId(), element.getContributorURI(), //$NON-NLS-1$
+ importObject);
@SuppressWarnings("unchecked")
- List l = (List) interalTarget.eGet(internalFeature);
- int index = l.indexOf(internalImportObject);
+ List l = (List) target.eGet(feature);
+ int index = l.indexOf(importObject);
if (index >= 0) {
- l.set(index, internalElement);
+ l.set(index, element);
}
} else {
- interalTarget.eSet(internalFeature, internalElement);
+ target.eSet(feature, element);
}
});
}
@@ -834,36 +798,29 @@ public void resolveImports(List imports, List
Date: Thu, 7 Nov 2024 13:02:57 +0100
Subject: [PATCH 118/232] Impl #2402 - Migrate model processors from extension
point to OSGi DS
Signed-off-by: Dirk Fauth
---
.../.project | 5 ++++
.../org.eclipse.pde.ds.annotations.prefs | 7 +++++
.../META-INF/MANIFEST.MF | 4 +++
.../build.properties | 4 +--
.../plugin.xml | 26 -------------------
.../addons/swt/CleanupProcessor.java | 7 +++--
.../ui/workbench/addons/swt/DnDProcessor.java | 7 +++--
.../workbench/addons/swt/MinMaxProcessor.java | 7 +++--
.../addons/swt/SplitterProcessor.java | 8 +++---
.../META-INF/MANIFEST.MF | 5 +++-
.../ui/internal/BindingToModelProcessor.java | 18 +++++++++++--
.../ui/internal/CommandToModelProcessor.java | 7 +++--
.../ui/internal/ContextToModelProcessor.java | 7 +++--
bundles/org.eclipse.ui.workbench/plugin.xml | 16 ------------
.../tests/pluginchecks/PluginWalkerTest.java | 12 ++++-----
15 files changed, 74 insertions(+), 66 deletions(-)
create mode 100644 bundles/org.eclipse.e4.ui.workbench.addons.swt/.settings/org.eclipse.pde.ds.annotations.prefs
delete mode 100644 bundles/org.eclipse.e4.ui.workbench.addons.swt/plugin.xml
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/.project b/bundles/org.eclipse.e4.ui.workbench.addons.swt/.project
index 2091c485f6e..8e8b8db761b 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/.project
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/.project
@@ -30,6 +30,11 @@
+
+ org.eclipse.pde.ds.core.builder
+
+
+ org.eclipse.m2e.core.maven2Nature
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/.settings/org.eclipse.pde.ds.annotations.prefs b/bundles/org.eclipse.e4.ui.workbench.addons.swt/.settings/org.eclipse.pde.ds.annotations.prefs
new file mode 100644
index 00000000000..5faf08b7d5c
--- /dev/null
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/.settings/org.eclipse.pde.ds.annotations.prefs
@@ -0,0 +1,7 @@
+dsVersion=V1_4
+eclipse.preferences.version=1
+enabled=true
+generateBundleActivationPolicyLazy=true
+path=OSGI-INF
+validationErrorLevel=error
+validationErrorLevel.missingImplicitUnbindMethod=error
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.ui.workbench.addons.swt/META-INF/MANIFEST.MF
index d1349e8e07e..96bf7818898 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/META-INF/MANIFEST.MF
@@ -18,6 +18,10 @@ Require-Bundle: org.eclipse.e4.ui.model.workbench;bundle-version="1.0.0",
org.eclipse.e4.ui.di;bundle-version="0.10.0",
org.eclipse.e4.ui.services;bundle-version="1.0.0",
org.eclipse.emf.ecore.xmi;bundle-version="2.7.0"
+Service-Component: OSGI-INF/org.eclipse.e4.ui.workbench.addons.swt.CleanupProcessor.xml,
+ OSGI-INF/org.eclipse.e4.ui.workbench.addons.swt.DnDProcessor.xml,
+ OSGI-INF/org.eclipse.e4.ui.workbench.addons.swt.MinMaxProcessor.xml,
+ OSGI-INF/org.eclipse.e4.ui.workbench.addons.swt.SplitterProcessor.xml
Bundle-RequiredExecutionEnvironment: JavaSE-17
Bundle-ActivationPolicy: lazy
Import-Package: jakarta.annotation;version="[2.1.0,3.0.0)",
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/build.properties b/bundles/org.eclipse.e4.ui.workbench.addons.swt/build.properties
index 774cbbd3226..cf9fdf20869 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/build.properties
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/build.properties
@@ -17,7 +17,7 @@ bin.includes = META-INF/,\
.,\
about.html,\
plugin.properties,\
- plugin.xml,\
- icons/
+ icons/,\
+ OSGI-INF/
src.includes = icons/,\
about.html
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/plugin.xml b/bundles/org.eclipse.e4.ui.workbench.addons.swt/plugin.xml
deleted file mode 100644
index f6c46652e79..00000000000
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/plugin.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/CleanupProcessor.java b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/CleanupProcessor.java
index 190c518ff0f..f50a82be30c 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/CleanupProcessor.java
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/CleanupProcessor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2014 IBM Corporation and others.
+ * Copyright (c) 2013, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -19,11 +19,14 @@
import org.eclipse.e4.ui.model.application.MAddon;
import org.eclipse.e4.ui.model.application.MApplication;
import org.eclipse.e4.ui.workbench.modeling.EModelService;
+import org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution;
+import org.osgi.service.component.annotations.Component;
/**
* Model processors which adds the cleanup add-on to the application model
*/
-public class CleanupProcessor {
+@Component
+public class CleanupProcessor implements IModelProcessorContribution {
@Execute
void addCleanupAddon(MApplication app, EModelService modelService) {
List addons = app.getAddons();
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/DnDProcessor.java b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/DnDProcessor.java
index b0a755230b3..3c89c46f14e 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/DnDProcessor.java
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/DnDProcessor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2014 IBM Corporation and others.
+ * Copyright (c) 2013, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -19,11 +19,14 @@
import org.eclipse.e4.ui.model.application.MAddon;
import org.eclipse.e4.ui.model.application.MApplication;
import org.eclipse.e4.ui.workbench.modeling.EModelService;
+import org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution;
+import org.osgi.service.component.annotations.Component;
/**
* Model processors which adds the DnD add-on to the application model
*/
-public class DnDProcessor {
+@Component
+public class DnDProcessor implements IModelProcessorContribution {
@Execute
void addDnDAddon(MApplication app, EModelService modelService) {
List addons = app.getAddons();
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/MinMaxProcessor.java b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/MinMaxProcessor.java
index 075825f72a7..463ff6a32bb 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/MinMaxProcessor.java
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/MinMaxProcessor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2014 IBM Corporation and others.
+ * Copyright (c) 2013, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -19,11 +19,14 @@
import org.eclipse.e4.ui.model.application.MAddon;
import org.eclipse.e4.ui.model.application.MApplication;
import org.eclipse.e4.ui.workbench.modeling.EModelService;
+import org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution;
+import org.osgi.service.component.annotations.Component;
/**
* Model processors which adds the MinMax add-on to the application model
*/
-public class MinMaxProcessor {
+@Component
+public class MinMaxProcessor implements IModelProcessorContribution {
@Execute
void addMinMaxAddon(MApplication app, EModelService modelService) {
List addons = app.getAddons();
diff --git a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/SplitterProcessor.java b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/SplitterProcessor.java
index 8c1130cc85a..823353040ac 100644
--- a/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/SplitterProcessor.java
+++ b/bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/swt/SplitterProcessor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2014 IBM Corporation and others.
+ * Copyright (c) 2013, 2024 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -19,12 +19,14 @@
import org.eclipse.e4.ui.model.application.MAddon;
import org.eclipse.e4.ui.model.application.MApplication;
import org.eclipse.e4.ui.workbench.modeling.EModelService;
+import org.eclipse.e4.ui.workbench.modeling.IModelProcessorContribution;
+import org.osgi.service.component.annotations.Component;
/**
* Model processors which adds the Splitter add-on to the application model
*/
-
-public class SplitterProcessor {
+@Component
+public class SplitterProcessor implements IModelProcessorContribution {
@Execute
void addSplitterAddon(MApplication app, EModelService modelService) {
List