Change:
Testing around an open file in the editor with Stick Scroll enabled. Sticky Scroll Try to move focus out of Sticky Scroll. Tried pressing . Tried running "Focus Sticky Scroll" command a second time. Only way to get focus back to the editor is to select a level and press . I think should put you back into the editor

Discussion:
} } <del> const weight = KeybindingWeight.EditorContrib + 10000; </del> <ins> const weight = KeybindingWeight.EditorContrib; </ins> export class FocusStickyScroll extends EditorAction2 {

} runEditorCommand(_accessor: ServicesAccessor, editor: ICodeEditor) { <del> const stickyScrollController = StickyScrollController.get(editor); if (stickyScrollController) { stickyScrollController.focus(); } </del> <ins> StickyScrollController.get(editor)?.focus(); </ins> } }

} runEditorCommand(_accessor: ServicesAccessor, editor: ICodeEditor) { <del> const stickyScrollController = StickyScrollController.get(editor); if (stickyScrollController) { stickyScrollController.focusNext(); } </del> <ins> StickyScrollController.get(editor)?.focusNext(); </ins> } }

} runEditorCommand(_accessor: ServicesAccessor, editor: ICodeEditor) { <del> const stickyScrollController = StickyScrollController.get(editor); if (stickyScrollController) { stickyScrollController.focusPrevious(); } </del> <ins> StickyScrollController.get(editor)?.focusPrevious(); </ins> } }

} runEditorCommand(_accessor: ServicesAccessor, editor: ICodeEditor) { <del> const stickyScrollController = StickyScrollController.get(editor); if (stickyScrollController) { stickyScrollController.goToFocused(); } </del> <ins> StickyScrollController.get(editor)?.goToFocused(); } } export class SelectEditor extends EditorAction2 { constructor() { super({ id: 'editor.action.selectEditor', title: { value: localize('selectEditor.title', "Select Editor"), original: 'Select Editor' }, precondition: ContextKeyExpr.has('config.editor.stickyScroll.enabled'), keybinding: { weight, primary: KeyCode.Escape } }); } runEditorCommand(_accessor: ServicesAccessor, editor: ICodeEditor) { StickyScrollController.get(editor)?.selectEditor(); </ins> } }

*--------------------------------------------------------------------------------------------*/ import { EditorContributionInstantiation, registerEditorContribution } from 'vs/editor/browser/editorExtensions'; <del> import { ToggleStickyScroll, FocusStickyScroll, SelectPreviousStickyScrollLine, SelectNextStickyScrollLine, GoToStickyScrollLine } from 'vs/editor/contrib/stickyScroll/browser/stickyScrollActions'; </del> <ins> import { ToggleStickyScroll, FocusStickyScroll, SelectEditor, SelectPreviousStickyScrollLine, SelectNextStickyScrollLine, GoToStickyScrollLine } from 'vs/editor/contrib/stickyScroll/browser/stickyScrollActions'; </ins> import { StickyScrollController } from 'vs/editor/contrib/stickyScroll/browser/stickyScrollController'; import { registerAction2 } from 'vs/platform/actions/common/actions';

registerAction2(SelectPreviousStickyScrollLine); registerAction2(SelectNextStickyScrollLine); registerAction2(GoToStickyScrollLine); <ins> registerAction2(SelectEditor); </ins>

goToFocused(): void; findScrollWidgetState(): StickyScrollWidgetState; dispose(): void; <ins> selectEditor(): void; </ins> } export class StickyScrollController extends Disposable implements IEditorContribution, IStickyScrollController {

} } <ins> public selectEditor(): void { this._editor.focus(); } </ins> // True is next, false is previous private _focusNav(direction: boolean): void { this._focusedStickyElementIndex = direction ? this._focusedStickyElementIndex + 1 : this._focusedStickyElementIndex - 1;