diff --git a/web/pgadmin/static/js/components/PgTree/FileTreeItem/index.tsx b/web/pgadmin/static/js/components/PgTree/FileTreeItem/index.tsx index c5e6127cf0b..0a0dd675e63 100644 --- a/web/pgadmin/static/js/components/PgTree/FileTreeItem/index.tsx +++ b/web/pgadmin/static/js/components/PgTree/FileTreeItem/index.tsx @@ -4,6 +4,7 @@ import { ClasslistComposite } from 'aspen-decorations' import { Directory, FileEntry, IItemRendererProps, ItemType, PromptHandle, RenamePromptHandle, FileType, FileOrDir} from 'react-aspen' import {IFileTreeXTriggerEvents, FileTreeXEvent } from '../types' import _ from 'lodash' +import { Notificar } from 'notificar' interface IItemRendererXProps { /** @@ -17,6 +18,7 @@ interface IItemRendererXProps { decorations: ClasslistComposite onClick: (ev: React.MouseEvent, item: FileEntry | Directory, type: ItemType) => void onContextMenu: (ev: React.MouseEvent, item: FileEntry | Directory) => void + events: Notificar } // DO NOT EXTEND FROM PureComponent!!! You might miss critical changes made deep within `item` prop @@ -80,9 +82,10 @@ export class FileTreeItem extends React.Component + draggable={true}> {!isNewPrompt && fileOrDir === 'directory' ? @@ -164,4 +167,14 @@ export class FileTreeItem extends React.Component { + const { item, itemType, events } = this.props + if (itemType === ItemType.File || itemType === ItemType.Directory) { + const ref = FileTreeItem.itemIdToRefMap.get(item.id) + if (ref) { + events.dispatch(FileTreeXEvent.onTreeEvents, e, 'dragstart', item) + } + } + } }