diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyPart.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyPart.java index 58e1072791b..73ab03b6f63 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyPart.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyPart.java @@ -2933,9 +2933,10 @@ public abstract class DisassemblyPart extends WorkbenchPart } // update pc history trail if (fPCHistory.size() > 1) { + final double bgLuminance = new HSL(fViewer.getTextWidget().getBackground().getRGB()).luminance; HSL hsv = new HSL(fPCAnnotationRGB); - double luminanceStep = (1 - hsv.luminance) / (fPCHistorySizeMax + 1); - hsv.luminance = 1 - luminanceStep * (fPCHistorySizeMax - fPCHistory.size()); + double luminanceStep = (bgLuminance - hsv.luminance) / (fPCHistorySizeMax + 1); + hsv.luminance = bgLuminance - luminanceStep * (fPCHistorySizeMax - fPCHistory.size()); for (ListIterator listIt = fPCHistory.listIterator(fPCHistory.size()); listIt .hasPrevious();) { AddressRangePosition pcPos = listIt.previous();