Path: blob/main/src/vs/editor/browser/controller/editContext/editContext.ts
5222 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { FastDomNode } from '../../../../base/browser/fastDomNode.js';6import { Emitter, Event } from '../../../../base/common/event.js';7import { Position } from '../../../common/core/position.js';8import { IEditorAriaOptions } from '../../editorBrowser.js';9import { ViewPart } from '../../view/viewPart.js';10import { IClipboardCopyEvent, IClipboardPasteEvent } from './clipboardUtils.js';1112export abstract class AbstractEditContext extends ViewPart {13abstract domNode: FastDomNode<HTMLElement>;14abstract focus(): void;15abstract isFocused(): boolean;16abstract refreshFocusState(): void;17abstract setAriaOptions(options: IEditorAriaOptions): void;18abstract getLastRenderData(): Position | null;19abstract writeScreenReaderContent(reason: string): void;2021// Clipboard events - emitted before the default clipboard handling22protected readonly _onWillCopy = this._register(new Emitter<IClipboardCopyEvent>());23public readonly onWillCopy: Event<IClipboardCopyEvent> = this._onWillCopy.event;2425protected readonly _onWillCut = this._register(new Emitter<IClipboardCopyEvent>());26public readonly onWillCut: Event<IClipboardCopyEvent> = this._onWillCut.event;2728protected readonly _onWillPaste = this._register(new Emitter<IClipboardPasteEvent>());29public readonly onWillPaste: Event<IClipboardPasteEvent> = this._onWillPaste.event;30}313233