include:
- https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux.yml
- https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd.yml
+ - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/windows.yml
'frameworks/kwindowsystem': '@stable'
'frameworks/kactivities': '@stable'
'frameworks/kdoctools': '@stable'
- 'frameworks/baloo': '@stable'
'frameworks/kwindowsystem': '@stable'
'frameworks/kfilemetadata': '@stable'
- 'libraries/baloo-widgets': '@same'
'libraries/kuserfeedback': '@stable'
'libraries/phonon': '@stable'
+
+- 'on': ['Linux', 'FreeBSD']
+ 'require':
+ 'frameworks/baloo': '@stable'
+ 'libraries/baloo-widgets': '@same'
+
# KDE Application Version, managed by release script
set (RELEASE_SERVICE_VERSION_MAJOR "22")
-set (RELEASE_SERVICE_VERSION_MINOR "04")
-set (RELEASE_SERVICE_VERSION_MICRO "0")
+set (RELEASE_SERVICE_VERSION_MINOR "07")
+set (RELEASE_SERVICE_VERSION_MICRO "70")
set (RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}")
project(Dolphin VERSION ${RELEASE_SERVICE_VERSION})
Notifications
Crash
WindowSystem
+ WidgetsAddons
)
-find_package(KUserFeedback 1.0.0)
+find_package(KUserFeedback 1.2.0)
set_package_properties(KUserFeedback
PROPERTIES TYPE OPTIONAL
PURPOSE "Used for submission of telemetry data"
find_package(Phonon4Qt${QT_MAJOR_VERSION} CONFIG REQUIRED)
-find_package(PackageKitQt5)
-set_package_properties(PackageKitQt5
+find_package(PackageKitQt${QT_MAJOR_VERSION})
+set_package_properties(PackageKitQt${QT_MAJOR_VERSION}
PROPERTIES DESCRIPTION "Software Manager integration"
TYPE OPTIONAL
PURPOSE "Used in the service menu installer"
)
-if(PackageKitQt5_FOUND)
+if(PackageKitQt${QT_MAJOR_VERSION}_FOUND)
set(HAVE_PACKAGEKIT TRUE)
endif()
target_sources(dolphinprivate PRIVATE
kitemviews/kfileitemlistview.cpp
kitemviews/kfileitemlistwidget.cpp
+ kitemviews/kfileitemlisttostring.cpp
kitemviews/kfileitemmodel.cpp
kitemviews/kfileitemmodelrolesupdater.cpp
kitemviews/kitemlistcontainer.cpp
kitemviews/private/kitemlistviewanimation.cpp
kitemviews/private/kitemlistviewlayouter.cpp
kitemviews/private/kpixmapmodifier.cpp
- kitemviews/private/ktwofingerswipe.cpp
- kitemviews/private/ktwofingertap.cpp
settings/applyviewpropsjob.cpp
settings/viewmodes/viewmodesettings.cpp
settings/viewpropertiesdialog.cpp
KF5::NewStuff
KF5::Parts
KF5::WindowSystem
+ KF5::WidgetsAddons
)
if(HAVE_BALOO)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphin_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel)
##########################################
-configure_file(dolphinpart.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.desktop @ONLY)
+configure_file(dolphinpart.json.in ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.json @ONLY)
add_library(dolphinpart MODULE)
dolphinpart.qrc
)
-kcoreaddons_desktop_to_json(dolphinpart ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.desktop)
-
target_link_libraries(dolphinpart
dolphinprivate
)
install(TARGETS dolphinpart DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/parts)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR})
-
##########################################
add_library(dolphinstatic STATIC)
KF5::KCMUtils
KF5::DBusAddons
KF5::Notifications
- Phonon::phonon4qt5
+ Phonon::phonon4qt${QT_MAJOR_VERSION}
)
if (HAVE_KACTIVITIES)
if(NOT WIN32)
# The settings are still accessible from the hamburger menu
- add_library(kcm_dolphinviewmodes)
- kcoreaddons_desktop_to_json(kcm_dolphinviewmodes settings/kcm/kcmdolphinviewmodes.desktop)
- add_library(kcm_dolphinnavigation)
- kcoreaddons_desktop_to_json(kcm_dolphinnavigation settings/kcm/kcmdolphinnavigation.desktop)
- add_library(kcm_dolphingeneral)
- kcoreaddons_desktop_to_json(kcm_dolphingeneral settings/kcm/kcmdolphingeneral.desktop)
+ add_library(kcm_dolphinviewmodes MODULE)
+ add_library(kcm_dolphinnavigation MODULE)
+ add_library(kcm_dolphingeneral MODULE)
target_sources(kcm_dolphinviewmodes PRIVATE
settings/kcm/kcmdolphinviewmodes.cpp
target_link_libraries(kcm_dolphingeneral dolphinprivate)
install( FILES org.kde.dolphin.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} )
- install( FILES settings/kcm/kcmdolphinviewmodes.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR} )
- install( FILES settings/kcm/kcmdolphinnavigation.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR} )
- install( FILES settings/kcm/kcmdolphingeneral.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR} )
install(TARGETS kcm_dolphinviewmodes DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms )
install(TARGETS kcm_dolphinnavigation DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms )
#include "dolphinplacesmodelsingleton.h"
#include "dolphinremoveaction.h"
#include "dolphinviewcontainer.h"
+#include "global.h"
#include "trash/dolphintrash.h"
#include "views/dolphinview.h"
#include "views/viewmodecontroller.h"
#include <QMimeDatabase>
DolphinContextMenu::DolphinContextMenu(DolphinMainWindow* parent,
- const QPoint& pos,
const KFileItem& fileInfo,
+ const KFileItemList &selectedItems,
const QUrl& baseUrl,
KFileItemActions *fileItemActions) :
QMenu(parent),
- m_pos(pos),
m_mainWindow(parent),
m_fileInfo(fileInfo),
m_baseUrl(baseUrl),
m_baseFileItem(nullptr),
- m_selectedItems(),
+ m_selectedItems(selectedItems),
m_selectedItemsProperties(nullptr),
m_context(NoContext),
m_copyToMenu(parent),
- m_customActions(),
- m_command(None),
m_removeAction(nullptr),
m_fileItemActions(fileItemActions)
{
- // The context menu either accesses the URLs of the selected items
- // or the items itself. To increase the performance both lists are cached.
- const DolphinView* view = m_mainWindow->activeViewContainer()->view();
- m_selectedItems = view->selectedItems();
-
QApplication::instance()->installEventFilter(this);
- static_cast<KHamburgerMenu *>(m_mainWindow->actionCollection()->
- action(QStringLiteral("hamburger_menu")))->addToMenu(this);
+ addAllActions();
}
DolphinContextMenu::~DolphinContextMenu()
m_selectedItemsProperties = nullptr;
}
-void DolphinContextMenu::setCustomActions(const QList<QAction*>& actions)
+void DolphinContextMenu::addAllActions()
{
- m_customActions = actions;
-}
+ static_cast<KHamburgerMenu *>(m_mainWindow->actionCollection()->
+ action(QStringLiteral("hamburger_menu")))->addToMenu(this);
-DolphinContextMenu::Command DolphinContextMenu::open()
-{
// get the context information
const auto scheme = m_baseUrl.scheme();
if (scheme == QLatin1String("trash")) {
// open the corresponding popup for the context
if (m_context & TrashContext) {
if (m_context & ItemContext) {
- openTrashItemContextMenu();
+ addTrashItemContextMenu();
} else {
- openTrashContextMenu();
+ addTrashContextMenu();
}
} else if (m_context & ItemContext) {
- openItemContextMenu();
+ addItemContextMenu();
} else {
- openViewportContextMenu();
+ addViewportContextMenu();
}
-
- return m_command;
}
bool DolphinContextMenu::eventFilter(QObject* object, QEvent* event)
return false;
}
-void DolphinContextMenu::openTrashContextMenu()
+void DolphinContextMenu::addTrashContextMenu()
{
Q_ASSERT(m_context & TrashContext);
- QAction* emptyTrashAction = new QAction(QIcon::fromTheme(QStringLiteral("trash-empty")), i18nc("@action:inmenu", "Empty Trash"), this);
+ QAction *emptyTrashAction = addAction(QIcon::fromTheme(QStringLiteral("trash-empty")), i18nc("@action:inmenu", "Empty Trash"), [this](){
+ Trash::empty(m_mainWindow);
+ });
emptyTrashAction->setEnabled(!Trash::isEmpty());
- addAction(emptyTrashAction);
-
- addCustomActions();
QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
addAction(propertiesAction);
-
- if (exec(m_pos) == emptyTrashAction) {
- Trash::empty(m_mainWindow);
- }
}
-void DolphinContextMenu::openTrashItemContextMenu()
+void DolphinContextMenu::addTrashItemContextMenu()
{
Q_ASSERT(m_context & TrashContext);
Q_ASSERT(m_context & ItemContext);
- QAction* restoreAction = new QAction(QIcon::fromTheme("restoration"), i18nc("@action:inmenu", "Restore"), m_mainWindow);
- addAction(restoreAction);
-
- QAction* deleteAction = m_mainWindow->actionCollection()->action(KStandardAction::name(KStandardAction::DeleteFile));
- addAction(deleteAction);
-
- QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
- addAction(propertiesAction);
-
- if (exec(m_pos) == restoreAction) {
+ addAction(QIcon::fromTheme("restoration"), i18nc("@action:inmenu", "Restore"), [this](){
QList<QUrl> selectedUrls;
selectedUrls.reserve(m_selectedItems.count());
for (const KFileItem &item : qAsConst(m_selectedItems)) {
KIO::RestoreJob *job = KIO::restoreFromTrash(selectedUrls);
KJobWidgets::setWindow(job, m_mainWindow);
job->uiDelegate()->setAutoErrorHandlingEnabled(true);
- }
+ });
+
+ QAction* deleteAction = m_mainWindow->actionCollection()->action(KStandardAction::name(KStandardAction::DeleteFile));
+ addAction(deleteAction);
+
+ QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
+ addAction(propertiesAction);
}
void DolphinContextMenu::addDirectoryItemContextMenu()
// set up 'Create New' menu
DolphinNewFileMenu* newFileMenu = new DolphinNewFileMenu(m_mainWindow->actionCollection(), m_mainWindow);
- const DolphinView* view = m_mainWindow->activeViewContainer()->view();
newFileMenu->checkUpToDate();
newFileMenu->setPopupFiles(QList<QUrl>() << m_fileInfo.url());
newFileMenu->setEnabled(selectedItemsProps.supportsWriting());
addSeparator();
}
-void DolphinContextMenu::openItemContextMenu()
+void DolphinContextMenu::addItemContextMenu()
{
Q_ASSERT(!m_fileInfo.isNull());
- QAction* openParentAction = nullptr;
- QAction* openParentInNewWindowAction = nullptr;
- QAction* openParentInNewTabAction = nullptr;
const KFileItemListProperties& selectedItemsProps = selectedItemsProperties();
-
m_fileItemActions->setItemListProperties(selectedItemsProps);
if (m_selectedItems.count() == 1) {
} else if (m_context & TimelineContext || m_context & SearchContext) {
addOpenWithActions();
- openParentAction = new QAction(QIcon::fromTheme(QStringLiteral("document-open-folder")),
+ addAction(QIcon::fromTheme(QStringLiteral("document-open-folder")),
i18nc("@action:inmenu",
"Open Path"),
- this);
- addAction(openParentAction);
+ [this](){
+ m_mainWindow->changeUrl(KIO::upUrl(m_fileInfo.url()));
+ m_mainWindow->activeViewContainer()->view()->markUrlsAsSelected({m_fileInfo.url()});
+ m_mainWindow->activeViewContainer()->view()->markUrlAsCurrent(m_fileInfo.url());
+ });
- openParentInNewWindowAction = new QAction(QIcon::fromTheme(QStringLiteral("window-new")),
+ addAction(QIcon::fromTheme(QStringLiteral("window-new")),
i18nc("@action:inmenu",
"Open Path in New Window"),
- this);
- addAction(openParentInNewWindowAction);
+ [this](){
+ Dolphin::openNewWindow({m_fileInfo.url()}, m_mainWindow, Dolphin::OpenNewWindowFlag::Select);
+ });
- openParentInNewTabAction = new QAction(QIcon::fromTheme(QStringLiteral("tab-new")),
+ addAction(QIcon::fromTheme(QStringLiteral("tab-new")),
i18nc("@action:inmenu",
"Open Path in New Tab"),
- this);
- addAction(openParentInNewTabAction);
+ [this](){
+ m_mainWindow->openNewTab(KIO::upUrl(m_fileInfo.url()));
+ });
addSeparator();
} else {
addSeparator();
QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
addAction(propertiesAction);
-
- QAction* activatedAction = exec(m_pos);
- if (activatedAction) {
- if (activatedAction == openParentAction) {
- m_command = OpenParentFolder;
- } else if (activatedAction == openParentInNewWindowAction) {
- m_command = OpenParentFolderInNewWindow;
- } else if (activatedAction == openParentInNewTabAction) {
- m_command = OpenParentFolderInNewTab;
- }
- }
}
-void DolphinContextMenu::openViewportContextMenu()
+void DolphinContextMenu::addViewportContextMenu()
{
- const DolphinView* view = m_mainWindow->activeViewContainer()->view();
-
const KFileItemListProperties baseUrlProperties(KFileItemList() << baseFileItem());
m_fileItemActions->setItemListProperties(baseUrlProperties);
}
addAdditionalActions(baseUrlProperties);
- addCustomActions();
addSeparator();
QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
addAction(propertiesAction);
-
- exec(m_pos);
}
void DolphinContextMenu::insertDefaultItemActions(const KFileItemListProperties& properties)
m_fileItemActions->insertOpenWithActionsTo(nullptr, this, QStringList{qApp->desktopFileName()});
}
-void DolphinContextMenu::addCustomActions()
-{
- addActions(m_customActions);
-}
-
void DolphinContextMenu::addAdditionalActions(const KFileItemListProperties &props)
{
addSeparator();
Q_OBJECT
public:
- enum Command
- {
- None,
- OpenParentFolder,
- OpenParentFolderInNewWindow,
- OpenParentFolderInNewTab
- };
-
/**
* @parent Pointer to the main window the context menu
* belongs to.
- * @pos Position in screen coordinates.
* @fileInfo Pointer to the file item the context menu
* is applied. If 0 is passed, the context menu
* is above the viewport.
+ * @selectedItems The selected items for which the context menu
+ * is opened. This list generally includes \a fileInfo.
* @baseUrl Base URL of the viewport where the context menu
* should be opened.
*/
DolphinContextMenu(DolphinMainWindow* parent,
- const QPoint& pos,
const KFileItem& fileInfo,
+ const KFileItemList &selectedItems,
const QUrl& baseUrl,
KFileItemActions *fileItemActions);
~DolphinContextMenu() override;
- void setCustomActions(const QList<QAction*>& actions);
-
- /**
- * Opens the context menu model and returns the requested
- * command, that should be triggered by the caller. If
- * Command::None has been returned, either the context-menu
- * had been closed without executing an action or an
- * already available action from the main-window has been
- * executed.
- */
- Command open();
-
protected:
bool eventFilter(QObject* object, QEvent* event) override;
private:
- void openTrashContextMenu();
- void openTrashItemContextMenu();
- void openItemContextMenu();
- void openViewportContextMenu();
-
- void insertDefaultItemActions(const KFileItemListProperties&);
-
/**
- * Adds the "Show menubar" action to the menu if the
- * menubar is hidden.
+ * Adds all the actions and menus to this menu based on all given information.
+ * This method calls the other helper methods for adding actions
+ * based on the context given in the constructor.
*/
- void addShowMenuBarAction();
+ void addAllActions();
+
+ void addTrashContextMenu();
+ void addTrashItemContextMenu();
+ void addItemContextMenu();
+ void addViewportContextMenu();
+
+ void insertDefaultItemActions(const KFileItemListProperties&);
bool placeExists(const QUrl& url) const;
*/
void addOpenWithActions();
- /**
- * Adds custom actions e.g. like the "[x] Expandable Folders"-action
- * provided in the details view.
- */
- void addCustomActions();
-
-private:
/**
* Add services, custom actions, plugins and version control items to the menu
*/
void addAdditionalActions(const KFileItemListProperties &props);
+private:
struct Entry
{
int type;
SearchContext = 8,
};
- QPoint m_pos;
DolphinMainWindow* m_mainWindow;
KFileItem m_fileInfo;
int m_context;
KFileCopyToMenu m_copyToMenu;
- QList<QAction*> m_customActions;
-
- Command m_command;
DolphinRemoveAction* m_removeAction; // Action that represents either 'Move To Trash' or 'Delete'
void addDirectoryItemContextMenu();
}
}
+QAction *DolphinMainWindow::urlNavigatorHistoryAction(const KUrlNavigator *urlNavigator, int historyIndex, QObject *parent)
+{
+ const QUrl url = urlNavigator->locationUrl(historyIndex);
+
+ QString text = url.toDisplayString(QUrl::PreferLocalFile);
+
+ if (!urlNavigator->showFullPath()) {
+ const KFilePlacesModel *placesModel = DolphinPlacesModelSingleton::instance().placesModel();
+
+ const QModelIndex closestIdx = placesModel->closestItem(url);
+ if (closestIdx.isValid()) {
+ const QUrl placeUrl = placesModel->url(closestIdx);
+
+ text = placesModel->text(closestIdx);
+
+ QString pathInsidePlace = url.path().mid(placeUrl.path().length());
+
+ if (!pathInsidePlace.isEmpty() && !pathInsidePlace.startsWith(QLatin1Char('/'))) {
+ pathInsidePlace.prepend(QLatin1Char('/'));
+ }
+
+ if (pathInsidePlace != QLatin1Char('/')) {
+ text.append(pathInsidePlace);
+ }
+ }
+ }
+
+ QAction *action = new QAction(QIcon::fromTheme(KIO::iconNameForUrl(url)), text, parent);
+ action->setData(historyIndex);
+ return action;
+}
+
void DolphinMainWindow::slotAboutToShowBackPopupMenu()
{
const KUrlNavigator *urlNavigator = m_activeViewContainer->urlNavigatorInternalWithHistory();
int entries = 0;
m_backAction->menu()->clear();
for (int i = urlNavigator->historyIndex() + 1; i < urlNavigator->historySize() && entries < MaxNumberOfNavigationentries; ++i, ++entries) {
- QAction* action = new QAction(urlNavigator->locationUrl(i).toDisplayString(QUrl::PreferLocalFile), m_backAction->menu());
+ QAction *action = urlNavigatorHistoryAction(urlNavigator, i, m_backAction->menu());
action->setData(i);
m_backAction->menu()->addAction(action);
}
int entries = 0;
m_forwardAction->menu()->clear();
for (int i = urlNavigator->historyIndex() - 1; i >= 0 && entries < MaxNumberOfNavigationentries; --i, ++entries) {
- QAction* action = new QAction(urlNavigator->locationUrl(i).toDisplayString(QUrl::PreferLocalFile), m_forwardAction->menu());
+ QAction *action = urlNavigatorHistoryAction(urlNavigator, i, m_forwardAction->menu());
action->setData(i);
m_forwardAction->menu()->addAction(action);
}
void DolphinMainWindow::openContextMenu(const QPoint& pos,
const KFileItem& item,
- const QUrl& url,
- const QList<QAction*>& customActions)
+ const KFileItemList &selectedItems,
+ const QUrl& url)
{
- QPointer<DolphinContextMenu> contextMenu = new DolphinContextMenu(this, pos, item, url, &m_fileItemActions);
- contextMenu.data()->setCustomActions(customActions);
- const DolphinContextMenu::Command command = contextMenu.data()->open();
-
- switch (command) {
- case DolphinContextMenu::OpenParentFolder:
- changeUrl(KIO::upUrl(item.url()));
- m_activeViewContainer->view()->markUrlsAsSelected({item.url()});
- m_activeViewContainer->view()->markUrlAsCurrent(item.url());
- break;
-
- case DolphinContextMenu::OpenParentFolderInNewWindow:
- Dolphin::openNewWindow({item.url()}, this, Dolphin::OpenNewWindowFlag::Select);
- break;
-
- case DolphinContextMenu::OpenParentFolderInNewTab:
- openNewTab(KIO::upUrl(item.url()));
- break;
-
- case DolphinContextMenu::None:
- default:
- break;
- }
+ QPointer<DolphinContextMenu> contextMenu = new DolphinContextMenu(this, item, selectedItems, url, &m_fileItemActions);
+ contextMenu.data()->exec(pos);
// Delete the menu, unless it has been deleted in its own nested event loop already.
if (contextMenu) {
* @pos Position in screen coordinates.
* @item File item context. If item is null, the context menu
* should be applied to \a url.
+ * @selectedItems The selected items for which the context menu
+ * is opened. This list generally includes \a item.
* @url URL which contains \a item.
- * @customActions Actions that should be added to the context menu,
- * if the file item is null.
*/
- void openContextMenu(const QPoint& pos,
- const KFileItem& item,
- const QUrl& url,
- const QList<QAction*>& customActions);
+ void openContextMenu(const QPoint& pos, const KFileItem& item, const KFileItemList &selectedItems, const QUrl& url);
/**
* Updates the menu that is by default at the right end of the toolbar.
*/
bool addHamburgerMenuToToolbar();
+ /** Creates an action representing an item in the URL navigator history */
+ static QAction *urlNavigatorHistoryAction(const KUrlNavigator *urlNavigator, int historyIndex, QObject *parent = nullptr);
+
private:
/**
* Implements a custom error handling for the undo manager. This
void DolphinPart::slotOpenContextMenu(const QPoint& pos,
const KFileItem& _item,
- const QUrl &,
- const QList<QAction*>& customActions)
+ const KFileItemList &selectedItems,
+ const QUrl &)
{
KParts::BrowserExtension::PopupFlags popupFlags = KParts::BrowserExtension::DefaultPopupItems
| KParts::BrowserExtension::ShowProperties
item.setUrl(url()); // ensure we use the view url, not the canonical path (#213799)
}
- // TODO: We should change the signature of the slots (and signals) for being able
- // to tell for which items we want a popup.
KFileItemList items;
- if (m_view->selectedItems().isEmpty()) {
+ if (selectedItems.isEmpty()) {
items.append(item);
} else {
- items = m_view->selectedItems();
+ items = selectedItems;
}
KFileItemListProperties capabilities(items);
KParts::BrowserExtension::ActionGroupMap actionGroups;
QList<QAction *> editActions;
editActions += m_view->versionControlActions(m_view->selectedItems());
- editActions += customActions;
if (!_item.isNull()) { // only for context menu on one or more items
const bool supportsMoving = capabilities.supportsMoving();
* @pos Position in screen coordinates.
* @item File item context. If item is null, the context menu
* should be applied to \a url.
+ * @selectedItems The selected items for which the context menu
+ * is opened. This list generally includes \a item.
* @url URL which contains \a item.
- * @customActions Actions that should be added to the context menu,
- * if the file item is null.
*/
- void slotOpenContextMenu(const QPoint& pos,
- const KFileItem& item,
- const QUrl& url,
- const QList<QAction*>& customActions);
+ void slotOpenContextMenu(const QPoint &pos, const KFileItem &_item, const KFileItemList &selectedItems, const QUrl &);
/**
* Informs the host that we are opening \a url (e.g. after a redirection
--- /dev/null
+{
+ "KPlugin": {
+ "Icon": "view-list-icons",
+ "Id": "dolphinpart",
+ "InitialPreference": 7,
+ "License": "LGPL v2+",
+ "MimeTypes": [
+ "inode/directory"
+ ],
+ "Name": "Dolphin View",
+ "Name[ar]": "عرض دولفين",
+ "Name[ast]": "Vista de Dolphin",
+ "Name[az]": "Dolphin görünüşü",
+ "Name[ca@valencia]": "Vista de Dolphin",
+ "Name[ca]": "Vista del Dolphin",
+ "Name[cs]": "Pohled Dolphin",
+ "Name[da]": "Dolphin-visning",
+ "Name[de]": "Dolphin-Ansicht",
+ "Name[el]": "Dolphin View",
+ "Name[en_GB]": "Dolphin View",
+ "Name[es]": "Vista de Dolphin",
+ "Name[et]": "Dolphini vaade",
+ "Name[eu]": "Dolphin ikuspegia",
+ "Name[fi]": "Dolphin-näkymä",
+ "Name[fr]": "Vue de Dolphin",
+ "Name[gl]": "Vista de Dolphin",
+ "Name[hi]": "डॉल्फ़िन दृश्य",
+ "Name[hu]": "Dolphin nézet",
+ "Name[ia]": "Vista de Dolphin",
+ "Name[id]": "Tampilan Dolphin",
+ "Name[is]": "Dolphin-sýn",
+ "Name[it]": "Vista di Dolphin",
+ "Name[ja]": "Dolphin ビュー",
+ "Name[ko]": "Dolphin 보기",
+ "Name[lt]": "Dolphin rodinys",
+ "Name[lv]": "Dolphin skats",
+ "Name[ml]": "ഡോള്ഫിന് അവതരണരീതി",
+ "Name[my]": "လင်းပိုင် မြင်ကွင်း",
+ "Name[nb]": "Dolphin visning",
+ "Name[nl]": "Dolphin-weergave",
+ "Name[nn]": "Dolphin-vising",
+ "Name[pa]": "ਡਾਲਫਿਨ ਝਲਕ",
+ "Name[pl]": "Widok Dolphina",
+ "Name[pt]": "Área do Dolphin",
+ "Name[pt_BR]": "Visualização do Dolphin",
+ "Name[ro]": "Dolphin – Vizualizare",
+ "Name[ru]": "Представление Dolphin",
+ "Name[se]": "Dolphinčájeheapmi",
+ "Name[sk]": "Dolphin pohľad",
+ "Name[sl]": "Dolphin - pogled",
+ "Name[sr@ijekavian]": "Делфинов приказ",
+ "Name[sr@ijekavianlatin]": "Dolphinov prikaz",
+ "Name[sr@latin]": "Dolphinov prikaz",
+ "Name[sr]": "Делфинов приказ",
+ "Name[sv]": "Vy i Dolphin",
+ "Name[ta]": "டால்பின் காட்சிமுறை",
+ "Name[tr]": "Dolphin Görünümü",
+ "Name[uk]": "Перегляд Dolphin",
+ "Name[vi]": "Khung xem Dolphin",
+ "Name[x-test]": "xxDolphin Viewxx",
+ "Name[zh_CN]": "Dolphin 视图",
+ "Name[zh_TW]": "Dolphin 檢視",
+ "ServiceTypes": [
+ "KParts/ReadOnlyPart",
+ "Browser/View"
+ ],
+ "Version": "@DOLPHIN_VERSION@"
+ },
+ "MimeType": "inode/directory;",
+ "X-KDE-BrowserView-Built-Into": "konqueror",
+ "X-KDE-BrowserView-HideFromMenus": true
+}
--- /dev/null
+/*
+ This file is part of the KDE project
+ SPDX-FileCopyrightText: 2022 Felix Ernst <felixernst@zohomail.eu>
+
+ SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
+*/
+
+#include "kfileitemlisttostring.h"
+
+#include <KFileItem>
+#include <KFileItemListProperties>
+#include <KLocalizedString>
+
+#include <QFontMetrics>
+#include <QString>
+
+QString fileItemListToString(KFileItemList items, int maximumTextWidth, QFontMetrics fontMetrics, ItemsState itemsState)
+{
+ QString text;
+ switch (items.count()) {
+ case 1:
+ text = i18nc("Textual representation of a file. %1 is the name of the file/folder.",
+ "\"%1\"", items.first().name());
+ break;
+ case 2:
+ text = i18nc("Textual representation of two files. %1 and %2 are names of files/folders.",
+ "\"%1\" and \"%2\"", items.first().name(), items.last().name());
+ break;
+ case 3:
+ text = i18nc("Textual representation of three files. %1, %2 and %3 are names of files/folders.",
+ "\"%1\", \"%2\" and \"%3\"",
+ items.first().name(), items.at(1).name(), items.last().name());
+ break;
+ case 4:
+ text = i18nc("Textual representation of four files. %1, %2, %3 and %4 are names of files/folders.",
+ "\"%1\", \"%2\", \"%3\" and \"%4\"",
+ items.first().name(), items.at(1).name(), items.at(2).name(), items.last().name());
+ break;
+ case 5:
+ text = i18nc("Textual representation of five files. %1, %2, %3, %4 and %5 are names of files/folders.",
+ "\"%1\", \"%2\", \"%3\", \"%4\" and \"%5\"",
+ items.first().name(), items.at(1).name(), items.at(2).name(), items.at(3).name(), items.last().name());
+ break;
+ default:
+ text = QString();
+ break;
+ }
+
+ // At some point the added clarity from the text starts being less important than the text width.
+ if (!text.isEmpty() && fontMetrics.horizontalAdvance(text) <= maximumTextWidth) {
+ return text;
+ }
+
+ const KFileItemListProperties properties(items);
+ if (itemsState == Selected) {
+ if (properties.isFile()) {
+ text = i18ncp("Textual representation of selected files. %1 is the number of files.",
+ "One Selected File", "%1 Selected Files", items.count());
+ } else if (properties.isDirectory()) {
+ text = i18ncp("Textual representation of selected folders. %1 is the number of folders.",
+ "One Selected Folder", "%1 Selected Folders", items.count());
+ } else {
+ text = i18ncp("Textual representation of selected fileitems. %1 is the number of files/folders.",
+ "One Selected Item", "%1 Selected Items", items.count());
+ }
+
+ if (fontMetrics.horizontalAdvance(text) <= maximumTextWidth) {
+ return text;
+ }
+ }
+
+ if (properties.isFile()) {
+ return i18ncp("Textual representation of files. %1 is the number of files.",
+ "One File", "%1 Files", items.count());
+ } else if (properties.isDirectory()) {
+ return i18ncp("Textual representation of folders. %1 is the number of folders.",
+ "One Folder", "%1 Folders", items.count());
+ } else {
+ return i18ncp("Textual representation of fileitems. %1 is the number of files/folders.",
+ "One Item", "%1 Items", items.count());
+ }
+}
--- /dev/null
+/*
+ This file is part of the KDE project
+ SPDX-FileCopyrightText: 2022 Felix Ernst <felixernst@zohomail.eu>
+
+ SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
+*/
+
+#ifndef KFILEITEMLISTTOSTRING_H
+#define KFILEITEMLISTTOSTRING_H
+
+class KFileItemList;
+class QFontMetrics;
+class QString;
+
+enum ItemsState {
+ None,
+ Selected
+};
+
+/**
+ * @brief Generates a textual representation of the given list of KFileItems.
+ *
+ * This method is especially useful to be very explicit about which items will be affected by an action.
+ * For example can a label for a delete button be enriched to say "Permanantly Delete `picture1` and `picture2`"
+ * but also "Permanently Delete 7 Selected Folders" without requiring a huge amount of new translations for this.
+ *
+ * Unfortunately this doesn't always work.
+ *
+ * For some texts and some languages this wide range of words cannot be inserted into a text while staying
+ * grammatically correct. Because of this you will probably need to write a fallback for these languages.
+ * Something like this:
+ * \code
+ * // i18n: @action:inmenu menu with actions like copy, paste, rename.
+ * // %2 is a textual representation of the currently selected files or folders. This can be the name of
+ * // the file/files like "file1" or "file1, file2 and file3" or an aggregate like "8 Selected Folders".
+ * // If this sort of word puzzle can not be correctly translated in your language, translate it as "NULL" (without the quotes)
+ * // and a fallback will be used.
+ * auto buttonText = i18ncp("@action A more elaborate and clearly worded version of the Delete action", "Permanently Delete %2", "Permanently Delete %2", items.count(), fileItemListToString(items, fontMetrics.averageCharWidth() * 20, fontMetrics));
+ * if (buttonText == QStringLiteral("NULL")) {
+ * buttonText = i18ncp("@action Delete button label. %1 is the number of items to be deleted.",
+ * "Permanently Delete %1 Item", "Permanently Delete %1 Items", items.count())
+ * }
+ * \endcode
+ * (The i18n call should be completely in the line following the i18n: comment without any line breaks within the i18n call or the comment might not be correctly extracted. See: https://commits.kde.org/kxmlgui/a31135046e1b3335b5d7bbbe6aa9a883ce3284c1 )
+ *
+ * @param items The KFileItemList for which a QString should be generated.
+ * @param maximumTextWidth The maximum width/horizontalAdvance the QString should have. Keep scaling in mind.
+ * @param fontMetrics the fontMetrics for the font that is used to calculate the maximumTextWidth.
+ * @param itemsState A state of the @p items that should be spelled out in the returned QString.
+ * @returns the names of the @p items separated by commas if that is below the @p maximumCharacterWidth.
+ * Otherwise returns something like "5 Files", "8 Selected Folders" or "60 Items"
+ * while being as specific as possible.
+ */
+QString fileItemListToString(KFileItemList items, int maximumTextWidth, QFontMetrics fontMetrics, ItemsState itemsState = ItemsState::None);
+
+#endif // KFILEITEMLISTTOSTRING_H
#include <KDirLister>
#include <KIO/Job>
-#include <KIO/kio_version.h>
+#include <kio_version.h>
#include <KLocalizedString>
#include <KLazyLocalizedString>
#include <KUrlMimeData>
void KFileItemModel::prepareItemsForSorting(QList<ItemData*>& itemDataList)
{
switch (m_sortRole) {
+ case ExtensionRole:
case PermissionsRole:
case OwnerRole:
case GroupRole:
data.insert(sharedValue("text"), item.text());
}
+ if (m_requestRole[ExtensionRole]) {
+ data.insert(sharedValue("extension"), QFileInfo(item.name()).suffix());
+ }
+
if (m_requestRole[SizeRole] && !isDir) {
data.insert(sharedValue("size"), item.size());
}
{ "tags", TagsRole, kli18nc("@label", "Tags"), KLazyLocalizedString(), true, false },
{ "comment", CommentRole, kli18nc("@label", "Comment"), KLazyLocalizedString(), true, false },
{ "title", TitleRole, kli18nc("@label", "Title"), kli18nc("@label", "Document"), true, true },
+ { "author", AuthorRole, kli18nc("@label", "Author"), kli18nc("@label", "Document"), true, true },
{ "wordCount", WordCountRole, kli18nc("@label", "Word Count"), kli18nc("@label", "Document"), true, true },
{ "lineCount", LineCountRole, kli18nc("@label", "Line Count"), kli18nc("@label", "Document"), true, true },
{ "imageDateTime", ImageDateTimeRole, kli18nc("@label", "Date Photographed"), kli18nc("@label", "Image"), true, true },
{ "aspectRatio", AspectRatioRole, kli18nc("@label", "Aspect Ratio"), kli18nc("@label", "Video"), true, true },
{ "frameRate", FrameRateRole, kli18nc("@label", "Frame Rate"), kli18nc("@label", "Video"), true, true },
{ "path", PathRole, kli18nc("@label", "Path"), kli18nc("@label", "Other"), false, false },
+ { "extension", ExtensionRole, kli18nc("@label", "File Extension"), kli18nc("@label", "Other"), false, false },
{ "deletiontime", DeletionTimeRole, kli18nc("@label", "Deletion Time"), kli18nc("@label", "Other"), false, false },
{ "destination", DestinationRole, kli18nc("@label", "Link Destination"), kli18nc("@label", "Other"), false, false },
{ "originUrl", OriginUrlRole, kli18nc("@label", "Downloaded From"), kli18nc("@label", "Other"), true, false },
enum RoleType {
// User visible roles:
NoRole, NameRole, SizeRole, ModificationTimeRole, CreationTimeRole, AccessTimeRole, PermissionsRole, OwnerRole,
- GroupRole, TypeRole, DestinationRole, PathRole, DeletionTimeRole,
+ GroupRole, TypeRole, ExtensionRole, DestinationRole, PathRole, DeletionTimeRole,
// User visible roles available with Baloo:
CommentRole, TagsRole, RatingRole, DimensionsRole, WidthRole, HeightRole, ImageDateTimeRole, OrientationRole,
- WordCountRole, TitleRole, LineCountRole, ArtistRole, GenreRole, AlbumRole, DurationRole, TrackRole, ReleaseYearRole,
+ WordCountRole, TitleRole, AuthorRole, LineCountRole, ArtistRole, GenreRole, AlbumRole, DurationRole, TrackRole, ReleaseYearRole,
BitrateRole, OriginUrlRole, AspectRatioRole, FrameRateRole,
// Non-visible roles:
IsDirRole, IsLinkRole, IsHiddenRole, IsExpandedRole, IsExpandableRole, ExpandedParentsCountRole,
inline bool KFileItemModel::isRoleValueNatural(RoleType roleType)
{
return (roleType == TypeRole ||
+ roleType == ExtensionRole ||
roleType == TagsRole ||
roleType == CommentRole ||
roleType == TitleRole ||
#endif
#include <QApplication>
+#include <QFileInfo>
#include <QIcon>
#include <QPainter>
#include <QPluginLoader>
}
}
+ if (m_roles.contains("extension")) {
+ data.insert("extension", QFileInfo(item.name()).suffix());
+ }
+
if (m_roles.contains("type")) {
data.insert("type", item.mimeComment());
}
#include "kitemlistview.h"
#include "private/kitemlistkeyboardsearchmanager.h"
#include "private/kitemlistrubberband.h"
-#include "private/ktwofingerswipe.h"
-#include "private/ktwofingertap.h"
#include "views/draganddrophelper.h"
+#include <KTwoFingerSwipe>
+#include <KTwoFingerTap>
+
#include <QAccessible>
#include <QApplication>
#include <QDrag>
const bool shiftPressed = modifiers & Qt::ShiftModifier;
const bool controlPressed = modifiers & Qt::ControlModifier;
+ const bool leftClick = buttons & Qt::LeftButton;
const bool rightClick = buttons & Qt::RightButton;
// The previous selection is cleared if either
break;
case MultiSelection:
- if (controlPressed && !shiftPressed) {
- // A mouse button press is happening on an item while control is pressed. This either means a user wants to:
+ if (controlPressed && !shiftPressed && leftClick) {
+ // A left mouse button press is happening on an item while control is pressed. This either means a user wants to:
// - toggle the selection of item(s) or
// - they want to begin a drag on the item(s) to copy them.
// We rule out the latter, if the item is not clicked directly and was unselected previously.
QString ret = m_customizedFontMetrics.elidedText(text.chopped(extensionLength),
Qt::ElideRight,
elidingWidth - extensionWidth);
+#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
ret.append(text.rightRef(extensionLength));
+#else
+ ret.append(QStringView(text).right(extensionLength));
+#endif
return ret;
}
}
{ Property::Rating, QByteArrayLiteral("rating") },
{ Property::Comment, QByteArrayLiteral("comment") },
{ Property::Title, QByteArrayLiteral("title") },
+ { Property::Author, QByteArrayLiteral("author") },
{ Property::WordCount, QByteArrayLiteral("wordCount") },
{ Property::LineCount, QByteArrayLiteral("lineCount") },
{ Property::Width, QByteArrayLiteral("width") },
+++ /dev/null
-/*
- * SPDX-FileCopyrightText: 2020 Steffen Hartleib <steffenhartleib@t-online.de>
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-// Self
-#include "ktwofingerswipe.h"
-
-// Qt
-#include <QTouchEvent>
-#include <QLineF>
-
-KTwoFingerSwipeRecognizer::KTwoFingerSwipeRecognizer() :
- QGestureRecognizer(),
- m_touchBeginnTimestamp(0),
- m_gestureAlreadyTriggered(false)
-{
-}
-
-KTwoFingerSwipeRecognizer::~KTwoFingerSwipeRecognizer()
-{
-}
-
-QGesture* KTwoFingerSwipeRecognizer::create(QObject*)
-{
- return static_cast<QGesture*>(new KTwoFingerSwipe());
-}
-
-QGestureRecognizer::Result KTwoFingerSwipeRecognizer::recognize(QGesture* gesture, QObject* watched, QEvent* event)
-{
- Q_UNUSED(watched)
-
- KTwoFingerSwipe* const kTwoFingerSwipe = static_cast<KTwoFingerSwipe*>(gesture);
- const QTouchEvent* touchEvent = static_cast<const QTouchEvent*>(event);
-
- const int maxTimeFrameForSwipe = 90;
- const int minDistanceForSwipe = 30;
-
- switch (event->type()) {
- case QEvent::TouchBegin: {
- m_touchBeginnTimestamp = touchEvent->timestamp();
- m_gestureAlreadyTriggered = false;
- kTwoFingerSwipe->setHotSpot(touchEvent->touchPoints().first().startScreenPos());
- kTwoFingerSwipe->setPos(touchEvent->touchPoints().first().startPos());
- kTwoFingerSwipe->setScreenPos(touchEvent->touchPoints().first().startScreenPos());
- kTwoFingerSwipe->setScenePos(touchEvent->touchPoints().first().startScenePos());
- return MayBeGesture;
- }
-
- case QEvent::TouchUpdate: {
- const qint64 now = touchEvent->timestamp();
- const qint64 elapsedTime = now - m_touchBeginnTimestamp;
- const QPointF distance = touchEvent->touchPoints().first().startPos() - touchEvent->touchPoints().first().pos();
- kTwoFingerSwipe->setHotSpot(touchEvent->touchPoints().first().startScreenPos());
- kTwoFingerSwipe->setPos(touchEvent->touchPoints().first().startPos());
- kTwoFingerSwipe->setScreenPos(touchEvent->touchPoints().first().startScreenPos());
- kTwoFingerSwipe->setScenePos(touchEvent->touchPoints().first().startScenePos());
- const QLineF ql = QLineF(touchEvent->touchPoints().first().startPos(), touchEvent->touchPoints().first().pos());
- kTwoFingerSwipe->setSwipeAngle(ql.angle());
-
- if (touchEvent->touchPoints().size() > 2) {
- return CancelGesture;
- }
-
- if (touchEvent->touchPoints().size() == 2) {
- if ((elapsedTime) > maxTimeFrameForSwipe) {
- return CancelGesture;
- }
-
- if (distance.manhattanLength() >= minDistanceForSwipe &&
- (elapsedTime) <= maxTimeFrameForSwipe && !m_gestureAlreadyTriggered) {
- m_gestureAlreadyTriggered = true;
- return FinishGesture;
- } else if ((elapsedTime) <= maxTimeFrameForSwipe && !m_gestureAlreadyTriggered) {
- return TriggerGesture;
- }
- }
- break;
- }
-
- default:
- return Ignore;
- }
- return Ignore;
-}
-
-KTwoFingerSwipe::KTwoFingerSwipe(QObject* parent) :
- QGesture(parent),
- m_pos(QPointF(-1, -1)),
- m_screenPos(QPointF(-1, -1)),
- m_scenePos(QPointF(-1, -1)),
- m_swipeAngle(0.0)
-{
-}
-
-KTwoFingerSwipe::~KTwoFingerSwipe()
-{
-}
-
-QPointF KTwoFingerSwipe::pos() const
-{
- return m_pos;
-}
-
-void KTwoFingerSwipe::setPos(QPointF _pos)
-{
- m_pos = _pos;
-}
-
-QPointF KTwoFingerSwipe::screenPos() const
-{
- return m_screenPos;
-}
-
-void KTwoFingerSwipe::setScreenPos(QPointF _screenPos)
-{
- m_screenPos = _screenPos;
-}
-
-QPointF KTwoFingerSwipe::scenePos() const
-{
- return m_scenePos;
-}
-
-void KTwoFingerSwipe::setScenePos(QPointF _scenePos)
-{
- m_scenePos = _scenePos;
-}
-
-qreal KTwoFingerSwipe::swipeAngle() const
-{
- return m_swipeAngle;
-}
- void KTwoFingerSwipe::setSwipeAngle(qreal _swipeAngle)
-{
- m_swipeAngle = _swipeAngle;
-}
-
+++ /dev/null
-/*
- * SPDX-FileCopyrightText: 2020 Steffen Hartleib <steffenhartleib@t-online.de>
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-#ifndef KTWOFINGERSWIPE_H
-#define KTWOFINGERSWIPE_H
-
-#include "dolphin_export.h"
-// Qt
-#include <QGesture>
-#include <QGestureRecognizer>
-
-class DOLPHIN_EXPORT KTwoFingerSwipe : public QGesture
-{
- Q_OBJECT
- Q_PROPERTY(QPointF pos READ pos WRITE setPos)
- Q_PROPERTY(QPointF screenPos READ screenPos WRITE setScreenPos)
- Q_PROPERTY(QPointF scenePos READ scenePos WRITE setScenePos)
- Q_PROPERTY(qreal swipeAngle READ swipeAngle WRITE setSwipeAngle)
-public:
- explicit KTwoFingerSwipe(QObject* parent = nullptr);
- ~KTwoFingerSwipe() override;
- QPointF pos() const;
- void setPos(QPointF pos);
- QPointF screenPos() const;
- void setScreenPos(QPointF screenPos);
- QPointF scenePos() const;
- void setScenePos(QPointF scenePos);
- qreal swipeAngle() const;
- void setSwipeAngle(qreal swipeAngle);
-private:
- QPointF m_pos;
- QPointF m_screenPos;
- QPointF m_scenePos;
- qreal m_swipeAngle;
-};
-
-class DOLPHIN_EXPORT KTwoFingerSwipeRecognizer : public QGestureRecognizer
-{
-public:
- explicit KTwoFingerSwipeRecognizer();
- ~KTwoFingerSwipeRecognizer() override;
- QGesture* create(QObject*) override;
- Result recognize(QGesture*, QObject*, QEvent*) override;
-private:
- Q_DISABLE_COPY( KTwoFingerSwipeRecognizer )
- qint64 m_touchBeginnTimestamp;
- bool m_gestureAlreadyTriggered;
-};
-
-#endif /* KTWOFINGERSWIPE_H */
-
+++ /dev/null
-/*
- * SPDX-FileCopyrightText: 2020 Steffen Hartleib <steffenhartleib@t-online.de>
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-// Self
-#include "ktwofingertap.h"
-
-// Qt
-#include <QTouchEvent>
-#include <QApplication>
-#include <QGraphicsWidget>
-
-KTwoFingerTapRecognizer::KTwoFingerTapRecognizer() :
- QGestureRecognizer(),
- m_gestureTriggered(false)
-{
-}
-
-KTwoFingerTapRecognizer::~KTwoFingerTapRecognizer()
-{
-}
-
-QGesture* KTwoFingerTapRecognizer::create(QObject*)
-{
- return static_cast<QGesture*>(new KTwoFingerTap());
-}
-
-QGestureRecognizer::Result KTwoFingerTapRecognizer::recognize(QGesture* gesture, QObject* watched, QEvent* event)
-{
- if (qobject_cast<QGraphicsWidget*>(watched)) {
- return Ignore;
- }
-
- KTwoFingerTap* const kTwoFingerTap = static_cast<KTwoFingerTap*>(gesture);
- const QTouchEvent* touchEvent = static_cast<const QTouchEvent*>(event);
-
- switch (event->type()) {
- case QEvent::TouchBegin: {
- kTwoFingerTap->setHotSpot(touchEvent->touchPoints().first().startScreenPos());
- kTwoFingerTap->setPos(touchEvent->touchPoints().first().startPos());
- kTwoFingerTap->setScreenPos(touchEvent->touchPoints().first().startScreenPos());
- kTwoFingerTap->setScenePos(touchEvent->touchPoints().first().startScenePos());
- m_gestureTriggered = false;
- return MayBeGesture;
- }
-
- case QEvent::TouchUpdate: {
-
- if (touchEvent->touchPoints().size() > 2) {
- m_gestureTriggered = false;
- return CancelGesture;
- }
-
- if (touchEvent->touchPoints().size() == 2) {
- if ((touchEvent->touchPoints().first().startPos() - touchEvent->touchPoints().first().pos()).manhattanLength() >= QApplication::startDragDistance()) {
- m_gestureTriggered = false;
- return CancelGesture;
- }
- if ((touchEvent->touchPoints().at(1).startPos() - touchEvent->touchPoints().at(1).pos()).manhattanLength() >= QApplication::startDragDistance()) {
- m_gestureTriggered = false;
- return CancelGesture;
- }
- if (touchEvent->touchPointStates() & Qt::TouchPointPressed) {
- m_gestureTriggered = true;
- }
- if (touchEvent->touchPointStates() & Qt::TouchPointReleased && m_gestureTriggered) {
- m_gestureTriggered = false;
- return FinishGesture;
- }
- }
- break;
- }
-
- default:
- return Ignore;
- }
- return Ignore;
-}
-
-KTwoFingerTap::KTwoFingerTap(QObject* parent) :
- QGesture(parent),
- m_pos(QPointF(-1, -1)),
- m_screenPos(QPointF(-1, -1)),
- m_scenePos(QPointF(-1, -1))
-{
-}
-
-KTwoFingerTap::~KTwoFingerTap()
-{
-}
-
-QPointF KTwoFingerTap::pos() const
-{
- return m_pos;
-}
-
-void KTwoFingerTap::setPos(QPointF _pos)
-{
- m_pos = _pos;
-}
-
-QPointF KTwoFingerTap::screenPos() const
-{
- return m_screenPos;
-}
-
-void KTwoFingerTap::setScreenPos(QPointF _screenPos)
-{
- m_screenPos = _screenPos;
-}
-
-QPointF KTwoFingerTap::scenePos() const
-{
- return m_scenePos;
-}
-
-void KTwoFingerTap::setScenePos(QPointF _scenePos)
-{
- m_scenePos = _scenePos;
-}
+++ /dev/null
-/*
- * SPDX-FileCopyrightText: 2020 Steffen Hartleib <steffenhartleib@t-online.de>
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-#ifndef KTWOFINGERTAP_H
-#define KTWOFINGERTAP_H
-
-#include <dolphin_export.h>
-// Qt
-#include <QGesture>
-#include <QGestureRecognizer>
-
-class DOLPHIN_EXPORT KTwoFingerTap : public QGesture
-{
- Q_OBJECT
- Q_PROPERTY(QPointF pos READ pos WRITE setPos)
- Q_PROPERTY(QPointF screenPos READ screenPos WRITE setScreenPos)
- Q_PROPERTY(QPointF scenePos READ scenePos WRITE setScenePos)
-public:
- explicit KTwoFingerTap(QObject* parent = nullptr);
- ~KTwoFingerTap() override;
- QPointF pos() const;
- void setPos(QPointF pos);
- QPointF screenPos() const;
- void setScreenPos(QPointF screenPos);
- QPointF scenePos() const;
- void setScenePos(QPointF scenePos);
-private:
- QPointF m_pos;
- QPointF m_screenPos;
- QPointF m_scenePos;
-};
-
-class DOLPHIN_EXPORT KTwoFingerTapRecognizer : public QGestureRecognizer
-{
-public:
- explicit KTwoFingerTapRecognizer();
- ~KTwoFingerTapRecognizer() override;
- QGesture* create(QObject*) override;
- Result recognize(QGesture*, QObject*, QEvent*) override;
-private:
- Q_DISABLE_COPY(KTwoFingerTapRecognizer)
- bool m_gestureTriggered;
-};
-
-#endif /* KTWOFINGERTAP_H */
<p xml:lang="sl">Dolphin je upravitelj datotek KDE, ki vam omogoča krmarjenje in brskanje po vsebini trdih diskov, USB ključkov, SD kartic in še več. Ustvarjanje, premikanje ali brisanje datotek in map je preprosto in hitro.</p>
<p xml:lang="sv">Dolphin är KDE:s filhanterare som låter dig navigera och bläddra i innehållet på hårddiskar, USB-minnen, SD-kort, med mera. Skapa, flytta eller ta bort filer och kataloger är enkelt och går snabbt.</p>
<p xml:lang="ta">டால்பின் என்பது, உங்கள் வட்டுகள், USB சாதனங்கள், மற்றும் SD அட்டைகள் போன்றவற்றின் உள்ளடக்கத்தை பார்க்க உதவும் கே.டீ.யீ.யின் கோப்பு உலாவியாகும். கோப்புகள் மற்றும் அடைவுகளை எளிதாகவும் வேகமாகவும் உருவாக்க, நகர்த்த, மற்றும் நீக்க முடியும்.</p>
- <p xml:lang="tr">Dolphin, KDE'nin sabit disklerinizin, USB belleklerinizin, SD kartlarınızın ve daha fazlasının içeriğinde gezinmenizi ve bunlara göz atmanızı sağlayan dosya yöneticisidir. Dosya ve klasörlerin oluşturulması, taşınması veya silinmesi basit ve hızlıdır.</p>
+ <p xml:lang="tr">Dolphin, KDE'nin sabit disklerinizin, USB belleklerinizin, SD kartlarınızın ve daha fazlasının içeriğinde gezinmenizi ve bunlara göz atmanıza izin veren bir dosya yöneticisidir. Dosya ve klasörlerin oluşturulması, taşınması veya silinmesi basit ve hızlıdır.</p>
<p xml:lang="uk">Dolphin — програма для керування файлами KDE, за допомогою якої ви можете пересуватися та переглядати вміст дисків, флешок USB, SD-карток тощо. Створення, пересування або вилучення файлів та тек є простим і швидким завданням.</p>
<p xml:lang="vi">Dolphin là trình quản lí tệp của KDE, nó cho phép bạn điều hướng và duyệt nội dung các ổ cứng, các thẻ USB, thẻ SD và các thiết bị khác của bạn. Việc tạo, chuyển, hay xoá tệp và thư mục đều đơn giản và nhanh chóng.</p>
<p xml:lang="x-test">xxDolphin is KDE's file manager that lets you navigate and browse the contents of your hard drives, USB sticks, SD cards, and more. Creating, moving, or deleting files and folders is simple and fast.xx</p>
<p xml:lang="sl">Dolphin je zelo lahek, hkrati pa ga lahko prilagodite svojim posebnim potrebam. To pomeni, da lahko izvajate upravljanje datotek natanko tako, kot želite. Dolphin podpira tri različne načine pogleda: klasičen mrežni pogled vseh datotek, podrobnejši pogled in drevesni pogled. Večino vedenja Dolphina lahko tudi nastavljate.</p>
<p xml:lang="sv">Dolphin är mycket lättviktigt, men samtidigt kan du anpassa det för dina specifika behov. Det betyder att du kan utföra filhantering precis på det sätt du vill. Dolphin stöder tre olika visningsmetoder: en klassisk rutnätsvy av alla filer, en mer detaljerad vy och en trädvy. Du kan också anpassa det mesta av Dolphins beteende.</p>
<p xml:lang="ta">டால்பின் மிகவும் சிக்கனமானது, ஆனால் அதே நேரத்தில், உங்கள் தேவைகளுக்கேற்ப அதை மாற்றி அமைக்கலாம். அதாவது, நீங்கள் விரும்பும் விதத்திலெயே உங்கள் கோப்புகளை நீங்கள் நிர்வகிக்கலாம். டால்பின் மூன்று காட்சிமுறைகளை ஆதரிக்கும்: சாதாரணமான காட்சிமுறை, அதைவிட விவரமான காட்சிமுறை, மற்றும் கிளைப்பட (tree) காட்சிமுறை. டால்பினின் நடத்தையின் பெரும்பாலான அம்சங்களை நீங்கள் மாற்றலாம்.</p>
- <p xml:lang="tr">Dolphin çok hafiftir, ancak aynı zamanda onu özel ihtiyaçlarınıza göre uyarlayabilirsiniz. Bu, dosya yönetiminizi tam olarak istediğiniz şekilde gerçekleştirebileceğiniz anlamına gelir. Dolphin üç farklı görünüm kipini destekler: tüm dosyaların klasik bir ızgara görünümü, daha ayrıntılı bir görünüm ve bir ağaç görünümü. Ayrıca, Dolphin'in davranışlarının çoğunu yapılandırabilirsiniz.</p>
+ <p xml:lang="tr">Dolphin çok hafiftir; ancak aynı zamanda onu özel gereksinimlerinize göre uyarlayabilirsiniz. Bu, dosya yönetimini tam olarak istediğiniz şekilde gerçekleştirebileceğiniz anlamına gelir. Dolphin üç farklı görünüm kipini destekler: tüm dosyaların klasik bir ızgara görünümü, daha ayrıntılı bir görünüm ve bir ağaç görünümü. Ayrıca, Dolphin'in davranışlarının çoğunu yapılandırabilirsiniz.</p>
<p xml:lang="uk">Dolphin є дуже невибагливим до ресурсів. Втім, ви можете адаптувати програму до ваших потреб. Це означає, що ви можете здійснювати керування файлами саме так, як вам того хочеться. У Dolphin передбачено три різних режими перегляду: класичний перегляд таблицею усіх файлів, режим докладного перегляду та ієрархічний перегляд. Більшу частину характеристик роботи програми можна налаштувати Dolphin.</p>
<p xml:lang="vi">Dolphin rất nhẹ, nhưng đồng thời bạn có thể điều chỉnh nó theo các nhu cầu cụ thể của mình. Điều này nghĩa là bạn có thể thực hiện việc quản lí tệp đúng như cách bạn muốn. Dolphin hỗ trợ ba chế độ xem khác nhau: một khung xem tất cả các tệp ở dạng lưới cổ điển, một khung xem chi tiết hơn, và một khung xem dạng cây. Bạn cũng có thể cấu hình hầu hết tất cả các ứng xử của Dolphin.</p>
<p xml:lang="x-test">xxDolphin is very lightweight, but at the same time, you can adapt it to your specific needs. This means that you can carry out your file management exactly the way you want to. Dolphin supports three different view modes: a classic grid view of all the files, a more detailed view, and a tree view. You can also configure most of Dolphin's behavior.xx</p>
Keywords[nl]=bestanden;bestandsbeheer;bladeren in bestanden;samba;netwerk-shares;verkenner;zoeksysteem;
Keywords[nn]=filer;filhandsaming;filutforsking;samba;nettverksressursar;Explorer;Finder;
Keywords[pl]=pliki;zarządzenie plikami;przeglądanie plików;samba;udziały sieciowe;Przeglądarka;Finder;
+Keywords[pt]=ficheiros;gestão de ficheiros;navegação de ficheiros;samba;partilhas de rede;Explorador;Pesquisa;
Keywords[pt_BR]=arquivo;gerenciamento de arquivos;navegação de arquivos;samba;compartilhamentos de rede;explorador;localizador;
Keywords[ro]=fișiere;gestiune fișiere;răsfoire fișiere;samba;partajări de rețea;unități de rețea;Explorer;Finder;
Keywords[ru]=files;file management;file browsing;samba;network shares;Explorer;Finder;файлы,управление файлами,просмотр файлов,сетевые папки
-Keywords[sk]=súbory;správa súborov;prehliadanie súborov;samba;sieťové akcie;Prieskumník;Vyhľadávač;
+Keywords[sk]=súbory;správa súborov;prehliadanie súborov;samba;zdieľanie v sieti;Prieskumník;Vyhľadávač;
Keywords[sl]=datoteke;upravljanje z datotekami;brskanje po datotekah;samba;mrežni diski;Raziskovalec;Iskalec;
Keywords[sv]=filer;filhantering;filbläddring;samba;delade nätverksresurser;Utforskare;Finder;
Keywords[tr]=dosyalar;dosya yönetimi;dosya göz at;samba;ağ paylaşımları;Explorer;Finder;
QString getServiceMenusDir()
{
const QString dataLocation = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
- return QDir(dataLocation).absoluteFilePath("kservices5/ServiceMenus");
+ return QDir(dataLocation).absoluteFilePath("kio/servicemenus");
}
#ifdef HAVE_PACKAGEKIT
errorText = i18n("Failed to copy .desktop file %1 to %2: %3", archive, dest, source.errorString());
return false;
}
+ QFile destFile(dest);
+ destFile.setPermissions(destFile.permissions() | QFile::ExeOwner);
} else {
if (binaryPackages->contains(QMimeDatabase().mimeTypeForFile(archive).name())) {
packageKit(PackageOperation::Install, archive);
+++ /dev/null
-Name=Dolphin General
-Name[ar]=دولفين العامّ
-Name[ast]=Axustes xenerales de Dolphin
-Name[az]=Əsas Dolphin parametrləri
-Name[ca]=General del Dolphin
-Name[ca@valencia]=General de Dolphin
-Name[cs]=Obecný Dolphin
-Name[da]=Dolphin generelt
-Name[de]=Dolphin allgemein
-Name[el]=Dolphin Γενικά
-Name[en_GB]=Dolphin General
-Name[es]=Preferencias generales de Dolphin
-Name[et]=Dolphin üldiselt
-Name[eu]=Dolphin orokorra
-Name[fi]=Dolphin – yleiset
-Name[fr]=Dolphin général
-Name[gl]=Xerais de Dolphin
-Name[he]=כללי ב־Dolphin
-Name[hi]=डॉल्फ़िन साधारण
-Name[hu]=Dolphin: Általános
-Name[ia]=Dolphin General
-Name[id]=Dolphin Umum
-Name[is]=Almennt um Dolphin
-Name[it]=Impostazioni generali di Dolphin
-Name[ja]=Dolphin 全般
-Name[ko]=Dolphin 일반
-Name[lt]=Dolphin bendrosios
-Name[lv]=Dolphin vispārējs
-Name[ml]=ഡോൾഫിൻ ജനറൽ
-Name[my]=လင်းပိုင် ယေဘုယျ
-Name[nb]=Dolphin generelt
-Name[nl]=Dolphin algemeen
-Name[nn]=Generelt for Dolphin
-Name[pa]=ਡਾਲਫਿਨ ਆਮ
-Name[pl]=Ustawienia Dolphina
-Name[pt]=Geral do Dolphin
-Name[pt_BR]=Geral do Dolphin
-Name[ro]=Dolphin – Generale
-Name[ru]=Основные параметры Dolphin
-Name[se]=Dolphinoppalaččat
-Name[sk]=Všeobecný Dolphin
-Name[sl]=Dolphin - splošno
-Name[sr]=Делфиново опште
-Name[sr@ijekavian]=Делфиново опште
-Name[sr@ijekavianlatin]=Dolphinovo opšte
-Name[sr@latin]=Dolphinovo opšte
-Name[sv]=Dolphin allmänt
-Name[ta]=டால்பின் பொது அமைப்புகள்
-Name[tr]=Dolphin Genel
-Name[uk]=«Загальне» Dolphin
-Name[vi]=Chung cho Dolphin
-Name[x-test]=xxDolphin Generalxx
-Name[zh_CN]=Dolphin 常规
-Name[zh_TW]=Dolphin 一般
-Comment=This service allows configuration of general Dolphin settings.
-Comment[ar]=تسمح هذه الخدمة بضبط إعدادات دولفين العامّة.
-Comment[ast]=Esti serviciu permite la configuración de los axustes xenerales de Dolphin.
-Comment[az]=Bu xidmət əsas Dolphin parametrlərini ayarlamağa imkan verir.
-Comment[ca]=Aquest servei permet la configuració de l'arranjament general del Dolphin.
-Comment[ca@valencia]=Este servei permet la configuració general de Dolphin.
-Comment[cs]=Tato služba umožňuje obecné nastavení Dolphinu.
-Comment[da]=Denne tjeneste muliggør konfiguration af generelle Dolphin-indstillinger.
-Comment[de]=Mit diesem Dienst können allgemeine Einstellungen von Dolphin eingerichtet werden.
-Comment[el]=Η υπηρεσία αυτή επιτρέπει τη διαμόρφωση των γενικών ρυθμίσεων του Dolphin
-Comment[en_GB]=This service allows configuration of general Dolphin settings.
-Comment[es]=Este servicio permite configurar las preferencias generales de Dolphin.
-Comment[et]=See teenus võimaldab seadistada Dolphini üldisi seadistusi.
-Comment[eu]=Zerbitzu honek Dolphinen ezarpen orokorrak konfiguratzeko balio du.
-Comment[fi]=Tällä palvelulla voi muokata Dolphinin yleisasetuksia.
-Comment[fr]=Ce service permet de configurer les paramètres généraux de Dolphin.
-Comment[gl]=Este servizo permite configurar opcións xerais de Dolphin.
-Comment[he]=שרות זה מאפשר את ההגדרה של הגדרות Dolphin הכלליות.
-Comment[hi]=यह सेवा साधारण डॉल्फिन सेटिंग्स के विन्यास की अनुमति देती है।
-Comment[hu]=Ez a szolgáltatás lehetővé teszi a Dolphin általános beállításainak módosítását.
-Comment[ia]=Iste servicio permitte configuration del preferentias general de Dolphin.
-Comment[id]=Layanan ini memungkinkan konfigurasi pengaturan umum Dolphin.
-Comment[is]=Þessi þjónusta leyfir breytingar á almennum stillingum á Dolphin.
-Comment[it]=Questo servizio permette di configurare le impostazioni generali di Dolphin.
-Comment[ja]=Dolphin の全般的な設定を行います
-Comment[ko]=이 서비스를 통해 일반 Dolphin 설정을 구성할 수 있습니다.
-Comment[lt]=Ši paslauga leidžia bendrųjų Dolphin nuostatų konfigūravimą.
-Comment[lv]=Šis serviss ļauj konfigurēt vispārējos Dolphin iestatījumus.
-Comment[ml]=പൊതുവായ ഡോള്ഫിന് സജ്ജീകരണങ്ങള് ക്രമീകരിയ്ക്കാന് ഈ സേവനം അനുവദിക്കുന്നു.
-Comment[my]=ဤဝန်ဆောင်မှုက လင်းပိုင် ယေဘုယျဆက်တင်ကို ပြင်ဆင်နိုင်စေသည်။
-Comment[nb]=Med denne tjenesten kan du sette opp generelle innstillinger for Dolphin.
-Comment[nl]=Met deze dienst kunt u algemene Dolphin-instellingen configureren.
-Comment[nn]=Denne tenesta lèt deg setja opp generelle innstillingar for Dolphin.
-Comment[pa]=ਇਹ ਸਰਵਿਸ ਆਮ ਡਾਲਫਿਨ ਸੈਟਿੰਗ ਦੀ ਸੰਰਚਨਾ ਵਾਸਤੇ ਹੈ।
-Comment[pl]=Ta usługa pozwala na ogólne ustawienie Dolphina.
-Comment[pt]=Este serviço permite a configuração das definições gerais do Dolphin.
-Comment[pt_BR]=Este serviço permite configurar as opções gerais do Dolphin.
-Comment[ro]=Acest serviciu permite configurarea opțiunilor generale Dolphin.
-Comment[ru]=Эта служба позволяет настраивать основные параметры Dolphin
-Comment[sk]=Táto služba umožňuje všeobecné nastavenie Dolphinu.
-Comment[sl]=Ta storitev omogoča spreminjanje splošnih nastavitev programa Dolphin.
-Comment[sr]=Овај сервис омогућава подешавање општих Делфинових поставки.
-Comment[sr@ijekavian]=Овај сервис омогућава подешавање општих Делфинових поставки.
-Comment[sr@ijekavianlatin]=Ovaj servis omogućava podešavanje opštih Dolphinovih postavki.
-Comment[sr@latin]=Ovaj servis omogućava podešavanje opštih Dolphinovih postavki.
-Comment[sv]=Den här tjänsten låter dig anpassa allmänna inställningar i Dolphin.
-Comment[ta]=டால்பினின் பொது அமைப்புகளை அமைக்க இந்த சேவை உதவும்.
-Comment[tr]=Bu servis genel Dolphin ayarlarını yapılandırmanızı sağlar.
-Comment[uk]=Ця служба надасть змогу налаштувати загальні параметри Dolphin.
-Comment[vi]=Dịch vụ này cho phép cấu hình các thiết lập chung của Dolphin.
-Comment[x-test]=xxThis service allows configuration of general Dolphin settings.xx
-Comment[zh_CN]=此服务用于配置 Dolphin 的常规设置。
-Comment[zh_TW]=此服務允許設定 Dolphin 的一般設定。
-
-[Desktop Entry]
-Icon=system-file-manager
-Type=Service
-X-KDE-ServiceTypes=KCModule
-
-X-KDE-Library=dolphin/kcms/kcm_dolphingeneral
-X-DocPath=dolphin/configuring-dolphin.html#preferences-dialog
-# ctxt: Random file browsing settings.
-Name=General
-Name[ar]=عامّ
-Name[ast]=Xeneral
-Name[az]=Əsas
-Name[ca]=General
-Name[ca@valencia]=General
-Name[cs]=Obecné
-Name[da]=Generelt
-Name[de]=Allgemein
-Name[el]=Γενικά
-Name[en_GB]=General
-Name[es]=General
-Name[et]=Üldine
-Name[eu]=Orokorra
-Name[fi]=Yleiset
-Name[fr]=Général
-Name[gl]=Xerais
-Name[he]=כללי
-Name[hi]=साधारण
-Name[hu]=Általános
-Name[ia]=General
-Name[id]=Umum
-Name[is]=Almennt
-Name[it]=Generale
-Name[ja]=全般
-Name[ko]=일반
-Name[lt]=Bendrosios
-Name[lv]=Vispārējs
-Name[ml]=പൊതുവായതു്
-Name[my]=ယေဘုယျ
-Name[nb]=Generelt
-Name[nl]=Algemeen
-Name[nn]=Generelt
-Name[pa]=ਆਮ
-Name[pl]=Ogólne
-Name[pt]=Geral
-Name[pt_BR]=Geral
-Name[ro]=Generale
-Name[ru]=Основное
-Name[sk]=Všeobecné
-Name[sl]=Splošno
-Name[sr]=Опште
-Name[sr@ijekavian]=Опште
-Name[sr@ijekavianlatin]=Opšte
-Name[sr@latin]=Opšte
-Name[sv]=Allmänt
-Name[ta]=பொது
-Name[tr]=Genel
-Name[uk]=Загальне
-Name[vi]=Chung
-Name[x-test]=xxGeneralxx
-Name[zh_CN]=常规
-Name[zh_TW]=一般
-Comment=Configure general file manager settings
-Comment[ar]=اضبط إعدادات مدير الملفّات العامّة
-Comment[ast]=Configura los axustes xenerales del xestor de ficheros
-Comment[az]=Fayl menecerinin ayarları
-Comment[ca]=Configura les opcions generals del gestor de fitxers
-Comment[ca@valencia]=Configura les opcions generals del gestor de fitxers
-Comment[cs]=Obecné nastavení správce souborů
-Comment[da]=Konfiguration af generelle indstillinger for filhåndtering
-Comment[de]=Allgemeine Einstellungen an der Dateiverwaltung vornehmen
-Comment[el]=Διαμόρφωση γενικών ρυθμίσεων διαχείρισης αρχείων
-Comment[en_GB]=Configure general file manager settings
-Comment[es]=Configurar las preferencias generales del gestor de archivos
-Comment[et]=Failihalduri üldine seadistamine
-Comment[eu]=Konfiguratu fitxategi-kudeatzailearen ezarpen orokorrak
-Comment[fi]=Tiedostonhallinnan yleisasetukset
-Comment[fr]=Configuration des paramètres généraux du gestionnaire de fichiers
-Comment[gl]=Configurar opcións xerais de xestores de ficheiros.
-Comment[he]=תצורת ההגדרות הכלליות של מנהל הקבצים
-Comment[hi]=साधारण फ़ाइल प्रबंधक सेटिंग्स विन्यस्त करें
-Comment[hu]=A fájlkezelő általános beállításainak módosítása
-Comment[ia]=Configura preferentias del gerente general de file
-Comment[id]=Konfigurasikan pengaturan pengelola file umum
-Comment[is]=Sýsla með almennar stillingar skráastjóra
-Comment[it]=Configura le impostazioni generali del gestore dei file
-Comment[ja]=ファイルマネージャの全般的な設定を行います
-Comment[ko]=일반 파일 관리자 설정 구성
-Comment[lt]=Konfigūruoti bendras failų tvarkytuvės nuostatas
-Comment[lv]=Konfigurēt vispārējā datņu pārvaldnieka iestatījumus
-Comment[ml]=ഫയൽ മാനേജറിന്റെ പൊതുവായ സജ്ജീകരണങ്ങള് ക്രമീകരിയ്ക്കുക
-Comment[my]=ဖိုင်လ်မန်နေဂျာ ယေဘုယျဆက်တင် ပြင်ဆင်မည်
-Comment[nb]=Sett opp generelle innstillinger for filbehandleren
-Comment[nl]=Algemene bestandsbeheerderinstellingen configureren
-Comment[nn]=Set opp generelle innstillingar for filhandsamaren
-Comment[pa]=ਆਮ ਫਾਇਲ ਮੈਨੇਜਰ ਸੈਟਿੰਗ ਸੰਰਚਨਾ
-Comment[pl]=Ustawienia ogólne zarządzania plikami
-Comment[pt]=Configurar as definições gerais do gestor de ficheiros
-Comment[pt_BR]=Configura as opções gerais do gerenciador de arquivos
-Comment[ro]=Configurează opțiuni generale ale gestionarului de fișiere
-Comment[ru]=Настройка диспетчера файлов
-Comment[sk]=Všeobecné nastavenie správcu súborov
-Comment[sl]=Splošne nastavitve upravljalnika datotek
-Comment[sr]=Подешавање општих поставки менаџера фајлова
-Comment[sr@ijekavian]=Подешавање општих поставки менаџера фајлова
-Comment[sr@ijekavianlatin]=Podešavanje opštih postavki menadžera fajlova
-Comment[sr@latin]=Podešavanje opštih postavki menadžera fajlova
-Comment[sv]=Anpassa filhanterarens allmänna inställningar
-Comment[ta]=பொதுவான கோப்பு மேலாளி அமைப்புகளை அமையுங்கள்
-Comment[tr]=Genel dosya yöneticisi ayarlarını yapılandır
-Comment[uk]=Налаштувати загальні параметри менеджера файлів
-Comment[vi]=Cấu hình các thiết lập chung cho trình quản lí tệp
-Comment[x-test]=xxConfigure general file manager settingsxx
-Comment[zh_CN]=配置常规文件管理器设置
-Comment[zh_TW]=設定一般檔案管理員
-X-KDE-Keywords=file manager
-X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات
-X-KDE-Keywords[ast]=xestor de ficheros
-X-KDE-Keywords[az]=fayl meneceri
-X-KDE-Keywords[ca]=gestor de fitxers
-X-KDE-Keywords[ca@valencia]=gestor de fitxers
-X-KDE-Keywords[cs]=správce souborů
-X-KDE-Keywords[da]=filhåndtering
-X-KDE-Keywords[de]=Dateiverwaltung
-X-KDE-Keywords[el]=διαχειριστής αρχείων
-X-KDE-Keywords[en_GB]=file manager
-X-KDE-Keywords[es]=gestor de archivos
-X-KDE-Keywords[et]=failihaldur
-X-KDE-Keywords[eu]=Fitxategi-kudeatzailea
-X-KDE-Keywords[fi]=tiedostonhallinta
-X-KDE-Keywords[fr]=gestionnaire de fichiers
-X-KDE-Keywords[gl]=xestor de ficheiros
-X-KDE-Keywords[he]=מנהל קבצים
-X-KDE-Keywords[hi]=फ़ाइल प्रबंधक
-X-KDE-Keywords[hu]=fájlkezelő
-X-KDE-Keywords[ia]=gerente de file
-X-KDE-Keywords[id]=pengelola file
-X-KDE-Keywords[is]=skráastjóri
-X-KDE-Keywords[it]=gestore dei file
-X-KDE-Keywords[ja]=ファイルマネージャ
-X-KDE-Keywords[ko]=파일 관리자
-X-KDE-Keywords[lt]=failų tvarkytuvė
-X-KDE-Keywords[lv]=datņu pārvaldnieks
-X-KDE-Keywords[ml]=ഫയൽ മാനേജർ
-X-KDE-Keywords[my]=ဖိုင်လ်မန်နေဂျာ
-X-KDE-Keywords[nb]=filbehandler
-X-KDE-Keywords[nl]=bestandsbeheerder
-X-KDE-Keywords[nn]=filhandsamar
-X-KDE-Keywords[pa]=ਫਾਇਲ ਮੈਨੇਜਰ
-X-KDE-Keywords[pl]=zarządzanie plikami
-X-KDE-Keywords[pt]=gestor de ficheiros
-X-KDE-Keywords[pt_BR]=gerenciador de arquivos
-X-KDE-Keywords[ro]=gestionar de fișiere
-X-KDE-Keywords[ru]=диспетчер файлов
-X-KDE-Keywords[sk]=správca súborov
-X-KDE-Keywords[sl]=upravljalnik datotek
-X-KDE-Keywords[sr]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavian]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavianlatin]=file manager,menadžer fajlova
-X-KDE-Keywords[sr@latin]=file manager,menadžer fajlova
-X-KDE-Keywords[sv]=filhanterare
-X-KDE-Keywords[ta]=file manager,கோப்பு மேலாளர், கோப்பு நிர்வாகி, கோப்பு உலாவி
-X-KDE-Keywords[tr]=dosya yöneticisi
-X-KDE-Keywords[uk]=менеджер,керування,файл,файли
-X-KDE-Keywords[vi]=file manager,trình quản lí tệp
-X-KDE-Keywords[x-test]=xxfile managerxx
-X-KDE-Keywords[zh_CN]=文件管理器
-X-KDE-Keywords[zh_TW]=檔案管理員
--- /dev/null
+{
+ "KPlugin": {
+ "Description": "Configure general file manager settings",
+ "Description[ar]": "اضبط إعدادات مدير الملفّات العامّة",
+ "Description[ca@valencia]": "Configura les opcions generals del gestor de fitxers",
+ "Description[ca]": "Configura les opcions generals del gestor de fitxers",
+ "Description[es]": "Configurar las preferencias generales del gestor de archivos",
+ "Description[fr]": "Configurer les paramètres généraux pour le gestionnaire de fichiers",
+ "Description[it]": "Configura le impostazioni generali del gestore dei file",
+ "Description[nl]": "Algemene bestandsbeheerderinstellingen configureren",
+ "Description[ro]": "Configurează opțiuni generale ale gestionarului de fișiere",
+ "Description[sl]": "Postavi splošne nastavitve upravljalnika datotek",
+ "Description[sv]": "Anpassa filhanterarens allmänna inställningar",
+ "Description[ta]": "பொதுவான கோப்பு மேலாளி அமைப்புகளை அமையுங்கள்",
+ "Description[tr]": "Genel dosya yöneticisi ayarlarını yapılandır",
+ "Description[uk]": "Налаштувати загальні параметри менеджера файлів",
+ "Description[x-test]": "xxConfigure general file manager settingsxx",
+ "Description[zh_CN]": "配置文件管理器常规设置",
+ "Icon": "system-file-manager",
+ "Name": "General",
+ "Name[ar]": "عامّ",
+ "Name[ca@valencia]": "General",
+ "Name[ca]": "General",
+ "Name[es]": "General",
+ "Name[fr]": "Général",
+ "Name[it]": "Generale",
+ "Name[nl]": "Algemeen",
+ "Name[ro]": "Generale",
+ "Name[sl]": "Splošno",
+ "Name[sv]": "Allmänt",
+ "Name[ta]": "பொதுவானவை",
+ "Name[tr]": "Genel",
+ "Name[uk]": "Загальне",
+ "Name[x-test]": "xxGeneralxx",
+ "Name[zh_CN]": "常规",
+ "ServiceTypes": [
+ "KCModule"
+ ]
+ },
+ "X-DocPath": "dolphin/configuring-dolphin.html#preferences-dialog",
+ "X-KDE-Keywords": "file manager",
+ "X-KDE-Keywords[ar]": "مدير ملفّات ملفات الملفّات الملفات",
+ "X-KDE-Keywords[ast]": "xestor de ficheros",
+ "X-KDE-Keywords[az]": "fayl meneceri",
+ "X-KDE-Keywords[ca@valencia]": "gestor de fitxers",
+ "X-KDE-Keywords[ca]": "gestor de fitxers",
+ "X-KDE-Keywords[cs]": "správce souborů",
+ "X-KDE-Keywords[da]": "filhåndtering",
+ "X-KDE-Keywords[de]": "Dateiverwaltung",
+ "X-KDE-Keywords[el]": "διαχειριστής αρχείων",
+ "X-KDE-Keywords[en_GB]": "file manager",
+ "X-KDE-Keywords[es]": "gestor de archivos",
+ "X-KDE-Keywords[et]": "failihaldur",
+ "X-KDE-Keywords[eu]": "Fitxategi-kudeatzailea",
+ "X-KDE-Keywords[fi]": "tiedostonhallinta",
+ "X-KDE-Keywords[fr]": "gestionnaire de fichiers",
+ "X-KDE-Keywords[gl]": "xestor de ficheiros",
+ "X-KDE-Keywords[he]": "מנהל קבצים",
+ "X-KDE-Keywords[hi]": "फ़ाइल प्रबंधक",
+ "X-KDE-Keywords[hu]": "fájlkezelő",
+ "X-KDE-Keywords[ia]": "gerente de file",
+ "X-KDE-Keywords[id]": "pengelola file",
+ "X-KDE-Keywords[is]": "skráastjóri",
+ "X-KDE-Keywords[it]": "gestore dei file",
+ "X-KDE-Keywords[ja]": "ファイルマネージャ",
+ "X-KDE-Keywords[ko]": "파일 관리자",
+ "X-KDE-Keywords[lt]": "failų tvarkytuvė",
+ "X-KDE-Keywords[lv]": "datņu pārvaldnieks",
+ "X-KDE-Keywords[ml]": "ഫയൽ മാനേജർ",
+ "X-KDE-Keywords[my]": "ဖိုင်လ်မန်နေဂျာ",
+ "X-KDE-Keywords[nb]": "filbehandler",
+ "X-KDE-Keywords[nl]": "bestandsbeheerder",
+ "X-KDE-Keywords[nn]": "filhandsamar",
+ "X-KDE-Keywords[pa]": "ਫਾਇਲ ਮੈਨੇਜਰ",
+ "X-KDE-Keywords[pl]": "zarządzanie plikami",
+ "X-KDE-Keywords[pt]": "gestor de ficheiros",
+ "X-KDE-Keywords[pt_BR]": "gerenciador de arquivos",
+ "X-KDE-Keywords[ro]": "gestionar de fișiere",
+ "X-KDE-Keywords[ru]": "диспетчер файлов",
+ "X-KDE-Keywords[sk]": "správca súborov",
+ "X-KDE-Keywords[sl]": "upravljalnik datotek",
+ "X-KDE-Keywords[sr@ijekavian]": "file manager,менаџер фајлова",
+ "X-KDE-Keywords[sr@ijekavianlatin]": "file manager,menadžer fajlova",
+ "X-KDE-Keywords[sr@latin]": "file manager,menadžer fajlova",
+ "X-KDE-Keywords[sr]": "file manager,менаџер фајлова",
+ "X-KDE-Keywords[sv]": "filhanterare",
+ "X-KDE-Keywords[ta]": "file manager,கோப்பு மேலாளர், கோப்பு நிர்வாகி, கோப்பு உலாவி",
+ "X-KDE-Keywords[tr]": "dosya yöneticisi",
+ "X-KDE-Keywords[uk]": "менеджер,керування,файл,файли",
+ "X-KDE-Keywords[vi]": "file manager,trình quản lí tệp",
+ "X-KDE-Keywords[x-test]": "xxfile managerxx",
+ "X-KDE-Keywords[zh_CN]": "文件管理器",
+ "X-KDE-Keywords[zh_TW]": "檔案管理員"
+}
+++ /dev/null
-Name=Dolphin Navigation
-Name[ar]=التّنقّل في دولفين
-Name[ast]=Navegación de Dolphin
-Name[az]=Dolphində hərəkət
-Name[ca]=Navegació del Dolphin
-Name[ca@valencia]=Navegació de Dolphin
-Name[cs]=Navigace Dolphinu
-Name[da]=Dolphin-navigation
-Name[de]=Dolphin-Navigation
-Name[el]=Dolphin Πλοήγηση
-Name[en_GB]=Dolphin Navigation
-Name[es]=Navegación de Dolphin
-Name[et]=Dolphini liikumine
-Name[eu]=Dolphin nabigatzea
-Name[fi]=Dolphin – selaus
-Name[fr]=Navigation avec Dolphin
-Name[gl]=Navegación de Dolphin
-Name[he]=ניווט ב־Dolphin
-Name[hi]=डॉल्फ़िन संचालन
-Name[hu]=Dolphin: Navigáció
-Name[ia]=Navigation de Dolphin
-Name[id]=Navigasi Dolphin
-Name[is]=Flakk í Dolphin
-Name[it]=Navigazione di Dolphin
-Name[ja]=Dolphin ナビゲーション
-Name[ko]=Dolphin 탐색
-Name[lt]=Dolphin naršymas
-Name[lv]=Dolphin navigācija
-Name[ml]=ഡോള്ഫിന് നാവിഗേഷന്
-Name[my]=လင်းပိုင် လမ်းညွှန်
-Name[nb]=Navigasjon i Dolphin
-Name[nl]=Dolphin-navigatie
-Name[nn]=Navigasjon i Dolphin
-Name[pa]=ਡਾਲਫਿਨ ਨੇਵੀਗੇਸ਼ਨ
-Name[pl]=Nawigacja Dolphina
-Name[pt]=Navegação do Dolphin
-Name[pt_BR]=Navegação do Dolphin
-Name[ro]=Dolphin – Navigare
-Name[ru]=Навигация в Dolphin
-Name[se]=Dolphinnavigašuvdna
-Name[sk]=Navigácia Dolphinu
-Name[sl]=Dolphin - krmarjenje
-Name[sr]=Делфинова навигација
-Name[sr@ijekavian]=Делфинова навигација
-Name[sr@ijekavianlatin]=Dolphinova navigacija
-Name[sr@latin]=Dolphinova navigacija
-Name[sv]=Dolphin navigering
-Name[ta]=டால்பின் உலாவல்
-Name[tr]=Dolphin Dolaşımı
-Name[uk]=«Навігація» Dolphin
-Name[vi]=Điều hướng Dolphin
-Name[x-test]=xxDolphin Navigationxx
-Name[zh_CN]=Dolphin 导航
-Name[zh_TW]=Dolphin 導覽
-Comment=This service allows configuration of the Dolphin navigation.
-Comment[ar]=تسمح هذه الخدمة بضبط التّنقّل في دولفين.
-Comment[ast]=Esti serviciu permite la configuración de la navegación del Dolphin.
-Comment[az]=Bu xidmət Dolphin üzrə hərəkəti tənzimləməyə imkan verir.
-Comment[ca]=Aquest servei permet la configuració de la navegació del Dolphin.
-Comment[ca@valencia]=Este servei permet la configuració de la navegació de Dolphin.
-Comment[cs]=Tato služba umožňuje nastavení navigace v Dolphinu.
-Comment[da]=Denne tjeneste muliggør konfiguration af Dolphin-navigation.
-Comment[de]=Mit diesem Dienst kann die Navigation für Dolphin eingerichtet werden.
-Comment[el]=Η υπηρεσία αυτή επιτρέπει τη διαμόρφωση της πλοήγησης του Dolphin
-Comment[en_GB]=This service allows configuration of the Dolphin navigation.
-Comment[es]=Este servicio permite configurar la navegación de Dolphin.
-Comment[et]=See teenus võimaldab seadistada Dolphinis liikumist.
-Comment[eu]=Zerbitzu honek Dolphinen nabigatzea konfiguratzeko balio du.
-Comment[fi]=Tällä palvelulla voi muokata Dolphinin selausasetuksia.
-Comment[fr]=Ce service permet de configurer la navigation avec Dolphin.
-Comment[gl]=Este servizo permite configurar a navegación de Dolphin.
-Comment[he]=שרות זה מאפשר את ההגדרה של הניווט ב־Dolphin.
-Comment[hi]=यह सेवा डॉल्फिन संचालन के विन्यास की अनुमति देती है।
-Comment[hu]=Ez a szolgáltatás lehetővé teszi a Dolphin navigálásának beállítását.
-Comment[ia]=Iste servicio permitte le configuration del navigation de Dolphin.
-Comment[id]=Layanan ini memungkinkan konfigurasi navigasi Dolphin.
-Comment[is]=Þessi þjónusta leyfir stillingar á flakkstýringum Dolphin.
-Comment[it]=Questo servizio permette di configurare la navigazione con Dolphin.
-Comment[ja]=Dolphin でのナビゲーションを設定します
-Comment[ko]=이 서비스를 통해 Dolphin 탐색을 설정할 수 있습니다.
-Comment[lt]=Ši paslauga leidžia Dolphin naršymo konfigūravimą.
-Comment[lv]=Šis serviss ļauj konfigurēt Dolphin navigāciju.
-Comment[ml]=ഡോള്ഫിന് നാവിഗേഷൻ ക്രമീകരിയ്ക്കാന് ഈ സേവനം അനുവദിയ്ക്കുന്നു.
-Comment[my]=ဤဝန်ဆောင်မှုက လင်းပိုင် လမ်းညွှန်ကို ပြင်ဆင်နိုင်စေသည်။
-Comment[nb]=Med denne tjenesten kan du sette opp navigasjon for Dolphin.
-Comment[nl]=Met deze dienst kunt u Dolphin-navigatie configureren.
-Comment[nn]=Denne tenesta lèt deg setja opp navigasjonen for Dolphin.
-Comment[pa]=ਇਹ ਸਰਵਿਸ ਡਾਲਫਿਨ ਨੇਵੀਗੇਸ਼ਨ ਦੀ ਸੰਰਚਨਾ ਵਾਸਤੇ ਹੈ।
-Comment[pl]=Ta usługa umożliwia ustawienie nawigacji w Dolphinie.
-Comment[pt]=Este serviço permite a configuração da navegação do Dolphin.
-Comment[pt_BR]=Este serviço permite configurar a navegação do Dolphin.
-Comment[ro]=Acest serviciu permite configurarea navigării Dolphin.
-Comment[ru]=Эта служба позволяет настраивать навигацию в Dolphin
-Comment[sk]=Táto služba umožňuje nastavenie navigácie v Dolphine.
-Comment[sl]=Ta storitev omogoča spreminjanje nastavitev krmarjenja programa Dolphin.
-Comment[sr]=Овај сервис омогућава подешавање навигације у Делфину.
-Comment[sr@ijekavian]=Овај сервис омогућава подешавање навигације у Делфину.
-Comment[sr@ijekavianlatin]=Ovaj servis omogućava podešavanje navigacije u Dolphinu.
-Comment[sr@latin]=Ovaj servis omogućava podešavanje navigacije u Dolphinu.
-Comment[sv]=Den här tjänsten låter dig anpassa navigering i Dolphin.
-Comment[ta]=டால்பினின் உலாவல் அமைப்புகளை அமைக்க இந்த சேவை உதவும்.
-Comment[tr]=Bu servis Dolphin dolaşımını yapılandırmanızı sağlar.
-Comment[uk]=Ця служба надасть змогу налаштувати навігацію у Dolphin.
-Comment[vi]=Dịch vụ này cho phép cấu hình điều hướng Dolphin.
-Comment[x-test]=xxThis service allows configuration of the Dolphin navigation.xx
-Comment[zh_CN]=此服务用于配置 Dolphin 的导航功能。
-Comment[zh_TW]=此服務允許設定 Dolphin 的導覽。
-
-[Desktop Entry]
-Icon=preferences-desktop-navigation
-Type=Service
-X-KDE-ServiceTypes=KCModule
-
-X-KDE-Library=dolphin/kcms/kcm_dolphinnavigation
-X-DocPath=dolphin/configuring-dolphin.html#preferences-dialog-navigation
-Name=Navigation
-Name[ar]=التّنقّل
-Name[ast]=Navegación
-Name[az]=Naviqasiya
-Name[ca]=Navegació
-Name[ca@valencia]=Navegació
-Name[cs]=Navigace
-Name[da]=Navigation
-Name[de]=Navigation
-Name[el]=Πλοήγηση
-Name[en_GB]=Navigation
-Name[es]=Navegación
-Name[et]=Liikumine
-Name[eu]=Nabigatzea
-Name[fi]=Selaus
-Name[fr]=Navigation
-Name[gl]=Navegación
-Name[he]=ניווט
-Name[hi]=संचालन
-Name[hu]=Navigálás
-Name[ia]=Navigation
-Name[id]=Navigasi
-Name[is]=Flakk
-Name[it]=Navigazione
-Name[ja]=ナビゲーション
-Name[ko]=탐색
-Name[lt]=Naršymas
-Name[lv]=Navigācija
-Name[ml]=നാവിഗേഷന്
-Name[my]=လမ်းညွှန်
-Name[nb]=Navigasjon
-Name[nl]=Navigatie
-Name[nn]=Navigasjon
-Name[pa]=ਨੇਵੀਗੇਸ਼ਨ
-Name[pl]=Nawigacja
-Name[pt]=Navegação
-Name[pt_BR]=Navegação
-Name[ro]=Navigare
-Name[ru]=Навигация
-Name[se]=Navigašuvdna
-Name[sk]=Navigácia
-Name[sl]=Krmarjenje
-Name[sr]=Навигација
-Name[sr@ijekavian]=Навигација
-Name[sr@ijekavianlatin]=Navigacija
-Name[sr@latin]=Navigacija
-Name[sv]=Navigering
-Name[ta]=உலாவல்
-Name[tr]=Dolaşım
-Name[uk]=Навігація
-Name[vi]=Điều hướng
-Name[x-test]=xxNavigationxx
-Name[zh_CN]=导航
-Name[zh_TW]=導覽
-Comment=Configure file manager navigation
-Comment[ar]=اضبط التّنقّل في مدير الملفّات
-Comment[ast]=Configura la navegación del xestor de ficheros
-Comment[az]=Fayl meneceri naviqasiyasını tənzimləmək
-Comment[ca]=Configura la navegació del gestor de fitxers
-Comment[ca@valencia]=Configura la navegació del gestor de fitxers
-Comment[cs]=Nastavení navigace správce souborů
-Comment[da]=Indstil navigation i filhåndtering
-Comment[de]=Einstellungen zur Navigation mit der Dateiverwaltung
-Comment[el]=Διαμόρφωση πλοήγησης του διαχειριστή αρχείων
-Comment[en_GB]=Configure file manager navigation
-Comment[es]=Configurar la navegación del gestor de archivos
-Comment[et]=Failihalduris liikumise seadistamine
-Comment[eu]=Konfiguratu fitxategi-kudeatzailearen nabigatzea
-Comment[fi]=Tiedostonhallinnan selausasetukset
-Comment[fr]=Configuration la navigation avec le gestionnaire de fichiers
-Comment[gl]=Configurar a navegación do xestor de ficheiros.
-Comment[he]=הגדרת הניווט במנהל הקבצים
-Comment[hi]=फ़ाइल प्रबंधक संचालन विन्यस्त करें
-Comment[hu]=A fájlkezelő navigálásának beállítása
-Comment[ia]=Configura navigation del gerente de file
-Comment[id]=Konfigurasikan navigasi pengelola file
-Comment[is]=Stilla flakkstýringu í skráastjóra
-Comment[it]=Configura la navigazione col gestore dei file
-Comment[ja]=ファイルマネージャでのナビゲーションを設定します
-Comment[ko]=파일 관리자 탐색 설정
-Comment[lt]=Konfigūruoti failų tvarkytuvės naršymą
-Comment[lv]=Konfigurēt datņu pārvaldnieka navigāciju
-Comment[ml]=ഫയല് മാനേജർ നാവിഗേഷൻ ക്രമീകരിയ്ക്കുക
-Comment[my]=ဖိုင်လ်မန်နေဂျာ လမ်းညွှန် ပြင်ဆင်မည်
-Comment[nb]=Sett opp navigasjon i filbehandleren
-Comment[nl]=Bestandsbeheerdernavigatie configureren
-Comment[nn]=Set opp navigasjonen i filhandsamaren
-Comment[pa]=ਫਾਇਲ ਮੈਨੇਜਰ ਨੇਵੀਗੇਸ਼ਨ ਸੰਰਚਨਾ
-Comment[pl]=Ustawienia nawigacji w zarządzaniu plikami
-Comment[pt]=Configurar a navegação do gestor de ficheiros
-Comment[pt_BR]=Configura a navegação do gerenciador de arquivos
-Comment[ro]=Configurează navigarea cu gestionarul de fișiere
-Comment[ru]=Настройка навигации в диспетчере файлов
-Comment[se]=Heivet fiilagieđahallannavigašuvdna
-Comment[sk]=Nastavenie navigácie správcu súborov
-Comment[sl]=Nastavitve krmarjenja v upravljalniku datotek
-Comment[sr]=Подешавање навигације у менаџеру фајлова
-Comment[sr@ijekavian]=Подешавање навигације у менаџеру фајлова
-Comment[sr@ijekavianlatin]=Podešavanje navigacije u menadžeru fajlova
-Comment[sr@latin]=Podešavanje navigacije u menadžeru fajlova
-Comment[sv]=Anpassa filhanterarens navigering
-Comment[ta]=கோப்பு உலாவியில் உலாவலை அமையுங்கள்
-Comment[tr]=Dosya yöneticisi gezintisini yapılandır
-Comment[uk]=Налаштувати навігацію у менеджері файлів
-Comment[vi]=Cấu hình điều hướng trình quản lí tệp
-Comment[x-test]=xxConfigure file manager navigationxx
-Comment[zh_CN]=配置文件管理器导航功能
-Comment[zh_TW]=設定檔案管理員導覽
-X-KDE-Keywords=file manager
-X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات
-X-KDE-Keywords[ast]=xestor de ficheros
-X-KDE-Keywords[az]=fayl meneceri
-X-KDE-Keywords[ca]=gestor de fitxers
-X-KDE-Keywords[ca@valencia]=gestor de fitxers
-X-KDE-Keywords[cs]=správce souborů
-X-KDE-Keywords[da]=filhåndtering
-X-KDE-Keywords[de]=Dateiverwaltung
-X-KDE-Keywords[el]=διαχειριστής αρχείων
-X-KDE-Keywords[en_GB]=file manager
-X-KDE-Keywords[es]=gestor de archivos
-X-KDE-Keywords[et]=failihaldur
-X-KDE-Keywords[eu]=Fitxategi-kudeatzailea
-X-KDE-Keywords[fi]=tiedostonhallinta
-X-KDE-Keywords[fr]=gestionnaire de fichiers
-X-KDE-Keywords[gl]=xestor de ficheiros
-X-KDE-Keywords[he]=מנהל קבצים
-X-KDE-Keywords[hi]=फ़ाइल प्रबंधक
-X-KDE-Keywords[hu]=fájlkezelő
-X-KDE-Keywords[ia]=gerente de file
-X-KDE-Keywords[id]=pengelola file
-X-KDE-Keywords[is]=skráastjóri
-X-KDE-Keywords[it]=gestore dei file
-X-KDE-Keywords[ja]=ファイルマネージャ
-X-KDE-Keywords[ko]=파일 관리자
-X-KDE-Keywords[lt]=failų tvarkytuvė
-X-KDE-Keywords[lv]=datņu pārvaldnieks
-X-KDE-Keywords[ml]=ഫയൽ മാനേജർ
-X-KDE-Keywords[my]=ဖိုင်လ်မန်နေဂျာ
-X-KDE-Keywords[nb]=filbehandler
-X-KDE-Keywords[nl]=bestandsbeheerder
-X-KDE-Keywords[nn]=filhandsamar
-X-KDE-Keywords[pa]=ਫਾਇਲ ਮੈਨੇਜਰ
-X-KDE-Keywords[pl]=zarządzanie plikami
-X-KDE-Keywords[pt]=gestor de ficheiros
-X-KDE-Keywords[pt_BR]=gerenciador de arquivos
-X-KDE-Keywords[ro]=gestionar de fișiere
-X-KDE-Keywords[ru]=диспетчер файлов
-X-KDE-Keywords[sk]=správca súborov
-X-KDE-Keywords[sl]=upravljalnik datotek
-X-KDE-Keywords[sr]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavian]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavianlatin]=file manager,menadžer fajlova
-X-KDE-Keywords[sr@latin]=file manager,menadžer fajlova
-X-KDE-Keywords[sv]=filhanterare
-X-KDE-Keywords[ta]=file manager,கோப்பு மேலாளர், கோப்பு நிர்வாகி, கோப்பு உலாவி
-X-KDE-Keywords[tr]=dosya yöneticisi
-X-KDE-Keywords[uk]=менеджер,керування,файл,файли
-X-KDE-Keywords[vi]=file manager,trình quản lí tệp
-X-KDE-Keywords[x-test]=xxfile managerxx
-X-KDE-Keywords[zh_CN]=文件管理器
-X-KDE-Keywords[zh_TW]=檔案管理員
--- /dev/null
+{
+ "KPlugin": {
+ "Description": "Configure file manager navigation",
+ "Description[ar]": "اضبط التّنقّل في مدير الملفّات",
+ "Description[ca@valencia]": "Configura la navegació del gestor de fitxers",
+ "Description[ca]": "Configura la navegació del gestor de fitxers",
+ "Description[es]": "Configurar la navegación del gestor de archivos",
+ "Description[fr]": "Configurer la navigation dans le gestionnaire de fichiers",
+ "Description[it]": "Configura la navigazione col gestore dei file",
+ "Description[nl]": "Bestandsbeheerdernavigatie configureren",
+ "Description[ro]": "Configurează navigarea cu gestionarul de fișiere",
+ "Description[sl]": "Postavi krmarjenje v upravljalniku datotek",
+ "Description[sv]": "Anpassa filhanterarens navigering",
+ "Description[ta]": "கோப்பு உலாவியில் உலாவலை அமையுங்கள்",
+ "Description[tr]": "Dosya yöneticisi dolaşımını yapılandır",
+ "Description[uk]": "Налаштувати навігацію у менеджері файлів",
+ "Description[x-test]": "xxConfigure file manager navigationxx",
+ "Description[zh_CN]": "配置文件管理器导航功能",
+ "Icon": "preferences-desktop-navigation",
+ "Name": "Navigation",
+ "Name[ar]": "التّنقّل",
+ "Name[ast]": "Navegación",
+ "Name[az]": "Naviqasiya",
+ "Name[ca@valencia]": "Navegació",
+ "Name[ca]": "Navegació",
+ "Name[cs]": "Navigace",
+ "Name[da]": "Navigation",
+ "Name[de]": "Navigation",
+ "Name[el]": "Πλοήγηση",
+ "Name[en_GB]": "Navigation",
+ "Name[es]": "Navegación",
+ "Name[et]": "Liikumine",
+ "Name[eu]": "Nabigatzea",
+ "Name[fi]": "Selaus",
+ "Name[fr]": "Navigation",
+ "Name[gl]": "Navegación",
+ "Name[he]": "ניווט",
+ "Name[hi]": "संचालन",
+ "Name[hu]": "Navigálás",
+ "Name[ia]": "Navigation",
+ "Name[id]": "Navigasi",
+ "Name[is]": "Flakk",
+ "Name[it]": "Navigazione",
+ "Name[ja]": "ナビゲーション",
+ "Name[ko]": "탐색",
+ "Name[lt]": "Naršymas",
+ "Name[lv]": "Navigācija",
+ "Name[ml]": "നാവിഗേഷന്",
+ "Name[my]": "လမ်းညွှန်",
+ "Name[nb]": "Navigasjon",
+ "Name[nl]": "Navigatie",
+ "Name[nn]": "Navigasjon",
+ "Name[pa]": "ਨੇਵੀਗੇਸ਼ਨ",
+ "Name[pl]": "Nawigacja",
+ "Name[pt]": "Navegação",
+ "Name[pt_BR]": "Navegação",
+ "Name[ro]": "Navigare",
+ "Name[ru]": "Навигация",
+ "Name[se]": "Navigašuvdna",
+ "Name[sk]": "Navigácia",
+ "Name[sl]": "Krmarjenje",
+ "Name[sr@ijekavian]": "Навигација",
+ "Name[sr@ijekavianlatin]": "Navigacija",
+ "Name[sr@latin]": "Navigacija",
+ "Name[sr]": "Навигација",
+ "Name[sv]": "Navigering",
+ "Name[ta]": "உலாவல்",
+ "Name[tr]": "Dolaşım",
+ "Name[uk]": "Навігація",
+ "Name[vi]": "Điều hướng",
+ "Name[x-test]": "xxNavigationxx",
+ "Name[zh_CN]": "导航",
+ "Name[zh_TW]": "導覽",
+ "ServiceTypes": [
+ "KCModule"
+ ]
+ },
+ "X-DocPath": "dolphin/configuring-dolphin.html#preferences-dialog-navigation",
+ "X-KDE-Keywords": "file manager",
+ "X-KDE-Keywords[ar]": "مدير ملفّات ملفات الملفّات الملفات",
+ "X-KDE-Keywords[ast]": "xestor de ficheros",
+ "X-KDE-Keywords[az]": "fayl meneceri",
+ "X-KDE-Keywords[ca@valencia]": "gestor de fitxers",
+ "X-KDE-Keywords[ca]": "gestor de fitxers",
+ "X-KDE-Keywords[cs]": "správce souborů",
+ "X-KDE-Keywords[da]": "filhåndtering",
+ "X-KDE-Keywords[de]": "Dateiverwaltung",
+ "X-KDE-Keywords[el]": "διαχειριστής αρχείων",
+ "X-KDE-Keywords[en_GB]": "file manager",
+ "X-KDE-Keywords[es]": "gestor de archivos",
+ "X-KDE-Keywords[et]": "failihaldur",
+ "X-KDE-Keywords[eu]": "Fitxategi-kudeatzailea",
+ "X-KDE-Keywords[fi]": "tiedostonhallinta",
+ "X-KDE-Keywords[fr]": "gestionnaire de fichiers",
+ "X-KDE-Keywords[gl]": "xestor de ficheiros",
+ "X-KDE-Keywords[he]": "מנהל קבצים",
+ "X-KDE-Keywords[hi]": "फ़ाइल प्रबंधक",
+ "X-KDE-Keywords[hu]": "fájlkezelő",
+ "X-KDE-Keywords[ia]": "gerente de file",
+ "X-KDE-Keywords[id]": "pengelola file",
+ "X-KDE-Keywords[is]": "skráastjóri",
+ "X-KDE-Keywords[it]": "gestore dei file",
+ "X-KDE-Keywords[ja]": "ファイルマネージャ",
+ "X-KDE-Keywords[ko]": "파일 관리자",
+ "X-KDE-Keywords[lt]": "failų tvarkytuvė",
+ "X-KDE-Keywords[lv]": "datņu pārvaldnieks",
+ "X-KDE-Keywords[ml]": "ഫയൽ മാനേജർ",
+ "X-KDE-Keywords[my]": "ဖိုင်လ်မန်နေဂျာ",
+ "X-KDE-Keywords[nb]": "filbehandler",
+ "X-KDE-Keywords[nl]": "bestandsbeheerder",
+ "X-KDE-Keywords[nn]": "filhandsamar",
+ "X-KDE-Keywords[pa]": "ਫਾਇਲ ਮੈਨੇਜਰ",
+ "X-KDE-Keywords[pl]": "zarządzanie plikami",
+ "X-KDE-Keywords[pt]": "gestor de ficheiros",
+ "X-KDE-Keywords[pt_BR]": "gerenciador de arquivos",
+ "X-KDE-Keywords[ro]": "gestionar de fișiere",
+ "X-KDE-Keywords[ru]": "диспетчер файлов",
+ "X-KDE-Keywords[sk]": "správca súborov",
+ "X-KDE-Keywords[sl]": "upravljalnik datotek",
+ "X-KDE-Keywords[sr@ijekavian]": "file manager,менаџер фајлова",
+ "X-KDE-Keywords[sr@ijekavianlatin]": "file manager,menadžer fajlova",
+ "X-KDE-Keywords[sr@latin]": "file manager,menadžer fajlova",
+ "X-KDE-Keywords[sr]": "file manager,менаџер фајлова",
+ "X-KDE-Keywords[sv]": "filhanterare",
+ "X-KDE-Keywords[ta]": "file manager,கோப்பு மேலாளர், கோப்பு நிர்வாகி, கோப்பு உலாவி",
+ "X-KDE-Keywords[tr]": "dosya yöneticisi",
+ "X-KDE-Keywords[uk]": "менеджер,керування,файл,файли",
+ "X-KDE-Keywords[vi]": "file manager,trình quản lí tệp",
+ "X-KDE-Keywords[x-test]": "xxfile managerxx",
+ "X-KDE-Keywords[zh_CN]": "文件管理器",
+ "X-KDE-Keywords[zh_TW]": "檔案管理員"
+}
+++ /dev/null
-Name=Dolphin View Modes
-Name[ar]=أوضاع المنظور في دولفين
-Name[ast]=Moos de vista de Dolphin
-Name[az]=Dolphin baxış rejimi
-Name[ca]=Modes de vista del Dolphin
-Name[ca@valencia]=Modes de vista de Dolphin
-Name[cs]=Režimy pohledů Dolphinu
-Name[da]=Dolphins visningstilstande
-Name[de]=Dolphin-Ansichtsmodi
-Name[el]=Dolphin Λειτουργίες Προβολής
-Name[en_GB]=Dolphin View Modes
-Name[es]=Modos de vistas de Dolphin
-Name[et]=Dolphini vaaterežiimid
-Name[eu]=Dolphin ikuspegi moduak
-Name[fi]=Dolphin – näkymät
-Name[fr]=Modes d'affichage de Dolphin
-Name[gl]=Modos de vista de Dolphin
-Name[hi]=डॉल्फ़िन दृश्य मोड
-Name[hu]=Dolphin: Nézetmódok
-Name[ia]=Modos de vista de Dolphin
-Name[id]=Mode Tampilan Dolphin
-Name[is]=Skoðunarhamir Dolphin
-Name[it]=Viste di Dolphin
-Name[ja]=Dolphin 表示モード
-Name[ko]=Dolphin 보기 모드
-Name[lt]=Dolphin rodinio veiksenos
-Name[lv]=Dolphin skata režīmi
-Name[ml]=ഡോള്ഫിന് അവതരണദശകള്
-Name[my]=လင်းပိုင် မြင်ကွင်းထုံးနည်းများ
-Name[nb]=Dolphin visningsmåter
-Name[nl]=Dolphin-weergavemodussen
-Name[nn]=Dolphin-visingar
-Name[pa]=ਡਾਲਫਿਨ ਝਲਕ ਢੰਗ
-Name[pl]=Tryby widoku Dolphina
-Name[pt]=Modos de Visualização do Dolphin
-Name[pt_BR]=Modos de exibição do Dolphin
-Name[ro]=Dolphin – Regimuri de vizualizare
-Name[ru]=Режимы просмотра папок в Dolphin
-Name[se]=Dolphin čájehanmodusat
-Name[sk]=Režimy zobrazenia Dolphinu
-Name[sl]=Dolphin - načini prikaza
-Name[sr]=Делфинови режими приказа
-Name[sr@ijekavian]=Делфинови режими приказа
-Name[sr@ijekavianlatin]=Dolphinovi režimi prikaza
-Name[sr@latin]=Dolphinovi režimi prikaza
-Name[sv]=Dolphin visningslägen
-Name[ta]=டால்பின் காட்சிமுறைகள்
-Name[tr]=Dolphin Görünüm Kipleri
-Name[uk]=Режими перегляду Dolphin
-Name[vi]=Các chế độ xem Dolphin
-Name[x-test]=xxDolphin View Modesxx
-Name[zh_CN]=Dolphin 视图模式
-Name[zh_TW]=設定檔案管理員服務
-Comment=This service allows configuration of the Dolphin view modes.
-Comment[ar]=تسمح هذه الخدمة بضبط أوضاع المنظور في دولفين.
-Comment[ast]=Esti serviciu permite la configuración de los moos de vista de Dolphin.
-Comment[az]=Bu xidmət Dolphin baxış rejimini tənzimləməyə imkan verir
-Comment[ca]=Aquest servei permet la configuració dels modes de vista del Dolphin.
-Comment[ca@valencia]=Este servei permet la configuració dels modes de vista de Dolphin.
-Comment[cs]=Tato služba umožňuje nastavení režimů pohledu Dolphinu.
-Comment[da]=Denne tjeneste muliggør konfiguration af Dolphins visningstilstande.
-Comment[de]=Mit diesem Dienst können Dolphin-Ansichtsmodi eingerichtet werden.
-Comment[el]=Η υπηρεσία αυτή επιτρέπει τη διαμόρφωση των λειτουργιών προβολής του Dolphin
-Comment[en_GB]=This service allows configuration of the Dolphin view modes.
-Comment[es]=Este servicio permite configurar los modos de las vistas de Dolphin.
-Comment[et]=See teenus võimaldab seadistada Dolphini vaaterežiime.
-Comment[eu]=Zerbitzu honek Dolphinen ikuspegi moduak konfiguratzeko balio du.
-Comment[fi]=Tällä palvelulla voi muokata Dolphinin katselutilojen asetuksia.
-Comment[fr]=Ce service permet de configurer les modes d'affichage de Dolphin.
-Comment[gl]=Este servizo permite configurar os modos de vista de Dolphin.
-Comment[hi]=यह सेवा डॉल्फिन दृश्य मोड के विन्यास की अनुमति देती है।
-Comment[hu]=Ez a szolgáltatás lehetővé teszi a Dolphin nézetmódjainak beállítását.
-Comment[ia]=Iste servicio permitte configuration del modos de vista de Dolphin
-Comment[id]=Layanan ini memungkinkan konfigurasi mode tampilan Dolphin.
-Comment[is]=Þessi þjónusta leyfir stillingar á skoðunarhömum í Dolphin.
-Comment[it]=Questo servizio permette di configurare le viste di Dolphin.
-Comment[ja]=Dolphin の表示モードを設定します
-Comment[ko]=이 서비스를 통해 Dolphin 보기 모드를 설정할 수 있습니다.
-Comment[lt]=Ši paslauga leidžia Dolphin rodinio veiksenų konfigūravimą.
-Comment[lv]=Šis serviss ļauj konfigurēt Dolphin skata režīmus.
-Comment[ml]=ഡോള്ഫിന് അവതരണദശകള് ക്രമീകരിയ്ക്കാന് ഈ സേവനം അനുവദിയ്ക്കുന്നു.
-Comment[my]=ဤဝန်ဆောင်မှုက လင်းပိုင် မြင်ကွင်းထုံးနည်းများကို ပြင်ဆင်နိုင်စေသည်။
-Comment[nb]=Med denne tjenesten kan du sette opp Dolphins visningsmåter.
-Comment[nl]=Met deze dienst kunt u Dolphin-weergavemodussen configureren.
-Comment[nn]=Denne tenesta lèt deg setja opp Dolphin-visingsmodusar.
-Comment[pa]=ਇਹ ਸਰਵਿਸ ਡਾਲਫਿਨ ਝਲਕ ਮੋਡ ਦੀ ਸੰਰਚਨਾ ਵਾਸਤੇ ਹੈ।
-Comment[pl]=Ta usługa umożliwia ustawienie trybów widoku Dolphina.
-Comment[pt]=Este serviço permite a configuração dos modos de visualização do Dolphin.
-Comment[pt_BR]=Este serviço permite configurar os modos de exibição do Dolphin.
-Comment[ro]=Acest serviciu permite configurarea regimurilor de vizualizare Dolphin.
-Comment[ru]=Эта служба позволяет настраивать режимы просмотра папок в Dolphin
-Comment[sk]=Táto služba umožňuje nastavenie režimov zobrazenia Dolphinu.
-Comment[sl]=Ta storitev omogoča spreminjanje nastavitev načinov prikaza programa Dolphin.
-Comment[sr]=Овај сервис омогућава подешавање Делфинових режима приказа.
-Comment[sr@ijekavian]=Овај сервис омогућава подешавање Делфинових режима приказа.
-Comment[sr@ijekavianlatin]=Ovaj servis omogućava podešavanje Dolphinovih režima prikaza.
-Comment[sr@latin]=Ovaj servis omogućava podešavanje Dolphinovih režima prikaza.
-Comment[sv]=Den här tjänsten låter dig anpassa visningslägen i Dolphin.
-Comment[ta]=டால்பினின் காட்சிமுறைகளை அமைக்க இந்த சேவை உதவும்.
-Comment[tr]=Bu servis Dolphin görünüm kiplerini yapılandırmanızı sağlar.
-Comment[uk]=Ця служба надасть змогу налаштувати режими перегляду Dolphin.
-Comment[vi]=Dịch vụ này cho phép cấu hình các chế độ xem Dolphin.
-Comment[x-test]=xxThis service allows configuration of the Dolphin view modes.xx
-Comment[zh_CN]=此服务用于配置 Dolphin 的视图模式。
-Comment[zh_TW]=此服務允許設定 Dolphin 的檢視模式。
-
-[Desktop Entry]
-Icon=preferences-desktop-icons
-Type=Service
-X-KDE-ServiceTypes=KCModule
-
-X-KDE-Library=dolphin/kcms/kcm_dolphinviewmodes
-X-DocPath=dolphin/configuring-dolphin.html#preferences-dialog-viewmodes
-Name=View Modes
-Name[ar]=أوضاع المنظور
-Name[ast]=Moos de vista
-Name[az]=Baxış rejimləri
-Name[ca]=Modes de vista
-Name[ca@valencia]=Modes de vista
-Name[cs]=Režimy pohledu
-Name[da]=Visningstilstande
-Name[de]=Ansichts-Modi
-Name[el]=Λειτουργίες Προβολής
-Name[en_GB]=View Modes
-Name[es]=Modos de vistas
-Name[et]=Vaaterežiimid
-Name[eu]=Ikuspegi moduak
-Name[fi]=Näkymät
-Name[fr]=Modes d'affichage
-Name[gl]=Modos de vista
-Name[hi]=दृश्य मोड्स
-Name[hu]=Nézetmódok
-Name[ia]=Modos de vista
-Name[id]=Mode Tampilan
-Name[is]=Skoðunarhamur
-Name[it]=Viste
-Name[ja]=表示モード
-Name[ko]=보기 모드
-Name[lt]=Rodinio veiksenos
-Name[lv]=Skata režīmi
-Name[ml]=അവതരണ രീതികള്
-Name[my]=မြင်ကွင်းထုံးနည်းများ
-Name[nb]=Visningsmåter
-Name[nl]=Weergavemodi
-Name[nn]=Visingsmodusar
-Name[pa]=ਵੇਖਣ ਢੰਗ
-Name[pl]=Tryby widoku
-Name[pt]=Modos de Visualização
-Name[pt_BR]=Modos de exibição
-Name[ro]=Regimuri de vizualizare
-Name[ru]=Режимы просмотра
-Name[se]=Čájehanmodusat
-Name[sk]=Režimy zobrazenia
-Name[sl]=Načini prikaza
-Name[sr]=Режими приказа
-Name[sr@ijekavian]=Режими приказа
-Name[sr@ijekavianlatin]=Režimi prikaza
-Name[sr@latin]=Režimi prikaza
-Name[sv]=Visningslägen
-Name[ta]=காட்சிமுறைகள்
-Name[tr]=Görünüm Kipleri
-Name[uk]=Режими перегляду
-Name[vi]=Các chế độ xem
-Name[x-test]=xxView Modesxx
-Name[zh_CN]=视图模式
-Name[zh_TW]=檢視模式
-Comment=Configure file manager view modes
-Comment[ar]=اضبط أوضاع المنظور في مدير الملفّات
-Comment[ast]=Configura los moos de vista del xestor de ficheros
-Comment[az]=Fayl meneceri baxış rejimlərini tənzimləmək
-Comment[ca]=Configura els modes de vista del gestor de fitxers
-Comment[ca@valencia]=Configura els modes de vista del gestor de fitxers
-Comment[cs]=Nastavení režimů pohledu správce souborů
-Comment[da]=Indstil filhåndteringens visningstilstande
-Comment[de]=Dateiverwaltungs-Ansichten einrichten
-Comment[el]=Διαμόρφωση των λειτουργιών προβολής του διαχειριστή αρχείων
-Comment[en_GB]=Configure file manager view modes
-Comment[es]=Configura los modos de vistas del gestor de archivos
-Comment[et]=Failihalduri vaaterežiimide seadistamine
-Comment[eu]=Konfiguratu fitxategi-kudeatzailearen ikuspegi moduak
-Comment[fi]=Tiedostonhallinnan katselutilojen asetukset
-Comment[fr]=Configuration les modes d'affichage du gestionnaire de fichiers
-Comment[gl]=Configurar os modos de vista do xestor de ficheiros.
-Comment[hi]=फ़ाइल प्रबंधक दृश्य मोड विन्यस्त करें
-Comment[hu]=A fájlkezelő nézetmódjainak beállítása
-Comment[ia]=Configura le modos de vista del gerente de file
-Comment[id]=Konfigurasikan mode tampilan pengelola file
-Comment[is]=Stilla skoðunarhami í skráastjóra
-Comment[it]=Configura le viste del gestore dei file
-Comment[ja]=ファイルマネージャの表示モードを設定します
-Comment[ko]=파일 관리자 보기 모드 구성
-Comment[lt]=Konfigūruoti failų tvarkytuvės rodinio veiksenas
-Comment[lv]=Konfigurēt datņu pārvaldnieka skata režīmus
-Comment[ml]=ഫയല് മാനേജറിന്റെ അവതരണ രീതികള് ക്രമീകരിയ്ക്കുക
-Comment[my]=ဖိုင်လ်မန်နေဂျာ မြင်ကွင်းထုံးနည်းများ ပြင်ဆင်မည်
-Comment[nb]=Tilpass filbehandlerens visningsmåter
-Comment[nl]=Bestandsbeheerderweergavemodussen configureren
-Comment[nn]=Set opp visingsmodusane i filhandsamaren
-Comment[pa]=ਫਾਇਲ ਮੈਨੇਜਰ ਝਲਕ ਮੋਡ ਸੰਰਚਨਾ
-Comment[pl]=Ustawienia trybów widoku zarządzania plikami
-Comment[pt]=Configurar os modos de visualização do gestor de ficheiros
-Comment[pt_BR]=Configura os modos de exibição do gerenciador de arquivos
-Comment[ro]=Configurează regimurile de vizualizare ale gestionarului de fișiere
-Comment[ru]=Настройка режимов просмотра папок в диспетчере файлов
-Comment[se]=Heivet fiilagieđahalli čájehanmodusat
-Comment[sk]=Nastavenie režimov zobrazenia správcu súborov
-Comment[sl]=Nastavitve načinov prikaza upravljalnika datotek
-Comment[sr]=Подешавање режима приказа у менаџеру фајлова
-Comment[sr@ijekavian]=Подешавање режима приказа у менаџеру фајлова
-Comment[sr@ijekavianlatin]=Podešavanje režima prikaza u menadžeru fajlova
-Comment[sr@latin]=Podešavanje režima prikaza u menadžeru fajlova
-Comment[sv]=Anpassa filhanterarens visningslägen
-Comment[ta]=கோப்பு உலாவியின் காட்சிமுறைகளை அமையுங்கள்
-Comment[tr]=Dosya yöneticisi görünüm ayarlarını yapılandır
-Comment[uk]=Налаштувати режими перегляду менеджера файлів
-Comment[vi]=Cấu hình các chế độ xem trình quản lí tệp
-Comment[x-test]=xxConfigure file manager view modesxx
-Comment[zh_CN]=配置文件管理器视图模式
-Comment[zh_TW]=設定檔案管理員檢視模式
-X-KDE-Keywords=file manager
-X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات
-X-KDE-Keywords[ast]=xestor de ficheros
-X-KDE-Keywords[az]=fayl meneceri
-X-KDE-Keywords[ca]=gestor de fitxers
-X-KDE-Keywords[ca@valencia]=gestor de fitxers
-X-KDE-Keywords[cs]=správce souborů
-X-KDE-Keywords[da]=filhåndtering
-X-KDE-Keywords[de]=Dateiverwaltung
-X-KDE-Keywords[el]=διαχειριστής αρχείων
-X-KDE-Keywords[en_GB]=file manager
-X-KDE-Keywords[es]=gestor de archivos
-X-KDE-Keywords[et]=failihaldur
-X-KDE-Keywords[eu]=Fitxategi-kudeatzailea
-X-KDE-Keywords[fi]=tiedostonhallinta
-X-KDE-Keywords[fr]=gestionnaire de fichiers
-X-KDE-Keywords[gl]=xestor de ficheiros
-X-KDE-Keywords[he]=מנהל קבצים
-X-KDE-Keywords[hi]=फ़ाइल प्रबंधक
-X-KDE-Keywords[hu]=fájlkezelő
-X-KDE-Keywords[ia]=gerente de file
-X-KDE-Keywords[id]=pengelola file
-X-KDE-Keywords[is]=skráastjóri
-X-KDE-Keywords[it]=gestore dei file
-X-KDE-Keywords[ja]=ファイルマネージャ
-X-KDE-Keywords[ko]=파일 관리자
-X-KDE-Keywords[lt]=failų tvarkytuvė
-X-KDE-Keywords[lv]=datņu pārvaldnieks
-X-KDE-Keywords[ml]=ഫയൽ മാനേജർ
-X-KDE-Keywords[my]=ဖိုင်လ်မန်နေဂျာ
-X-KDE-Keywords[nb]=filbehandler
-X-KDE-Keywords[nl]=bestandsbeheerder
-X-KDE-Keywords[nn]=filhandsamar
-X-KDE-Keywords[pa]=ਫਾਇਲ ਮੈਨੇਜਰ
-X-KDE-Keywords[pl]=zarządzanie plikami
-X-KDE-Keywords[pt]=gestor de ficheiros
-X-KDE-Keywords[pt_BR]=gerenciador de arquivos
-X-KDE-Keywords[ro]=gestionar de fișiere
-X-KDE-Keywords[ru]=диспетчер файлов
-X-KDE-Keywords[sk]=správca súborov
-X-KDE-Keywords[sl]=upravljalnik datotek
-X-KDE-Keywords[sr]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavian]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavianlatin]=file manager,menadžer fajlova
-X-KDE-Keywords[sr@latin]=file manager,menadžer fajlova
-X-KDE-Keywords[sv]=filhanterare
-X-KDE-Keywords[ta]=file manager,கோப்பு மேலாளர், கோப்பு நிர்வாகி, கோப்பு உலாவி
-X-KDE-Keywords[tr]=dosya yöneticisi
-X-KDE-Keywords[uk]=менеджер,керування,файл,файли
-X-KDE-Keywords[vi]=file manager,trình quản lí tệp
-X-KDE-Keywords[x-test]=xxfile managerxx
-X-KDE-Keywords[zh_CN]=文件管理器
-X-KDE-Keywords[zh_TW]=檔案管理員
--- /dev/null
+{
+ "KPlugin": {
+ "Description": "Configure file manager view modes",
+ "Description[ar]": "اضبط أوضاع العرض في مدير الملفّات",
+ "Description[ca@valencia]": "Configura els modes de vista del gestor de fitxers",
+ "Description[ca]": "Configura els modes de vista del gestor de fitxers",
+ "Description[es]": "Configurar los modos de vistas del gestor de archivos",
+ "Description[fr]": "Configurer les modes d'affichage du gestionnaire de fichiers",
+ "Description[it]": "Configura le viste del gestore dei file",
+ "Description[nl]": "Bestandsbeheerderweergavemodussen configureren",
+ "Description[ro]": "Configurează regimurile de vizualizare ale gestionarului de fișiere",
+ "Description[sl]": "Postavi načine prikaza upravljalnika datotek",
+ "Description[sv]": "Anpassa filhanterarens visningslägen",
+ "Description[ta]": "கோப்பு உலாவியின் காட்சிமுறைகளை அமையுங்கள்",
+ "Description[tr]": "Dosya yöneticisi görünüm kiplerini yapılandır",
+ "Description[uk]": "Налаштувати режими перегляду менеджера файлів",
+ "Description[x-test]": "xxConfigure file manager view modesxx",
+ "Description[zh_CN]": "配置文件管理器视图模式",
+ "Icon": "preferences-desktop-icons",
+ "Name": "View Modes",
+ "Name[ar]": "أوضاع المنظور",
+ "Name[ast]": "Moos de vista",
+ "Name[az]": "Baxış rejimləri",
+ "Name[ca@valencia]": "Modes de vista",
+ "Name[ca]": "Modes de vista",
+ "Name[cs]": "Režimy pohledu",
+ "Name[da]": "Visningstilstande",
+ "Name[de]": "Ansichts-Modi",
+ "Name[el]": "Λειτουργίες Προβολής",
+ "Name[en_GB]": "View Modes",
+ "Name[es]": "Modos de vistas",
+ "Name[et]": "Vaaterežiimid",
+ "Name[eu]": "Ikuspegi moduak",
+ "Name[fi]": "Näkymät",
+ "Name[fr]": "Modes d'affichage",
+ "Name[gl]": "Modos de vista",
+ "Name[hi]": "दृश्य मोड्स",
+ "Name[hu]": "Nézetmódok",
+ "Name[ia]": "Modos de vista",
+ "Name[id]": "Mode Tampilan",
+ "Name[is]": "Skoðunarhamur",
+ "Name[it]": "Viste",
+ "Name[ja]": "表示モード",
+ "Name[ko]": "보기 모드",
+ "Name[lt]": "Rodinio veiksenos",
+ "Name[lv]": "Skata režīmi",
+ "Name[ml]": "അവതരണ രീതികള്",
+ "Name[my]": "မြင်ကွင်းထုံးနည်းများ",
+ "Name[nb]": "Visningsmåter",
+ "Name[nl]": "Weergavemodi",
+ "Name[nn]": "Visingsmodusar",
+ "Name[pa]": "ਵੇਖਣ ਢੰਗ",
+ "Name[pl]": "Tryby widoku",
+ "Name[pt]": "Modos de Visualização",
+ "Name[pt_BR]": "Modos de exibição",
+ "Name[ro]": "Regimuri de vizualizare",
+ "Name[ru]": "Режимы просмотра",
+ "Name[se]": "Čájehanmodusat",
+ "Name[sk]": "Režimy zobrazenia",
+ "Name[sl]": "Načini prikaza",
+ "Name[sr@ijekavian]": "Режими приказа",
+ "Name[sr@ijekavianlatin]": "Režimi prikaza",
+ "Name[sr@latin]": "Režimi prikaza",
+ "Name[sr]": "Режими приказа",
+ "Name[sv]": "Visningslägen",
+ "Name[ta]": "காட்சிமுறைகள்",
+ "Name[tr]": "Görünüm Kipleri",
+ "Name[uk]": "Режими перегляду",
+ "Name[vi]": "Các chế độ xem",
+ "Name[x-test]": "xxView Modesxx",
+ "Name[zh_CN]": "视图模式",
+ "Name[zh_TW]": "檢視模式",
+ "ServiceTypes": [
+ "KCModule"
+ ]
+ },
+ "X-DocPath": "dolphin/configuring-dolphin.html#preferences-dialog-viewmodes",
+ "X-KDE-Keywords": "file manager",
+ "X-KDE-Keywords[ar]": "مدير ملفّات ملفات الملفّات الملفات",
+ "X-KDE-Keywords[ast]": "xestor de ficheros",
+ "X-KDE-Keywords[az]": "fayl meneceri",
+ "X-KDE-Keywords[ca@valencia]": "gestor de fitxers",
+ "X-KDE-Keywords[ca]": "gestor de fitxers",
+ "X-KDE-Keywords[cs]": "správce souborů",
+ "X-KDE-Keywords[da]": "filhåndtering",
+ "X-KDE-Keywords[de]": "Dateiverwaltung",
+ "X-KDE-Keywords[el]": "διαχειριστής αρχείων",
+ "X-KDE-Keywords[en_GB]": "file manager",
+ "X-KDE-Keywords[es]": "gestor de archivos",
+ "X-KDE-Keywords[et]": "failihaldur",
+ "X-KDE-Keywords[eu]": "Fitxategi-kudeatzailea",
+ "X-KDE-Keywords[fi]": "tiedostonhallinta",
+ "X-KDE-Keywords[fr]": "gestionnaire de fichiers",
+ "X-KDE-Keywords[gl]": "xestor de ficheiros",
+ "X-KDE-Keywords[he]": "מנהל קבצים",
+ "X-KDE-Keywords[hi]": "फ़ाइल प्रबंधक",
+ "X-KDE-Keywords[hu]": "fájlkezelő",
+ "X-KDE-Keywords[ia]": "gerente de file",
+ "X-KDE-Keywords[id]": "pengelola file",
+ "X-KDE-Keywords[is]": "skráastjóri",
+ "X-KDE-Keywords[it]": "gestore dei file",
+ "X-KDE-Keywords[ja]": "ファイルマネージャ",
+ "X-KDE-Keywords[ko]": "파일 관리자",
+ "X-KDE-Keywords[lt]": "failų tvarkytuvė",
+ "X-KDE-Keywords[lv]": "datņu pārvaldnieks",
+ "X-KDE-Keywords[ml]": "ഫയൽ മാനേജർ",
+ "X-KDE-Keywords[my]": "ဖိုင်လ်မန်နေဂျာ",
+ "X-KDE-Keywords[nb]": "filbehandler",
+ "X-KDE-Keywords[nl]": "bestandsbeheerder",
+ "X-KDE-Keywords[nn]": "filhandsamar",
+ "X-KDE-Keywords[pa]": "ਫਾਇਲ ਮੈਨੇਜਰ",
+ "X-KDE-Keywords[pl]": "zarządzanie plikami",
+ "X-KDE-Keywords[pt]": "gestor de ficheiros",
+ "X-KDE-Keywords[pt_BR]": "gerenciador de arquivos",
+ "X-KDE-Keywords[ro]": "gestionar de fișiere",
+ "X-KDE-Keywords[ru]": "диспетчер файлов",
+ "X-KDE-Keywords[sk]": "správca súborov",
+ "X-KDE-Keywords[sl]": "upravljalnik datotek",
+ "X-KDE-Keywords[sr@ijekavian]": "file manager,менаџер фајлова",
+ "X-KDE-Keywords[sr@ijekavianlatin]": "file manager,menadžer fajlova",
+ "X-KDE-Keywords[sr@latin]": "file manager,menadžer fajlova",
+ "X-KDE-Keywords[sr]": "file manager,менаџер фајлова",
+ "X-KDE-Keywords[sv]": "filhanterare",
+ "X-KDE-Keywords[ta]": "file manager,கோப்பு மேலாளர், கோப்பு நிர்வாகி, கோப்பு உலாவி",
+ "X-KDE-Keywords[tr]": "dosya yöneticisi",
+ "X-KDE-Keywords[uk]": "менеджер,керування,файл,файли",
+ "X-KDE-Keywords[vi]": "file manager,trình quản lí tệp",
+ "X-KDE-Keywords[x-test]": "xxfile managerxx",
+ "X-KDE-Keywords[zh_CN]": "文件管理器",
+ "X-KDE-Keywords[zh_TW]": "檔案管理員"
+}
#include <QWidget>
#include <KIO/EmptyTrashJob>
-#include <KIOWidgets/KDirLister>
+#include <KDirLister>
class Trash: public QObject
{
}
const KFileItem item = m_model->fileItem(index);
- Q_EMIT requestContextMenu(pos.toPoint(), item, url(), QList<QAction*>());
+ Q_EMIT requestContextMenu(pos.toPoint(), item, selectedItems(), url());
}
void DolphinView::slotViewContextMenuRequested(const QPointF& pos)
{
- Q_EMIT requestContextMenu(pos.toPoint(), KFileItem(), url(), QList<QAction*>());
+ Q_EMIT requestContextMenu(pos.toPoint(), KFileItem(), selectedItems(), url());
}
void DolphinView::slotHeaderContextMenuRequested(const QPointF& pos)
/**
* Is emitted if a context menu is requested for the item \a item,
* which is part of \a url. If the item is null, the context menu
- * for the URL should be shown and the custom actions \a customActions
- * will be added.
+ * for the URL should be shown.
*/
void requestContextMenu(const QPoint& pos,
const KFileItem& item,
- const QUrl& url,
- const QList<QAction*>& customActions);
+ const KFileItemList &selectedItems,
+ const QUrl& url);
/**
* Is emitted if an information message with the content \a msg
#include "dolphinviewactionhandler.h"
#include "dolphindebug.h"
+#include "kitemviews/kfileitemlisttostring.h"
#include "kitemviews/kfileitemmodel.h"
#include "settings/viewpropertiesdialog.h"
#include "views/zoomlevelinfo.h"
QAction* descending = m_actionCollection->action(QStringLiteral("descending"));
QAction* ascending = m_actionCollection->action(QStringLiteral("ascending"));
- if (role == "text" || role == "type" || role == "tags" || role == "comment") {
+ if (role == "text" || role == "type" || role == "extension" || role == "tags" || role == "comment") {
descending->setText(i18nc("Sort descending", "Z-A"));
ascending->setText(i18nc("Sort ascending", "A-Z"));
} else if (role == "size") {
void DolphinViewActionHandler::slotSelectionChanged(const KFileItemList& selection)
{
QString basicActionsMenuText;
- switch (selection.count()) {
- case 0:
+ if (selection.isEmpty()) {
basicActionsMenuText =
i18nc("@action:inmenu menu with actions like copy, paste, rename. The user's selection is empty when this text is shown.",
"Actions for Current View");
- break;
- case 1:
- basicActionsMenuText =
- i18nc("@action:inmenu menu with actions like copy, paste, rename. %1 is the name of the singular selected file/folder.",
- "Actions for \"%1\"", selection.first().name());
- break;
- case 2:
- basicActionsMenuText =
- i18nc("@action:inmenu menu with actions like copy, paste, rename. %1 and %2 are names of files/folders.",
- "Actions for \"%1\" and \"%2\"", selection.first().name(), selection.last().name());
- break;
- case 3:
- basicActionsMenuText =
- i18nc("@action:inmenu menu with actions like copy, paste, rename. %1, %2 and %3 are names of files/folders.",
- "Actions for \"%1\", \"%2\" and \"%3\"",
- selection.first().name(), selection.at(1).name(), selection.last().name());
- break;
- default:
- basicActionsMenuText = QString();
- break;
+ } else {
+ QFontMetrics fontMetrics = QMenu().fontMetrics();
+ // i18n: @action:inmenu menu with actions like copy, paste, rename.
+ // %1 is a textual representation of the currently selected files or folders. This can be the name of
+ // the file/files like "file1" or "file1, file2 and file3" or an aggregate like "8 Selected Folders".
+ // If this sort of word puzzle can not be correctly translated in your language, translate it as "NULL" (without the quotes)
+ // and a fallback will be used.
+ basicActionsMenuText = i18n("Actions for %1", fileItemListToString(selection, fontMetrics.averageCharWidth() * 40, fontMetrics, ItemsState::Selected));
}
- // At some point the added clarity from the text starts being less important than the menu width.
- if (basicActionsMenuText.isEmpty() || basicActionsMenuText.length() > 40) {
+ if (basicActionsMenuText == QStringLiteral("NULL")) {
const KFileItemListProperties properties(selection);
- if (properties.isFile()) {
- basicActionsMenuText =
- i18ncp("@action:inmenu menu with actions like copy, paste, rename. %1 is the amount of selected files/folders.",
- "Actions for One Selected File", "Actions for %1 Selected Files", selection.count());
- } else if (properties.isDirectory()) {
- basicActionsMenuText =
- i18ncp("@action:inmenu menu with actions like copy, paste, rename. %1 is the amount of selected files/folders.",
- "Actions for One Selected Folder", "Actions for %1 Selected Folders", selection.count());
- } else {
- basicActionsMenuText =
- i18ncp("@action:inmenu menu with actions like copy, paste, rename. %1 is the amount of selected files/folders.",
- "Actions for One Selected Item", "Actions for %1 Selected Items", selection.count());
- }
+ basicActionsMenuText =
+ i18ncp("@action:inmenu menu with actions like copy, paste, rename. %1 is the amount of selected files/folders.",
+ "Actions for One Selected Item", "Actions for %1 Selected Items", selection.count());
}
QAction *basicActionsMenu = m_actionCollection->action(QStringLiteral("basic_actions"));
m_showToolTipTimer(nullptr),
m_contentRetrievalTimer(nullptr),
m_transientParent(nullptr),
- m_fileMetaDataWidget(nullptr),
m_toolTipRequested(false),
m_metaDataRequested(false),
m_appliedWaitCursor(false),
ToolTipManager::~ToolTipManager()
{
+ if (!m_fileMetaDatWidgetOwnershipTransferred) {
+ delete m_fileMetaDataWidget;
+ }
}
void ToolTipManager::showToolTip(const KFileItem& item, const QRectF& itemRect, QWindow *transientParent)
{
- hideToolTip();
+ hideToolTip(HideBehavior::Instantly);
m_itemRect = itemRect.toRect();
// Only start the retrieving of the content, when the mouse has been over this
// item for 200 milliseconds. This prevents a lot of useless preview jobs and
// meta data retrieval, when passing rapidly over a lot of items.
- m_fileMetaDataWidget.reset(new DolphinFileMetaDataWidget());
- connect(m_fileMetaDataWidget.data(), &DolphinFileMetaDataWidget::metaDataRequestFinished,
- this, &ToolTipManager::slotMetaDataRequestFinished);
- connect(m_fileMetaDataWidget.data(), &DolphinFileMetaDataWidget::urlActivated,
- this, &ToolTipManager::urlActivated);
+ if (!m_fileMetaDataWidget) {
+ m_fileMetaDataWidget = new DolphinFileMetaDataWidget();
+ connect(m_fileMetaDataWidget, &DolphinFileMetaDataWidget::metaDataRequestFinished, this, &ToolTipManager::slotMetaDataRequestFinished);
+ connect(m_fileMetaDataWidget, &DolphinFileMetaDataWidget::urlActivated, this, &ToolTipManager::urlActivated);
+ }
m_contentRetrievalTimer->start();
m_showToolTipTimer->start();
if (!m_tooltipWidget) {
m_tooltipWidget.reset(new KToolTipWidget());
}
- m_tooltipWidget->showBelow(m_itemRect, m_fileMetaDataWidget.data(), m_transientParent);
+ m_tooltipWidget->showBelow(m_itemRect, m_fileMetaDataWidget, m_transientParent);
+ // At this point KToolTipWidget adopted our parent-less metadata widget.
+ m_fileMetaDatWidgetOwnershipTransferred = true;
+
m_toolTipRequested = false;
}
QWindow* m_transientParent;
QScopedPointer<KToolTipWidget> m_tooltipWidget;
- QScopedPointer<DolphinFileMetaDataWidget> m_fileMetaDataWidget;
+ DolphinFileMetaDataWidget *m_fileMetaDataWidget = nullptr;
+
+ /// Whether ownership of the metadata widget was transferred
+ /// over to the KToolTipWidget (i.e. we should not delete it
+ /// anymore)
+ bool m_fileMetaDatWidgetOwnershipTransferred = false;
bool m_toolTipRequested;
bool m_metaDataRequested;