mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-03-20 20:10:11 -04:00
Initial VS Code 1.19 source merge (#571)
* Initial 1.19 xcopy * Fix yarn build * Fix numerous build breaks * Next batch of build break fixes * More build break fixes * Runtime breaks * Additional post merge fixes * Fix windows setup file * Fix test failures. * Update license header blocks to refer to source eula
This commit is contained in:
@@ -11,18 +11,17 @@ import { IDisposable, dispose } from 'vs/base/common/lifecycle';
|
||||
import { isMacintosh } from 'vs/base/common/platform';
|
||||
import { KeyCode } from 'vs/base/common/keyCodes';
|
||||
import { ICodeEditor, IEditorMouseEvent, IMouseTarget, MouseTargetType } from 'vs/editor/browser/editorBrowser';
|
||||
import { editorContribution } from 'vs/editor/browser/editorBrowserExtensions';
|
||||
import { registerEditorContribution } from 'vs/editor/browser/editorExtensions';
|
||||
import * as editorCommon from 'vs/editor/common/editorCommon';
|
||||
import { Position } from 'vs/editor/common/core/position';
|
||||
import { Range } from 'vs/editor/common/core/range';
|
||||
import { Selection } from 'vs/editor/common/core/selection';
|
||||
import { DragAndDropCommand } from '../common/dragAndDropCommand';
|
||||
import { DragAndDropCommand } from 'vs/editor/contrib/dnd/dragAndDropCommand';
|
||||
import { ModelDecorationOptions } from 'vs/editor/common/model/textModelWithDecorations';
|
||||
|
||||
@editorContribution
|
||||
export class DragAndDropController implements editorCommon.IEditorContribution {
|
||||
|
||||
private static ID = 'editor.contrib.dragAndDrop';
|
||||
private static readonly ID = 'editor.contrib.dragAndDrop';
|
||||
|
||||
private _editor: ICodeEditor;
|
||||
private _toUnhook: IDisposable[];
|
||||
@@ -33,7 +32,7 @@ export class DragAndDropController implements editorCommon.IEditorContribution {
|
||||
static TRIGGER_MODIFIER = isMacintosh ? 'altKey' : 'ctrlKey';
|
||||
static TRIGGER_KEY_VALUE = isMacintosh ? KeyCode.Alt : KeyCode.Ctrl;
|
||||
|
||||
static get(editor: editorCommon.ICommonCodeEditor): DragAndDropController {
|
||||
static get(editor: ICodeEditor): DragAndDropController {
|
||||
return editor.getContribution<DragAndDropController>(DragAndDropController.ID);
|
||||
}
|
||||
|
||||
@@ -130,14 +129,20 @@ export class DragAndDropController implements editorCommon.IEditorContribution {
|
||||
let newCursorPosition = new Position(mouseEvent.target.position.lineNumber, mouseEvent.target.position.column);
|
||||
|
||||
if (this._dragSelection === null) {
|
||||
let newSelections = this._editor.getSelections().map(selection => {
|
||||
if (selection.containsPosition(newCursorPosition)) {
|
||||
return new Selection(newCursorPosition.lineNumber, newCursorPosition.column, newCursorPosition.lineNumber, newCursorPosition.column);
|
||||
} else {
|
||||
return selection;
|
||||
}
|
||||
});
|
||||
this._editor.setSelections(newSelections);
|
||||
if (mouseEvent.event.shiftKey) {
|
||||
let primarySelection = this._editor.getSelection();
|
||||
let { startLineNumber, startColumn } = primarySelection;
|
||||
this._editor.setSelections([new Selection(startLineNumber, startColumn, newCursorPosition.lineNumber, newCursorPosition.column)]);
|
||||
} else {
|
||||
let newSelections = this._editor.getSelections().map(selection => {
|
||||
if (selection.containsPosition(newCursorPosition)) {
|
||||
return new Selection(newCursorPosition.lineNumber, newCursorPosition.column, newCursorPosition.lineNumber, newCursorPosition.column);
|
||||
} else {
|
||||
return selection;
|
||||
}
|
||||
});
|
||||
this._editor.setSelections(newSelections);
|
||||
}
|
||||
} else if (!this._dragSelection.containsPosition(newCursorPosition) ||
|
||||
(
|
||||
(
|
||||
@@ -162,7 +167,7 @@ export class DragAndDropController implements editorCommon.IEditorContribution {
|
||||
this._mouseDown = false;
|
||||
}
|
||||
|
||||
private static _DECORATION_OPTIONS = ModelDecorationOptions.register({
|
||||
private static readonly _DECORATION_OPTIONS = ModelDecorationOptions.register({
|
||||
className: 'dnd-target'
|
||||
});
|
||||
|
||||
@@ -207,4 +212,6 @@ export class DragAndDropController implements editorCommon.IEditorContribution {
|
||||
this._modiferPressed = false;
|
||||
this._toUnhook = dispose(this._toUnhook);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
registerEditorContribution(DragAndDropController);
|
||||
Reference in New Issue
Block a user