Skip to content

Commit 29edf0e

Browse files
Merge branch 'master' into master
2 parents 69bb807 + 7ba78e6 commit 29edf0e

120 files changed

Lines changed: 2919 additions & 5780 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/copilot-setup-steps.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ jobs:
1616
contents: read
1717
steps:
1818
- name: Checkout code
19-
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
19+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
2020

2121
- name: Set up JDK 21
22-
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
22+
uses: actions/setup-java@ad2b38190b15e4d6bdf0c97fb4fca8412226d287 # v5.3.0
2323
with:
2424
java-version: '21'
2525
distribution: 'temurin'

AGENTS.md

Lines changed: 20 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -61,19 +61,15 @@ Each bundle contains:
6161
- `src/` or `eclipseui/` - Java source code
6262
- `.settings/` - Eclipse compiler settings
6363

64-
## Build System
65-
66-
### Critical Limitation
6764

65+
## Build System
6866

69-
Use the `-Pbuild-individual-bundles` profile:
67+
### Building Individual Bundles
7068

7169
```bash
72-
# Compile single bundle
73-
mvn clean compile -pl :bundle-artifact-id -Pbuild-individual-bundles -q
74-
75-
# Example for building a single bundle
76-
mvn clean verify -Pbuild-individual-bundles mvn clean verify -pl bundles/org.eclipse.ui -DskipTests
70+
# Compile single bundle such as org.eclipse.jface
71+
mvn clean compile -pl :org.eclipse.jface
72+
```
7773

7874
### Test Properties
7975

@@ -82,40 +78,26 @@ From `pom.xml`:
8278
- `tycho.surefire.useUIThread=true` - Run tests on UI thread
8379
- `failOnJavadocErrors=true` - Fail build on Javadoc errors
8480

85-
## Testing
86-
8781
### Running Tests
8882

8983
**⚠️ IMPORTANT:** Use `mvn verify` (NOT `mvn test`) for Tycho projects.
9084
Due to Maven Tycho lifecycle binding, tests run in the `integration-test` phase, not the `test` phase. Running `mvn test` will NOT execute tests.
9185

9286
```bash
9387
# Run tests for a specific test bundle from repository root
94-
mvn clean verify -pl :org.eclipse.ui.tests -Pbuild-individual-bundles
95-
96-
# Run specific test class within a bundle
97-
mvn clean verify -pl :org.eclipse.ui.tests -Pbuild-individual-bundles -Dtest=StructuredViewerTest
88+
mvn clean verify -pl :org.eclipse.jface.tests
9889

99-
# Skip tests during compilation
100-
mvn clean compile -Pbuild-individual-bundles -DskipTests
90+
# Run a specific test class within a bundle
91+
mvn clean verify -pl :org.eclipse.jface.tests -Dtest=ViewerTest
10192
```
10293

103-
**Finding test bundles:** Test bundles mirror production bundles:
104-
- Production: `bundles/org.eclipse.jface`
105-
- Tests: `tests/org.eclipse.jface.tests`
106-
107-
### JUnit Guidelines
108-
109-
- Prefer JUnit 5 (`org.junit.jupiter.api.*`) for new tests
110-
111-
## Common Development Commands
94+
If classes under test have been modified, include both the changed source bundle and the test bundle in `-pl`:
95+
```bash
96+
mvn clean verify -pl :org.eclipse.jface,:org.eclipse.jface.tests
97+
```
11298

113-
### Compilation
11499

115-
116-
# Compile and run tests
117-
mvn clean test -pl :bundle-artifact-id -Pbuild-individual-bundles
118-
```
100+
## Development Hints
119101

120102
### Finding Code
121103

@@ -130,9 +112,14 @@ cat bundles/org.eclipse.jface/META-INF/MANIFEST.MF
130112
grep -r "pattern" bundles/org.eclipse.jface/src
131113
```
132114

133-
## Git Commits
115+
**Finding test bundles:** Test bundles mirror production bundles:
116+
- Production: `bundles/org.eclipse.jface`
117+
- Tests: `tests/org.eclipse.jface.tests`
118+
119+
### JUnit Guidelines
120+
121+
- Prefer JUnit 5 (`org.junit.jupiter.api.*`) for new tests
134122

135-
**Do NOT add `Co-Authored-By` or similar AI attribution trailers to commits.** This fails the Eclipse license check.
136123

137124
## Critical Development Rules
138125

@@ -205,9 +192,6 @@ output.. = bin/
205192

206193
## Troubleshooting
207194

208-
### "Non-resolvable parent POM"
209-
Expected when running `mvn verify` at root. Use `-Pbuild-individual-bundles` for individual bundles.
210-
211195
### "Package does not exist"
212196
Check `META-INF/MANIFEST.MF` - add missing package to `Import-Package` or bundle to `Require-Bundle`.
213197

bundles/org.eclipse.e4.ui.bindings/META-INF/MANIFEST.MF

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Manifest-Version: 1.0
22
Bundle-ManifestVersion: 2
33
Bundle-SymbolicName: org.eclipse.e4.ui.bindings;singleton:=true
4-
Bundle-Version: 0.15.100.qualifier
4+
Bundle-Version: 0.15.200.qualifier
55
Bundle-Name: %pluginName
66
Bundle-Vendor: %providerName
77
Bundle-Localization: plugin

bundles/org.eclipse.e4.ui.bindings/src/org/eclipse/e4/ui/bindings/keys/KeyBindingDispatcher.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,7 @@ public final boolean executeCommand(final ParameterizedCommand parameterizedComm
304304
Object obj = HandlerServiceImpl.lookUpHandler(context, command.getId());
305305
if (obj != null) {
306306
if (obj instanceof IHandler handler) {
307-
commandHandled = command.isEnabled() && handler.isHandled();
307+
commandHandled = handler.isHandled();
308308
} else {
309309
commandHandled = true;
310310
}
@@ -319,12 +319,12 @@ public final boolean executeCommand(final ParameterizedCommand parameterizedComm
319319
getDisplay()
320320
.asyncExec(() -> handleCommandExecution(parameterizedCommand, handlerService, trigger, obj));
321321
} else {
322-
handleCommandExecution(parameterizedCommand, handlerService, trigger, obj);
322+
commandHandled &= handleCommandExecution(parameterizedCommand, handlerService, trigger, obj);
323323
}
324324
return (commandDefined && commandHandled);
325325
}
326326

327-
private void handleCommandExecution(final ParameterizedCommand parameterizedCommand,
327+
private boolean handleCommandExecution(final ParameterizedCommand parameterizedCommand,
328328
final EHandlerService handlerService, final Event trigger, Object handler) {
329329
final IEclipseContext staticContext = createContext(trigger);
330330
try {
@@ -360,6 +360,7 @@ private void handleCommandExecution(final ParameterizedCommand parameterizedComm
360360
}
361361
}
362362
}
363+
return false;
363364
}
364365
} finally {
365366
staticContext.dispose();
@@ -371,6 +372,7 @@ private void handleCommandExecution(final ParameterizedCommand parameterizedComm
371372
if (keyAssistDialog != null) {
372373
keyAssistDialog.clearRememberedState();
373374
}
375+
return true;
374376
}
375377

376378
private boolean isTracingEnabled() {

bundles/org.eclipse.e4.ui.css.core/META-INF/MANIFEST.MF

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,8 @@ Bundle-Name: %pluginName
55
Bundle-Vendor: %providerName
66
Bundle-Localization: plugin
77
Bundle-Version: 0.14.800.qualifier
8-
Export-Package: org.eclipse.e4.ui.css.core;x-internal:=true,
9-
org.eclipse.e4.ui.css.core.css2;x-friends:="org.eclipse.e4.ui.css.swt.theme,org.eclipse.e4.ui.css.swt,org.eclipse.e4.ui.css.jface",
8+
Export-Package: org.eclipse.e4.ui.css.core.css2;x-friends:="org.eclipse.e4.ui.css.swt.theme,org.eclipse.e4.ui.css.swt,org.eclipse.e4.ui.css.jface",
109
org.eclipse.e4.ui.css.core.dom;x-friends:="org.eclipse.e4.ui.css.swt,org.eclipse.ui.views.properties.tabbed,org.eclipse.ui.forms",
11-
org.eclipse.e4.ui.css.core.dom.parsers;x-internal:=true,
1210
org.eclipse.e4.ui.css.core.dom.properties;
1311
x-friends:="org.eclipse.e4.ui.css.swt,
1412
org.eclipse.ui.workbench,
@@ -28,19 +26,16 @@ Export-Package: org.eclipse.e4.ui.css.core;x-internal:=true,
2826
org.eclipse.ui.forms",
2927
org.eclipse.e4.ui.css.core.exceptions;x-friends:="org.eclipse.e4.ui.css.swt",
3028
org.eclipse.e4.ui.css.core.impl.dom;x-internal:=true,
31-
org.eclipse.e4.ui.css.core.impl.dom.parsers;x-internal:=true,
3229
org.eclipse.e4.ui.css.core.impl.dom.properties;x-friends:="org.eclipse.e4.ui.css.swt",
3330
org.eclipse.e4.ui.css.core.impl.engine;x-friends:="org.eclipse.e4.ui.css.swt,org.eclipse.e4.ui.workbench.swt",
34-
org.eclipse.e4.ui.css.core.impl.sac;x-internal:=true,
31+
org.eclipse.e4.ui.css.core.impl.engine.selector;x-friends:="org.eclipse.e4.ui.tests.css.core",
32+
org.eclipse.e4.ui.css.core.impl.parser;x-friends:="org.eclipse.e4.ui.tests.css.core",
3533
org.eclipse.e4.ui.css.core.resources;x-friends:="org.eclipse.e4.ui.css.swt,org.eclipse.e4.ui.workbench.renderers.swt",
36-
org.eclipse.e4.ui.css.core.sac;x-internal:=true,
3734
org.eclipse.e4.ui.css.core.util.impl.resources;x-friends:="org.eclipse.e4.ui.css.swt.theme,org.eclipse.e4.ui.workbench.swt",
3835
org.eclipse.e4.ui.css.core.util.resources;x-friends:="org.eclipse.e4.ui.css.swt,org.eclipse.e4.ui.css.swt.theme,org.eclipse.e4.ui.workbench.swt",
3936
org.eclipse.e4.ui.css.core.utils;x-friends:="org.eclipse.e4.ui.css.swt"
40-
Import-Package: org.w3c.css.sac;version="1.3.0",
41-
org.w3c.css.sac.helpers;version="1.3.0"
42-
Require-Bundle: org.apache.batik.css;bundle-version="[1.9.1,2.0.0)",
43-
org.eclipse.equinox.common;bundle-version="[3.5.0,4.0.0)",
37+
Import-Package: org.w3c.css.sac;version="1.3.0"
38+
Require-Bundle: org.eclipse.equinox.common;bundle-version="[3.5.0,4.0.0)",
4439
org.eclipse.core.runtime;bundle-version="[3.29.0,4.0.0)"
4540
Bundle-RequiredExecutionEnvironment: JavaSE-17
4641
Automatic-Module-Name: org.eclipse.e4.ui.css.core

bundles/org.eclipse.e4.ui.css.core/src/org/eclipse/e4/ui/css/core/SACConstants.java

Lines changed: 0 additions & 29 deletions
This file was deleted.

bundles/org.eclipse.e4.ui.css.core/src/org/eclipse/e4/ui/css/core/dom/CSSExtendedProperties.java

Lines changed: 0 additions & 25 deletions
This file was deleted.

bundles/org.eclipse.e4.ui.css.core/src/org/eclipse/e4/ui/css/core/dom/CSSStylableElement.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,6 @@ public void setDefaultStyleDeclaration(String pseudoE,
9393
*/
9494
public void onStylesApplied(NodeList nodes);
9595

96-
/**
97-
* Return the {@link CSSExtendedProperties} of the native widget.
98-
*/
99-
public CSSExtendedProperties getStyle();
100-
10196
/**
10297
* Method called after the {@link CSSStylableElement} was linked to the
10398
* native widget. You can add UI listener into this method.

bundles/org.eclipse.e4.ui.css.core/src/org/eclipse/e4/ui/css/core/dom/ElementAdapter.java

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import java.util.List;
1919
import java.util.Map;
2020
import org.eclipse.e4.ui.css.core.engine.CSSEngine;
21-
import org.eclipse.e4.ui.css.core.impl.dom.CSSExtendedPropertiesImpl;
2221
import org.w3c.dom.Attr;
2322
import org.w3c.dom.DOMException;
2423
import org.w3c.dom.Document;
@@ -43,8 +42,6 @@ public abstract class ElementAdapter implements Element, CSSStylableElement {
4342

4443
private final Map <String, CSSStyleDeclaration> defaultStyleDeclarationMap = new HashMap<>();
4544

46-
private CSSExtendedProperties style;
47-
4845
private List<String> staticPseudoInstances;
4946

5047
public ElementAdapter(Object nativeWidget, CSSEngine engine) {
@@ -377,14 +374,6 @@ protected Element getElement(Object widget) {
377374
return engine.getElement(widget);
378375
}
379376

380-
@Override
381-
public CSSExtendedProperties getStyle() {
382-
if (style == null) {
383-
style = new CSSExtendedPropertiesImpl(nativeWidget, engine);
384-
}
385-
return style;
386-
}
387-
388377
@Override
389378
public String[] getStaticPseudoInstances() {
390379
if (staticPseudoInstances == null) {

bundles/org.eclipse.e4.ui.css.core/src/org/eclipse/e4/ui/css/core/dom/ExtendedCSSRule.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2008, 2013 Angelo Zerr and others.
2+
* Copyright (c) 2008, 2026 Angelo Zerr and others.
33
*
44
* This program and the accompanying materials
55
* are made available under the terms of the Eclipse Public License 2.0
@@ -13,8 +13,7 @@
1313
*******************************************************************************/
1414
package org.eclipse.e4.ui.css.core.dom;
1515

16-
import org.w3c.css.sac.Selector;
17-
import org.w3c.css.sac.SelectorList;
16+
import org.eclipse.e4.ui.css.core.impl.engine.selector.Selectors;
1817
import org.w3c.dom.css.CSSRule;
1918

2019
/**
@@ -28,7 +27,7 @@ public interface ExtendedCSSRule extends CSSRule {
2827
public CSSPropertyList getCSSPropertyList();
2928

3029
/**
31-
* Return the list of {@link Selector} of this {@link CSSRule}.
30+
* Return the list of selectors of this {@link CSSRule}.
3231
*/
33-
public SelectorList getSelectorList();
32+
public Selectors.SelectorList getSelectorList();
3433
}

0 commit comments

Comments
 (0)