mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-25 11:08:51 +01:00
add TextEditorSelectionChangeKind when emitting selection change event, #8093
This commit is contained in:
@@ -11,7 +11,7 @@ import Event, {Emitter} from 'vs/base/common/event';
|
||||
import {TPromise} from 'vs/base/common/winjs.base';
|
||||
import {IThreadService} from 'vs/workbench/services/thread/common/threadService';
|
||||
import {ExtHostDocuments, ExtHostDocumentData} from 'vs/workbench/api/node/extHostDocuments';
|
||||
import {Selection, Range, Position, EditorOptions, EndOfLine, TextEditorRevealType} from './extHostTypes';
|
||||
import {Selection, Range, Position, EditorOptions, EndOfLine, TextEditorRevealType, TextEditorSelectionChangeKind} from './extHostTypes';
|
||||
import {ISingleEditOperation} from 'vs/editor/common/editorCommon';
|
||||
import {IResolvedTextEditorConfiguration, ISelectionChangeEvent} from 'vs/workbench/api/node/mainThreadEditorsTracker';
|
||||
import * as TypeConverters from './extHostTypeConverters';
|
||||
@@ -103,12 +103,14 @@ export class ExtHostEditors extends ExtHostEditorsShape {
|
||||
}
|
||||
|
||||
$acceptSelectionsChanged(id: string, event: ISelectionChangeEvent): void {
|
||||
let selections = event.selections.map(TypeConverters.toSelection);
|
||||
let editor = this._editors[id];
|
||||
editor._acceptSelections(selections);
|
||||
const kind = TextEditorSelectionChangeKind.fromValue(event.source);
|
||||
const selections = event.selections.map(TypeConverters.toSelection);
|
||||
const textEditor = this._editors[id];
|
||||
textEditor._acceptSelections(selections);
|
||||
this._onDidChangeTextEditorSelection.fire({
|
||||
textEditor: editor,
|
||||
selections: selections
|
||||
textEditor,
|
||||
selections,
|
||||
kind
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -829,6 +829,22 @@ export enum TextEditorRevealType {
|
||||
InCenterIfOutsideViewport = 2
|
||||
}
|
||||
|
||||
export enum TextEditorSelectionChangeKind {
|
||||
Keyboard = 1,
|
||||
Mouse = 2,
|
||||
Command = 3
|
||||
}
|
||||
|
||||
export namespace TextEditorSelectionChangeKind {
|
||||
export function fromValue(s: string) {
|
||||
switch (s) {
|
||||
case 'keyboard': return TextEditorSelectionChangeKind.Keyboard;
|
||||
case 'mouse': return TextEditorSelectionChangeKind.Mouse;
|
||||
case 'api': return TextEditorSelectionChangeKind.Command;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export class DocumentLink {
|
||||
|
||||
range: Range;
|
||||
|
||||
Reference in New Issue
Block a user