diff options
| author | arnav dhamija <[email protected]> | 2016-09-25 23:13:22 +0530 |
|---|---|---|
| committer | arnav dhamija <[email protected]> | 2016-09-25 23:13:22 +0530 |
| commit | 67099640b90588af1c72c340756253400da3e95b (patch) | |
| tree | 16fe472cc13677496793c2a4967097e978379ef4 /src | |
| parent | ccd0a74eed22c35b5eb72e6f46e747f621169732 (diff) | |
| parent | 1710304e9ba926d2aec4226d00974b826f9bcbc0 (diff) | |
Merge branch 'master' of git.kde.org:dolphin
Diffstat (limited to 'src')
42 files changed, 267 insertions, 134 deletions
diff --git a/src/dbusinterface.cpp b/src/dbusinterface.cpp index f9f1a6b22..124761ea0 100644 --- a/src/dbusinterface.cpp +++ b/src/dbusinterface.cpp @@ -41,7 +41,7 @@ void DBusInterface::ShowFolders(const QStringList& uriList, const QString& start if (urls.isEmpty()) { return; } - KRun::run(QStringLiteral("dolphin %u"), urls, nullptr); + KRun::run(QStringLiteral("dolphin %U"), urls, nullptr); } void DBusInterface::ShowItems(const QStringList& uriList, const QString& startUpId) @@ -51,7 +51,7 @@ void DBusInterface::ShowItems(const QStringList& uriList, const QString& startUp if (urls.isEmpty()) { return; } - KRun::run(QStringLiteral("dolphin --select %u"), urls, nullptr); + KRun::run(QStringLiteral("dolphin --select %U"), urls, nullptr); } void DBusInterface::ShowItemProperties(const QStringList& uriList, const QString& startUpId) diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index dfec76144..971ef1e35 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -37,6 +37,7 @@ #include <KJobWidgets> #include <KMimeTypeTrader> #include <KNewFileMenu> +#include <KPluginMetaData> #include <KService> #include <KLocalizedString> #include <KStandardAction> @@ -47,6 +48,7 @@ #include <QKeyEvent> #include <QMenuBar> #include <QMenu> +#include <QMimeDatabase> #include <panels/places/placesitem.h> #include <panels/places/placesitemmodel.h> @@ -496,13 +498,10 @@ void DolphinContextMenu::addFileItemPluginActions() } const KService::List pluginServices = KMimeTypeTrader::self()->query(commonMimeType, QStringLiteral("KFileItemAction/Plugin"), QStringLiteral("exist Library")); - if (pluginServices.isEmpty()) { - return; - } - const KConfig config(QStringLiteral("kservicemenurc"), KConfig::NoGlobals); const KConfigGroup showGroup = config.group("Show"); + QSet<QString> addedPlugins; foreach (const KService::Ptr& service, pluginServices) { if (!showGroup.readEntry(service->desktopEntryName(), true)) { // The plugin has been disabled @@ -513,6 +512,42 @@ void DolphinContextMenu::addFileItemPluginActions() if (abstractPlugin) { abstractPlugin->setParent(this); addActions(abstractPlugin->actions(props, m_mainWindow)); + addedPlugins << service->desktopEntryName(); + } + } + + const auto jsonPlugins = KPluginLoader::findPlugins(QStringLiteral("kf5/kfileitemaction"), [=](const KPluginMetaData& metaData) { + if (!metaData.serviceTypes().contains(QStringLiteral("KFileItemAction/Plugin"))) { + return false; + } + + auto mimeType = QMimeDatabase().mimeTypeForName(commonMimeType); + foreach (const auto& supportedMimeType, metaData.mimeTypes()) { + if (mimeType.inherits(supportedMimeType)) { + return true; + } + } + + return false; + }); + + foreach (const auto& jsonMetadata, jsonPlugins) { + // The plugin has been disabled + if (!showGroup.readEntry(jsonMetadata.pluginId(), true)) { + continue; + } + + // The plugin also has a .desktop file and has already been added. + if (addedPlugins.contains(jsonMetadata.pluginId())) { + continue; + } + + KPluginFactory *factory = KPluginLoader(jsonMetadata.fileName()).factory(); + KAbstractFileItemActionPlugin* abstractPlugin = factory->create<KAbstractFileItemActionPlugin>(); + if (abstractPlugin) { + abstractPlugin->setParent(this); + addActions(abstractPlugin->actions(props, m_mainWindow)); + addedPlugins << jsonMetadata.pluginId(); } } } diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index d4f2b06e7..4d97fc1b1 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -48,7 +48,9 @@ #include <KActionCollection> #include <KActionMenu> +#include <KAuthorized> #include <KConfig> +#include <kconfigwidgets_version.h> #include <kdualaction.h> #include <KJobWidgets> #include <QLineEdit> @@ -82,7 +84,7 @@ namespace { // Used for GeneralSettings::version() to determine whether // an updated version of Dolphin is running. const int CurrentDolphinVersion = 200; -}; +} DolphinMainWindow::DolphinMainWindow() : KXmlGuiWindow(0), @@ -867,6 +869,10 @@ void DolphinMainWindow::updateControlMenu() helpMenu->addSeparator(); helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::ReportBug))); helpMenu->addSeparator(); +#if KCONFIGWIDGETS_VERSION >= QT_VERSION_CHECK(5, 26, 0) + helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Donate))); + helpMenu->addSeparator(); +#endif helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::SwitchApplicationLanguage))); helpMenu->addSeparator(); helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::AboutApp))); @@ -1098,11 +1104,13 @@ void DolphinMainWindow::setupActions() compareFiles->setEnabled(false); connect(compareFiles, &QAction::triggered, this, &DolphinMainWindow::compareFiles); - QAction* openTerminal = actionCollection()->addAction(QStringLiteral("open_terminal")); - openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal")); - openTerminal->setIcon(QIcon::fromTheme(QStringLiteral("utilities-terminal"))); - actionCollection()->setDefaultShortcut(openTerminal, Qt::SHIFT | Qt::Key_F4); - connect(openTerminal, &QAction::triggered, this, &DolphinMainWindow::openTerminal); + if (KAuthorized::authorize(QStringLiteral("shell_access"))) { + QAction* openTerminal = actionCollection()->addAction(QStringLiteral("open_terminal")); + openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal")); + openTerminal->setIcon(QIcon::fromTheme(QStringLiteral("utilities-terminal"))); + actionCollection()->setDefaultShortcut(openTerminal, Qt::SHIFT | Qt::Key_F4); + connect(openTerminal, &QAction::triggered, this, &DolphinMainWindow::openTerminal); + } // setup 'Settings' menu KToggleAction* showMenuBar = KStandardAction::showMenubar(0, 0, actionCollection()); @@ -1205,33 +1213,36 @@ void DolphinMainWindow::setupDockWidgets() // Setup "Terminal" #ifndef Q_OS_WIN - DolphinDockWidget* terminalDock = new DolphinDockWidget(i18nc("@title:window Shell terminal", "Terminal")); - terminalDock->setLocked(lock); - terminalDock->setObjectName(QStringLiteral("terminalDock")); - terminalDock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea); - TerminalPanel* terminalPanel = new TerminalPanel(terminalDock); - terminalPanel->setCustomContextMenuActions({lockLayoutAction}); - terminalDock->setWidget(terminalPanel); + if (KAuthorized::authorize(QStringLiteral("shell_access"))) { + DolphinDockWidget* terminalDock = new DolphinDockWidget(i18nc("@title:window Shell terminal", "Terminal")); + terminalDock->setLocked(lock); + terminalDock->setObjectName(QStringLiteral("terminalDock")); + terminalDock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea); + TerminalPanel* terminalPanel = new TerminalPanel(terminalDock); + terminalPanel->setCustomContextMenuActions({lockLayoutAction}); + terminalDock->setWidget(terminalPanel); - connect(terminalPanel, &TerminalPanel::hideTerminalPanel, terminalDock, &DolphinDockWidget::hide); - connect(terminalPanel, &TerminalPanel::changeUrl, this, &DolphinMainWindow::slotTerminalDirectoryChanged); - connect(terminalDock, &DolphinDockWidget::visibilityChanged, - terminalPanel, &TerminalPanel::dockVisibilityChanged); + connect(terminalPanel, &TerminalPanel::hideTerminalPanel, terminalDock, &DolphinDockWidget::hide); + connect(terminalPanel, &TerminalPanel::changeUrl, this, &DolphinMainWindow::slotTerminalDirectoryChanged); + connect(terminalDock, &DolphinDockWidget::visibilityChanged, + terminalPanel, &TerminalPanel::dockVisibilityChanged); - QAction* terminalAction = terminalDock->toggleViewAction(); - createPanelAction(QIcon::fromTheme(QStringLiteral("utilities-terminal")), Qt::Key_F4, terminalAction, QStringLiteral("show_terminal_panel")); + QAction* terminalAction = terminalDock->toggleViewAction(); + createPanelAction(QIcon::fromTheme(QStringLiteral("utilities-terminal")), Qt::Key_F4, terminalAction, QStringLiteral("show_terminal_panel")); - addDockWidget(Qt::BottomDockWidgetArea, terminalDock); - connect(this, &DolphinMainWindow::urlChanged, - terminalPanel, &TerminalPanel::setUrl); + addDockWidget(Qt::BottomDockWidgetArea, terminalDock); + connect(this, &DolphinMainWindow::urlChanged, + terminalPanel, &TerminalPanel::setUrl); + + if (GeneralSettings::version() < 200) { + terminalDock->hide(); + } + } #endif if (GeneralSettings::version() < 200) { infoDock->hide(); foldersDock->hide(); -#ifndef Q_OS_WIN - terminalDock->hide(); -#endif } // Setup "Places" diff --git a/src/dolphinpart.cpp b/src/dolphinpart.cpp index 01fe207f3..332f8e9b9 100644 --- a/src/dolphinpart.cpp +++ b/src/dolphinpart.cpp @@ -31,7 +31,7 @@ #include <KPluginFactory> #include <KRun> #include <KToolInvocation> -#include <kauthorized.h> +#include <KAuthorized> #include <QMenu> #include <KSharedConfig> #include <KConfigGroup> @@ -222,7 +222,7 @@ void DolphinPart::createActions() m_findFileAction->setIcon(QIcon::fromTheme(QStringLiteral("edit-find"))); connect(m_findFileAction, &QAction::triggered, this, &DolphinPart::slotFindFile); - if (KAuthorized::authorizeKAction(QStringLiteral("shell_access"))) { + if (KAuthorized::authorize(QStringLiteral("shell_access"))) { m_openTerminalAction = actionCollection()->addAction(QStringLiteral("open_terminal")); m_openTerminalAction->setIcon(QIcon::fromTheme(QStringLiteral("utilities-terminal"))); m_openTerminalAction->setText(i18nc("@action:inmenu Tools", "Open &Terminal")); diff --git a/src/dolphinpart.desktop b/src/dolphinpart.desktop index 830fab2a2..a4bac816f 100644 --- a/src/dolphinpart.desktop +++ b/src/dolphinpart.desktop @@ -6,10 +6,12 @@ Name[ast]=Vista de Dolphin Name[ca]=Vista del Dolphin Name[ca@valencia]=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[fi]=Dolphin-näkymä Name[fr]=Vue de Dolphin Name[gl]=Vista de Dolphin @@ -66,6 +68,7 @@ Name[de]=Symbole Name[el]=Εικονίδια Name[en_GB]=Icons Name[es]=Iconos +Name[et]=Ikoonid Name[fi]=Kuvakkeet Name[fr]=Icônes Name[gl]=Iconas @@ -108,10 +111,12 @@ Name[ast]=Compautu Name[ca]=Compacta Name[ca@valencia]=Compacta Name[cs]=Kompaktní +Name[da]=Kompakt Name[de]=Kompakt Name[el]=Σύμπτυξη Name[en_GB]=Compact Name[es]=Compacto +Name[et]=Kompaktne Name[fi]=Tiivis Name[fr]=Concis Name[gl]=Compacta @@ -152,10 +157,12 @@ Name[ast]=Detalles Name[ca]=Detalls Name[ca@valencia]=Detalls Name[cs]=Podrobnosti +Name[da]=Detaljer Name[de]=Details Name[el]=Λεπτομέρειες Name[en_GB]=Details Name[es]=Detalles +Name[et]=Üksikasjad Name[fi]=Yksityiskohdat Name[fr]=Détails Name[gl]=Detalles diff --git a/src/dolphinremoveaction.cpp b/src/dolphinremoveaction.cpp index c91d74579..10ab25112 100644 --- a/src/dolphinremoveaction.cpp +++ b/src/dolphinremoveaction.cpp @@ -45,7 +45,7 @@ void DolphinRemoveAction::update() // Using setText(action->text()) does not apply the &-shortcut. // This is only done until the original action has been shown at least once. To // bypass this issue, the text and &-shortcut is applied manually. - if (qApp->keyboardModifiers() & Qt::ShiftModifier) { + if (qApp->queryKeyboardModifiers() & Qt::ShiftModifier) { m_action = m_collection ? m_collection->action(QStringLiteral("delete")) : 0; setText(i18nc("@action:inmenu", "&Delete")); } else { diff --git a/src/dolphintabpage.cpp b/src/dolphintabpage.cpp index 0382341c8..c674e1eb0 100644 --- a/src/dolphintabpage.cpp +++ b/src/dolphintabpage.cpp @@ -323,6 +323,18 @@ void DolphinTabPage::slotViewUrlRedirection(const QUrl& oldUrl, const QUrl& newU emit activeViewUrlChanged(newUrl); } +void DolphinTabPage::switchActiveView() +{ + if (!m_splitViewEnabled) { + return; + } + if (m_primaryViewActive) { + m_secondaryViewContainer->setActive(true); + } else { + m_primaryViewContainer->setActive(true); + } +} + DolphinViewContainer* DolphinTabPage::createViewContainer(const QUrl& url) const { DolphinViewContainer* container = new DolphinViewContainer(url, m_splitter); @@ -332,5 +344,8 @@ DolphinViewContainer* DolphinTabPage::createViewContainer(const QUrl& url) const connect(view, &DolphinView::activated, this, &DolphinTabPage::slotViewActivated); + connect(view, &DolphinView::toggleActiveViewRequested, + this, &DolphinTabPage::switchActiveView); + return container; } diff --git a/src/dolphintabpage.h b/src/dolphintabpage.h index b46daf350..9d180883a 100644 --- a/src/dolphintabpage.h +++ b/src/dolphintabpage.h @@ -149,6 +149,8 @@ private slots: */ void slotViewUrlRedirection(const QUrl& oldUrl, const QUrl& newUrl); + void switchActiveView(); + private: /** * Creates a new view container and does the default initialization. diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 73ffd5c2d..1c43fc977 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -95,7 +95,7 @@ DolphinViewContainer::DolphinViewContainer(const QUrl& url, QWidget* parent) : m_view = new DolphinView(url, this); connect(m_view, &DolphinView::urlChanged, - m_urlNavigator, &KUrlNavigator::setUrl); + m_urlNavigator, &KUrlNavigator::setLocationUrl); connect(m_view, &DolphinView::urlChanged, m_messageWidget, &KMessageWidget::hide); connect(m_view, &DolphinView::directoryLoadingCompleted, diff --git a/src/kitemviews/kfileitemmodelrolesupdater.cpp b/src/kitemviews/kfileitemmodelrolesupdater.cpp index e5353dc2a..92a020003 100644 --- a/src/kitemviews/kfileitemmodelrolesupdater.cpp +++ b/src/kitemviews/kfileitemmodelrolesupdater.cpp @@ -133,7 +133,7 @@ KFileItemModelRolesUpdater::KFileItemModelRolesUpdater(KFileItemModel* model, QO connect(m_directoryContentsCounter, &KDirectoryContentsCounter::result, this, &KFileItemModelRolesUpdater::slotDirectoryContentsCountReceived); - auto plugins = KPluginLoader::instantiatePlugins(QStringLiteral("kf5/overlayicon"), nullptr, this); + auto plugins = KPluginLoader::instantiatePlugins(QStringLiteral("kf5/overlayicon"), nullptr, qApp); foreach (QObject *it, plugins) { auto plugin = qobject_cast<KOverlayIconPlugin*>(it); if (plugin) { @@ -374,9 +374,9 @@ void KFileItemModelRolesUpdater::slotItemsRemoved(const KItemRangeList& itemRang m_balooFileMonitor->clear(); } else { QStringList newFileList; - foreach (const QString& itemUrl, m_balooFileMonitor->files()) { - if (m_model->index(itemUrl) >= 0) { - newFileList.append(itemUrl); + foreach (const QString& file, m_balooFileMonitor->files()) { + if (m_model->index(QUrl::fromLocalFile(file)) >= 0) { + newFileList.append(file); } } m_balooFileMonitor->setFiles(newFileList); @@ -707,10 +707,10 @@ void KFileItemModelRolesUpdater::resolveRecentlyChangedItems() updateChangedItems(); } -void KFileItemModelRolesUpdater::applyChangedBalooRoles(const QString& itemUrl) +void KFileItemModelRolesUpdater::applyChangedBalooRoles(const QString& file) { #ifdef HAVE_BALOO - const KFileItem item = m_model->fileItem(itemUrl); + const KFileItem item = m_model->fileItem(QUrl::fromLocalFile(file)); if (item.isNull()) { // itemUrl is not in the model anymore, probably because diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp index 69a0a5f27..6974ebb48 100644 --- a/src/kitemviews/kitemlistcontainer.cpp +++ b/src/kitemviews/kitemlistcontainer.cpp @@ -185,27 +185,7 @@ void KItemListContainer::wheelEvent(QWheelEvent* event) KItemListSmoothScroller* smoothScroller = scrollHorizontally ? m_horizontalSmoothScroller : m_verticalSmoothScroller; - const QScrollBar* scrollBar = smoothScroller->scrollBar(); - if (!event->pixelDelta().isNull()) { - const int numPixels = event->pixelDelta().y(); - if (event->modifiers().testFlag(Qt::ShiftModifier)) { - const int scrollingDirection = numPixels > 0 ? 1 : -1; - smoothScroller->scrollTo(scrollBar->value() - scrollBar->pageStep() * scrollingDirection); - } else { - smoothScroller->scrollTo(scrollBar->value() - numPixels); - } - } else { - const int numDegrees = event->angleDelta().y() / 8; - const int numSteps = qApp->wheelScrollLines() * numDegrees / 15; - if (event->modifiers().testFlag(Qt::ShiftModifier)) { - const int scrollingDirection = numSteps > 0 ? 1 : -1; - smoothScroller->scrollTo(scrollBar->value() - scrollBar->pageStep() * scrollingDirection); - } else { - smoothScroller->scrollTo(scrollBar->value() - numSteps * scrollBar->pageStep() / 12); - } - } - - event->accept(); + smoothScroller->handleWheelEvent(event); } void KItemListContainer::slotScrollOrientationChanged(Qt::Orientation current, Qt::Orientation previous) diff --git a/src/kitemviews/kitemlistwidget.cpp b/src/kitemviews/kitemlistwidget.cpp index b834e951f..9c31155b3 100644 --- a/src/kitemviews/kitemlistwidget.cpp +++ b/src/kitemviews/kitemlistwidget.cpp @@ -516,10 +516,10 @@ void KItemListWidget::clearHoverCache() void KItemListWidget::drawItemStyleOption(QPainter* painter, QWidget* widget, QStyle::State styleState) { - QStyleOptionViewItemV4 viewItemOption; + QStyleOptionViewItem viewItemOption; viewItemOption.initFrom(widget); viewItemOption.state = styleState; - viewItemOption.viewItemPosition = QStyleOptionViewItemV4::OnlyOne; + viewItemOption.viewItemPosition = QStyleOptionViewItem::OnlyOne; viewItemOption.showDecorationSelected = true; viewItemOption.rect = selectionRect().toRect(); widget->style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget); diff --git a/src/kitemviews/kstandarditemlistwidget.cpp b/src/kitemviews/kstandarditemlistwidget.cpp index 51c5bc896..8740cb73f 100644 --- a/src/kitemviews/kstandarditemlistwidget.cpp +++ b/src/kitemviews/kstandarditemlistwidget.cpp @@ -850,6 +850,15 @@ void KStandardItemListWidget::hideEvent(QHideEvent* event) KItemListWidget::hideEvent(event); } +bool KStandardItemListWidget::event(QEvent *event) +{ + if (event->type() == QEvent::WindowDeactivate || event->type() == QEvent::WindowActivate) { + m_dirtyContent = true; + } + + return KItemListWidget::event(event); +} + void KStandardItemListWidget::slotCutItemsChanged() { const QUrl itemUrl = data().value("url").toUrl(); @@ -954,7 +963,7 @@ void KStandardItemListWidget::updatePixmapCache() iconName = QStringLiteral("unknown"); } const QStringList overlays = values["iconOverlays"].toStringList(); - m_pixmap = pixmapForIcon(iconName, overlays, maxIconHeight); + m_pixmap = pixmapForIcon(iconName, overlays, maxIconHeight, isSelected() && isActiveWindow() ? QIcon::Selected : QIcon::Normal); } else if (m_pixmap.width() / m_pixmap.devicePixelRatio() != maxIconWidth || m_pixmap.height() / m_pixmap.devicePixelRatio() != maxIconHeight) { // A custom pixmap has been applied. Assure that the pixmap @@ -1438,11 +1447,11 @@ void KStandardItemListWidget::closeRoleEditor() m_roleEditor = 0; } -QPixmap KStandardItemListWidget::pixmapForIcon(const QString& name, const QStringList& overlays, int size) +QPixmap KStandardItemListWidget::pixmapForIcon(const QString& name, const QStringList& overlays, int size, QIcon::Mode mode) { static const QIcon fallbackIcon = QIcon::fromTheme(QStringLiteral("unknown")); size *= qApp->devicePixelRatio(); - const QString key = "KStandardItemListWidget:" % name % ":" % overlays.join(QStringLiteral(":")) % ":" % QString::number(size); + const QString key = "KStandardItemListWidget:" % name % ":" % overlays.join(QStringLiteral(":")) % ":" % QString::number(size) % ":" % QString::number(mode); QPixmap pixmap; if (!QPixmapCache::find(key, pixmap)) { @@ -1467,7 +1476,7 @@ QPixmap KStandardItemListWidget::pixmapForIcon(const QString& name, const QStrin requestedSize = size; } - pixmap = icon.pixmap(requestedSize / qApp->devicePixelRatio(), requestedSize / qApp->devicePixelRatio()); + pixmap = icon.pixmap(requestedSize / qApp->devicePixelRatio(), requestedSize / qApp->devicePixelRatio(), mode); if (requestedSize != size) { KPixmapModifier::scale(pixmap, QSize(size, size)); } diff --git a/src/kitemviews/kstandarditemlistwidget.h b/src/kitemviews/kstandarditemlistwidget.h index 9ab5d4c8f..e6ba4bb3f 100644 --- a/src/kitemviews/kstandarditemlistwidget.h +++ b/src/kitemviews/kstandarditemlistwidget.h @@ -183,6 +183,7 @@ protected: virtual void resizeEvent(QGraphicsSceneResizeEvent* event) Q_DECL_OVERRIDE; virtual void showEvent(QShowEvent* event) Q_DECL_OVERRIDE; virtual void hideEvent(QHideEvent* event) Q_DECL_OVERRIDE; + bool event(QEvent *event) Q_DECL_OVERRIDE; private slots: void slotCutItemsChanged(); @@ -212,7 +213,7 @@ private: */ void closeRoleEditor(); - static QPixmap pixmapForIcon(const QString& name, const QStringList& overlays, int size); + static QPixmap pixmapForIcon(const QString& name, const QStringList& overlays, int size, QIcon::Mode mode); /** * @return Preferred size of the rating-image based on the given diff --git a/src/kitemviews/private/kbaloorolesprovider.h b/src/kitemviews/private/kbaloorolesprovider.h index 9673bff4f..a9bd2e8ef 100644 --- a/src/kitemviews/private/kbaloorolesprovider.h +++ b/src/kitemviews/private/kbaloorolesprovider.h @@ -82,7 +82,7 @@ private: QSet<QByteArray> m_roles; QHash<QString, QByteArray> m_roleForProperty; - friend class KBalooRolesProviderSingleton; + friend struct KBalooRolesProviderSingleton; }; #endif diff --git a/src/kitemviews/private/kitemlistsmoothscroller.cpp b/src/kitemviews/private/kitemlistsmoothscroller.cpp index c89d3cf8f..6bfdba4c9 100644 --- a/src/kitemviews/private/kitemlistsmoothscroller.cpp +++ b/src/kitemviews/private/kitemlistsmoothscroller.cpp @@ -172,8 +172,7 @@ bool KItemListSmoothScroller::eventFilter(QObject* obj, QEvent* event) break; case QEvent::Wheel: - handleWheelEvent(static_cast<QWheelEvent*>(event)); - return true; // eat event so that QScrollBar does not scroll one step more by itself + return false; // we're the ones sending them default: break; @@ -196,25 +195,11 @@ void KItemListSmoothScroller::handleWheelEvent(QWheelEvent* event) const bool previous = m_smoothScrolling; m_smoothScrolling = true; - int numPixels; - if (!event->pixelDelta().isNull()) { - numPixels = event->pixelDelta().y(); - } else { - const int numDegrees = event->angleDelta().y() / 8; - const int numSteps = qApp->wheelScrollLines() * numDegrees / 15; - numPixels = numSteps * m_scrollBar->pageStep() / 12; - } - int value = m_scrollBar->value(); - if (event->modifiers().testFlag(Qt::ShiftModifier)) { - const int scrollingDirection = numPixels > 0 ? 1 : -1; - value -= m_scrollBar->pageStep() * scrollingDirection; - } else { - value -= numPixels; - } - m_scrollBar->setValue(value); - m_smoothScrolling = previous; + QWheelEvent copy = *event; + QApplication::sendEvent(m_scrollBar, ©); + event->setAccepted(copy.isAccepted()); - event->accept(); + m_smoothScrolling = previous; } diff --git a/src/kitemviews/private/kitemlistsmoothscroller.h b/src/kitemviews/private/kitemlistsmoothscroller.h index fca4b0c53..a3576a3fd 100644 --- a/src/kitemviews/private/kitemlistsmoothscroller.h +++ b/src/kitemviews/private/kitemlistsmoothscroller.h @@ -77,6 +77,11 @@ public: // stable. bool requestScrollBarUpdate(int newMaximum); + /** + * Forwards wheel events to the scrollbar, ensuring smooth and proper scrolling + */ + void handleWheelEvent(QWheelEvent* event); + protected: virtual bool eventFilter(QObject* obj, QEvent* event); @@ -85,13 +90,6 @@ private slots: QAbstractAnimation::State oldState); private: - /** - * Results into a smooth-scrolling of the target dependent on the direction - * of the wheel event. - */ - void handleWheelEvent(QWheelEvent* event); - -private: bool m_scrollBarPressed; bool m_smoothScrolling; QScrollBar* m_scrollBar; diff --git a/src/main.cpp b/src/main.cpp index 0bbae97fc..8987d351f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -100,7 +100,7 @@ extern "C" Q_DECL_EXPORT int kdemain(int argc, char **argv) aboutData.setupCommandLine(&parser); // command line options - parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("select"), i18nc("@info:shell", "The files and directories passed as arguments " + parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("select"), i18nc("@info:shell", "The files and folders passed as arguments " "will be selected."))); parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("split"), i18nc("@info:shell", "Dolphin will get started with a split view."))); parser.addOption(QCommandLineOption(QStringList() << QStringLiteral("daemon"), i18nc("@info:shell", "Start Dolphin Daemon (only required for DBus Interface)"))); diff --git a/src/org.kde.dolphin.appdata.xml b/src/org.kde.dolphin.appdata.xml index 1725156e3..d0cec5030 100644 --- a/src/org.kde.dolphin.appdata.xml +++ b/src/org.kde.dolphin.appdata.xml @@ -62,6 +62,7 @@ <summary xml:lang="fi">Tiedostonhallinta</summary> <summary xml:lang="fr">Gestionnaire de fichier</summary> <summary xml:lang="gl">Xestor de ficheiros</summary> + <summary xml:lang="he">מנהל קבצים</summary> <summary xml:lang="hu">Fájlkezelő</summary> <summary xml:lang="ia">Gerente de File</summary> <summary xml:lang="it">Gestore file</summary> @@ -105,6 +106,7 @@ <p xml:lang="fi">Dolphin on kevyt tiedostonhallinta. Se on suunniteltu helppokäyttöiseksi ja yksinkertaiseksi, mutta silti joustavaksi ja mukautettavaksi. Voit siis hallita tiedostojasi juuri niin kuin haluat.</p> <p xml:lang="fr">Dolphin est un gestionnaire de fichier léger. Il a été conçu en gardant à l'esprit la simplicité et l'aisance à l'usage, tout en permettant flexibilité et personnalisation. Cela signifie que vous pouvez gérer vos fichiers de la manière exacte que vous voulez.</p> <p xml:lang="gl">Dolphin é un xestor de ficheiros lixeiro. Deseñouse pensando na facilidade de uso e maila simplicidade, pero permitindo flexibilidade e personalización. Noutras palabras, permítelle xestionar os seus ficheiros do xeito que máis lle agrade.</p> + <p xml:lang="he">Dolphin הוא מנהל קבצים קל־משקל. הוא עוצב לקלות שימוש ופשטות, תוך כדי אפשור גמישות והתאמה אישית. זה אומר שתוכל לנהל את קבציך איך שאתה רוצה לעשות זאת.</p> <p xml:lang="hu">A Dolphin egy pehelysúlyú fájlkezelő. Az egyszerű használatot és az egyszerűséget szem előtt tartva tervezték, miközben továbbra is lehetővé teszi a rugalmasságot és a testre szabhatóságot. Ez azt jelenti, hogy pontosan oly módon végezheti a fájlkezelést, ahogy csak akarja.</p> <p xml:lang="ia">Dolphin es un gerente de file legier. Il ha essite designate con facilitate de uso e simplicitate in le mente, mentre il permitte ancora flexibilitate e personalisation. Isto significa que tu pote facer le gerente de file exactemente como tu lo vole.</p> <p xml:lang="it">Dolphin è un gestore file leggero. È stato progettato per essere facile da utilizzare e pensando alla semplicità, garantendo al contempo flessibilità e personalizzazione. Ciò significa che puoi gestire i tuoi file come meglio desideri.</p> @@ -145,6 +147,7 @@ <p xml:lang="fi">Ominaisuudet:</p> <p xml:lang="fr">Fonctionnalités :</p> <p xml:lang="gl">Funcionalidades:</p> + <p xml:lang="he">תכונות:</p> <p xml:lang="hu">Szolgáltatások:</p> <p xml:lang="ia">Characteristicas:</p> <p xml:lang="it">Funzionalità:</p> @@ -330,8 +333,8 @@ <li xml:lang="ar">دعم تعدّد الألسنة</li> <li xml:lang="ast">Sofitu de múltiples llingüetes</li> <li xml:lang="bs">Podrška za više kartica</li> - <li xml:lang="ca">Implementació de pestanyes múltiples</li> - <li xml:lang="ca-valencia">Implementació de pestanyes múltiples</li> + <li xml:lang="ca">Admet pestanyes múltiples</li> + <li xml:lang="ca-valencia">Admet pestanyes múltiples</li> <li xml:lang="cs">Podpora vícero karet</li> <li xml:lang="da">Understøttelse af flere faneblade</li> <li xml:lang="de">Unterstützung für Unterfenster</li> @@ -342,6 +345,7 @@ <li xml:lang="fi">Useiden välilehtien tuki</li> <li xml:lang="fr">Prise en charge des onglets multiples</li> <li xml:lang="gl">Permite abrir varias lapelas.</li> + <li xml:lang="he">תמיכה בכרטיסיות</li> <li xml:lang="hu">Több lap támogatása</li> <li xml:lang="ia">Supporto de scheda multiple</li> <li xml:lang="it">Supporto di schede multiple</li> @@ -410,8 +414,8 @@ <li xml:lang="ar">دعم التراجع والإعادة</li> <li xml:lang="ast">Sofitu de desfechura/refechura</li> <li xml:lang="bs">Podrška za poništavanje/ponavljanje akcija</li> - <li xml:lang="ca">Implementació de desfer/refer</li> - <li xml:lang="ca-valencia">Implementació de desfer/refer</li> + <li xml:lang="ca">Admet desfer/refer</li> + <li xml:lang="ca-valencia">Admet desfer/refer</li> <li xml:lang="da">Understøttelse af fortryd/gendan</li> <li xml:lang="de">Unterstützung für Rückgängig/Wiederherstellen</li> <li xml:lang="el">Υποστήριξη αναίρεσης/επανάληψης</li> @@ -421,6 +425,7 @@ <li xml:lang="fi">Tuki muutosten kumoamiselle ja tekemiselle uudelleen</li> <li xml:lang="fr">Prise en charge d'annulation et recommencement</li> <li xml:lang="gl">Permite desfacer e refacer.</li> + <li xml:lang="he">תמיכה בביטול וביצוע חוזר</li> <li xml:lang="hu">Visszavonás/ismétlés támogatás</li> <li xml:lang="ia">Supporto de annulla/reface</li> <li xml:lang="it">Supporto di annulla/rifai</li> diff --git a/src/org.kde.dolphin.desktop b/src/org.kde.dolphin.desktop index 7b8e19414..63b72d966 100755 --- a/src/org.kde.dolphin.desktop +++ b/src/org.kde.dolphin.desktop @@ -5,10 +5,12 @@ Name[ast]=Dolphin Name[ca]=Dolphin Name[ca@valencia]=Dolphin Name[cs]=Dolphin +Name[da]=Dolphin Name[de]=Dolphin Name[el]=Dolphin Name[en_GB]=Dolphin Name[es]=Dolphin +Name[et]=Dolphin Name[fi]=Dolphin Name[fr]=Dolphin Name[gl]=Dolphin @@ -51,10 +53,12 @@ GenericName[ast]=Xestor de ficheros GenericName[ca]=Gestor de fitxers GenericName[ca@valencia]=Gestor de fitxers GenericName[cs]=Správce souborů +GenericName[da]=Filhåndtering GenericName[de]=Dateiverwaltung GenericName[el]=Διαχειριστής αρχείων GenericName[en_GB]=File Manager GenericName[es]=Gestor de archivos +GenericName[et]=Failihaldur GenericName[fi]=Tiedostonhallinta GenericName[fr]=Gestionnaire de fichiers GenericName[gl]=Xestor de ficheiros diff --git a/src/panels/folders/folderspanel.cpp b/src/panels/folders/folderspanel.cpp index 3ad1bf3ff..276cf5672 100644 --- a/src/panels/folders/folderspanel.cpp +++ b/src/panels/folders/folderspanel.cpp @@ -240,7 +240,7 @@ void FoldersPanel::slotItemDropEvent(int index, QGraphicsSceneDragDropEvent* eve event->buttons(), event->modifiers()); - KIO::DropJob *job = DragAndDropHelper::dropUrls(destItem.url(), &dropEvent, this); + KIO::DropJob *job = DragAndDropHelper::dropUrls(destItem.mostLocalUrl(), &dropEvent, this); if (job) { connect(job, &KIO::DropJob::result, this, [this](KJob *job) { if (job->error()) emit errorMessage(job->errorString()); }); } diff --git a/src/panels/information/informationpanelcontent.cpp b/src/panels/information/informationpanelcontent.cpp index 6bfc4ed01..d519ff121 100644 --- a/src/panels/information/informationpanelcontent.cpp +++ b/src/panels/information/informationpanelcontent.cpp @@ -314,14 +314,12 @@ void InformationPanelContent::configureSettings(const QList<QAction*>& customCon m_preview->setVisible(isChecked); InformationPanelSettings::setPreviewsShown(isChecked); } else if (action == configureAction) { - FileMetaDataConfigurationDialog* dialog = new FileMetaDataConfigurationDialog(); + FileMetaDataConfigurationDialog* dialog = new FileMetaDataConfigurationDialog(this); dialog->setDescription(i18nc("@label::textbox", "Select which data should be shown in the information panel:")); dialog->setItems(m_metaDataWidget->items()); dialog->setAttribute(Qt::WA_DeleteOnClose); dialog->show(); - dialog->raise(); - dialog->activateWindow(); connect(dialog, &FileMetaDataConfigurationDialog::destroyed, this, &InformationPanelContent::refreshMetaData); } } diff --git a/src/panels/places/placesitem.cpp b/src/panels/places/placesitem.cpp index a04064d0b..b32f8204d 100644 --- a/src/panels/places/placesitem.cpp +++ b/src/panels/places/placesitem.cpp @@ -276,12 +276,12 @@ void PlacesItem::initializeDevice(const QString& udi) Solid::Block *block = m_device.as<Solid::Block>(); if (block) { const QString device = block->device(); - setUrl(QStringLiteral("audiocd:/?device=%1").arg(device)); + setUrl(QUrl(QStringLiteral("audiocd:/?device=%1").arg(device))); } else { - setUrl(QStringLiteral("audiocd:/")); + setUrl(QUrl(QStringLiteral("audiocd:/"))); } } else if (m_mtp) { - setUrl(QStringLiteral("mtp:udi=%1").arg(m_device.udi())); + setUrl(QUrl(QStringLiteral("mtp:udi=%1").arg(m_device.udi()))); } } diff --git a/src/panels/places/placesitemlistgroupheader.h b/src/panels/places/placesitemlistgroupheader.h index 7daaba602..ec845e0ae 100644 --- a/src/panels/places/placesitemlistgroupheader.h +++ b/src/panels/places/placesitemlistgroupheader.h @@ -33,7 +33,7 @@ public: protected: virtual void paintSeparator(QPainter* painter, const QColor& color) Q_DECL_OVERRIDE; - virtual QPalette::ColorRole normalTextColorRole() const; + virtual QPalette::ColorRole normalTextColorRole() const Q_DECL_OVERRIDE; }; #endif diff --git a/src/panels/places/placesitemmodel.cpp b/src/panels/places/placesitemmodel.cpp index a42cb0403..25c4d51f6 100644 --- a/src/panels/places/placesitemmodel.cpp +++ b/src/panels/places/placesitemmodel.cpp @@ -1099,17 +1099,17 @@ QUrl PlacesItemModel::createTimelineUrl(const QUrl& url) const int year = date.year(); const int month = date.month(); const int day = date.day(); - timelineUrl = "timeline:/" + timelineDateString(year, month) + - '/' + timelineDateString(year, month, day); + timelineUrl = QUrl("timeline:/" + timelineDateString(year, month) + + '/' + timelineDateString(year, month, day)); } else if (path.endsWith(QLatin1String("thismonth"))) { const QDate date = QDate::currentDate(); - timelineUrl = "timeline:/" + timelineDateString(date.year(), date.month()); + timelineUrl = QUrl("timeline:/" + timelineDateString(date.year(), date.month())); } else if (path.endsWith(QLatin1String("lastmonth"))) { const QDate date = QDate::currentDate().addMonths(-1); - timelineUrl = "timeline:/" + timelineDateString(date.year(), date.month()); + timelineUrl = QUrl("timeline:/" + timelineDateString(date.year(), date.month())); } else { Q_ASSERT(path.endsWith(QLatin1String("today"))); - timelineUrl= url; + timelineUrl = url; } return timelineUrl; diff --git a/src/panels/places/placespanel.h b/src/panels/places/placespanel.h index 81aeedb28..0c8b5f7f2 100644 --- a/src/panels/places/placespanel.h +++ b/src/panels/places/placespanel.h @@ -52,7 +52,7 @@ protected: virtual void showEvent(QShowEvent* event) Q_DECL_OVERRIDE; public slots: - virtual void readSettings(); + virtual void readSettings() Q_DECL_OVERRIDE; private slots: void slotItemActivated(int index); diff --git a/src/settings/dolphin_generalsettings.kcfg b/src/settings/dolphin_generalsettings.kcfg index de7390bbd..c724afcd1 100644 --- a/src/settings/dolphin_generalsettings.kcfg +++ b/src/settings/dolphin_generalsettings.kcfg @@ -43,7 +43,7 @@ <default>false</default> </entry> <entry name="GlobalViewProps" type="Bool"> - <label>Should the view properties be used for all directories</label> + <label>Should the view properties be used for all folders</label> <default>false</default> </entry> <entry name="BrowseThroughArchives" type="Bool"> @@ -62,6 +62,10 @@ <label>Show selection toggle</label> <default>true</default> </entry> + <entry name="UseTabForSwitchingSplitView" type="Bool"> + <label>Use tab for switching between right and left split</label> + <default>false</default> + </entry> <entry name="ShowToolTips" type="Bool"> <label>Show tooltips</label> <default>false</default> diff --git a/src/settings/general/behaviorsettingspage.cpp b/src/settings/general/behaviorsettingspage.cpp index 86a4ad3bb..6d1e8bb10 100644 --- a/src/settings/general/behaviorsettingspage.cpp +++ b/src/settings/general/behaviorsettingspage.cpp @@ -41,7 +41,8 @@ BehaviorSettingsPage::BehaviorSettingsPage(const QUrl& url, QWidget* parent) : m_naturalSorting(0), m_caseSensitiveSorting(0), m_caseInsensitiveSorting(0), - m_renameInline(0) + m_renameInline(0), + m_useTabForSplitViewSwitch(0) { QVBoxLayout* topLayout = new QVBoxLayout(this); @@ -78,11 +79,15 @@ BehaviorSettingsPage::BehaviorSettingsPage(const QUrl& url, QWidget* parent) : // 'Inline renaming of items' m_renameInline = new QCheckBox(i18nc("option:check", "Rename inline"), this); + // 'Use tab for switching between right and left split' + m_useTabForSplitViewSwitch = new QCheckBox(i18nc("option:check", "Use tab for switching between right and left split view"), this); + topLayout->addWidget(viewPropsBox); topLayout->addWidget(sortingPropsBox); topLayout->addWidget(m_showToolTips); topLayout->addWidget(m_showSelectionToggle); topLayout->addWidget(m_renameInline); + topLayout->addWidget(m_useTabForSplitViewSwitch); topLayout->addStretch(); loadSettings(); @@ -95,6 +100,7 @@ BehaviorSettingsPage::BehaviorSettingsPage(const QUrl& url, QWidget* parent) : connect(m_caseInsensitiveSorting, &QRadioButton::toggled, this, &BehaviorSettingsPage::changed); connect(m_caseSensitiveSorting, &QRadioButton::toggled, this, &BehaviorSettingsPage::changed); connect(m_renameInline, &QCheckBox::toggled, this, &BehaviorSettingsPage::changed); + connect(m_useTabForSplitViewSwitch, &QCheckBox::toggled, this, &BehaviorSettingsPage::changed); } BehaviorSettingsPage::~BehaviorSettingsPage() @@ -112,6 +118,7 @@ void BehaviorSettingsPage::applySettings() settings->setShowSelectionToggle(m_showSelectionToggle->isChecked()); setSortingChoiceValue(settings); settings->setRenameInline(m_renameInline->isChecked()); + settings->setUseTabForSwitchingSplitView(m_useTabForSplitViewSwitch->isChecked()); settings->save(); if (useGlobalViewProps) { @@ -141,6 +148,7 @@ void BehaviorSettingsPage::loadSettings() m_showToolTips->setChecked(GeneralSettings::showToolTips()); m_showSelectionToggle->setChecked(GeneralSettings::showSelectionToggle()); m_renameInline->setChecked(GeneralSettings::renameInline()); + m_useTabForSplitViewSwitch->setChecked(GeneralSettings::useTabForSwitchingSplitView()); loadSortingChoiceSettings(); } diff --git a/src/settings/general/behaviorsettingspage.h b/src/settings/general/behaviorsettingspage.h index 6213734f1..96eaf3d64 100644 --- a/src/settings/general/behaviorsettingspage.h +++ b/src/settings/general/behaviorsettingspage.h @@ -65,6 +65,7 @@ private: QRadioButton* m_caseInsensitiveSorting; QCheckBox* m_renameInline; + QCheckBox* m_useTabForSplitViewSwitch; }; #endif diff --git a/src/settings/kcm/kcmdolphingeneral.cpp b/src/settings/kcm/kcmdolphingeneral.cpp index 6a02e0297..3cf7e7652 100644 --- a/src/settings/kcm/kcmdolphingeneral.cpp +++ b/src/settings/kcm/kcmdolphingeneral.cpp @@ -48,7 +48,7 @@ DolphinGeneralConfigModule::DolphinGeneralConfigModule(QWidget* parent, const QV QTabWidget* tabWidget = new QTabWidget(this); // initialize 'Behavior' tab - BehaviorSettingsPage* behaviorPage = new BehaviorSettingsPage(QDir::homePath(), tabWidget); + BehaviorSettingsPage* behaviorPage = new BehaviorSettingsPage(QUrl::fromLocalFile(QDir::homePath()), tabWidget); tabWidget->addTab(behaviorPage, i18nc("@title:tab Behavior settings", "Behavior")); connect(behaviorPage, &BehaviorSettingsPage::changed, this, static_cast<void(DolphinGeneralConfigModule::*)()>(&DolphinGeneralConfigModule::changed)); diff --git a/src/settings/kcm/kcmdolphingeneral.desktop b/src/settings/kcm/kcmdolphingeneral.desktop index 55ce19177..a6e3b6345 100644 --- a/src/settings/kcm/kcmdolphingeneral.desktop +++ b/src/settings/kcm/kcmdolphingeneral.desktop @@ -4,10 +4,12 @@ Name[ast]=Xeneral de Dolphin Name[ca]=General del Dolphin Name[ca@valencia]=General del 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[fi]=Dolphin – yleiset Name[fr]=Dolphin général Name[gl]=Xerais de Dolphin @@ -45,10 +47,12 @@ Comment[ast]=Esti serviciu permite la configuración de los axustes xenerales de Comment[ca]=Aquest servei permet la configuració de l'arranjament general del Dolphin. Comment[ca@valencia]=Este servei permet la configuració de l'arranjament general del 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[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. @@ -62,6 +66,7 @@ Comment[lt]=Ši tarnyba leidžia konfigūruoti Dolphin bendrąsias nuostatas. 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. @@ -96,10 +101,12 @@ Name[ast]=Xeneral 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[fi]=Yleiset Name[fr]=Général Name[gl]=Xerais @@ -136,10 +143,12 @@ Comment[ast]=Configura los axustes xenerales del xestor de ficheros 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[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. @@ -153,6 +162,7 @@ Comment[lt]=Bendrųjų failų tvarkyklės nuostatų konfigūravimas 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 @@ -175,10 +185,12 @@ X-KDE-Keywords[ast]=xestor de ficheros 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[fi]=tiedostonhallinta X-KDE-Keywords[fr]=gestionnaire de fichiers X-KDE-Keywords[gl]=xestor de ficheiros diff --git a/src/settings/kcm/kcmdolphinnavigation.desktop b/src/settings/kcm/kcmdolphinnavigation.desktop index e1470b965..b49d6a266 100644 --- a/src/settings/kcm/kcmdolphinnavigation.desktop +++ b/src/settings/kcm/kcmdolphinnavigation.desktop @@ -4,10 +4,12 @@ Name[ast]=Navegación de Dolphin Name[ca]=Navegació del Dolphin Name[ca@valencia]=Navegació del 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[fi]=Dolphin – selaus Name[fr]=Navigation avec Dolphin Name[gl]=Navegación de Dolphin @@ -45,10 +47,12 @@ Comment[ast]=Esti serviciu permite la configuración de la navegación de Dolphi Comment[ca]=Aquest servei permet la configuració de la navegació del Dolphin. Comment[ca@valencia]=Este servei permet la configuració de la navegació del 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[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. @@ -62,6 +66,7 @@ Comment[lt]=Ši tarnyba leidžia konfigūruoti Dolphin navigaciją. 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. @@ -95,10 +100,12 @@ Name[ast]=Navegación 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[fi]=Selaus Name[fr]=Navigation Name[gl]=Navegación @@ -136,10 +143,12 @@ Comment[ast]=Configura la navegación del xestor de ficheros 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[fi]=Tiedostonhallinnan selausasetukset Comment[fr]=Configuration la navigation avec le gestionnaire de fichiers Comment[gl]=Configurar a navegación do xestor de ficheiros. @@ -153,6 +162,7 @@ Comment[lt]=Konfigūruokite failų tvarkyklės navigaciją 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 @@ -176,10 +186,12 @@ X-KDE-Keywords[ast]=xestor de ficheros 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[fi]=tiedostonhallinta X-KDE-Keywords[fr]=gestionnaire de fichiers X-KDE-Keywords[gl]=xestor de ficheiros diff --git a/src/settings/kcm/kcmdolphinservices.desktop b/src/settings/kcm/kcmdolphinservices.desktop index 2c33eefec..3b27f9540 100644 --- a/src/settings/kcm/kcmdolphinservices.desktop +++ b/src/settings/kcm/kcmdolphinservices.desktop @@ -4,10 +4,12 @@ Name[ast]=Servicios de Dolphin Name[ca]=Serveis del Dolphin Name[ca@valencia]=Serveis del Dolphin Name[cs]=Služby Dolphinu +Name[da]=Dolphin-tjenester Name[de]=Dolphin-Dienste Name[el]=Dolphin Υπηρεσίες Name[en_GB]=Dolphin Services Name[es]=Servicios de Dolphin +Name[et]=Dolphini teenused Name[fi]=Dolphin – palvelut Name[fr]=Services de Dolphin Name[gl]=Servizos de Dolphin @@ -55,10 +57,12 @@ Name[ast]=Servicios Name[ca]=Serveis Name[ca@valencia]=Serveis Name[cs]=Služby +Name[da]=Tjenester Name[de]=KDE-Dienste Name[el]=Υπηρεσίες Name[en_GB]=Services Name[es]=Servicios +Name[et]=Teenused Name[fi]=Palvelut Name[fr]=Services Name[gl]=Servizos @@ -95,10 +99,12 @@ Comment[ast]=Configura los servicios del xestor de ficheros Comment[ca]=Configura els serveis del gestor de fitxers Comment[ca@valencia]=Configura els serveis del gestor de fitxers Comment[cs]=Nastavení služeb správce souborů +Comment[da]=Indstil filhåndteringstjenester Comment[de]=Dateiverwaltungs-Dienste einrichten Comment[el]=Διαμόρφωση υπηρεσιών του διαχειριστή αρχείων Comment[en_GB]=Configure file manager services Comment[es]=Configurar los servicios del gestor de archivos +Comment[et]=Failihalduri teenuste seadistamine Comment[fi]=Tiedostonhallinnan palveluasetukset Comment[fr]=Configuration des services du gestionnaire de fichiers Comment[gl]=Configurar servizos de xestores de ficheiros. @@ -112,6 +118,7 @@ Comment[lt]=Konfigūruokite failų tvarkyklės tarnybas Comment[nb]=Sett opp tjenester i filbehandleren Comment[nl]=Bestandsbeheerderservices configureren Comment[nn]=Set opp tenester i filhandsamaren +Comment[pa]=ਫਾਇਲ ਮੈਨੇਜਰ ਦੀਆਂ ਸਰਵਿਸਾਂ ਦੀ ਸੰਰਚਨਾ Comment[pl]=Ustawienia usług zarządzania plikami Comment[pt]=Configurar os serviços do gestor de ficheiros Comment[pt_BR]=Configura os serviços do gerenciador de arquivos @@ -134,10 +141,12 @@ X-KDE-Keywords[ast]=xestor de ficheros 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[fi]=tiedostonhallinta X-KDE-Keywords[fr]=gestionnaire de fichiers X-KDE-Keywords[gl]=xestor de ficheiros diff --git a/src/settings/kcm/kcmdolphinviewmodes.desktop b/src/settings/kcm/kcmdolphinviewmodes.desktop index 1a1f7e7bb..568df4148 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.desktop +++ b/src/settings/kcm/kcmdolphinviewmodes.desktop @@ -4,10 +4,12 @@ Name[ast]=Moos de vista de Dolphin Name[ca]=Modes de vista del Dolphin Name[ca@valencia]=Modes de vista del 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[fi]=Dolphin – näkymät Name[fr]=Modes d'affichage de Dolphin Name[gl]=Modos de vista de Dolphin @@ -45,10 +47,12 @@ Comment[ast]=Esti serviciu permite la configuración de los moos de vista de Dol 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 del 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[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. @@ -62,6 +66,7 @@ Comment[lt]=Ši tarnyba leidžia konfigūruoti Dolphin rodymo būdus. 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. @@ -95,10 +100,12 @@ Name[ast]=Moos de vista 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[fi]=Näkymät Name[fr]=Modes d'affichage Name[gl]=Modos de vista @@ -136,10 +143,12 @@ Comment[ast]=Configura los moos de vista del xestor de ficheros 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[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. @@ -153,6 +162,7 @@ Comment[lt]=Failų tvarkyklės rodymo būdų konfigūravimas 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 @@ -176,10 +186,12 @@ X-KDE-Keywords[ast]=xestor de ficheros 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[fi]=tiedostonhallinta X-KDE-Keywords[fr]=gestionnaire de fichiers X-KDE-Keywords[gl]=xestor de ficheiros diff --git a/src/settings/services/servicessettingspage.cpp b/src/settings/services/servicessettingspage.cpp index 4cfa2327c..2b9b8f46f 100644 --- a/src/settings/services/servicessettingspage.cpp +++ b/src/settings/services/servicessettingspage.cpp @@ -30,6 +30,7 @@ #include <KLocalizedString> #include <KMessageBox> #include <KNS3/Button> +#include <KPluginMetaData> #include <KService> #include <KServiceTypeTrader> #include <QStandardPaths> @@ -228,6 +229,19 @@ void ServicesSettingsPage::loadServices() } } + // Load JSON-based plugins that implement the KFileItemActionPlugin interface + const auto jsonPlugins = KPluginLoader::findPlugins(QStringLiteral("kf5/kfileitemaction"), [](const KPluginMetaData& metaData) { + return metaData.serviceTypes().contains(QStringLiteral("KFileItemAction/Plugin")); + }); + + foreach (const auto& jsonMetadata, jsonPlugins) { + const QString desktopEntryName = jsonMetadata.pluginId(); + if (!isInServicesList(desktopEntryName)) { + const bool checked = showGroup.readEntry(desktopEntryName, true); + addRow(jsonMetadata.iconName(), jsonMetadata.name(), desktopEntryName, checked); + } + } + m_sortModel->sort(Qt::DisplayRole); } diff --git a/src/statusbar/mountpointobservercache.cpp b/src/statusbar/mountpointobservercache.cpp index ab3744eac..48796ac5a 100644 --- a/src/statusbar/mountpointobservercache.cpp +++ b/src/statusbar/mountpointobservercache.cpp @@ -62,10 +62,10 @@ MountPointObserver* MountPointObserverCache::observerForUrl(const QUrl& url) } else { // Even if determining the mount point failed, the observer might still // be able to retrieve information about the url. - cachedObserverUrl = url.toLocalFile(); + cachedObserverUrl = url; } } else { - cachedObserverUrl = url.url(); + cachedObserverUrl = url; } MountPointObserver* observer = m_observerForMountPoint.value(cachedObserverUrl); diff --git a/src/tests/kfileitemmodeltest.cpp b/src/tests/kfileitemmodeltest.cpp index eba32e1e1..6c45e114b 100644 --- a/src/tests/kfileitemmodeltest.cpp +++ b/src/tests/kfileitemmodeltest.cpp @@ -1674,7 +1674,7 @@ void KFileItemModelTest::testCollapseFolderWhileLoading() const KFileItem fileItemC1 = m_model->fileItem(2); KFileItem fileItemC2 = fileItemC1; QUrl urlC2 = fileItemC2.url(); - urlC2.adjusted(QUrl::RemoveFilename); + urlC2 = urlC2.adjusted(QUrl::RemoveFilename); urlC2.setPath(urlC2.path() + "c2.txt"); fileItemC2.setUrl(urlC2); diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index c3df3a9a8..4105628ee 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -75,10 +75,6 @@ #endif #include <KFormat> -namespace { - const int MaxModeEnum = DolphinView::CompactView; -} - DolphinView::DolphinView(const QUrl& url, QWidget* parent) : QWidget(parent), m_active(true), @@ -728,6 +724,15 @@ void DolphinView::stopLoading() bool DolphinView::eventFilter(QObject* watched, QEvent* event) { switch (event->type()) { + case QEvent::KeyPress: + if (GeneralSettings::useTabForSwitchingSplitView()) { + QKeyEvent* keyEvent = static_cast<QKeyEvent*>(event); + if (keyEvent->key() == Qt::Key_Tab && keyEvent->modifiers() == Qt::NoModifier) { + toggleActiveViewRequested(); + return true; + } + } + break; case QEvent::FocusIn: if (watched == m_container) { setActive(true); @@ -1031,7 +1036,7 @@ void DolphinView::slotItemDropEvent(int index, QGraphicsSceneDragDropEvent* even destUrl = url(); } else { // The item represents a directory or desktop-file - destUrl = destItem.url(); + destUrl = destItem.mostLocalUrl(); } QDropEvent dropEvent(event->pos().toPoint(), @@ -1278,7 +1283,7 @@ QUrl DolphinView::openItemAsFolderUrl(const KFileItem& item, const bool browseTh if (desktopFile.hasLinkType()) { const QString linkUrl = desktopFile.readUrl(); if (!linkUrl.startsWith(QLatin1String("http"))) { - return linkUrl; + return QUrl::fromUserInput(linkUrl); } } } diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h index d1a5d5005..0b0d8196d 100644 --- a/src/views/dolphinview.h +++ b/src/views/dolphinview.h @@ -546,6 +546,11 @@ signals: */ void goForwardRequested(); + /** + * Is emitted when the user wants to move the focus to another view. + */ + void toggleActiveViewRequested(); + protected: /** Changes the zoom level if Control is pressed during a wheel event. */ virtual void wheelEvent(QWheelEvent* event) Q_DECL_OVERRIDE; diff --git a/src/views/tooltips/filemetadatatooltip.cpp b/src/views/tooltips/filemetadatatooltip.cpp index 8fbca290d..0d58717d4 100644 --- a/src/views/tooltips/filemetadatatooltip.cpp +++ b/src/views/tooltips/filemetadatatooltip.cpp @@ -48,7 +48,7 @@ FileMetaDataToolTip::FileMetaDataToolTip(QWidget* parent) : m_fileMetaDataWidget(0) { setAttribute(Qt::WA_TranslucentBackground); - setWindowFlags(Qt::ToolTip | Qt::FramelessWindowHint); + setWindowFlags(Qt::ToolTip | Qt::FramelessWindowHint | Qt::NoDropShadowWindowHint); // Create widget for file preview m_preview = new QLabel(this); @@ -174,8 +174,6 @@ void FileMetaDataToolTip::paintEvent(QPaintEvent* event) void FileMetaDataToolTip::showEvent(QShowEvent *) { -#pragma message("TODO: port Plasma::WindowEffects::overrideShadow") - //Plasma::WindowEffects::overrideShadow(winId(), true); KWindowEffects::enableBlurBehind(winId(), true, mask()); } diff --git a/src/views/versioncontrol/fileviewversioncontrolplugin.desktop b/src/views/versioncontrol/fileviewversioncontrolplugin.desktop index 80a17efc6..cdec01b9d 100644 --- a/src/views/versioncontrol/fileviewversioncontrolplugin.desktop +++ b/src/views/versioncontrol/fileviewversioncontrolplugin.desktop @@ -6,10 +6,12 @@ Comment[ast]=Complementu de control de versiones pa vistes de ficheros Comment[ca]=Connector de control de versions per a les vistes de fitxers Comment[ca@valencia]=Connector de control de versions per a les vistes de fitxers Comment[cs]=Modul pro správu verzí pro pohledy na soubory +Comment[da]=Versionsstyringsplugin til filvisninger Comment[de]=Versionskontroll-Modul für Dateiansichten Comment[el]=Πρόσθετο ελέγχου εκδόσεων για προβολές αρχείων Comment[en_GB]=Version Control Plugin for File Views Comment[es]=Complemento de control de versiones para las vistas de archivos +Comment[et]=Failivaadete versioonihaldusplugin Comment[fi]=Versionhallintaliitännäinen tiedostonäkymille Comment[fr]=Module externe pour le contrôle de version applicable aux vues de fichiers Comment[gl]=Complemento de control de versión para vistas de ficheiros. @@ -23,6 +25,7 @@ Comment[lt]=Versijų kontrolės papildinys failų tvarkyklėms Comment[nb]=Versjonskontrollmodul for filvisninger Comment[nl]=Plugin voor versiecontrole op bestandoverzichten Comment[nn]=Versjonskontroll-tillegg for filvisingar +Comment[pa]=ਫਾਇਲ ਝਲਕ ਲਈ ਵਰਜਨ ਕੰਟਰੋਲ ਪਲੱਗਇਨ Comment[pl]=Wtyczka systemu zarządzania wersjami dla widoku plików Comment[pt]='Plugin' de Controlo de Versões para as Áreas de Ficheiros Comment[pt_BR]=Extensão de controle de versões para as visualizações de arquivos diff --git a/src/views/versioncontrol/kversioncontrolplugin.h b/src/views/versioncontrol/kversioncontrolplugin.h index d710bf3c2..1696f975c 100644 --- a/src/views/versioncontrol/kversioncontrolplugin.h +++ b/src/views/versioncontrol/kversioncontrolplugin.h @@ -165,16 +165,16 @@ public: /** * Is invoked after the version control information has been * received. It is assured that - * KVersionControlPluginV2::beginInfoRetrieval() has been + * KVersionControlPlugin::beginRetrieval() has been * invoked before. */ virtual void endRetrieval() = 0; /** * @return The version for the item \p item. - * It is assured that KVersionControlPlugin::beginInfoRetrieval() has been + * It is assured that KVersionControlPlugin::beginRetrieval() has been * invoked before and that the file is part of the directory specified - * in beginInfoRetrieval(). + * in beginRetrieval(). */ virtual ItemVersion itemVersion(const KFileItem& item) const = 0; |
