mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-12 12:54:29 +00:00
Merge branch 'master' of git.kde.org:dolphin
This commit is contained in:
commit
67099640b9
|
@ -4,8 +4,8 @@ project(Dolphin)
|
|||
|
||||
# KDE Application Version, managed by release script
|
||||
set (KDE_APPLICATIONS_VERSION_MAJOR "16")
|
||||
set (KDE_APPLICATIONS_VERSION_MINOR "04")
|
||||
set (KDE_APPLICATIONS_VERSION_MICRO "0")
|
||||
set (KDE_APPLICATIONS_VERSION_MINOR "11")
|
||||
set (KDE_APPLICATIONS_VERSION_MICRO "70")
|
||||
set (KDE_APPLICATIONS_VERSION "${KDE_APPLICATIONS_VERSION_MAJOR}.${KDE_APPLICATIONS_VERSION_MINOR}.${KDE_APPLICATIONS_VERSION_MICRO}")
|
||||
|
||||
set(QT_MIN_VERSION "5.4.0")
|
||||
|
@ -102,6 +102,8 @@ else()
|
|||
)
|
||||
endif()
|
||||
|
||||
add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
|
||||
|
||||
add_subdirectory(src)
|
||||
add_subdirectory(doc)
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
|
||||
<!ENTITY dolphin "<application>Dolphin</application>">
|
||||
<!ENTITY kappname "&dolphin;">
|
||||
<!ENTITY % addindex "IGNORE">
|
||||
<!ENTITY % English "INCLUDE"><!-- change language only here -->
|
||||
]>
|
||||
|
@ -72,12 +70,12 @@
|
|||
|
||||
<legalnotice>&FDLNotice;</legalnotice>
|
||||
|
||||
<date>2015-08-02</date>
|
||||
<releaseinfo>Applications 15.08</releaseinfo>
|
||||
<date>2016-06-01</date>
|
||||
<releaseinfo>Applications 16.04</releaseinfo>
|
||||
|
||||
<abstract>
|
||||
<para>
|
||||
&dolphin; is the default file manager for &kde;, designed with usability as a primary focus.
|
||||
&dolphin; is the default file manager by &kde;, designed with usability as a primary focus.
|
||||
</para>
|
||||
</abstract>
|
||||
|
||||
|
@ -95,7 +93,7 @@
|
|||
<title>Introduction</title>
|
||||
|
||||
<para>
|
||||
&dolphin; is &kde;'s default file manager. It aims to improve usability at the
|
||||
&dolphin; is &plasma;'s default file manager. It aims to improve usability at the
|
||||
user interface level. &dolphin; focuses only on being a file manager whereas
|
||||
&konqueror;, which was &kde;'s default file manager in &kde; 3 and can still be
|
||||
used for file management, is a universal viewer for many file types.
|
||||
|
@ -357,12 +355,12 @@ the extension is replaced by <quote>...</quote>
|
|||
the <guilabel>Name</guilabel> header, which is always the first column in this view.
|
||||
</para>
|
||||
<para>
|
||||
The details view allows you to view the current directory
|
||||
The details view allows you to view the current folder
|
||||
in a tree-like fashion if <link linkend="preferences-dialog-viewmodes-details">
|
||||
<guilabel>Expandable folders</guilabel></link> are enabled:
|
||||
<guilabel>Expandable folders</guilabel></link> are enabled:
|
||||
Each subfolder of the current folder can be
|
||||
<quote>expanded</quote> or <quote>collapsed</quote> by clicking on the <guiicon>></guiicon>
|
||||
or <guiicon>v</guiicon> icon next to it.</para></listitem>
|
||||
<quote>expanded</quote> or <quote>collapsed</quote> by clicking on the <guiicon>+</guiicon>
|
||||
or <guiicon>-</guiicon> icon next to it.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
|
@ -386,7 +384,7 @@ in <menuchoice><guimenu>View</guimenu><guisubmenu>Sort by</guisubmenu></menuchoi
|
|||
<sect3 id="dolphin-view-information">
|
||||
<title>Information in the View</title>
|
||||
<para>
|
||||
In all view modes &kappname; shows at least an icon and a name for each item.
|
||||
In all view modes &dolphin; shows at least an icon and a name for each item.
|
||||
Using <guisubmenu>Additional Information</guisubmenu> in the <guimenu>View</guimenu>
|
||||
menu or the context menu of the header in <guilabel>Details</guilabel> mode, you can select
|
||||
more information for each item to be shown:
|
||||
|
@ -776,6 +774,7 @@ current folder, &RMB; click in the work space and click
|
|||
<sect2 id="finding-searching-in-file">
|
||||
<title>Finding Files and Searching in Files</title>
|
||||
<!-- FIXME search in hidden files + folders View -> Show Hidden Files has to be enabled ? -->
|
||||
<!-- https://bugs.kde.org/show_bug.cgi?id=361557 No clear way to open configuration dialog for Baloo search engine -->
|
||||
<para>
|
||||
&dolphin; is capable of searching for files and for content in files. If <keycombo action="simul">
|
||||
&Ctrl;<keycap>F</keycap></keycombo> is pressed or <menuchoice> <guimenu>Edit</guimenu>
|
||||
|
@ -1146,16 +1145,9 @@ structure and in archives works.
|
|||
<itemizedlist>
|
||||
|
||||
<listitem><para>
|
||||
&dolphin; can be configured to open items with a single mouse click
|
||||
(<guilabel>Single-click to open files and folders</guilabel>) or a double mouse
|
||||
click (<guilabel>Double-click to open files and folders</guilabel>). In the
|
||||
latter case, a single mouse click will select the file or folder.
|
||||
</para>
|
||||
<note>
|
||||
<para>This is a system wide setting and can be changed in the &systemsettings; in the
|
||||
<menuchoice><guimenu>Input Devices</guimenu> <guimenuitem>Mouse</guimenuitem></menuchoice>
|
||||
module as well.</para>
|
||||
</note>
|
||||
The option to open items with a single or double mouse click is a system wide setting and can be
|
||||
changed in the &systemsettings; in the <menuchoice><guimenu>Input Devices</guimenu>
|
||||
<guimenuitem>Mouse</guimenuitem></menuchoice> module.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>
|
||||
|
@ -1295,6 +1287,25 @@ In the <guilabel>View</guilabel> section, you can configure whether the
|
|||
<link linkend="view-properties"> view properties</link> are stored for each
|
||||
folder or if common view properties are to be used for all folders.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<guilabel>Sorting Mode</guilabel> controls how items are sorted in
|
||||
the view. If <guilabel>Natural sorting</guilabel> is enabled, the sort order of three example files
|
||||
will be
|
||||
<orderedlist>
|
||||
<listitem><para>File1,</para></listitem>
|
||||
<listitem><para>File2,</para></listitem>
|
||||
<listitem><para>File10.</para></listitem>
|
||||
</orderedlist>
|
||||
If this option is disabled, the normal alphabetical sorting case sensitive or case insensitive
|
||||
will be used, which leads to the sort order
|
||||
<orderedlist>
|
||||
<listitem><para>File1,</para></listitem>
|
||||
<listitem><para>File10,</para></listitem>
|
||||
<listitem><para>File2.</para></listitem>
|
||||
</orderedlist>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
When hovering over a file or folder with the mouse, a small window with relevant
|
||||
information is shown if <guilabel>Show tooltips</guilabel> is enabled.
|
||||
|
@ -1307,25 +1318,7 @@ with the mouse. These can be used to select or deselect the item.
|
|||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<guilabel>Natural sorting of items</guilabel> controls how items are sorted in
|
||||
the view. If this option is enabled, the sort order of three example files
|
||||
will be
|
||||
<orderedlist>
|
||||
<listitem><para>File1,</para></listitem>
|
||||
<listitem><para>File2,</para></listitem>
|
||||
<listitem><para>File10.</para></listitem>
|
||||
</orderedlist>
|
||||
If this option is disabled, the normal alphabetical sorting will be used, which
|
||||
leads to the sort order
|
||||
<orderedlist>
|
||||
<listitem><para>File1,</para></listitem>
|
||||
<listitem><para>File10,</para></listitem>
|
||||
<listitem><para>File2.</para></listitem>
|
||||
</orderedlist>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Enable <guilabel>Rename inline</guilabel> to use this mode if only one item is currently selected.
|
||||
Enable <guilabel>Rename inline</guilabel> to use this mode if only one item is currently selected.
|
||||
If this option is disabled or several items are selected, a dialog will be displayed for renaming.
|
||||
</para></listitem>
|
||||
|
||||
|
@ -1381,11 +1374,6 @@ A bar that shows how much space is free on the current drive.
|
|||
</itemizedlist>
|
||||
|
||||
</para>
|
||||
<note><para>
|
||||
Since &dolphin; 4.9 the <guimenuitem>Delete</guimenuitem>,
|
||||
<guimenuitem>Copy To</guimenuitem>, and <guimenuitem>Move To</guimenuitem>
|
||||
commands of the context menu have to be enabled on the Services page.
|
||||
</para></note>
|
||||
|
||||
</sect3>
|
||||
|
||||
|
@ -1398,7 +1386,7 @@ commands of the context menu have to be enabled on the Services page.
|
|||
|
||||
<para>
|
||||
The following settings control how the contents of a folder are displayed in the
|
||||
&kappname; view, and are stored on a per-folder basis by default:
|
||||
&dolphin; view, and are stored on a per-folder basis by default:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
|
||||
|
@ -1419,7 +1407,7 @@ Sorting of folders and files – are folders shown first or not?
|
|||
<listitem><para>
|
||||
Previews – are they shown instead of icons (based on the settings made in
|
||||
<link linkend="preferences-dialog-general-previews"><guilabel>Previews</guilabel>
|
||||
tab of &kappname;'s General settings</link>) or not?
|
||||
tab of &dolphin;'s General settings</link>) or not?
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
|
@ -1536,6 +1524,17 @@ folder.</action></para>
|
|||
<listitem><para><action>Closes the current tab.</action></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><menuchoice>
|
||||
<shortcut>
|
||||
<keycombo action="simul">&Ctrl;&Shift;<keycap>T</keycap></keycombo>
|
||||
</shortcut>
|
||||
<guimenu>File</guimenu>
|
||||
<guimenuitem>Undo close tab</guimenuitem>
|
||||
</menuchoice></term>
|
||||
<listitem><para><action>Reopens the last closed tab.</action></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><menuchoice>
|
||||
<shortcut>
|
||||
|
@ -1584,7 +1583,7 @@ to the trash and cannot be restored.</action></para></listitem>
|
|||
<listitem><para><action>Shows the properties dialog for the currently selected
|
||||
item(s).</action></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--FIXME http://www.aelog.org/checksums-made-easy in fundamentals? -->
|
||||
<varlistentry>
|
||||
<term><menuchoice>
|
||||
<shortcut>
|
||||
|
@ -1644,7 +1643,10 @@ item(s).</action></para></listitem>
|
|||
<keycombo action="simul">&Ctrl;<keycap>V</keycap></keycombo>
|
||||
</shortcut>
|
||||
<guimenu>Edit</guimenu>
|
||||
<guimenuitem>Paste Clipboard Contents...</guimenuitem>
|
||||
<guimenuitem>Paste Clipboard Contents...</guimenuitem></menuchoice> or
|
||||
<menuchoice><guimenu>Edit</guimenu><guimenuitem>Paste one File</guimenuitem></menuchoice> or
|
||||
<menuchoice><guimenu>Edit</guimenu><guimenuitem>Paste one Folder</guimenuitem></menuchoice> or
|
||||
<menuchoice><guimenu>Edit</guimenu><guimenuitem>Paste x Items</guimenuitem>
|
||||
</menuchoice></term>
|
||||
<listitem><para><action>Pastes the currently copied/cut items to the current
|
||||
folder. If the clipboard does not contain files or folders, the clipboard
|
||||
|
@ -1778,7 +1780,7 @@ current folder grouped by the option selected in <guimenuitem>Sort By</guimenuit
|
|||
<keycombo action="simul">&Alt;<keycap>.</keycap></keycombo>
|
||||
</shortcut>
|
||||
<guimenu>View</guimenu>
|
||||
<guimenuitem>Show Hidden Files</guimenuitem>
|
||||
<guimenuitem>Hidden Files</guimenuitem>
|
||||
</menuchoice></term>
|
||||
<listitem><para><action>Shows all the hidden files and sub-folders within the current
|
||||
folder.</action></para></listitem>
|
||||
|
@ -2102,21 +2104,6 @@ Documentation copyright 2009 Frank Reininghaus <email>frank78ac@googlemail.com</
|
|||
|
||||
</chapter>
|
||||
|
||||
<appendix id="installation">
|
||||
<title>How to get &dolphin;</title>
|
||||
|
||||
&install.intro.documentation;
|
||||
|
||||
<para>For instructions on acquiring &kde; please see <ulink
|
||||
url="http://www.kde.org">http://www.kde.org</ulink> or read the chapter
|
||||
<ulink url="help:/fundamentals/install.html">Installing &kde;</ulink>
|
||||
in the &kde; Fundamentals.</para>
|
||||
|
||||
<para>For further information about &dolphin; you might want to visit
|
||||
<ulink url="http://userbase.kde.org/Dolphin">http://userbase.kde.org/Dolphin</ulink>.</para>
|
||||
|
||||
</appendix>
|
||||
|
||||
&documentation.index;
|
||||
</book>
|
||||
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 46 KiB |
Binary file not shown.
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 24 KiB |
|
@ -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)
|
||||
|
|
|
@ -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();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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"));
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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));
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -82,7 +82,7 @@ private:
|
|||
QSet<QByteArray> m_roles;
|
||||
QHash<QString, QByteArray> m_roleForProperty;
|
||||
|
||||
friend class KBalooRolesProviderSingleton;
|
||||
friend struct KBalooRolesProviderSingleton;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -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);
|
||||
|
||||
QWheelEvent copy = *event;
|
||||
QApplication::sendEvent(m_scrollBar, ©);
|
||||
event->setAccepted(copy.isAccepted());
|
||||
|
||||
m_smoothScrolling = previous;
|
||||
|
||||
event->accept();
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
@ -84,13 +89,6 @@ private slots:
|
|||
void slotAnimationStateChanged(QAbstractAnimation::State newState,
|
||||
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;
|
||||
|
|
|
@ -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)")));
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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()); });
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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())));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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();
|
||||
}
|
||||
|
|
|
@ -65,6 +65,7 @@ private:
|
|||
QRadioButton* m_caseInsensitiveSorting;
|
||||
|
||||
QCheckBox* m_renameInline;
|
||||
QCheckBox* m_useTabForSplitViewSwitch;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -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));
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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());
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
Loading…
Reference in a new issue