Merge pull request #3463 from VSCodeVim/fix3444

fix: cursor jumps when selection changes to output window
This commit is contained in:
Jason Poon 2019-02-06 20:51:42 -08:00 committed by GitHub
commit 02c39fa8b2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 21 additions and 7 deletions

View File

@ -233,6 +233,15 @@ export async function activate(context: vscode.ExtensionContext) {
context,
vscode.window.onDidChangeTextEditorSelection,
async (e: vscode.TextEditorSelectionChangeEvent) => {
if (
vscode.window.activeTextEditor === undefined ||
e.textEditor.document !== vscode.window.activeTextEditor.document
) {
// we don't care if there is no active editor
// or user selection changed in a paneled window (e.g debug console/terminal)
return;
}
const mh = await getAndUpdateModeHandler();
if (mh.vimState.focusChanged) {

View File

@ -38,7 +38,8 @@ suite('Remapping Validator', () => {
{
before: ['j', 'j'],
after: ['<Esc>'],
}];
},
];
configuration.insertModeKeyBindingsNonRecursive = [];
configuration.normalModeKeyBindings = [];
configuration.normalModeKeyBindingsNonRecursive = [];
@ -62,7 +63,10 @@ suite('Remapping Validator', () => {
assert.equal(configuration.visualModeKeyBindingsMap.size, 0);
assert.equal(configuration.visualModeKeyBindingsNonRecursiveMap.size, 0);
assert.equal(configuration.insertModeKeyBindingsMap.get("jj"), configuration.insertModeKeyBindings[0]);
assert.equal(
configuration.insertModeKeyBindingsMap.get('jj'),
configuration.insertModeKeyBindings[0]
);
});
test('remapping missing after and command', async () => {
@ -70,8 +74,9 @@ suite('Remapping Validator', () => {
let configuration = new Configuration();
configuration.insertModeKeyBindings = [
{
before: ['j', 'j']
}];
before: ['j', 'j'],
},
];
configuration.insertModeKeyBindingsNonRecursive = [];
configuration.normalModeKeyBindings = [];
configuration.normalModeKeyBindingsNonRecursive = [];
@ -109,8 +114,8 @@ suite('Remapping Validator', () => {
{
before: ['c', 'o', 'p', 'y'],
after: ['c', 'o', 'p', 'y'],
}
]
},
];
configuration.normalModeKeyBindingsNonRecursive = [];
configuration.visualModeKeyBindings = [];
configuration.visualModeKeyBindingsNonRecursive = [];
@ -132,4 +137,4 @@ suite('Remapping Validator', () => {
assert.equal(configuration.visualModeKeyBindingsMap.size, 0);
assert.equal(configuration.visualModeKeyBindingsNonRecursiveMap.size, 0);
});
});
});