diff --git a/assets/configs/org.deepin.dde.file-manager.json b/assets/configs/org.deepin.dde.file-manager.json index 174f7ffd5e..cf1760a8ad 100644 --- a/assets/configs/org.deepin.dde.file-manager.json +++ b/assets/configs/org.deepin.dde.file-manager.json @@ -199,6 +199,17 @@ "description[zh_CN]": "日志规则", "permissions": "readwrite", "visibility": "public" + }, + "dfm.open.folder.in.a.separate.process": { + "value":false, + "serial":0, + "flags":[], + "name":"Open folder windows in a separate process", + "name[zh_CN]":"在单独的进程中打开文件夹窗口", + "description[zh_CN]":"用于判断是否在单独的进程中打开文件夹窗口", + "description":"Used to determine whether to enable Open folder windows in a separate process", + "permissions":"readwrite", + "visibility":"private" } } } diff --git a/include/dfm-base/widgets/filemanagerwindowsmanager.h b/include/dfm-base/widgets/filemanagerwindowsmanager.h index 9555cca9cf..a537d5432e 100644 --- a/include/dfm-base/widgets/filemanagerwindowsmanager.h +++ b/include/dfm-base/widgets/filemanagerwindowsmanager.h @@ -35,6 +35,7 @@ class FileManagerWindowsManager final : public QObject QList windowIdList(); void resetPreviousActivedWindowId(); quint64 previousActivedWindowId(); + bool containsCurrentUrl(const QUrl &url, const QWidget *win = nullptr); Q_SIGNALS: void windowCreated(quint64 windId); diff --git a/src/apps/dde-file-manager/commandparser.cpp b/src/apps/dde-file-manager/commandparser.cpp index 287be468fd..118b9e9ee8 100644 --- a/src/apps/dde-file-manager/commandparser.cpp +++ b/src/apps/dde-file-manager/commandparser.cpp @@ -255,7 +255,10 @@ void CommandParser::openInHomeDirectory() { QString homePath = StandardPaths::location(StandardPaths::StandardLocation::kHomePath); QUrl url = QUrl::fromUserInput(homePath); - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url); + auto flag = !DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url, flag); } void CommandParser::openInUrls() @@ -294,8 +297,12 @@ void CommandParser::openInUrls() } argumentUrls.append(url); } - if (argumentUrls.isEmpty()) - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, QUrl(), true); + if (argumentUrls.isEmpty()) { + auto flag = !DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, QUrl(), flag); + } for (const QUrl &url : argumentUrls) openWindowWithUrl(url); } @@ -314,7 +321,11 @@ void CommandParser::openWindowWithUrl(const QUrl &url) dpfSignalDispatcher->publish(GlobalEventType::kLoadPlugins, QStringList() << name); }); } - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url, isSet("n") || isSet("s") || isSet("sessionfile")); + auto flag = DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + flag = flag ? false : isSet("n") || isSet("s") || isSet("sessionfile"); + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url, flag); } void CommandParser::openSession() diff --git a/src/dfm-base/base/application/application.h b/src/dfm-base/base/application/application.h index 4893dfab5b..be5d2bdd9a 100644 --- a/src/dfm-base/base/application/application.h +++ b/src/dfm-base/base/application/application.h @@ -32,7 +32,7 @@ class Application : public QObject kUrlOfNewTab, // default path to new tabs kThemeName, kFileAndDirMixedSort, // Mixed sorting of ordinary files and directories - kListItemExpandable // Item expandable as tree in FileView with list view mode + kListItemExpandable, // Item expandable as tree in FileView with list view mode }; Q_ENUM(ApplicationAttribute) diff --git a/src/dfm-base/base/configs/dconfig/dconfigmanager.h b/src/dfm-base/base/configs/dconfig/dconfigmanager.h index 8a97f8f68f..6b94382080 100644 --- a/src/dfm-base/base/configs/dconfig/dconfigmanager.h +++ b/src/dfm-base/base/configs/dconfig/dconfigmanager.h @@ -17,6 +17,7 @@ inline constexpr char kPluginsDConfName[] { "org.deepin.dde.file-manager.plugins inline constexpr char kViewDConfName[] { "org.deepin.dde.file-manager.view" }; inline constexpr char kKeyHideDisk[] { "dfm.disk.hidden" }; inline constexpr char kTreeViewEnable[] { "dfm.treeview.enable" }; +inline constexpr char kOpenfolderwindowsinaseparateprocess[] { "dfm.open.folder.in.a.separate.process" }; class DConfigManagerPrivate; class DConfigManager : public QObject diff --git a/src/dfm-base/base/configs/settingbackend.cpp b/src/dfm-base/base/configs/settingbackend.cpp index 030dc2ee24..5f038d028b 100644 --- a/src/dfm-base/base/configs/settingbackend.cpp +++ b/src/dfm-base/base/configs/settingbackend.cpp @@ -7,6 +7,7 @@ #include #include +#include #include @@ -31,7 +32,7 @@ using namespace dfmbase; BidirectionHash SettingBackendPrivate::keyToAA { { LV2_GROUP_OPEN_ACTION ".00_allways_open_on_new_window", Application::kAllwayOpenOnNewWindow }, - { LV2_GROUP_OPEN_ACTION ".01_open_file_action", Application::kOpenFileMode }, + { LV2_GROUP_OPEN_ACTION ".02_open_file_action", Application::kOpenFileMode }, { LV2_GROUP_NEW_TAB_WINDOWS ".00_default_window_path", Application::kUrlOfNewWindow }, { LV2_GROUP_NEW_TAB_WINDOWS ".01_new_tab_path", Application::kUrlOfNewTab }, { LV2_GROUP_VIEW ".00_icon_size", Application::kIconSizeLevel }, @@ -226,7 +227,22 @@ void SettingBackend::initBasicSettingConfig() ins->addCheckBoxConfig(LV2_GROUP_OPEN_ACTION ".00_allways_open_on_new_window", tr("Always open folder in new window"), false); - ins->addComboboxConfig(LV2_GROUP_OPEN_ACTION ".01_open_file_action", + ins->addCheckBoxConfig(LV2_GROUP_OPEN_ACTION ".01_open_folder_windows_in_aseparate_process", + tr("Open folder windows in a separate process"), + false); + addSettingAccessor( + LV2_GROUP_OPEN_ACTION ".01_open_folder_windows_in_aseparate_process", + []() { + return DConfigManager::instance()->value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, + false); + }, + [](const QVariant &val) { + DConfigManager::instance()->setValue(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, + val); + }); + ins->addComboboxConfig(LV2_GROUP_OPEN_ACTION ".02_open_file_action", tr("Open file:"), QStringList { tr("Click"), tr("Double click") }, diff --git a/src/dfm-base/widgets/dfmwindow/filemanagerwindowsmanager.cpp b/src/dfm-base/widgets/dfmwindow/filemanagerwindowsmanager.cpp index eea51ea2e3..559706d480 100644 --- a/src/dfm-base/widgets/dfmwindow/filemanagerwindowsmanager.cpp +++ b/src/dfm-base/widgets/dfmwindow/filemanagerwindowsmanager.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #include #include @@ -50,7 +51,10 @@ FileManagerWindow *FileManagerWindowsManagerPrivate::activeExistsWindowByUrl(con for (int i = 0; i != count; ++i) { quint64 key = windows.keys().at(i); auto window = windows.value(key); - if (window && UniversalUtils::urlEquals(window->currentUrl(), url)) { + auto cur = window->currentUrl(); + if (window && (UniversalUtils::urlEquals(url, cur) || + UniversalUtils::urlEquals(url, FileUtils::bindUrlTransform(cur)) || + UniversalUtils::urlEquals(cur, FileUtils::bindUrlTransform(url)))) { qCInfo(logDFMBase) << "Find url: " << url << " window: " << window; if (window->isMinimized()) window->setWindowState(window->windowState() & ~Qt::WindowMinimized); @@ -309,6 +313,21 @@ quint64 FileManagerWindowsManager::previousActivedWindowId() return d->previousActivedWindowId; } +bool FileManagerWindowsManager::containsCurrentUrl(const QUrl &url, const QWidget *win) +{ + auto windows = d->windows.values(); + for (auto w : windows) { + if (win == w || !w) + continue; + auto cur = w->currentUrl(); + if (UniversalUtils::urlEquals(url, cur) || + UniversalUtils::urlEquals(url, FileUtils::bindUrlTransform(cur)) || + UniversalUtils::urlEquals(cur, FileUtils::bindUrlTransform(url))) + return true; + } + return false; +} + FileManagerWindowsManager::FileManagerWindowsManager(QObject *parent) : QObject(parent), d(new FileManagerWindowsManagerPrivate(this)) diff --git a/src/plugins/common/core/dfmplugin-menu/menuscene/fileoperatormenuscene.cpp b/src/plugins/common/core/dfmplugin-menu/menuscene/fileoperatormenuscene.cpp index cadbf3b688..3878e4ec15 100644 --- a/src/plugins/common/core/dfmplugin-menu/menuscene/fileoperatormenuscene.cpp +++ b/src/plugins/common/core/dfmplugin-menu/menuscene/fileoperatormenuscene.cpp @@ -15,6 +15,8 @@ #include #include #include +#include +#include #include @@ -201,8 +203,13 @@ bool FileOperatorMenuScene::triggered(QAction *action) if (infoPtr && infoPtr->isAttributes(OptInfoType::kIsSymLink)) cdUrl = QUrl::fromLocalFile(infoPtr->pathOf(PathInfoType::kSymLinkTarget)); - if (Application::instance()->appAttribute(Application::kAllwayOpenOnNewWindow).toBool()) { - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, cdUrl); + auto flag = DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + + if ((flag && FileManagerWindowsManager::instance().containsCurrentUrl(cdUrl)) || + Application::instance()->appAttribute(Application::kAllwayOpenOnNewWindow).toBool()) { + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, cdUrl, !flag); } else { dpfSignalDispatcher->publish(GlobalEventType::kChangeCurrentUrl, d->windowId, cdUrl); } diff --git a/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.cpp b/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.cpp index 668118bdb6..cdfc3da657 100644 --- a/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.cpp +++ b/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -54,8 +55,12 @@ void ComputerEventCaller::cdTo(quint64 winId, const QUrl &url) } DFMBASE_USE_NAMESPACE - if (Application::appAttribute(Application::ApplicationAttribute::kAllwayOpenOnNewWindow).toBool()) - sendEnterInNewWindow(url); + auto flag = DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + if ((flag && FileManagerWindowsManager::instance().containsCurrentUrl(url)) + || Application::appAttribute(Application::ApplicationAttribute::kAllwayOpenOnNewWindow).toBool()) + sendEnterInNewWindow(url, !flag); else dpfSignalDispatcher->publish(GlobalEventType::kChangeCurrentUrl, winId, url); } @@ -67,14 +72,14 @@ void ComputerEventCaller::cdTo(quint64 winId, const QString &path) cdTo(winId, ComputerUtils::makeLocalUrl(path)); } -void ComputerEventCaller::sendEnterInNewWindow(const QUrl &url) +void ComputerEventCaller::sendEnterInNewWindow(const QUrl &url, const bool isNew) { if (!ComputerUtils::checkGvfsMountExist(url)) { fmInfo() << "gvfs url not exists" << url; return; } - dpfSignalDispatcher->publish(DFMBASE_NAMESPACE::GlobalEventType::kOpenNewWindow, url); + dpfSignalDispatcher->publish(DFMBASE_NAMESPACE::GlobalEventType::kOpenNewWindow, url, isNew); } void ComputerEventCaller::sendEnterInNewTab(quint64 winId, const QUrl &url) diff --git a/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.h b/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.h index d2b640d76a..2f9cc7abdb 100644 --- a/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.h +++ b/src/plugins/filemanager/core/dfmplugin-computer/events/computereventcaller.h @@ -23,7 +23,7 @@ class ComputerEventCaller static void cdTo(quint64 winId, const QUrl &url); static void cdTo(quint64 winId, const QString &path); - static void sendEnterInNewWindow(const QUrl &url); + static void sendEnterInNewWindow(const QUrl &url, const bool isNew = true); static void sendEnterInNewTab(quint64 winId, const QUrl &url); static void sendContextActionTriggered(quint64 winId, const QUrl &url, const QString &action); diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.cpp b/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.cpp index 4bdecbfef3..f971da650f 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.cpp +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.cpp @@ -24,9 +24,9 @@ void SideBarEventCaller::sendEject(const QUrl &url) dpfSignalDispatcher->publish("dfmplugin_sidebar", "signal_Item_EjectClicked", url); } -void SideBarEventCaller::sendOpenWindow(const QUrl &url) +void SideBarEventCaller::sendOpenWindow(const QUrl &url, const bool isNew) { - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url); + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url, isNew); } void SideBarEventCaller::sendOpenTab(quint64 windowId, const QUrl &url) diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.h b/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.h index 714178b75c..e846aa3bfe 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.h +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/events/sidebareventcaller.h @@ -18,7 +18,7 @@ class SideBarEventCaller public: static void sendItemActived(quint64 windowId, const QUrl &url); static void sendEject(const QUrl &url); - static void sendOpenWindow(const QUrl &url); + static void sendOpenWindow(const QUrl &url, const bool isNew = true); static void sendOpenTab(quint64 windowId, const QUrl &url); static void sendShowFilePropertyDialog(const QUrl &url); static bool sendCheckTabAddable(quint64 windowId); diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/treeviews/sidebarwidget.cpp b/src/plugins/filemanager/core/dfmplugin-sidebar/treeviews/sidebarwidget.cpp index 9e7d2cdc5f..6a494f0a62 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/treeviews/sidebarwidget.cpp +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/treeviews/sidebarwidget.cpp @@ -17,8 +17,9 @@ #include #include #include -#include +#include #include +#include #include #include @@ -261,6 +262,27 @@ void SideBarWidget::onItemActived(const QModelIndex &index) } QApplication::restoreOverrideCursor(); + auto flag = DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + + auto target = item->targetUrl(); + if (flag && FileManagerWindowsManager::instance().containsCurrentUrl(target)) { + + // run Open folder windows in a separate process + SideBarManager::instance()->openFolderInASeparateProcess(target); + auto preIndex = sidebarView->previousIndex(); + if (!preIndex.isValid()) { + sidebarView->setPreviousIndex(preIndex); + return; + } + SideBarItem *preItem = kSidebarModelIns->itemFromIndex(preIndex); + if (!preItem || dynamic_cast(preItem)) + return; + setCurrentUrl(qvariant_cast(preItem->data(SideBarItem::Roles::kItemUrlRole))); + sidebarView->setPreviousIndex(preIndex); + return; + } SideBarManager::instance()->runCd(item, SideBarHelper::windowId(this)); sidebarView->update(sidebarView->previousIndex()); sidebarView->update(sidebarView->currentIndex()); diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.cpp b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.cpp index f791d3eb64..0b0411819c 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.cpp +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.cpp @@ -341,6 +341,11 @@ void SideBarHelper::saveGroupsStateToConfig(const QVariant &var) DConfigManager::instance()->setValue(ConfigInfos::kConfName, ConfigInfos::kGroupExpandedKey, rule); } +void SideBarHelper::openFolderInASeparateProcess(const QUrl &url) +{ + SideBarEventCaller::sendOpenWindow(url, false); +} + QMutex &SideBarHelper::mutex() { static QMutex m; diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.h b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.h index f2ec8f29d0..946b8d27b0 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.h +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarhelper.h @@ -44,6 +44,7 @@ class SideBarHelper static QVariantMap groupExpandRules(); static void saveGroupsStateToConfig(const QVariant &var); + static void openFolderInASeparateProcess(const QUrl &url); public: static bool contextMenuEnabled; // TODO(xust) tmp solution, using GroupPolicy instead. diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.cpp b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.cpp index 87ad97cb55..9534293eca 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.cpp +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.cpp @@ -62,6 +62,11 @@ void SideBarManager::runRename(SideBarItem *item, quint64 windowId, const QStrin } } +void SideBarManager::openFolderInASeparateProcess(const QUrl &url) +{ + SideBarHelper::openFolderInASeparateProcess(url); +} + SideBarManager::SideBarManager(QObject *parent) : QObject(parent) { diff --git a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.h b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.h index 7b29530aa5..152f3beb73 100644 --- a/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.h +++ b/src/plugins/filemanager/core/dfmplugin-sidebar/utils/sidebarmanager.h @@ -24,6 +24,7 @@ class SideBarManager final : public QObject void runCd(SideBarItem *item, quint64 windowId); void runContextMenu(SideBarItem *item, quint64 windowId, const QPoint &globalPos); void runRename(SideBarItem *item, quint64 windowId, const QString &name); + void openFolderInASeparateProcess(const QUrl &url); private: explicit SideBarManager(QObject *parent = nullptr); diff --git a/src/plugins/filemanager/core/dfmplugin-workspace/dfmplugin_workspace_global.h b/src/plugins/filemanager/core/dfmplugin-workspace/dfmplugin_workspace_global.h index 9ada86bac9..ba0c2c1a78 100644 --- a/src/plugins/filemanager/core/dfmplugin-workspace/dfmplugin_workspace_global.h +++ b/src/plugins/filemanager/core/dfmplugin-workspace/dfmplugin_workspace_global.h @@ -30,6 +30,7 @@ DFM_LOG_USE_CATEGORY(DPWORKSPACE_NAMESPACE) enum class DirOpenMode : uint8_t { kOpenInCurrentWindow, kOpenNewWindow, + kAwaysInCurrentWindow, //kForceOpenNewWindow // Todo(yanghao): ??? }; diff --git a/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.cpp b/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.cpp index 4466f8e73e..149a56ad90 100644 --- a/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.cpp +++ b/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.cpp @@ -15,17 +15,17 @@ DFMBASE_USE_NAMESPACE static constexpr char kEventNS[] { DPF_MACRO_TO_STR(DPWORKSPACE_NAMESPACE) }; -void WorkspaceEventCaller::sendOpenWindow(const QList &urls) +void WorkspaceEventCaller::sendOpenWindow(const QList &urls, const bool isNew) { bool hooked = dpfHookSequence->run(kEventNS, "hook_SendOpenWindow", urls); if (hooked) return; if (urls.isEmpty()) { - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, QUrl()); + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, QUrl(), isNew); } else { for (const QUrl &url : urls) - dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url); + dpfSignalDispatcher->publish(GlobalEventType::kOpenNewWindow, url, isNew); } } diff --git a/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.h b/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.h index 96e6b44938..c5af4294f6 100644 --- a/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.h +++ b/src/plugins/filemanager/core/dfmplugin-workspace/events/workspaceeventcaller.h @@ -23,7 +23,7 @@ class WorkspaceEventCaller WorkspaceEventCaller() = delete; public: - static void sendOpenWindow(const QList &urls); + static void sendOpenWindow(const QList &urls, const bool isNew = true); static void sendChangeCurrentUrl(const quint64 windowId, const QUrl &url); static void sendOpenAsAdmin(const QUrl &url); diff --git a/src/plugins/filemanager/core/dfmplugin-workspace/utils/fileoperatorhelper.cpp b/src/plugins/filemanager/core/dfmplugin-workspace/utils/fileoperatorhelper.cpp index 44ca06fced..d2560ddf94 100644 --- a/src/plugins/filemanager/core/dfmplugin-workspace/utils/fileoperatorhelper.cpp +++ b/src/plugins/filemanager/core/dfmplugin-workspace/utils/fileoperatorhelper.cpp @@ -14,6 +14,8 @@ #include #include #include +#include +#include #include @@ -103,8 +105,13 @@ void FileOperatorHelper::openFilesByMode(const FileView *view, const QList if (fileInfoPtr->isAttributes(OptInfoType::kIsSymLink)) dirUrl = QUrl::fromLocalFile(fileInfoPtr->pathOf(PathInfoType::kSymLinkTarget)); - if (mode == DirOpenMode::kOpenNewWindow) { - WorkspaceEventCaller::sendOpenWindow({ dirUrl }); + auto flag = DConfigManager::instance()-> + value(kDefaultCfgPath, + kOpenfolderwindowsinaseparateprocess, false).toBool(); + if (mode == DirOpenMode::kOpenNewWindow || + (mode == DirOpenMode::kOpenNewWindow && flag + && FileManagerWindowsManager::instance().containsCurrentUrl(dirUrl, view->window()))) { + WorkspaceEventCaller::sendOpenWindow({ dirUrl }, !flag); } else { WorkspaceEventCaller::sendChangeCurrentUrl(windowId, dirUrl); } diff --git a/src/plugins/filemanager/core/dfmplugin-workspace/views/fileview.cpp b/src/plugins/filemanager/core/dfmplugin-workspace/views/fileview.cpp index 268f15eeb8..14a4ac3401 100644 --- a/src/plugins/filemanager/core/dfmplugin-workspace/views/fileview.cpp +++ b/src/plugins/filemanager/core/dfmplugin-workspace/views/fileview.cpp @@ -1103,7 +1103,7 @@ DirOpenMode FileView::currentDirOpenMode() const DirOpenMode mode; if (d->isAlwaysOpenInCurrentWindow) { - mode = DirOpenMode::kOpenInCurrentWindow; + mode = DirOpenMode::kAwaysInCurrentWindow; } else { if (Application::instance()->appAttribute(Application::kAllwayOpenOnNewWindow).toBool()) { mode = DirOpenMode::kOpenNewWindow; diff --git a/translations/dde-file-manager.ts b/translations/dde-file-manager.ts index cc5aad039e..b22fca6b5a 100644 --- a/translations/dde-file-manager.ts +++ b/translations/dde-file-manager.ts @@ -64,33 +64,33 @@ DockItemDataManager - + The device has been safely removed The device has been safely removed - + eject eject - + unmount Unmount - - + + remove remove - + Operation failed Operation failed - + Device (%1) is busy, cannot %2 now. Device (%1) is busy, cannot %2 now. @@ -333,21 +333,21 @@ Unable to find the original file - - - + + + File has been moved or deleted File has been moved or deleted - - + + You do not have permission to access this folder You do not have permission to access this folder - - + + You do not have permission to traverse files in it You do not have permission to traverse files in it @@ -422,7 +422,7 @@ - + Computers in LAN Computers in LAN @@ -889,7 +889,7 @@ - + dde-file-manager dde-file-manager @@ -920,10 +920,10 @@ - + - + Open in new window Open in new window @@ -934,10 +934,10 @@ - + - + Open in new tab Open in new tab @@ -1397,7 +1397,7 @@ Copy path - + Edit address Edit address @@ -2883,259 +2883,264 @@ + Open folder windows in a separate process + + + + Open file: Open file: - + Click Click - + Double click Double click - + New window and tab New window and tab - + Open from default window: Open from default window: - - + + Computer Computer - - + + Home Home - - + + Desktop Desktop - - + + Videos Videos - - + + Music Music - - + + Pictures Pictures - - + + Documents Documents - - + + Downloads Downloads - + Open in new tab: Open in new tab: - + Current Directory Current Directory - + Files and folders Files and folders - + Show hidden files Show hidden files - + Show file extensions Show file extensions - + Mix sorting of files and folders Mix sorting of files and folders - + Workspace Workspace - + View View - + Default size: Default size: - + Extra small Extra small - + Small Small - + Medium Medium - + Large Large - + Extra large Extra large - + Tree - + Default view: Default view: - + Icon Icon - + List List - + Restore default view mode for all directories Restore default view mode for all directories - + Restore default view mode Restore default view mode - + Thumbnail preview Thumbnail preview - + Compressed file preview Compressed file preview - + Text preview Text preview - + Document preview Document preview - + Image preview Image preview - + Video preview Video preview - + Music preview Music preview - + The remote environment shows thumbnail previews The remote environment shows thumbnail previews - + Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze - + Advanced Advanced - + Mount Mount - + Auto mount Auto mount - + Open after auto mount Open after auto mount - + Merge the entries of Samba shared folders Merge the entries of Samba shared folders - + Switching the entry display may lead to failed mounting Switching the entry display may lead to failed mounting - + Use the file chooser dialog of File Manager Use the file chooser dialog of File Manager - + Ask for my confirmation when deleting files Ask for my confirmation when deleting files @@ -4509,27 +4514,27 @@ dfmplugin_menu::FileOperatorMenuScenePrivate - + &Open &Open - + Rena&me Rena&me - + &Delete &Delete - + Empty Trash Empty Trash - + Set as wallpaper Set as wallpaper @@ -5172,32 +5177,32 @@ dfmplugin_sidebar::SideBarWidget - + Quick access Quick access - + Partitions Partitions - + Network Network - + Tag Tag - + Other Other - + Unknown Group Unknown Group @@ -6489,7 +6494,7 @@ dfmplugin_workspace::FileOperatorHelper - + Failed to open %1, which may be moved or renamed Failed to open %1, which may be moved or renamed @@ -6600,7 +6605,7 @@ filedialog_core::FileDialog - + Save button Save diff --git a/translations/dde-file-manager_bo.ts b/translations/dde-file-manager_bo.ts index 865487700e..600c973707 100644 --- a/translations/dde-file-manager_bo.ts +++ b/translations/dde-file-manager_bo.ts @@ -64,33 +64,33 @@ DockItemDataManager - + The device has been safely removed སྒྲིག་ཆས་བདེ་འཇགས་ངང་སྤོ་འབུད་བྱས་སོང་། - + eject ཕྱིར་འདོན། - + unmount བཤིག་འདོན། - - + + remove སུབ་པ། - + Operation failed བཀོལ་སྤྱོད་བྱེད་མ་ཐུབ། - + Device (%1) is busy, cannot %2 now. སྒྲིག་(%1)སྤྱོད་བཞིན་པས། %2བྱེད་ཐབས་མེད། @@ -333,21 +333,21 @@ དམིགས་འབེན་ཡིག་ཆའི་འབྲེལ་མཐུད་རྙེད་ཐབས་བྲལ། - - - + + + File has been moved or deleted ཡིག་ཆ་སྤོས་ཟིན་པའམ་བསུབས་ཟིན། - - + + You do not have permission to access this folder ཁྱོད་ལ་ཡིག་ཁུག་འདི་ཀློག་དབང་མེད། - - + + You do not have permission to traverse files in it ཁྱོད་ལ་ཡན་ལག་ཡིག་ཆར་ལྟ་སྤྱོད་བྱེད་དབང་མེད། @@ -422,7 +422,7 @@ - + Computers in LAN དྲ་རྒྱའི་ཁྱིམ་མཚེས། @@ -889,7 +889,7 @@ - + dde-file-manager dde-file-manager @@ -920,10 +920,10 @@ - + - + Open in new window སྒེའུ་ཁུང་གསར་པ་ནས་ཁ་ཕྱེ། @@ -934,10 +934,10 @@ - + - + Open in new tab ཤོག་བྱང་གསར་པ་ནས་ཁ་ཕྱེ། @@ -1397,7 +1397,7 @@ པར་སློག་འགྲོ་ལམ། - + Edit address རྩོམ་སྒྲིག་བྱེད་ས། @@ -2883,259 +2883,264 @@ + Open folder windows in a separate process + + + + Open file: ཡིག་ཆ་ཁ་ཕྱེ། - + Click གཅིག་རྡེབ། - + Double click ཉིས་རྡེབ། - + New window and tab སྒེའུ་ཁུང་གསར་པ་དང་ཤོག་བྱང་གསར་པ། - + Open from default window: སོར་བཞག་སྒེའུ་ཁུང་ནས་ཁ་འབྱེད་པ། - - + + Computer རྩིས་འཁོར། - - + + Home དཀར་ཆག་གཙོ་བོ། - - + + Desktop ཅོག་ངོས། - - + + Videos བརྙན་འཕྲིན། - - + + Music རོལ་མོ། - - + + Pictures པར་རིས། - - + + Documents ཡིག་ཆ། - - + + Downloads ཕབ་ལེན། - + Open in new tab: ཤོག་བྱང་གསར་པ་ནས་ཁ་ཕྱེ། - + Current Directory མིག་སྔའི་དཀར་ཆག - + Files and folders ཡིག་ཆ་དང་དཀར་ཆག - + Show hidden files ཡིབ་པའི་ཡིག་ཆ་མངོན་སྟོན། - + Show file extensions ཡིག་ཆའི་རྒྱ་བསྐྱེད་མིང་མངོན་པ། - + Mix sorting of files and folders ཡིག་ཆ་དང་ཡིག་ཁུག་གོ་རིམ་དཀྲུགས་ནས་སྒྲིག་པ། - + Workspace ལས་ཁུལ། - + View མཐོང་རིས། - + Default size: སོར་བཞག་ཆེ་ཆུང་། - + Extra small ཆུང་གྲས། - + Small ཆུང་། - + Medium འབྲིང་། - + Large ཆེ། - + Extra large ཆེ་གྲས། - + Tree སྡོང་དབྱིབས་མཐོང་རིས། - + Default view: སོར་བཞག་མཐོང་རིས། - + Icon རྟགས་རིས་མཐོང་རིས། - + List གསལ་ཐོའི་མཐོང་རིས། - + Restore default view mode for all directories དཀར་ཆག་ཡོད་ཚད་ཀྱི་མཐོང་རིས་སོར་བཞག - + Restore default view mode སོར་བཞག་མཐོང་རིས་སླར་དུ་གསོ་བ། - + Thumbnail preview བསྡུས་རིས་སྔོན་ལྟ། - + Compressed file preview སྡུད་སྒྲིལ་ཡིག་ཆར་སྔོན་ལྟ། - + Text preview ཡིག་ཆ་སྔོན་ལྟ། - + Document preview ཡིག་ཆ་སྔོན་ལྟ། - + Image preview པར་རིས་སྔོན་ལྟ། - + Video preview བརྙན་འཕྲིན་སྔོན་ལྟ། - + Music preview གླུ་དབྱངས་སྔོན་ལྟ། - + The remote environment shows thumbnail previews རྒྱང་སྦྲེལ་ཁོར་ཡུག་ནས་བསྡུས་རིས་ལ་སྔོན་ལྟ་བྱེད་པ། - + Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze བསྡུས་རིས་སྔོན་ལྟ་ཞེས་པ་ཁ་ཕྱེ་ཚེ་རྒྱང་སྦྲེལ་དཀར་ཆག་སྣོན་འཇུག་བྱེད་དལ་དུ་འགྲོ་བ་དང་ཡང་ན་འགག་འགྲོ་སྲིད། - + Advanced མཐོ་རིམ་སྒྲིག་འགོད། - + Mount འཇུག་པ། - + Auto mount རང་འཇུག - + Open after auto mount རང་འཇུག་བྱས་རྗེས་ཁ་ཕྱེ། - + Merge the entries of Samba shared folders ཟླ་བསྒྲིལ་ནས་Sambaམཉམ་སྤྱོད་དཀར་ཆག་གི་འཛུལ་སྒོ་མངོན་པ། - + Switching the entry display may lead to failed mounting འཛུལ་སྒོའི་འཆར་སྟོན་དཔེ་རྣམ་བརྗེས་ཚེ་འགེལ་འཇུག་གི་རྣམ་པ་ཕམ་སྲིད། - + Use the file chooser dialog of File Manager ཡིག་ཆ་དོ་དམ་ཆས་ཀྱི་ཡིག་ཆ་བེད་སྤྱོད་བྱས་ཏེ་གླེང་སྒྲོམ་འདེམས་པ། - + Ask for my confirmation when deleting files སྤྱིར་བཏང་གི་བསུབ་རྒྱུའི་དྲན་སྐུལ་ཁ་ཕྱེ་བ། @@ -4509,27 +4514,27 @@ dfmplugin_menu::FileOperatorMenuScenePrivate - + &Open ཁ་ཕྱེ།(&O) - + Rena&me མིང་བསྐྱར་འདོགས་(&M) - + &Delete སུབ་པ་(&D) - + Empty Trash སྙིགས་སྣོད་གཙང་སེལ། - + Set as wallpaper རྒྱབ་ཤོག་སྒྲིག་འགོད། @@ -5172,32 +5177,32 @@ dfmplugin_sidebar::SideBarWidget - + Quick access མགྱོགས་མྱུར་ལྟ་སྤྱོད། - + Partitions ཁུལ་ཚན། - + Network དྲ་རྒྱ། - + Tag མཚོན་རྟགས། - + Other གཞན། - + Unknown Group རྒྱུས་མེད་པའི་ཚོ་པ། @@ -6488,7 +6493,7 @@ dfmplugin_workspace::FileOperatorHelper - + Failed to open %1, which may be moved or renamed %1ཁ་ཕྱེ་ཐུབ་མ་སོང་། ཡིག་ཆ་འདི་སྤོས་ཟིན་པའམ་མིང་བསྒྱུར་བྱས་ཡོད་པ་རེད། @@ -6599,7 +6604,7 @@ filedialog_core::FileDialog - + Save button ཉར་ཚགས། diff --git a/translations/dde-file-manager_ug.ts b/translations/dde-file-manager_ug.ts index d12ef8a6a1..bcb3f476f9 100644 --- a/translations/dde-file-manager_ug.ts +++ b/translations/dde-file-manager_ug.ts @@ -64,33 +64,33 @@ DockItemDataManager - + The device has been safely removed ئۈسكۈنە بىخەتەر چىقىرىۋىتىلدى - + eject چىقىرۋېتىش - + unmount ئۆچۈرۈش - - + + remove چىقىرۋېتىش - + Operation failed مەشغۇلات مەغلۇب بولدى - + Device (%1) is busy, cannot %2 now. ئۈسكۈنە (%1)  ئالدىراش، %2 قا ئامالسىز. @@ -333,21 +333,21 @@ ئۇلىنىش نىشان ھۆججىتىنى تاپالمىدى - - - + + + File has been moved or deleted ھۆججەت يۆتكىۋېتىلگەن ياكى ئۆچۈرۈلگەن - - + + You do not have permission to access this folder بۇ ھۆججەتنى ئوقۇش ھوقۇقىڭىز يوق - - + + You do not have permission to traverse files in it تارماق ھۆججەتلەرنى كۆرۈش ھوقۇقىڭىز يوق @@ -422,7 +422,7 @@ - + Computers in LAN توردىكى قوشنىلار @@ -889,7 +889,7 @@ - + dde-file-manager ھۆججەت باشقۇرغۇچ @@ -920,10 +920,10 @@ - + - + Open in new window يىڭى كۆزنەكتە ئېچىش @@ -934,10 +934,10 @@ - + - + Open in new tab يىڭى بەتتە ئېچىش @@ -1397,7 +1397,7 @@ ئادېرىس كۆچۈرۈش - + Edit address ئادرېسنى تەھرىرلەش @@ -2883,259 +2883,264 @@ + Open folder windows in a separate process + + + + Open file: ھۆججەت ئېچىش: - + Click تاق چېكىش - + Double click قوش چېكىش - + New window and tab يېڭى كۆزنەك ۋە يېڭى بەتكۈچ - + Open from default window: سۈكۈتتىكى كۆزنەكتە ئېچىش: - - + + Computer كومپيوتېر - - + + Home باش مۇندەرىجە - - + + Desktop ئۈستەليۈزى - - + + Videos سىن - - + + Music مۇزىكا - - + + Pictures رەسىم - - + + Documents ھۆججەت - - + + Downloads چۈشۈرۈلمىلەر - + Open in new tab: يىڭى بەتكۈچتە ئېچىش: - + Current Directory نۆۋەتتىكى مۇندەرىجە - + Files and folders ھۆججەت ۋە مۇندەرىجە - + Show hidden files يوشۇرۇن ھۆججەتلەر كۆرۈنسۇن - + Show file extensions كېڭەيتىلگەن نامى كۆرۈنسۇن - + Mix sorting of files and folders ھۆججەت بىلەن ھۆججەت قىسقۇچنى ئارىلاش تىزىش - + Workspace خىزمەت رايونى - + View كۆرۈنۈش - + Default size: سۈكۈتتىكى چوڭلۇقى: - + Extra small بەك كىچىك - + Small كىچىك - + Medium ئوتتۇرا - + Large چوڭ - + Extra large بەك چوڭ - + Tree دەرەخسىمان كۆرۈنۈش - + Default view: سۈكۈتتىكى كۆرۈنۈش: - + Icon سىن بەلگە كۆرۈنۈشى - + List تىزىملىك كۆرۈنۈشى - + Restore default view mode for all directories بارلىق مۇندەرىجىنى سۈكۈتتىكى كۆرۈش ھالىتىگە قايتۇرۇش - + Restore default view mode سۈكۈتتىكى كۆرۈش ھالىتىگە قايتۇرۇش - + Thumbnail preview قىسقارتما سۈرەت كۆرۈنۈشى - + Compressed file preview بولاق ھۆججەتنى كۆرۈپ بېقىش - + Text preview تېكىستنى كۆرۈپ بېقىش - + Document preview ھۆججەتنى كۆرۈپ بېقىش - + Image preview سۈرەتنى كۆرۈپ بېقىش - + Video preview سىننى كۆرۈپ بېقىش - + Music preview مۇزىكا ئۇچۇرلىىرنى كۆرۈپ بېقىش - + The remote environment shows thumbnail previews يىراق مۇساپىلىك مۇھىتتا قىسقارتىلما سۈرەت كۆرۈنسۇن - + Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze قىسقارتىلما سۈرەتنى كۆرۈش ئىقتىدارىنى ئاچسىڭىز يىراق مۇساپىلىك مۇندەرىجىنىڭ يۈكلىنىشى ئاستىلاپ كېتىشى ياكى قېتىۋېلىشى مۇمكىن - + Advanced ئالىي تەڭشەك - + Mount ئاغدۇرۇش - + Auto mount ئاپتوماتىك ئاغدۇرۇش - + Open after auto mount ئاپتوماتىك ئاغدۇرغاندىن كېيىن ئېچىش - + Merge the entries of Samba shared folders Samba ھەمبەھىر مۇندەرىجىسىنىڭ كىرىش ئېغىزىنى بىرىكتۈرۈپ كۆرسىتىش - + Switching the entry display may lead to failed mounting كىرىش ئېغىزىنى كۆرسىتىش ھالىتىنى ئالماشتۇرسىڭىز قاچىلاش ئۈنۈمسىز بولۇپ قېلىشى مۇمكىن - + Use the file chooser dialog of File Manager ھۆججەت باشقۇرغۇچىنىڭ ھۆججەت تاللاش سۆزلىشىش رامكىسىنى ئىشلىتىڭ - + Ask for my confirmation when deleting files ئادەتتىكى ئۆچۈرۈش ئەسكەرتمىسىنى ئېچىش @@ -4509,27 +4514,27 @@ dfmplugin_menu::FileOperatorMenuScenePrivate - + &Open ئېچىش (&O) - + Rena&me ناملاش (&M) - + &Delete ئۆچۈرۈش (&D) - + Empty Trash سىۋەتنى قۇرۇقداش - + Set as wallpaper تەگلىك تەڭشەش @@ -5172,32 +5177,32 @@ dfmplugin_sidebar::SideBarWidget - + Quick access تېزلەتمە زىيارەت - + Partitions رايون - + Network تور - + Tag خەتكۈچ - + Other باشقا - + Unknown Group نامەلۇم گۇرۇپپا @@ -6488,7 +6493,7 @@ dfmplugin_workspace::FileOperatorHelper - + Failed to open %1, which may be moved or renamed %1 ئېچىلمىدى، بۇ ھۆججەت يۆتكىۋېتىلگەن ياكى ئىسمى ئۆزگەرتىۋېتىلگەن بولۇشى مۇمكىن @@ -6599,7 +6604,7 @@ filedialog_core::FileDialog - + Save button ساقلاش diff --git a/translations/dde-file-manager_zh_CN.ts b/translations/dde-file-manager_zh_CN.ts index 24c9a60a0a..bc419ddf89 100644 --- a/translations/dde-file-manager_zh_CN.ts +++ b/translations/dde-file-manager_zh_CN.ts @@ -64,33 +64,33 @@ DockItemDataManager - + The device has been safely removed 设备已被安全移除 - + eject 弹出 - + unmount 卸载 - - + + remove 移除 - + Operation failed 操作失败 - + Device (%1) is busy, cannot %2 now. 设备(%1)正忙,无法%2。 @@ -333,21 +333,21 @@ 无法找到链接目标文件 - - - + + + File has been moved or deleted 文件已被移动或删除 - - + + You do not have permission to access this folder 您没有权限访问该文件夹 - - + + You do not have permission to traverse files in it 您没有权限遍历子文件 @@ -422,7 +422,7 @@ - + Computers in LAN 网络邻居 @@ -889,7 +889,7 @@ - + dde-file-manager dde-file-manager @@ -920,10 +920,10 @@ - + - + Open in new window 在新窗口打开 @@ -934,10 +934,10 @@ - + - + Open in new tab 在新标签中打开 @@ -1397,7 +1397,7 @@ 复制路径 - + Edit address 编辑地址 @@ -2883,259 +2883,264 @@ + Open folder windows in a separate process + 在单独的进程中打开文件夹窗口 + + + Open file: 打开文件: - + Click 单击 - + Double click 双击 - + New window and tab 新窗口和新标签 - + Open from default window: 从默认窗口打开: - - + + Computer 计算机 - - + + Home 主目录 - - + + Desktop 桌面 - - + + Videos 视频 - - + + Music 音乐 - - + + Pictures 图片 - - + + Documents 文档 - - + + Downloads 下载 - + Open in new tab: 从新标签打开: - + Current Directory 当前目录 - + Files and folders 文件和目录 - + Show hidden files 显示隐藏文件 - + Show file extensions 显示文件扩展名 - + Mix sorting of files and folders 文件和文件夹混合排序 - + Workspace 工作区 - + View 视图 - + Default size: 默认大小: - + Extra small 特小 - + Small - + Medium - + Large - + Extra large 特大 - + Tree 树形视图 - + Default view: 默认视图: - + Icon 图标视图 - + List 列表视图 - + Restore default view mode for all directories 所有目录恢复默认视图 - + Restore default view mode 恢复默认视图 - + Thumbnail preview 缩略图预览 - + Compressed file preview 压缩文件预览 - + Text preview 文本预览 - + Document preview 文档预览 - + Image preview 图片预览 - + Video preview 视频预览 - + Music preview 音乐预览 - + The remote environment shows thumbnail previews 远程环境显示缩略图预览 - + Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze 开启缩略图预览可能导致远程目录加载缓慢或操作卡顿 - + Advanced 高级设置 - + Mount 挂载 - + Auto mount 自动挂载 - + Open after auto mount 自动挂载后打开 - + Merge the entries of Samba shared folders 合并显示Samba共享目录入口 - + Switching the entry display may lead to failed mounting 切换入口显示模式可能会导致挂载状态失效 - + Use the file chooser dialog of File Manager 使用文件管理器的文件选择对话框 - + Ask for my confirmation when deleting files 开启普通删除提示 @@ -4509,27 +4514,27 @@ dfmplugin_menu::FileOperatorMenuScenePrivate - + &Open 打开(&O) - + Rena&me 重命名(&M) - + &Delete 删除(&D) - + Empty Trash 清空回收站 - + Set as wallpaper 设置壁纸 @@ -5172,32 +5177,32 @@ dfmplugin_sidebar::SideBarWidget - + Quick access 快捷访问 - + Partitions 分区 - + Network 网络 - + Tag 标记 - + Other 其他 - + Unknown Group 未知组 @@ -6488,7 +6493,7 @@ dfmplugin_workspace::FileOperatorHelper - + Failed to open %1, which may be moved or renamed %1打开失败,该文件可能已移动或重命名 @@ -6599,7 +6604,7 @@ filedialog_core::FileDialog - + Save button 保 存 diff --git a/translations/dde-file-manager_zh_HK.ts b/translations/dde-file-manager_zh_HK.ts index 2a83fb0eb8..681adc9bf8 100644 --- a/translations/dde-file-manager_zh_HK.ts +++ b/translations/dde-file-manager_zh_HK.ts @@ -64,33 +64,33 @@ DockItemDataManager - + The device has been safely removed 設備已被安全移除 - + eject 彈出 - + unmount 卸載 - - + + remove 移除 - + Operation failed 操作失敗 - + Device (%1) is busy, cannot %2 now. 設備(%1)正忙,無法%2。 @@ -333,21 +333,21 @@ 無法找到鏈接目標文件 - - - + + + File has been moved or deleted 文件已被移動或刪除 - - + + You do not have permission to access this folder 您沒有權限訪問該文件夾 - - + + You do not have permission to traverse files in it 您沒有權限遍歷子文件 @@ -422,7 +422,7 @@ - + Computers in LAN 網絡鄰居 @@ -889,7 +889,7 @@ - + dde-file-manager dde-file-manager @@ -920,10 +920,10 @@ - + - + Open in new window 在新窗口打開 @@ -934,10 +934,10 @@ - + - + Open in new tab 在新標籤中打開 @@ -1397,7 +1397,7 @@ 複製路徑 - + Edit address 編輯地址 @@ -2883,259 +2883,264 @@ + Open folder windows in a separate process + + + + Open file: 打開文件: - + Click 單擊 - + Double click 雙擊 - + New window and tab 新窗口和新標籤 - + Open from default window: 從默認窗口打開: - - + + Computer 計算機 - - + + Home 主目錄 - - + + Desktop 桌 面 - - + + Videos 影片 - - + + Music 音樂 - - + + Pictures 圖片 - - + + Documents 文檔 - - + + Downloads 下載 - + Open in new tab: 從新標籤打開: - + Current Directory 當前目錄 - + Files and folders 文件和目錄 - + Show hidden files 顯示隱藏文件 - + Show file extensions 顯示文件擴展名 - + Mix sorting of files and folders 文件和文件夾混合排序 - + Workspace 工作區 - + View 視圖 - + Default size: 默認大小: - + Extra small 極小 - + Small - + Medium - + Large - + Extra large 極大 - + Tree 樹形視圖 - + Default view: 默認視圖: - + Icon 圖標視圖 - + List 列表視圖 - + Restore default view mode for all directories 所有目錄恢復默認視圖 - + Restore default view mode 恢復默認視圖 - + Thumbnail preview 縮略圖預覽 - + Compressed file preview 壓縮文件預覽 - + Text preview 文本預覽 - + Document preview 文檔預覽 - + Image preview 圖片預覽 - + Video preview 影片預覽 - + Music preview 音樂預覽 - + The remote environment shows thumbnail previews 遠程環境顯示縮略圖預覽 - + Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze 開啟縮略圖預覽可能導致遠程目錄加載緩慢或操作卡頓 - + Advanced 高級設置 - + Mount 掛載 - + Auto mount 自動掛載 - + Open after auto mount 自動掛載後打開 - + Merge the entries of Samba shared folders 合併顯示Samba共享目錄入口 - + Switching the entry display may lead to failed mounting 切換入口顯示模式可能會導致掛載狀態失效 - + Use the file chooser dialog of File Manager 使用檔案管理員的文件選擇對話框 - + Ask for my confirmation when deleting files 開啟普通刪除提示 @@ -4509,27 +4514,27 @@ dfmplugin_menu::FileOperatorMenuScenePrivate - + &Open 打開(&O) - + Rena&me 重命名(&M) - + &Delete 刪除(&D) - + Empty Trash 清空回收站 - + Set as wallpaper 設置壁紙 @@ -5172,32 +5177,32 @@ dfmplugin_sidebar::SideBarWidget - + Quick access 快捷訪問 - + Partitions 分區 - + Network 網絡 - + Tag 標記 - + Other 其他 - + Unknown Group 未知組 @@ -6488,7 +6493,7 @@ dfmplugin_workspace::FileOperatorHelper - + Failed to open %1, which may be moved or renamed %1打開失敗,該文件可能已移動或重命名 @@ -6599,7 +6604,7 @@ filedialog_core::FileDialog - + Save button 保 存 diff --git a/translations/dde-file-manager_zh_TW.ts b/translations/dde-file-manager_zh_TW.ts index f535324738..358eba315f 100644 --- a/translations/dde-file-manager_zh_TW.ts +++ b/translations/dde-file-manager_zh_TW.ts @@ -64,33 +64,33 @@ DockItemDataManager - + The device has been safely removed 裝置已被安全移除 - + eject 彈出 - + unmount 移除 - - + + remove 移除 - + Operation failed 操作失敗 - + Device (%1) is busy, cannot %2 now. 裝置(%1)正忙,無法%2。 @@ -333,21 +333,21 @@ 無法找到連結目標文件 - - - + + + File has been moved or deleted 文件已被移動或刪除 - - + + You do not have permission to access this folder 您沒有權限訪問該資料夾 - - + + You do not have permission to traverse files in it 您沒有權限遍歷子文件 @@ -422,7 +422,7 @@ - + Computers in LAN 網路鄰居 @@ -889,7 +889,7 @@ - + dde-file-manager dde-file-manager @@ -920,10 +920,10 @@ - + - + Open in new window 在新視窗打開 @@ -934,10 +934,10 @@ - + - + Open in new tab 在新標籤中打開 @@ -1397,7 +1397,7 @@ 複製路徑 - + Edit address 編輯地址 @@ -2883,259 +2883,264 @@ + Open folder windows in a separate process + + + + Open file: 文件打開方式: - + Click 單擊 - + Double click 雙擊 - + New window and tab 新視窗與新分頁 - + Open from default window: 視窗預設打開: - - + + Computer 電腦 - - + + Home 主資料夾 - - + + Desktop 顯示桌面 - - + + Videos 我的影片 - - + + Music 音樂 - - + + Pictures 圖片 - - + + Documents 文件 - - + + Downloads 下載 - + Open in new tab: 從新分頁打開: - + Current Directory 目前目錄 - + Files and folders 文件和目錄 - + Show hidden files 顯示隱藏檔案 - + Show file extensions 顯示文件副檔名 - + Mix sorting of files and folders 文件和資料夾混合排序 - + Workspace 工作區 - + View 檢視 - + Default size: 預設大小: - + Extra small 最小 - + Small - + Medium - + Large - + Extra large 最大 - + Tree 樹形檢視 - + Default view: 預設顯示 - + Icon 圖示顯示 - + List 列表顯示 - + Restore default view mode for all directories 所有目錄復原預設檢視 - + Restore default view mode 復原預設檢視 - + Thumbnail preview 縮圖預覽 - + Compressed file preview 壓縮檔案預覽 - + Text preview 預覽文字 - + Document preview 預覽文件 - + Image preview 預覽圖片 - + Video preview 預覽影片 - + Music preview 音樂預覽 - + The remote environment shows thumbnail previews 遠端環境顯示縮圖預覽 - + Turning on the thumbnail preview may cause the remote directory to load slowly or the operation to freeze 開啟縮圖預覽可能導致遠端目錄載入緩慢或操作卡頓 - + Advanced 進階 - + Mount 掛載 - + Auto mount 自動掛載 - + Open after auto mount 自動掛載後開啟 - + Merge the entries of Samba shared folders 合併顯示Samba共享目錄入口 - + Switching the entry display may lead to failed mounting 切換入口顯示模式可能會導致掛載狀態失效 - + Use the file chooser dialog of File Manager 使用文件管理器的選擇文件對話框 - + Ask for my confirmation when deleting files 打開普通刪除提示 @@ -4509,27 +4514,27 @@ dfmplugin_menu::FileOperatorMenuScenePrivate - + &Open 打開(&O) - + Rena&me 重新命名(&M) - + &Delete 刪除(&D) - + Empty Trash 清空回收站 - + Set as wallpaper 設定桌布 @@ -5172,32 +5177,32 @@ dfmplugin_sidebar::SideBarWidget - + Quick access 快捷訪問 - + Partitions 分區 - + Network 網路 - + Tag 標記 - + Other 其他 - + Unknown Group 未知組 @@ -6488,7 +6493,7 @@ dfmplugin_workspace::FileOperatorHelper - + Failed to open %1, which may be moved or renamed %1打開失敗,該文件可能已移動或重新命名 @@ -6599,7 +6604,7 @@ filedialog_core::FileDialog - + Save button 儲 存