The latter is only for KF modules to use.
Also include the KDE cmake modules as first thing, as their settings
can influence other included macros.
GIT_SILENT
Dolphin still uses KToolInvocation::invokeTerminal() which is
deprecated and requires KInit. However Dolphin was ported away from
requiring it in other ways, so it is now possible to have Dolphin
running but not KInit, which breaks the "Open in Terminal"
functionality.
Using KTerminalLauncherJob fixes this. It was introduced in Frameworks
5.83, so the CMake dependency version is accordingly increased.
BUG: 441072
FIXED-IN: 21.12
Since KIO 5.82, KCoreDirLister (the base class of KDirLister) emits a jobError()
signal when the ListJob used internally emits an error.
Drop KFileItemModelDirLister class, now redundant.
This also bump the KF version to 5.82.
This commit introduces KUserFeedback in dolphin with some basic data
sources and with a settings page to configure the telemetry values.
There are also a couple custom data sources as proof of concept: a bunch
of settings and the count of available network shares as listed by Solid.
The settings page is shown only if the user feedback framework is
enabled, but currently in Plasma we don't have a global kill switch to
disable it.
At the moment we never show an encouragement message. We need to connect
to the `Provider::showEncouragementMessage()` signal, but first we
should agree to a common way to show a non-annoying message to the users.
The QSet range constructor requires Qt 5.14.
In `DolphinView::slotHeaderContextMenuRequested()` the conversion from
QList to QSet was pointless, so we just use a QList now.
StatJob::mostLocalUrl only works with ":local" protocols, adjust the code
accordingly.
Make the code async.
Remove activeContainerLocalPath() method as it isn't needed anymore.
Drive-by change: minimum required version of Qt should be 5.12 because
that's what KF >= 5.73 already requires.
In DolphinMainWindow, since KRun allows running executables by default, use
setRunExecutables(true) so as not to change the behaviour.
Remove the now redundant slotHandleUrlStatFinished, that whole StatJob
logic is now handled by OpenUrlJob.
Bump KF required version to 5.73, since that's where
OpenUrlJob::setShowOpenOrExecuteDialog was introduced.
Summary: The deb/rpm/pacman packages are now installed/uninstalled using packagekit.
Test Plan: Try to install deb package from kde store (search for `jetbrains`). Then uninstall it.
Reviewers: #dolphin, ngraham, elvisangelaccio, meven
Reviewed By: #dolphin, ngraham, elvisangelaccio, meven
Subscribers: cblack, anthonyfieroni, asturmlechner, meven, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D29119
Summary:
With the rename dialog upstreamed in D17595, we can use it from there.
This will require the KF5 dep to be bumped to 5.67, which should be feasible given that we're at the very beginning of a new Applications cycle.
Depends on D17595
Test Plan:
1. Dolphin Settings > uncheck "rename inline"
2. Rename one or more files. Observe that it still works
Tests still pass.
Reviewers: #dolphin, elvisangelaccio, meven
Reviewed By: elvisangelaccio, meven
Subscribers: meven, broulik, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D17597
Summary: CCBUG: 392882
Test Plan:
1. Create a file
2. Remove it, so that it goes to the trash
3. Open trash
4. Empty trash
Before:
Information panel icon is still user-trash-full
After:
Information panel icon is changed to user-trash
Reviewers: ngraham, #dolphin, elvisangelaccio
Reviewed By: ngraham, #dolphin, elvisangelaccio
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D23668
Summary: Unmounting a busy device from the places panel doesn't tell which applications have open files blocking the unmount.
Test Plan:
Mount a USB stick using Dolphin
Open a file from the USB stick
Unmount the USB stick using Dolphin
Observe the new error message.
FEATURE: 189302
Reviewers: #dolphin, elvisangelaccio, ngraham, broulik, meven
Reviewed By: #dolphin, elvisangelaccio, meven
Subscribers: meven, davidedmundson, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D19989
Summary:
{F7205836}
Use a default toolbar layout that looks better and makes more sense for new users.
Test Plan: Open Dolphin (with the default toolbar)
Reviewers: #dolphin, #vdg, ngraham, GB_2, elvisangelaccio
Reviewed By: #dolphin, #vdg, ngraham, GB_2
Subscribers: iasensio, filipf, meven, elvisangelaccio, felixernst, GB_2, ndavis, ngraham, kfm-devel, #vdg, #dolphin
Tags: #dolphin, #vdg
Differential Revision: https://phabricator.kde.org/D23075
`VERSION_GREATER_EQUAL` was introduced in cmake 3.7, but the specified
minimum version is 3.0.
So use `NOT VERSION_LESS` instead to still support older cmake versions
too.
Differential Revision: https://phabricator.kde.org/D22984
Summary:
FEATURE: 183429
FIXED-IN: 19.08.0
GUI: new cli argument --new-window
Externally called files/directories are opened in a a new tab of an instance of Dolphin that already exists. If any of the given URIs are already open in a tab, then those tabs are activated instead of a new tab being opened. If there is no instance then the files/directories are opened in a new window. The newly opened file/directory has its tab activated, and consequently, the window is also activated.
When the user clicks "Open In New Window" or "Detach Tab", the files/directories are opened in a new window.
Test Plan:
[Manual]
Before testing, set the default file manager in system settings as the newly built Dolphin executable.
One must also include the new dolphin executable in the $PATH, otherwise some functions will attempt to open the system dolphin instead of the new one.
Furthermore, running two different versions of Dolphin (in particular, where one does not have this patch included) can result in bugs appearing, in particular, new tabs not opening as old instances will not recognise the DBus commands sent to it. However, I see no reason why a user will have two different versions of Dolphin (apart from people like us :D).
Open directories with the help of auxillary programs (i.e. a browser). The files/directories should appear in a new window if an instance does not exist. If an existence already exists, then a new tab should be opened and activated in that instance and the window activated.
Use QDBusViewer to open folders/items by calling the ShowFolders/ShowItems methods in org.freedesktop.FileManager1 of the Dolphin instance.
When a user chooses to "Open In New Window"/"Detach Tab" then the files/directories should be opened in a new window.
Reviewers: #dolphin, elvisangelaccio
Subscribers: zzag, dfaure, fvogt, fikrim, magar, fbg13, davidedmundson, kwin, ngraham, elvisangelaccio, anthonyfieroni, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D16648