From 0f85c093f90b7eec0ae6d69dd69b7563d724f0ff Mon Sep 17 00:00:00 2001 From: mathuo <6710312+mathuo@users.noreply.github.com> Date: Sun, 24 Oct 2021 17:41:09 +0100 Subject: [PATCH] feat: remove global focus tracking --- packages/dockview/src/dnd/abstractDragHandler.ts | 1 - packages/dockview/src/focusedElement.ts | 11 ----------- packages/dockview/src/groupview/groupview.ts | 5 ++--- packages/dockview/src/groupview/tab.ts | 1 - 4 files changed, 2 insertions(+), 16 deletions(-) delete mode 100644 packages/dockview/src/focusedElement.ts diff --git a/packages/dockview/src/dnd/abstractDragHandler.ts b/packages/dockview/src/dnd/abstractDragHandler.ts index 2f01a3810..1e45bc6ac 100644 --- a/packages/dockview/src/dnd/abstractDragHandler.ts +++ b/packages/dockview/src/dnd/abstractDragHandler.ts @@ -1,6 +1,5 @@ import { getElementsByTagName } from '../dom'; import { addDisposableListener, Emitter } from '../events'; -import { focusedElement } from '../focusedElement'; import { CompositeDisposable, IDisposable } from '../lifecycle'; export abstract class DragHandler extends CompositeDisposable { diff --git a/packages/dockview/src/focusedElement.ts b/packages/dockview/src/focusedElement.ts deleted file mode 100644 index b694815b8..000000000 --- a/packages/dockview/src/focusedElement.ts +++ /dev/null @@ -1,11 +0,0 @@ -export const focusedElement: { element: Element | null } = { element: null }; - -window.addEventListener( - 'focusin', - () => { - focusedElement.element = document.activeElement; - }, - true -); - -focusedElement.element = document.activeElement; diff --git a/packages/dockview/src/groupview/groupview.ts b/packages/dockview/src/groupview/groupview.ts index c3429d8a9..d0071db4b 100644 --- a/packages/dockview/src/groupview/groupview.ts +++ b/packages/dockview/src/groupview/groupview.ts @@ -17,7 +17,6 @@ import { ContentContainer, IContentContainer } from './panel/content'; import { ITabsContainer, TabsContainer } from './titlebar/tabsContainer'; import { IWatermarkRenderer } from './types'; import { GroupviewPanel } from './groupviewPanel'; -import { focusedElement } from '../focusedElement'; import { DockviewDropTargets } from './dnd'; export enum GroupChangeKind { @@ -268,11 +267,11 @@ export class Groupview extends CompositeDisposable implements IGroupview { } isContentFocused() { - if (!focusedElement.element) { + if (!document.activeElement) { return false; } return isAncestor( - focusedElement.element, + document.activeElement, this.contentContainer.element ); } diff --git a/packages/dockview/src/groupview/tab.ts b/packages/dockview/src/groupview/tab.ts index fe4e52399..809507612 100644 --- a/packages/dockview/src/groupview/tab.ts +++ b/packages/dockview/src/groupview/tab.ts @@ -4,7 +4,6 @@ import { getPanelData, LocalSelectionTransfer } from '../dnd/dataTransfer'; import { getElementsByTagName, toggleClass } from '../dom'; import { IDockviewComponent } from '../dockview/dockviewComponent'; import { ITabRenderer } from './types'; -import { focusedElement } from '../focusedElement'; import { IGroupPanel } from './groupPanel'; import { GroupviewPanel } from './groupviewPanel'; import { DroptargetEvent, Droptarget } from '../dnd/droptarget';