1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-08 10:16:03 +02:00

Bug 579876: Don't assume background is white for disassembly view

The trail in the disassbemly view should have luminance going towards
the background color, that might be different color than white.

Contributed by STMicroelectronics

Change-Id: I9e00e71719cbd1fb40cc5e6de983aacbcb854106
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
This commit is contained in:
Torbjörn Svensson 2022-05-07 20:14:17 +02:00
parent f3d37076d1
commit 6434dd0559

View file

@ -2933,9 +2933,10 @@ public abstract class DisassemblyPart extends WorkbenchPart
} }
// update pc history trail // update pc history trail
if (fPCHistory.size() > 1) { if (fPCHistory.size() > 1) {
final double bgLuminance = new HSL(fViewer.getTextWidget().getBackground().getRGB()).luminance;
HSL hsv = new HSL(fPCAnnotationRGB); HSL hsv = new HSL(fPCAnnotationRGB);
double luminanceStep = (1 - hsv.luminance) / (fPCHistorySizeMax + 1); double luminanceStep = (bgLuminance - hsv.luminance) / (fPCHistorySizeMax + 1);
hsv.luminance = 1 - luminanceStep * (fPCHistorySizeMax - fPCHistory.size()); hsv.luminance = bgLuminance - luminanceStep * (fPCHistorySizeMax - fPCHistory.size());
for (ListIterator<AddressRangePosition> listIt = fPCHistory.listIterator(fPCHistory.size()); listIt for (ListIterator<AddressRangePosition> listIt = fPCHistory.listIterator(fPCHistory.size()); listIt
.hasPrevious();) { .hasPrevious();) {
AddressRangePosition pcPos = listIt.previous(); AddressRangePosition pcPos = listIt.previous();