Bug 578360 - MarkerSupportView should allow custom open method for
markers
Makes the openSelectedMarkers method protected instead of package
private.
Updated java doc with @since annotation.
Added a new test MarkerSupportViewTest
Change-Id: Ie428a5e1c81aa3db293fc62f7bf12f4426aa2e06
Signed-off-by: Enda O Brien <E.OBrien@pilz.ie>
Reviewed-on: https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/189994
Tested-by: Platform Bot <platform-bot@eclipse.org>
Reviewed-by: Jörg Kubitz <jkubitz-eclipse@gmx.de>
diff --git a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/ExtendedMarkersView.java b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/ExtendedMarkersView.java
index 65a5518..ee86669 100644
--- a/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/ExtendedMarkersView.java
+++ b/bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/ExtendedMarkersView.java
@@ -1143,8 +1143,11 @@
/**
* Open the selected markers
+ *
+ * @since 3.18
*/
- void openSelectedMarkers() {
+
+ protected void openSelectedMarkers() {
IMarker[] markers = getOpenableMarkers();
for (IMarker marker : markers) {
IWorkbenchPage page = getSite().getPage();
diff --git a/tests/org.eclipse.ui.ide.application.tests/src/org/eclipse/ui/views/markers/MarkerSupportViewTest.java b/tests/org.eclipse.ui.ide.application.tests/src/org/eclipse/ui/views/markers/MarkerSupportViewTest.java
new file mode 100644
index 0000000..f68f2e0
--- /dev/null
+++ b/tests/org.eclipse.ui.ide.application.tests/src/org/eclipse/ui/views/markers/MarkerSupportViewTest.java
@@ -0,0 +1,21 @@
+package org.eclipse.ui.views.markers;
+
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Test;
+
+public class MarkerSupportViewTest {
+
+ @Test
+ public void canOverrideOpenSelectedMarkers() {
+ Boolean[] canOverride = new Boolean[] { false };
+ new MarkerSupportView("") {
+ @Override
+ protected void openSelectedMarkers() {
+ canOverride[0] = true;
+ }
+ }.openSelectedMarkers();
+
+ assertTrue(canOverride[0]);
+ }
+}