mirror of
https://github.com/Microsoft/vscode
synced 2024-09-18 01:58:27 +00:00
parent
dbd76d987c
commit
1633d0959a
|
@ -8,7 +8,7 @@ import { IDisposable } from 'vs/base/common/lifecycle';
|
||||||
import { Position } from 'vs/editor/common/core/position';
|
import { Position } from 'vs/editor/common/core/position';
|
||||||
import { Range } from 'vs/editor/common/core/range';
|
import { Range } from 'vs/editor/common/core/range';
|
||||||
import { ModelDecorationOptions } from 'vs/editor/common/model/textModel';
|
import { ModelDecorationOptions } from 'vs/editor/common/model/textModel';
|
||||||
import { editorFindMatchHighlight, editorFindMatch } from 'vs/platform/theme/common/colorRegistry';
|
import { overviewRulerFindMatchForeground } from 'vs/platform/theme/common/colorRegistry';
|
||||||
import { themeColorFromId } from 'vs/platform/theme/common/themeService';
|
import { themeColorFromId } from 'vs/platform/theme/common/themeService';
|
||||||
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
|
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
|
||||||
import { IModelDecorationsChangeAccessor, FindMatch, IModelDeltaDecoration, TrackedRangeStickiness, OverviewRulerLane } from 'vs/editor/common/model';
|
import { IModelDecorationsChangeAccessor, FindMatch, IModelDeltaDecoration, TrackedRangeStickiness, OverviewRulerLane } from 'vs/editor/common/model';
|
||||||
|
@ -226,8 +226,8 @@ export class FindDecorations implements IDisposable {
|
||||||
className: 'currentFindMatch',
|
className: 'currentFindMatch',
|
||||||
showIfCollapsed: true,
|
showIfCollapsed: true,
|
||||||
overviewRuler: {
|
overviewRuler: {
|
||||||
color: themeColorFromId(editorFindMatch),
|
color: themeColorFromId(overviewRulerFindMatchForeground),
|
||||||
darkColor: themeColorFromId(editorFindMatch),
|
darkColor: themeColorFromId(overviewRulerFindMatchForeground),
|
||||||
position: OverviewRulerLane.Center
|
position: OverviewRulerLane.Center
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -237,8 +237,8 @@ export class FindDecorations implements IDisposable {
|
||||||
className: 'findMatch',
|
className: 'findMatch',
|
||||||
showIfCollapsed: true,
|
showIfCollapsed: true,
|
||||||
overviewRuler: {
|
overviewRuler: {
|
||||||
color: themeColorFromId(editorFindMatchHighlight),
|
color: themeColorFromId(overviewRulerFindMatchForeground),
|
||||||
darkColor: themeColorFromId(editorFindMatchHighlight),
|
darkColor: themeColorFromId(overviewRulerFindMatchForeground),
|
||||||
position: OverviewRulerLane.Center
|
position: OverviewRulerLane.Center
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -252,8 +252,8 @@ export class FindDecorations implements IDisposable {
|
||||||
private static readonly _FIND_MATCH_ONLY_OVERVIEW_DECORATION = ModelDecorationOptions.register({
|
private static readonly _FIND_MATCH_ONLY_OVERVIEW_DECORATION = ModelDecorationOptions.register({
|
||||||
stickiness: TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges,
|
stickiness: TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges,
|
||||||
overviewRuler: {
|
overviewRuler: {
|
||||||
color: themeColorFromId(editorFindMatchHighlight),
|
color: themeColorFromId(overviewRulerFindMatchForeground),
|
||||||
darkColor: themeColorFromId(editorFindMatchHighlight),
|
darkColor: themeColorFromId(overviewRulerFindMatchForeground),
|
||||||
position: OverviewRulerLane.Center
|
position: OverviewRulerLane.Center
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -28,7 +28,7 @@ import { IContextKeyService, IContextKey } from 'vs/platform/contextkey/common/c
|
||||||
import { ITheme, registerThemingParticipant, IThemeService } from 'vs/platform/theme/common/themeService';
|
import { ITheme, registerThemingParticipant, IThemeService } from 'vs/platform/theme/common/themeService';
|
||||||
import { Color } from 'vs/base/common/color';
|
import { Color } from 'vs/base/common/color';
|
||||||
import { IConfigurationChangedEvent } from 'vs/editor/common/config/editorOptions';
|
import { IConfigurationChangedEvent } from 'vs/editor/common/config/editorOptions';
|
||||||
import { editorFindRangeHighlight, editorFindMatch, editorFindMatchHighlight, activeContrastBorder, contrastBorder, inputBackground, editorWidgetBackground, inputActiveOptionBorder, widgetShadow, inputForeground, inputBorder, inputValidationInfoBackground, inputValidationInfoBorder, inputValidationWarningBackground, inputValidationWarningBorder, inputValidationErrorBackground, inputValidationErrorBorder, errorForeground, editorWidgetBorder } from 'vs/platform/theme/common/colorRegistry';
|
import { editorFindRangeHighlight, editorFindMatch, editorFindMatchHighlight, contrastBorder, inputBackground, editorWidgetBackground, inputActiveOptionBorder, widgetShadow, inputForeground, inputBorder, inputValidationInfoBackground, inputValidationInfoBorder, inputValidationWarningBackground, inputValidationWarningBorder, inputValidationErrorBackground, inputValidationErrorBorder, errorForeground, editorWidgetBorder, editorFindMatchBorder, editorFindMatchHighlightBorder, editorFindRangeHighlightBorder } from 'vs/platform/theme/common/colorRegistry';
|
||||||
|
|
||||||
|
|
||||||
export interface IFindController {
|
export interface IFindController {
|
||||||
|
@ -1076,12 +1076,19 @@ registerThemingParticipant((theme, collector) => {
|
||||||
collector.addRule(`.monaco-editor .find-widget { box-shadow: 0 2px 8px ${widgetShadowColor}; }`);
|
collector.addRule(`.monaco-editor .find-widget { box-shadow: 0 2px 8px ${widgetShadowColor}; }`);
|
||||||
}
|
}
|
||||||
|
|
||||||
let hcOutline = theme.getColor(activeContrastBorder);
|
let findMatchHighlightBorder = theme.getColor(editorFindMatchHighlightBorder);
|
||||||
if (hcOutline) {
|
if (findMatchHighlightBorder) {
|
||||||
collector.addRule(`.monaco-editor .findScope { border: 1px dashed ${hcOutline.transparent(0.4)}; }`);
|
collector.addRule(`.monaco-editor .findMatch { border: 1px dotted ${findMatchHighlightBorder}; -moz-box-sizing: border-box; box-sizing: border-box; }`);
|
||||||
collector.addRule(`.monaco-editor .currentFindMatch { border: 2px solid ${hcOutline}; padding: 1px; -moz-box-sizing: border-box; box-sizing: border-box; }`);
|
|
||||||
collector.addRule(`.monaco-editor .findMatch { border: 1px dotted ${hcOutline}; -moz-box-sizing: border-box; box-sizing: border-box; }`);
|
|
||||||
}
|
}
|
||||||
|
let findMatchBorder = theme.getColor(editorFindMatchBorder);
|
||||||
|
if (findMatchBorder) {
|
||||||
|
collector.addRule(`.monaco-editor .currentFindMatch { border: 2px solid ${findMatchBorder}; padding: 1px; -moz-box-sizing: border-box; box-sizing: border-box; }`);
|
||||||
|
}
|
||||||
|
let findRangeHighlightBorder = theme.getColor(editorFindRangeHighlightBorder);
|
||||||
|
if (findRangeHighlightBorder) {
|
||||||
|
collector.addRule(`.monaco-editor .findScope { border: 1px dashed ${findRangeHighlightBorder}; }`);
|
||||||
|
}
|
||||||
|
|
||||||
let hcBorder = theme.getColor(contrastBorder);
|
let hcBorder = theme.getColor(contrastBorder);
|
||||||
if (hcBorder) {
|
if (hcBorder) {
|
||||||
collector.addRule(`.monaco-editor .find-widget { border: 2px solid ${hcBorder}; }`);
|
collector.addRule(`.monaco-editor .find-widget { border: 2px solid ${hcBorder}; }`);
|
||||||
|
|
|
@ -15,7 +15,7 @@ import { registerEditorContribution, EditorAction, IActionOptions, registerEdito
|
||||||
import { DocumentHighlight, DocumentHighlightKind, DocumentHighlightProviderRegistry } from 'vs/editor/common/modes';
|
import { DocumentHighlight, DocumentHighlightKind, DocumentHighlightProviderRegistry } from 'vs/editor/common/modes';
|
||||||
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
|
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
|
||||||
import { Position } from 'vs/editor/common/core/position';
|
import { Position } from 'vs/editor/common/core/position';
|
||||||
import { registerColor, editorSelectionHighlight, activeContrastBorder, overviewRulerSelectionHighlightForeground } from 'vs/platform/theme/common/colorRegistry';
|
import { registerColor, editorSelectionHighlight, overviewRulerSelectionHighlightForeground, activeContrastBorder, editorSelectionHighlightBorder } from 'vs/platform/theme/common/colorRegistry';
|
||||||
import { registerThemingParticipant, themeColorFromId } from 'vs/platform/theme/common/themeService';
|
import { registerThemingParticipant, themeColorFromId } from 'vs/platform/theme/common/themeService';
|
||||||
import { CursorChangeReason, ICursorPositionChangedEvent } from 'vs/editor/common/controller/cursorEvents';
|
import { CursorChangeReason, ICursorPositionChangedEvent } from 'vs/editor/common/controller/cursorEvents';
|
||||||
import { ModelDecorationOptions } from 'vs/editor/common/model/textModel';
|
import { ModelDecorationOptions } from 'vs/editor/common/model/textModel';
|
||||||
|
@ -29,6 +29,8 @@ import { ITextModel, TrackedRangeStickiness, OverviewRulerLane, IModelDeltaDecor
|
||||||
|
|
||||||
export const editorWordHighlight = registerColor('editor.wordHighlightBackground', { dark: '#575757B8', light: '#57575740', hc: null }, nls.localize('wordHighlight', 'Background color of a symbol during read-access, like reading a variable. The color must not be opaque to not hide underlying decorations.'), true);
|
export const editorWordHighlight = registerColor('editor.wordHighlightBackground', { dark: '#575757B8', light: '#57575740', hc: null }, nls.localize('wordHighlight', 'Background color of a symbol during read-access, like reading a variable. The color must not be opaque to not hide underlying decorations.'), true);
|
||||||
export const editorWordHighlightStrong = registerColor('editor.wordHighlightStrongBackground', { dark: '#004972B8', light: '#0e639c40', hc: null }, nls.localize('wordHighlightStrong', 'Background color of a symbol during write-access, like writing to a variable. The color must not be opaque to not hide underlying decorations.'), true);
|
export const editorWordHighlightStrong = registerColor('editor.wordHighlightStrongBackground', { dark: '#004972B8', light: '#0e639c40', hc: null }, nls.localize('wordHighlightStrong', 'Background color of a symbol during write-access, like writing to a variable. The color must not be opaque to not hide underlying decorations.'), true);
|
||||||
|
export const editorWordHighlightBorder = registerColor('editor.wordHighlightBorder', { light: null, dark: null, hc: activeContrastBorder }, nls.localize('wordHighlightBorder', 'Border color of a symbol during read-access, like reading a variable.'));
|
||||||
|
export const editorWordHighlightStrongBorder = registerColor('editor.wordHighlightStrongBorder', { light: null, dark: null, hc: activeContrastBorder }, nls.localize('wordHighlightStrongBorder', 'Border color of a symbol during write-access, like writing to a variable.'));
|
||||||
|
|
||||||
export const overviewRulerWordHighlightForeground = registerColor('editorOverviewRuler.wordHighlightForeground', { dark: '#A0A0A0', light: '#A0A0A0', hc: '#A0A0A0' }, nls.localize('overviewRulerWordHighlightForeground', 'Overview ruler marker color for symbol highlights.'));
|
export const overviewRulerWordHighlightForeground = registerColor('editorOverviewRuler.wordHighlightForeground', { dark: '#A0A0A0', light: '#A0A0A0', hc: '#A0A0A0' }, nls.localize('overviewRulerWordHighlightForeground', 'Overview ruler marker color for symbol highlights.'));
|
||||||
export const overviewRulerWordHighlightStrongForeground = registerColor('editorOverviewRuler.wordHighlightStrongForeground', { dark: '#C0A0C0', light: '#C0A0C0', hc: '#C0A0C0' }, nls.localize('overviewRulerWordHighlightStrongForeground', 'Overview ruler marker color for write-access symbol highlights.'));
|
export const overviewRulerWordHighlightStrongForeground = registerColor('editorOverviewRuler.wordHighlightStrongForeground', { dark: '#C0A0C0', light: '#C0A0C0', hc: '#C0A0C0' }, nls.localize('overviewRulerWordHighlightStrongForeground', 'Overview ruler marker color for write-access symbol highlights.'));
|
||||||
|
@ -515,11 +517,17 @@ registerThemingParticipant((theme, collector) => {
|
||||||
if (wordHighlightStrong) {
|
if (wordHighlightStrong) {
|
||||||
collector.addRule(`.monaco-editor .wordHighlightStrong { background-color: ${wordHighlightStrong}; }`);
|
collector.addRule(`.monaco-editor .wordHighlightStrong { background-color: ${wordHighlightStrong}; }`);
|
||||||
}
|
}
|
||||||
let hcOutline = theme.getColor(activeContrastBorder);
|
let selectionHighlightBorder = theme.getColor(editorSelectionHighlightBorder);
|
||||||
if (hcOutline) {
|
if (selectionHighlightBorder) {
|
||||||
collector.addRule(`.monaco-editor .selectionHighlight { border: 1px dotted ${hcOutline}; box-sizing: border-box; }`);
|
collector.addRule(`.monaco-editor .selectionHighlight { border: 1px dotted ${selectionHighlightBorder}; box-sizing: border-box; }`);
|
||||||
collector.addRule(`.monaco-editor .wordHighlight { border: 1px dashed ${hcOutline}; box-sizing: border-box; }`);
|
}
|
||||||
collector.addRule(`.monaco-editor .wordHighlightStrong { border: 1px dashed ${hcOutline}; box-sizing: border-box; }`);
|
let wordHighlightBorder = theme.getColor(editorWordHighlightBorder);
|
||||||
|
if (wordHighlightBorder) {
|
||||||
|
collector.addRule(`.monaco-editor .wordHighlight { border: 1px dashed ${wordHighlightBorder}; box-sizing: border-box; }`);
|
||||||
|
}
|
||||||
|
let wordHighlightStrongBorder = theme.getColor(editorWordHighlightStrongBorder);
|
||||||
|
if (wordHighlightStrongBorder) {
|
||||||
|
collector.addRule(`.monaco-editor .wordHighlightStrong { border: 1px dashed ${wordHighlightStrongBorder}; box-sizing: border-box; }`);
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -243,6 +243,8 @@ export const editorSelectionBackground = registerColor('editor.selectionBackgrou
|
||||||
export const editorSelectionForeground = registerColor('editor.selectionForeground', { light: null, dark: null, hc: '#000000' }, nls.localize('editorSelectionForeground', "Color of the selected text for high contrast."));
|
export const editorSelectionForeground = registerColor('editor.selectionForeground', { light: null, dark: null, hc: '#000000' }, nls.localize('editorSelectionForeground', "Color of the selected text for high contrast."));
|
||||||
export const editorInactiveSelection = registerColor('editor.inactiveSelectionBackground', { light: transparent(editorSelectionBackground, 0.5), dark: transparent(editorSelectionBackground, 0.5), hc: transparent(editorSelectionBackground, 0.5) }, nls.localize('editorInactiveSelection', "Color of the selection in an inactive editor. The color must not be opaque to not hide underlying decorations."), true);
|
export const editorInactiveSelection = registerColor('editor.inactiveSelectionBackground', { light: transparent(editorSelectionBackground, 0.5), dark: transparent(editorSelectionBackground, 0.5), hc: transparent(editorSelectionBackground, 0.5) }, nls.localize('editorInactiveSelection', "Color of the selection in an inactive editor. The color must not be opaque to not hide underlying decorations."), true);
|
||||||
export const editorSelectionHighlight = registerColor('editor.selectionHighlightBackground', { light: lessProminent(editorSelectionBackground, editorBackground, 0.3, 0.6), dark: lessProminent(editorSelectionBackground, editorBackground, 0.3, 0.6), hc: null }, nls.localize('editorSelectionHighlight', 'Color for regions with the same content as the selection. The color must not be opaque to not hide underlying decorations.'), true);
|
export const editorSelectionHighlight = registerColor('editor.selectionHighlightBackground', { light: lessProminent(editorSelectionBackground, editorBackground, 0.3, 0.6), dark: lessProminent(editorSelectionBackground, editorBackground, 0.3, 0.6), hc: null }, nls.localize('editorSelectionHighlight', 'Color for regions with the same content as the selection. The color must not be opaque to not hide underlying decorations.'), true);
|
||||||
|
export const editorSelectionHighlightBorder = registerColor('editor.selectionHighlightBorder', { light: null, dark: null, hc: activeContrastBorder }, nls.localize('editorSelectionHighlightBorder', "Border color for regions with the same content as the selection."));
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Editor find match colors.
|
* Editor find match colors.
|
||||||
|
@ -250,6 +252,9 @@ export const editorSelectionHighlight = registerColor('editor.selectionHighlight
|
||||||
export const editorFindMatch = registerColor('editor.findMatchBackground', { light: '#A8AC94', dark: '#515C6A', hc: null }, nls.localize('editorFindMatch', "Color of the current search match."));
|
export const editorFindMatch = registerColor('editor.findMatchBackground', { light: '#A8AC94', dark: '#515C6A', hc: null }, nls.localize('editorFindMatch', "Color of the current search match."));
|
||||||
export const editorFindMatchHighlight = registerColor('editor.findMatchHighlightBackground', { light: '#EA5C0055', dark: '#EA5C0055', hc: null }, nls.localize('findMatchHighlight', "Color of the other search matches. The color must not be opaque to not hide underlying decorations."), true);
|
export const editorFindMatchHighlight = registerColor('editor.findMatchHighlightBackground', { light: '#EA5C0055', dark: '#EA5C0055', hc: null }, nls.localize('findMatchHighlight', "Color of the other search matches. The color must not be opaque to not hide underlying decorations."), true);
|
||||||
export const editorFindRangeHighlight = registerColor('editor.findRangeHighlightBackground', { dark: '#3a3d4166', light: '#b4b4b44d', hc: null }, nls.localize('findRangeHighlight', "Color the range limiting the search. The color must not be opaque to not hide underlying decorations."), true);
|
export const editorFindRangeHighlight = registerColor('editor.findRangeHighlightBackground', { dark: '#3a3d4166', light: '#b4b4b44d', hc: null }, nls.localize('findRangeHighlight', "Color the range limiting the search. The color must not be opaque to not hide underlying decorations."), true);
|
||||||
|
export const editorFindMatchBorder = registerColor('editor.findMatchBorder', { light: null, dark: null, hc: activeContrastBorder }, nls.localize('editorFindMatchBorder', "Border color of the current search match."));
|
||||||
|
export const editorFindMatchHighlightBorder = registerColor('editor.findMatchHighlightBorder', { light: null, dark: null, hc: activeContrastBorder }, nls.localize('findMatchHighlightBorder', "Border color of the other search matches."));
|
||||||
|
export const editorFindRangeHighlightBorder = registerColor('editor.findRangeHighlightBorder', { dark: null, light: null, hc: transparent(activeContrastBorder, 0.4) }, nls.localize('findRangeHighlightBorder', "Border color the range limiting the search. The color must not be opaque to not hide underlying decorations."), true);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Editor hover
|
* Editor hover
|
||||||
|
|
|
@ -52,7 +52,7 @@ import { IUntitledEditorService } from 'vs/workbench/services/untitled/common/un
|
||||||
import { OpenFolderAction, OpenFileFolderAction } from 'vs/workbench/browser/actions/workspaceActions';
|
import { OpenFolderAction, OpenFileFolderAction } from 'vs/workbench/browser/actions/workspaceActions';
|
||||||
import * as Constants from 'vs/workbench/parts/search/common/constants';
|
import * as Constants from 'vs/workbench/parts/search/common/constants';
|
||||||
import { IThemeService, ITheme, ICssStyleCollector, registerThemingParticipant } from 'vs/platform/theme/common/themeService';
|
import { IThemeService, ITheme, ICssStyleCollector, registerThemingParticipant } from 'vs/platform/theme/common/themeService';
|
||||||
import { editorFindMatchHighlight, diffInserted, diffRemoved, diffInsertedOutline, diffRemovedOutline, activeContrastBorder } from 'vs/platform/theme/common/colorRegistry';
|
import { editorFindMatchHighlight, diffInserted, diffRemoved, diffInsertedOutline, diffRemovedOutline, editorFindMatchHighlightBorder } from 'vs/platform/theme/common/colorRegistry';
|
||||||
import { getOutOfWorkspaceEditorResources } from 'vs/workbench/parts/search/common/search';
|
import { getOutOfWorkspaceEditorResources } from 'vs/workbench/parts/search/common/search';
|
||||||
import { PreferencesEditor } from 'vs/workbench/parts/preferences/browser/preferencesEditor';
|
import { PreferencesEditor } from 'vs/workbench/parts/preferences/browser/preferencesEditor';
|
||||||
import { isDiffEditor, isCodeEditor, ICodeEditor } from 'vs/editor/browser/editorBrowser';
|
import { isDiffEditor, isCodeEditor, ICodeEditor } from 'vs/editor/browser/editorBrowser';
|
||||||
|
@ -1519,10 +1519,8 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => {
|
||||||
collector.addRule(`.monaco-workbench .search-viewlet .replace.findInFileMatch { border: 1px dashed ${diffRemovedOutlineColor}; }`);
|
collector.addRule(`.monaco-workbench .search-viewlet .replace.findInFileMatch { border: 1px dashed ${diffRemovedOutlineColor}; }`);
|
||||||
}
|
}
|
||||||
|
|
||||||
const activeContrastBorderColor = theme.getColor(activeContrastBorder);
|
const findMatchHighlightBorder = theme.getColor(editorFindMatchHighlightBorder);
|
||||||
if (activeContrastBorderColor) {
|
if (findMatchHighlightBorder) {
|
||||||
collector.addRule(`
|
collector.addRule(`.monaco-workbench .search-viewlet .findInFileMatch { border: 1px dashed ${findMatchHighlightBorder}; }`);
|
||||||
.monaco-workbench .search-viewlet .findInFileMatch { border: 1px dashed ${activeContrastBorderColor}; }
|
|
||||||
`);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue