Fixes #9006 easymotionDimColor has no effect (#9059)

This commit is contained in:
Tennie Henry 2024-07-01 06:34:16 +08:00 committed by GitHub
parent 0f4c21c05c
commit f59aef650a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -23,9 +23,16 @@ export class EasyMotion implements IEasyMotion {
private visibleMarkers: Marker[]; // Array of currently showing markers
private decorations: vscode.DecorationOptions[][];
private static readonly fade = vscode.window.createTextEditorDecorationType({
color: configuration.easymotionDimColor,
});
private static fade: vscode.TextEditorDecorationType | null = null;
private static getFadeDecorationType(): vscode.TextEditorDecorationType {
if (this.fade === null) {
this.fade = vscode.window.createTextEditorDecorationType({
color: configuration.easymotionDimColor,
});
}
return this.fade;
}
private static readonly hide = vscode.window.createTextEditorDecorationType({
color: 'transparent',
});
@ -79,7 +86,7 @@ export class EasyMotion implements IEasyMotion {
editor.setDecorations(EasyMotion.getDecorationType(i), []);
}
editor.setDecorations(EasyMotion.fade, []);
editor.setDecorations(EasyMotion.getFadeDecorationType(), []);
editor.setDecorations(EasyMotion.hide, []);
}
@ -421,7 +428,7 @@ export class EasyMotion implements IEasyMotion {
editor.setDecorations(EasyMotion.hide, hiddenChars);
if (configuration.easymotionDimBackground) {
editor.setDecorations(EasyMotion.fade, dimmingZones);
editor.setDecorations(EasyMotion.getFadeDecorationType(), dimmingZones);
}
}
}