X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/91c6da4c4f84498a8473a0245a70c024ca9910d7..6c42bd0ca04911ece6403af74852a1e34d483c8f:/src/components/file-tree/file-tree.tsx diff --git a/src/components/file-tree/file-tree.tsx b/src/components/file-tree/file-tree.tsx index 06fc8b78..e24fbb71 100644 --- a/src/components/file-tree/file-tree.tsx +++ b/src/components/file-tree/file-tree.tsx @@ -2,8 +2,9 @@ // // SPDX-License-Identifier: AGPL-3.0 -import * as React from "react"; -import { Tree, TreeItem, TreeItemStatus } from "../tree/tree"; +import React from "react"; +import { TreeItem, TreeItemStatus } from "../tree/tree"; +import { VirtualTree as Tree } from "../tree/virtual-tree"; import { FileTreeData } from "./file-tree-data"; import { FileTreeItem } from "./file-tree-item"; @@ -12,6 +13,8 @@ export interface FileTreeProps { onMenuOpen: (event: React.MouseEvent, item: TreeItem) => void; onSelectionToggle: (event: React.MouseEvent, item: TreeItem) => void; onCollapseToggle: (id: string, status: TreeItemStatus) => void; + onFileClick: (id: string) => void; + currentItemUuid?: string; } export class FileTree extends React.Component { @@ -24,7 +27,8 @@ export class FileTree extends React.Component { onContextMenu={this.handleContextMenu} toggleItemActive={this.handleToggleActive} toggleItemOpen={this.handleToggle} - onSelectionChange={this.handleSelectionChange} />; + toggleItemSelection={this.handleSelectionChange} + currentItemUuid={this.props.currentItemUuid} />; } handleContextMenu = (event: React.MouseEvent, item: TreeItem) => { @@ -32,11 +36,13 @@ export class FileTree extends React.Component { this.props.onMenuOpen(event, item); } - handleToggle = (id: string, status: TreeItemStatus) => { + handleToggle = (event: React.MouseEvent<{}>, { id, status }: TreeItem<{}>) => { this.props.onCollapseToggle(id, status); } - handleToggleActive = () => { return; }; + handleToggleActive = (_: React.MouseEvent, item: TreeItem) => { + this.props.onFileClick(item.id); + } handleSelectionChange = (event: React.MouseEvent, item: TreeItem) => { event.stopPropagation();