Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/src/vs/editor/common/inputMode.ts
3292 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { Emitter, Event } from '../../base/common/event.js';
7
8
class InputModeImpl {
9
10
private _inputMode: 'overtype' | 'insert' = 'insert';
11
private readonly _onDidChangeInputMode = new Emitter<'overtype' | 'insert'>();
12
public readonly onDidChangeInputMode: Event<'overtype' | 'insert'> = this._onDidChangeInputMode.event;
13
14
public getInputMode(): 'overtype' | 'insert' {
15
return this._inputMode;
16
}
17
18
public setInputMode(inputMode: 'overtype' | 'insert'): void {
19
this._inputMode = inputMode;
20
this._onDidChangeInputMode.fire(this._inputMode);
21
}
22
}
23
24
/**
25
* Controls the type mode, whether insert or overtype
26
*/
27
export const InputMode = new InputModeImpl();
28
29