Web: Files: fixed treeFolders drag

This commit is contained in:
Nikita Gopienko 2021-04-06 15:47:04 +03:00
parent fbf2c27910
commit 424efc1e72
4 changed files with 31 additions and 26 deletions

View File

@ -23,7 +23,7 @@ const DragAndDrop = (props) => {
className={`drag-and-drop ${classNameProp}`}
dragging={dragging}
isDragAccept={isDragActive}
drag={isDragActive && isDropZone}
drag={isDragActive && isDropZone && props.onDrop}
{...getRootProps()}
>
{children}

View File

@ -148,7 +148,7 @@ class TreeFolders extends React.Component {
isAdmin,
myId,
commonId,
rootFolderType,
//rootFolderType,
currentId,
draggableItems,
} = this.props;
@ -158,9 +158,9 @@ class TreeFolders extends React.Component {
if (draggableItems.find((x) => x.id === item.id)) return false;
const isMy = rootFolderType === FolderType.USER;
const isCommon = rootFolderType === FolderType.COMMON;
const isShare = rootFolderType === FolderType.SHARE;
// const isMy = rootFolderType === FolderType.USER;
// const isCommon = rootFolderType === FolderType.COMMON;
// const isShare = rootFolderType === FolderType.SHARE;
if (
item.rootFolderType === FolderType.SHARE &&
@ -170,25 +170,25 @@ class TreeFolders extends React.Component {
}
if (isAdmin) {
if (isMy || isCommon || isShare) {
if (
(item.pathParts &&
(item.pathParts[0] === myId || item.pathParts[0] === commonId)) ||
item.rootFolderType === FolderType.USER ||
item.rootFolderType === FolderType.COMMON
) {
return true;
}
//if (isMy || isCommon || isShare) {
if (
(item.pathParts &&
(item.pathParts[0] === myId || item.pathParts[0] === commonId)) ||
item.rootFolderType === FolderType.USER ||
item.rootFolderType === FolderType.COMMON
) {
return true;
}
//}
} else {
if (isMy || isCommon || isShare) {
if (
(item.pathParts && item.pathParts[0] === myId) ||
item.rootFolderType === FolderType.USER
) {
return true;
}
//if (isMy || isCommon || isShare) {
if (
(item.pathParts && item.pathParts[0] === myId) ||
item.rootFolderType === FolderType.USER
) {
return true;
}
//}
}
return false;
@ -489,13 +489,13 @@ export default inject(
expandedKeys,
setExpandedKeys,
} = treeFoldersStore;
const { id, rootFolderType } = selectedFolderStore;
const { id /* rootFolderType */ } = selectedFolderStore;
return {
isAdmin: auth.isAdmin,
isDesktop: auth.settingsStore.isDesktopClient,
dragging,
rootFolderType,
//rootFolderType,
currentId: id,
myId: myFolderId,
commonId: commonFolderId,

View File

@ -536,10 +536,11 @@ const SimpleFilesRow = (props) => {
}
: {};
const isDragging = isFolder && access < 2 && !isRecycleBin;
const checkedProps = isEdit || id <= 0 ? {} : { checked };
const element = getItemIcon(isEdit || id <= 0);
const displayShareButton = isMobile ? "26px" : !canShare ? "38px" : "96px";
let className = isFolder && access < 2 && !isRecycleBin ? " droppable" : "";
let className = isDragging ? " droppable" : "";
if (draggable) className += " draggable";
let value = fileExst || contentLength ? `file_${id}` : `folder_${id}`;
value += draggable ? "_draggable" : "";
@ -555,7 +556,7 @@ const SimpleFilesRow = (props) => {
className={className}
onDrop={onDrop}
onMouseDown={onMouseDown}
dragging={dragging && isFolder && access < 2}
dragging={dragging && isDragging}
{...contextOptionsProps}
>
<StyledSimpleFilesRow

View File

@ -214,6 +214,7 @@ class PureHome extends React.Component {
fileActionId,
firstLoad,
isHeaderVisible,
isRecycleBinFolder,
primaryProgressDataVisible,
primaryProgressDataPercent,
@ -240,7 +241,7 @@ class PureHome extends React.Component {
withBodyScroll
withBodyAutoFocus={!isMobile}
uploadFiles
onDrop={this.onDrop}
onDrop={isRecycleBinFolder ? null : this.onDrop}
setSelections={this.props.setSelections}
onMouseMove={this.onMouseMove}
showPrimaryProgressBar={primaryProgressDataVisible}
@ -303,6 +304,7 @@ export default inject(
uploadDataStore,
dialogsStore,
selectedFolderStore,
treeFoldersStore,
}) => {
const {
secondaryProgressDataStore,
@ -324,6 +326,7 @@ export default inject(
} = filesStore;
const { id } = fileActionStore;
const { isRecycleBinFolder } = treeFoldersStore;
const {
visible: primaryProgressDataVisible,
@ -360,6 +363,7 @@ export default inject(
filter,
viewAs,
uploaded,
isRecycleBinFolder,
primaryProgressDataVisible,
primaryProgressDataPercent,