Skip to content

Commit 39e7f05

Browse files
authored
Signed-off-by: Henning Dieterichs <[email protected]>
1 parent d7b54f7 commit 39e7f05

File tree

1 file changed

+21
-11
lines changed

1 file changed

+21
-11
lines changed

src/vs/workbench/browser/parts/editor/diffEditorCommands.ts

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
* Licensed under the MIT License. See License.txt in the project root for license information.
44
*--------------------------------------------------------------------------------------------*/
55

6-
import { KeyMod, KeyCode } from 'vs/base/common/keyCodes';
7-
import { localize2, localize } from 'vs/nls';
8-
import { MenuRegistry, MenuId } from 'vs/platform/actions/common/actions';
9-
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
6+
import { KeyCode, KeyMod } from 'vs/base/common/keyCodes';
7+
import { ITextResourceConfigurationService } from 'vs/editor/common/services/textResourceConfiguration';
8+
import { localize, localize2 } from 'vs/nls';
9+
import { MenuId, MenuRegistry } from 'vs/platform/actions/common/actions';
1010
import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey';
1111
import { ServicesAccessor } from 'vs/platform/instantiation/common/instantiation';
1212
import { KeybindingsRegistry, KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry';
1313
import { TextDiffEditor } from 'vs/workbench/browser/parts/editor/textDiffEditor';
14-
import { TextCompareEditorVisibleContext, TextCompareEditorActiveContext, ActiveCompareEditorCanSwapContext } from 'vs/workbench/common/contextkeys';
14+
import { ActiveCompareEditorCanSwapContext, TextCompareEditorActiveContext, TextCompareEditorVisibleContext } from 'vs/workbench/common/contextkeys';
1515
import { DiffEditorInput } from 'vs/workbench/common/editor/diffEditorInput';
1616
import { IEditorService } from 'vs/workbench/services/editor/common/editorService';
1717

@@ -104,17 +104,27 @@ export function registerDiffEditorCommands(): void {
104104
}
105105

106106
function toggleDiffSideBySide(accessor: ServicesAccessor): void {
107-
const configurationService = accessor.get(IConfigurationService);
107+
const configService = accessor.get(ITextResourceConfigurationService);
108+
const activeTextDiffEditor = getActiveTextDiffEditor(accessor);
109+
110+
const m = activeTextDiffEditor?.getControl()?.getModifiedEditor()?.getModel();
111+
if (!m) { return; }
108112

109-
const newValue = !configurationService.getValue('diffEditor.renderSideBySide');
110-
configurationService.updateValue('diffEditor.renderSideBySide', newValue);
113+
const key = 'diffEditor.renderSideBySide';
114+
const val = configService.getValue(m.uri, key);
115+
configService.updateValue(m.uri, key, !val);
111116
}
112117

113118
function toggleDiffIgnoreTrimWhitespace(accessor: ServicesAccessor): void {
114-
const configurationService = accessor.get(IConfigurationService);
119+
const configService = accessor.get(ITextResourceConfigurationService);
120+
const activeTextDiffEditor = getActiveTextDiffEditor(accessor);
121+
122+
const m = activeTextDiffEditor?.getControl()?.getModifiedEditor()?.getModel();
123+
if (!m) { return; }
115124

116-
const newValue = !configurationService.getValue('diffEditor.ignoreTrimWhitespace');
117-
configurationService.updateValue('diffEditor.ignoreTrimWhitespace', newValue);
125+
const key = 'diffEditor.ignoreTrimWhitespace';
126+
const val = configService.getValue(m.uri, key);
127+
configService.updateValue(m.uri, key, !val);
118128
}
119129

120130
async function swapDiffSides(accessor: ServicesAccessor): Promise<void> {

0 commit comments

Comments
 (0)