Summary:
In the "no extension" case, we weren't separating out the path and the original filename,
breaking the feature for languages where the word "copy" would be at the beginning of the
filename, not after it (e.g. "copia de foo" in Spanish, and similar in other romance
languages). This patch fixes that by separating the original path and filename in the no
extension case as is done for the other case, which should solve the issue.
BUG: 419070
FIXED-IN: 20.04.0
Test Plan:
No changes in English; should fix the issue in Spanish once new translations are done
(see https://bugs.kde.org/show_bug.cgi?id=419070 for details)
Reviewers: #dolphin, elvisangelaccio, arojas, meven, pino, #localization
Reviewed By: #dolphin, elvisangelaccio
Subscribers: aacid, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D28227
Summary:
While dragging, the user could want to change the modifier, so we should call event->acceptProposedAction() to do update the dragCursor.
FIXED-IN: 20.04.0
Test Plan: While dragging files, change modifiers between Ctrl/Shift/Alt... and move the mouse at least 1px to see the cursor changes.
Reviewers: #dolphin, meven, ngraham, davidedmundson, elvisangelaccio
Reviewed By: #dolphin, elvisangelaccio
Subscribers: elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D28017
Summary: This should have been part of commit 405dd624fb
Test Plan: Duplicate item and make sure it gets selected.
Reviewers: ngraham
Reviewed By: ngraham
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D28084
Summary: This allows compile-time checks for the main window dbus methods.
Test Plan: Same test plan as in D21691, D21666 and D25510.
Reviewers: #dolphin
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26214
Summary:
`dolphin --daemon` does not have the `/dolphin/Dolphin_1` dbus path,
because it doesn't have any DolphinMainWindow.
Instead of working around this issue (as we did in D21666 and D25510),
just exclude these processes from the list of dbus instances checked by
`Dolphin::attachToExistingInstance()`.
CCBUG: 408244
Test Plan: Same test plan as in D21666 and D25510
Reviewers: #dolphin
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26213
Summary: Adds a Duplicate feature to Dolphin, showing up as a menu item in the File menu that appears when one or more items are selected and the directory is writable. Duplicated items receive the names of the original files with " copy" appended before the file extension, if any.
Test Plan:
{F5201386} {F5201393}
Test cases:
- Try to duplicate when nothing is selected: **PASS**: menu item is grayed out
- Try to duplicate anything on a read-only local volume: **PASS**: menu item is grayed out
- Try to duplicate anything on a read-only samba share: **PASS**: menu item is grayed out
- Duplicate single local file on R/W volume: **PASS**: item is duplicated and named correctly
- Duplicate multiple local files on R/W volume: **PASS**: 3 items are duplicated, named correctly, and selected
- Duplicate single local directory on R/W volume: **PASS**: item is duplicated and named correctly, but a rename operation is not initiated
- Duplicate multiple local directories on R/W volume: **PASS**: 3 items are duplicated, named correctly, and selected
- Duplicate single file on R/W samba share: **PASS**: item is duplicated and correctly
- Duplicate multiple files on R/W samba share: **PASS**: 3 items are duplicated, named correctly, and selected
- Duplicate single directory on R/W samba share: **PASS**: item is duplicated and named correctly
- Duplicate multiple directory on R/W samba share: **PASS**: 3 items are duplicated, named correctly, and selected
- Try to undo a successful duplication: **PASS**: operation is undone
This is my first attempt at a big change like this and I'm sure it's full of issues. I will accept any and all suggestions for improvement. :)
Reviewers: #dolphin, #kde_applications, elvisangelaccio, dfaure, broulik, davidedmundson
Subscribers: kfm-devel, meven, markg, fazevedo, cfeck, #dolphin
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D8208
Summary:
In DolphinTabWidget::openFiles it assumes openDirectories will open new tabs, so it
only marks the URL selection for the newly opened tabs. This assumption is incorrect
as Dolphin might reuse tabs when the folder is already open.
Even then, markUrlsAsSelected does nothing when the folder is already opened.
The selection seems to only be used when the folder finishes loading, calls made after
that only change a variable without updating the actual selection.
A call to DolphinView::updateViewState() is required to restore the intended behaviour, so long as DolphinView::clearSelection() has been called on the relevant tab, otherwise updateViewState() is a no-op.
BUG: 417230
FIXED-IN: 19.12.3
Test Plan:
1. In any application that has an "open containing folder" select that option
2. and then do the same for another file in the same folder
Reviewers: broulik
Reviewed By: broulik
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D27389
Summary:
BUG: 415698
FIXED-IN: 20.04
On each VCS plugin creation corresponding file name is saved (cached) so when we search which VCS plugin is appropriate for current directory we don't need to call KVersionControlPlugin::fileName() again.
Reviewers: #dolphin, meven, elvisangelaccio, ngraham
Reviewed By: #dolphin, meven, ngraham
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26962
Summary:
I've seem various complaints from users about the fact that the {nav Create New...} menu
item in the viewport context menu is now below {nav Open With} item. All the other
changes to menus seem to have been well-received but this one has garnered criticism.
Looking through D23757 and D11884, I can't actually see that this was intentional, so
it might even be a bug.
Either way, this patch restores the old position of the {nav Create New} menu items at
the top of the Viewport context menu.
BUG: 417640
FIXED-IN: 20.04.0
Test Plan: {F8093605}
Reviewers: #vdg, #dolphin, elvisangelaccio, ndavis
Reviewed By: #vdg, ndavis
Subscribers: asturmlechner, markuss, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D27267
Summary:
Since Dolphin's default behaviour became opening in new tabs rather than in new windows
(a very positive change, in my opinion), I always find myself accidentally opening folders
in new windows from the context menu. This is because in most browsers with tab workflow
(e.g. Firefox, Chromium, Falkon) the top context menu action is opening in a new tab, and
my muscle memory plays a bad trick :) I'm aware of middle-clicking, but I find it
inconvenient with my touchpad.
I suspect I'm probably not alone in that, so I think it makes sense to swap these actions
in Dolphin to match widely used apps.
Test Plan:
Open Dolphin, right click folders in the main view and in the Places panel, ensure the
actions are indeed swapped
Reviewers: #vdg, ndavis, #dolphin, ngraham
Reviewed By: #vdg, ndavis, #dolphin, ngraham
Subscribers: ngraham, ndavis, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D27318
Summary:
Add natural sorting and case-insensitive sorting, for all role-types
that benefit from.
BUG: 406296
FIXED-IN: 19.12.2
Test Plan:
Sort by any role type specified in `isRoleValueNatural()`
Before: Sorting is always case sensitive
After: Sorting according to 'Sorting mode' in configuration.
Reviewers: #dolphin, nicolasfella, meven, elvisangelaccio, ngraham
Reviewed By: #dolphin, meven, elvisangelaccio, ngraham
Subscribers: cfeck, meven, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D25741
Summary:
Change drop indicator color form highlight to text.
This makes more visible, when indicator is adjacent to a highlight
item, of a list.
BUG: 415010
Test Plan:
Before vs After
{F7974679}
Reviewers: #dolphin, #vdg, elvisangelaccio, ngraham
Reviewed By: #dolphin, #vdg, ngraham
Subscribers: meven, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26936
Summary:
Fixes multiple VCS plugin beginRetrival()/endRetrival()/itemVersion() calls on single directory update.
When VCS pluging finished gathering directory information VersionControlObserver::slotThreadFinished() calls KFileItemModel::setData() on each entry with appropriate item VCS information.
This in turn emits KFileItemModel::itemsChanged() which is connected with VersionControlObserver::delayedDirectoryVerification() which is starting to gather VCS directory information again.
This commits breaks the vicious circle.
BUG: 415698
FIXED-IN: 20.04.0
Reviewers: #dolphin, meven, ngraham, elvisangelaccio
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26721
Summary:
This improves portability.
QDesktopServices uses standard mimetype base resolution to find the app to use.
BUG: 372642
FIXED-IN: 20.04
Test Plan:
* Open http://google.com, opened default web browser
* Open mms:// (on my test system opened vlc)
Reviewers: #dolphin, elvisangelaccio, ngraham
Reviewed By: #dolphin, elvisangelaccio, ngraham
Subscribers: nicolasfella, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26732
Summary:
Tags containing blank spaces were not handled properly in the search widget.
Now we enclose them in quotes and strip the quotes before setting them to the widget.
{F7854247}
Test Plan:
No artifacts when searching tags containing spaces
Added test cases to `bin/dolphinquerytest`
Reviewers: #dolphin, elvisangelaccio, ngraham, meven
Reviewed By: #dolphin, elvisangelaccio, ngraham
Subscribers: meven, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26369
Summary:
I originally implemented this to show "Add <current folder> to Places" to make the menu
item more clear when invoked from the file menu or the viewport context menu because I
thought it wasn't totally clear that the action would be referring to the folder for the
visible view.
However I think in retrospect that this was a mistake. No other items in the file menu
or the viewport context menu name the current folder like this, so clearly there wasn't
a problem. And then the item's text doesn't match the text for other items.
Thie patch removes that behavior and makes the name match the style of all the other menu
item text.
BUG: 416064
FIXED-IN: 20.04.0
Reviewers: #dolphin, #vdg, meven
Reviewed By: #dolphin, meven
Subscribers: elvisangelaccio, meven, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26590
Summary:
Remove the explicit copy constructor of `KItemListStyleOption`, since it does not
add any logic to what the implicit copy constructor does, but triggers a compiler
warning if we don't overload `operator=` too.
Test Plan:
Compiles without `-Wdeprecated-copy` warning
No behavior changes
Reviewers: elvisangelaccio, #dolphin
Reviewed By: elvisangelaccio, #dolphin
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26585
Summary: KDirWatch only works correctly with canonical paths, i.e. symbolic links resolved.
Test Plan:
1. Create dirs:
$ mkdir test1
$ mkdir test1/subdir
$ ln -s test1 test2
2. Start dolphin, navigate to test2/subdir, then in terminal:
$ echo test > test2/subdir/test
Without the patch, test2/subdir/test won't be shown automatically, only after reload (F5).
With the patch applied, test2/subdir/test will be shown automatically.
3. Restart dolphin, navigate to test2/subdir, then in terminal:
$ echo test >> test2/subdir/test
Without the patch, the increased size of test2/subdir/test won't be shown automatically,
only after reload (F5). With the patch applied, it will be shown automatically.
4. Restart dolphin, navigate to test2/subdir, then in terminal:
$ rm test2/subdir/test
Without the patch, test2/subdir/test stays visible, will only disappear after reload (F5).
With the patch applied, it will disappear automatically.
Reviewers: dfaure, #dolphin, elvisangelaccio
Reviewed By: dfaure, #dolphin, elvisangelaccio
Subscribers: ngraham, elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D25732
Summary:
Instantly hide tooltip shown over an element when filter bar changes.
Currently the tooltip stays even when filtering causes the file under the mouse to change or disappears entirely.
The tooltip also continues to cover much of the window - hiding the new filtering results from user.
This is an enhancement to D22512
Test Plan:
1. place the mouse pointer over a file to show the tooltip
2. press "/" to activate filter bar
3. type in filter phrase
Reviewers: #dolphin, elvisangelaccio, ngraham
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26576
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:
Keeps the `Tags` menu open while selecting and deselecting tags in the
search panel, saving many mouse clicks for multiple tags.
It cannot be done natively on `QMenu` (https://bugreports.qt.io/browse/QTBUG-6635)
but it is a one-liner and I haven't seen any bad behavior so far.
Test Plan:
{F7853717}
- `Tags` menu does not close when selecting/deselecting tags
- Tag search is consistent
- Clicking anywhere else will close the menu
Reviewers: #dolphin, elvisangelaccio, ngraham, #vdg
Reviewed By: #dolphin, elvisangelaccio, #vdg
Subscribers: #vdg, broulik, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26343
Summary:
Small refactor patch to clean-up some logic on setter and getter:
- Search terms are previously splitted and set separately, so no need
for extra splitting and `foreach` loop
- Return search terms on a `QStringList` rather than join first
Depends on: D26029
Test Plan: No behavior changes
Reviewers: #dolphin, elvisangelaccio
Reviewed By: #dolphin, elvisangelaccio
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26150
Summary:
Small refactor patch to rename method names, from `ratingTerm` to `searchTerm`,
since its scope has grown bigger.
Test Plan: No behavior changes
Reviewers: #dolphin, elvisangelaccio
Reviewed By: #dolphin, elvisangelaccio
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D26029