Skip to content

Selection coloring#3

Draft
Christopher-Hermann wants to merge 77 commits intomasterfrom
selection_coloring
Draft

Selection coloring#3
Christopher-Hermann wants to merge 77 commits intomasterfrom
selection_coloring

Conversation

@Christopher-Hermann
Copy link
Owner

No description provided.

@Christopher-Hermann Christopher-Hermann marked this pull request as draft January 12, 2026 07:55
@Christopher-Hermann Christopher-Hermann force-pushed the selection_coloring branch 2 times, most recently from db2a1ad to d173442 Compare January 12, 2026 08:35
vogella and others added 26 commits January 12, 2026 11:03
Migrate performance tests to JUnit 5 to avoid dependency on PerformanceTestCaseJunit4.
- Update UIPerformanceTestRule to implement BeforeAllCallback and AfterAllCallback.
- Migrate GenerateIdentifiersTest and LabelProviderTest to use PerformanceMeter directly.
- Use CloseTestWindowsExtension instead of CloseTestWindowsRule.
- Add necessary JUnit 5 imports to MANIFEST.MF.
This change ensures that setting the visible region with projections
enabled does not hide the last line in case there is additional text at
the end of the line or the file is using Windows line endings.
Replaced immediate assertTrue checks with waitForFocus to handle timing
issues in testFocusNotChangedWhenEnterPressed and
testFocusNotChangedWhenButtonMnemonicPressed.
…m#3463

Fixes eclipse-platform#3463

Co-authored-by: laeubi <1331477+laeubi@users.noreply.github.com>
Migrate ComputeSizeTest, LayoutTest, and ResizeTest to JUnit 5.
- Introduce LayoutPerformanceTestSuite for shared data providers.
- Remove inheritance from PerformanceTestCaseJunit4.
- Use CloseTestWindowsExtension.
- Use PerformanceMeter directly.
- Ensure INTRO_VIEW in UIPerformanceTestRule is visible.
Migrate the following tests to JUnit 5:
- ViewerTest
- ProgressMonitorDialogPerformanceTest
- ListPopulationTest
- FileImageDescriptorTest
- SWTTreeTest
- CollatorPerformanceTest

Changes include:
- Removing inheritance from PerformanceTestCaseJunit4
- Using CloseTestWindowsExtension
- Using PerformanceMeter directly
- Using TestInfo for scenario ID
- Updating imports
- Adding necessary packages to MANIFEST.MF
Commit 59dbd43 introduced a regression where setVisibleRegion(0, 0)
would expand to include the full line, causing
SegmentedModeTest.testShowNothing to fail. This change ensures that
empty ranges (length 0) are not expanded to the end of the line,
restoring the previous behavior for this case while keeping the fix for
partial lines (length > 0).

Co-authored-by: Lars Vogel <Lars.Vogel@vogella.com>
They are deprecated since 3.0 and marked for removal since 2024-03.
Reduces needlessly created images by the workbench.
If the shared editor area ("org.eclipse.ui.editorss") is not found in the
container, 'area' is null. Passing this null 'area' to
modelService.findElements caused an IllegalArgumentException (via
Assert.isLegal) because the search root cannot be null.

This change adds a null check for 'area'. If 'area' is null, it treats it
as if no shared stacks were found, preventing the exception.
This adapts the signature of the following methods to accept a vararg
parameter instead of a plain array:

FilteredList:
- setElements(Object[]) -> setElements(Object...)
- setSelection(int[]) -> setSelection(int...)
- setSelection(Object[]) -> setSelection(Object...)

AbstractElementListSelectionDialog:
- setListElements(Object[]) -> setListElements(Object...)
- setSelection(Object[]) -> setSelection(Object...)

This stops callers from having to explicitly create an array when e.g.
selecting a single element. For example `filteredList.setSelection(new
int[]{0})` can be simplified to `filteredList.setSelection(0)`.
Update test dependencies and convert test classes to use JUnit 5 imports, annotations, and assertions.
…dItem

The test testElementHierarchyInContext_HandledItem was failing randomly because
the handler registration is asynchronous and might not be complete when the
menu item execution is triggered.

This change adds a wait loop that checks for the menu item enablement, which
is a reliable indicator that the handler is registered and the command is ready.
It also increases the robustness of testElementHierarchyInContext_DirectItem
by spinning the event loop multiple times.

Fixes eclipse-platform#1737
Avoids endless resize operations & UI hangs in case resize
listener/handler code itself triggers some OS specific resize events.

Fixes eclipse-platform#3676
arunjose696 and others added 4 commits January 26, 2026 13:11
The colors/fonts preference page uses images for the items shown in a
tree viewer that preview the selected color. The current implementation
has two limitations:
- It does not properly scale with the current monitor zoom
- It uses a wrong image size based on the tree item height instead of
the tree item image size, such that the rendered image is scaled and may
loose information

This change removes all custom extraction of the image size as the image
simply needs to have the same size as all other images default to
(16x16) to fit. It also wraps the implementation info an ImageGcDrawer
to be monitor-scale-aware.
This commit adapts the notifyListeners method in HistoryTextWrapper to
call super#notifyListeners since not calling it changes the underlying
default behaviour of its superclasses leading to faulty behavior, e.g.
it breaks the chain of DPIChange processing leading to a broken drop down
button in the HistoryTextWraper on DPIChange Event.
The icons contain a <g> element inside <clipPath>, which the JSVG
rasterizer reports to be invalid or unsupported. Since the clipPath is
not necessary at all, this change removes it.
fedejeanne and others added 22 commits February 25, 2026 16:06
When opening the completion proposals via the keyboard, the focus will
stay in the editor to be able to accept further user input. This is
causing the completion proposal to be drawn in non focus colors. This
colors can lead to UX problems, especially in dark theme.
With this fix, the completion proposals are always drawn in focused
colors.

Fixes eclipse-platform#1688
They will be handled via the CompletionProposalDrawSupport
In order to avoid code duplication.
Also add small JavaDoc
This way I can reduce the visibility of the constructor in
TableOwnerDrawSupport to default and avoid exposing more (internal) API
surface than strictly necessary.
The method is not used anymore and the listener has been replaced by
CompletionProposalDrawSupport, which adds its own functionality and then
delegates to TableOwnerDrawSupport.
And also add JavaDocs to them instead of documenting the private method.
Use it in ColumnViewerSelectionColorListener instead of duplicating it.
Erasing only needs to prepare the background so the foreground color has
nothing to do with it. It is during the painting phase that the text
(and also the icons) are drawn so setting the foreground color needs to
be done only in the method handlePaintItem.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.