Merge pull request #4101 from ethereum/fixdragancenstor

fix dragging into ancestor
pull/4100/head^2
bunsenstraat 1 year ago committed by GitHub
commit 057f269b02
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 15
      apps/remix-ide/src/app/files/fileManager.ts

@ -938,9 +938,16 @@ class FileManager extends Plugin {
await this._handleIsDir(src, `Cannot move ${src}. Path is not directory.`)
await this._handleIsDir(dest, `Cannot move content into ${dest}. Path is not directory.`)
const dirName = helper.extractNameFromKey(src)
const provider = this.fileProviderOf(src)
if (await this.exists(dest + '/' + dirName) || src === dest) {
return false
}
if (provider.isSubDirectory(src, dest)) {
this.call('notification', 'toast', recursivePasteToastMsg())
return false
}
return true
} catch (e) {
console.log(e)
@ -998,7 +1005,13 @@ class FileManager extends Plugin {
if (await this.exists(dest + '/' + dirName) || src === dest) {
throw createError({ code: 'EEXIST', message: `Cannot move ${src}. Folder already exists at destination ${dest}` })
}
await this.copyDir(src, dest, dirName)
const provider = this.fileProviderOf(src)
if (provider.isSubDirectory(src, dest)) {
this.call('notification', 'toast', recursivePasteToastMsg())
return false
}
await this.inDepthCopy(src, dest, dirName)
await this.remove(src)
} catch (e) {

Loading…
Cancel
Save