|
6 | 6 | import { ITextModel, IModelDecorationOptions, IModelDeltaDecoration, IModelDecorationsChangeAccessor } from 'vs/editor/common/model'; |
7 | 7 | import { Event, Emitter } from 'vs/base/common/event'; |
8 | 8 | import { FoldingRegions, ILineRange, FoldingRegion } from './foldingRanges'; |
| 9 | +import { registerThemingParticipant } from 'vs/platform/theme/common/themeService'; |
| 10 | +import { registerColor, editorSelectionBackground, darken, lighten } from 'vs/platform/theme/common/colorRegistry'; |
| 11 | +import * as nls from 'vs/nls'; |
9 | 12 |
|
10 | 13 | export interface IDecorationProvider { |
11 | 14 | getDecorationOption(isCollapsed: boolean): IModelDecorationOptions; |
@@ -84,13 +87,12 @@ export class FoldingModel { |
84 | 87 | let maxColumn = this._textModel.getLineMaxColumn(startLineNumber); |
85 | 88 | let decorationRange = { |
86 | 89 | startLineNumber: startLineNumber, |
87 | | - startColumn: maxColumn, |
| 90 | + startColumn: 0, |
88 | 91 | endLineNumber: startLineNumber, |
89 | 92 | endColumn: maxColumn |
90 | 93 | }; |
91 | 94 | newEditorDecorations.push({ range: decorationRange, options: this._decorationProvider.getDecorationOption(isCollapsed) }); |
92 | 95 | }; |
93 | | - |
94 | 96 | let i = 0; |
95 | 97 | let nextCollapsed = () => { |
96 | 98 | while (i < this._regions.length) { |
@@ -355,3 +357,12 @@ export function setCollapseStateForType(foldingModel: FoldingModel, type: string |
355 | 357 | } |
356 | 358 | foldingModel.toggleCollapseState(toToggle); |
357 | 359 | } |
| 360 | + |
| 361 | +export const foldBackgroundBackground = registerColor('editor.foldBackground', { light: lighten(editorSelectionBackground, 0.5), dark: darken(editorSelectionBackground, 0.5), hc: null }, nls.localize('editorSelectionBackground', "Color of the editor selection.")); |
| 362 | + |
| 363 | +registerThemingParticipant((theme, collector) => { |
| 364 | + const foldBackground = theme.getColor(foldBackgroundBackground); |
| 365 | + if (foldBackground) { |
| 366 | + collector.addRule(`.monaco-editor .folded-background { background-color: ${foldBackground}; }`); |
| 367 | + } |
| 368 | +}); |
0 commit comments