From c26adc191646d0b2994c7dbb0bb9b65c53287785 Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Wed, 2 May 2018 18:02:53 +0200 Subject: [PATCH] Fixes #44940 --- src/vs/editor/browser/controller/mouseTarget.ts | 2 ++ src/vs/editor/contrib/folding/folding.ts | 2 +- .../workbench/parts/scm/electron-browser/dirtydiffDecorator.ts | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/vs/editor/browser/controller/mouseTarget.ts b/src/vs/editor/browser/controller/mouseTarget.ts index 018b2686b736..f8d3f44d9c6c 100644 --- a/src/vs/editor/browser/controller/mouseTarget.ts +++ b/src/vs/editor/browser/controller/mouseTarget.ts @@ -28,6 +28,7 @@ export interface IViewZoneData { export interface IMarginData { isAfterLines: boolean; + glyphMarginLeft: number; glyphMarginWidth: number; lineNumbersWidth: number; offsetX: number; @@ -602,6 +603,7 @@ export class MouseTargetFactory { let offset = Math.abs(request.pos.x - request.editorPos.x); const detail: IMarginData = { isAfterLines: res.isAfterLines, + glyphMarginLeft: ctx.layoutInfo.glyphMarginLeft, glyphMarginWidth: ctx.layoutInfo.glyphMarginWidth, lineNumbersWidth: ctx.layoutInfo.lineNumbersWidth, offsetX: offset diff --git a/src/vs/editor/contrib/folding/folding.ts b/src/vs/editor/contrib/folding/folding.ts index 4d54fef449fe..80736df149a9 100644 --- a/src/vs/editor/contrib/folding/folding.ts +++ b/src/vs/editor/contrib/folding/folding.ts @@ -298,7 +298,7 @@ export class FoldingController implements IEditorContribution { switch (e.target.type) { case MouseTargetType.GUTTER_LINE_DECORATIONS: const data = e.target.detail as IMarginData; - const gutterOffsetX = data.offsetX - data.glyphMarginWidth - data.lineNumbersWidth; + const gutterOffsetX = data.offsetX - data.glyphMarginWidth - data.lineNumbersWidth - data.glyphMarginLeft; // TODO@joao TODO@alex TODO@martin this is such that we don't collide with dirty diff if (gutterOffsetX <= 10) { diff --git a/src/vs/workbench/parts/scm/electron-browser/dirtydiffDecorator.ts b/src/vs/workbench/parts/scm/electron-browser/dirtydiffDecorator.ts index 5f140409ecea..a05a680fef96 100644 --- a/src/vs/workbench/parts/scm/electron-browser/dirtydiffDecorator.ts +++ b/src/vs/workbench/parts/scm/electron-browser/dirtydiffDecorator.ts @@ -705,7 +705,7 @@ export class DirtyDiffController implements IEditorContribution { } const data = e.target.detail as IMarginData; - const gutterOffsetX = data.offsetX - data.glyphMarginWidth - data.lineNumbersWidth; + const gutterOffsetX = data.offsetX - data.glyphMarginWidth - data.lineNumbersWidth - data.glyphMarginLeft; // TODO@joao TODO@alex TODO@martin this is such that we don't collide with folding if (gutterOffsetX > 10) {