| Age | Commit message (Collapse) | Author |
|
This effectively reverts the mutable iterations approach on
2448f88c5f42d7a2040fcf3bcd3c5f2a2f62cd03, and fix crashes
and ghost items when using the filter bar
BUG: 428374
|
|
|
|
|
|
|
|
|
|
It will be removed in Qt 6 without porting strategy:
https://github.com/qt/qtbase/commit/f43cb31ba00a431c6d0a0b17750483a72ae03bb0
We know that that variants will be either ints (for `count`) or longs (for `size`),
so just convert them to longs (to avoid overflows) and compare those.
|
|
This requires Qt 5.14, which we now depend on.
|
|
Unfortunately licensedigger does not strip the trailing * characters.
While at it, use a common style for all source files.
|
|
Test Plan: Sort by file size in details view.
Reviewers: #dolphin, ngraham, elvisangelaccio
Reviewed By: #dolphin, ngraham
Subscribers: kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D29424
|
|
Summary:
Allow to compute the recursive size of directories to fill the details view size column.
A setting allow to set a limit to the recursive level, allowing the user to have some power over the setting.
When sorting by size and the feature is on, we get progressive ordering as the directory size are gathered.
KDirectoryContentsCounter uses a cache internally to keep results so that it can display directory size faster, but counts the dir size of directories each time it is asked to count the size a directory nevertheless and when the size has changed, it is updated.
KDirectoryContentsCounter uses one worker per instance only, meaning one process per view makes the disk spin.
FIXED-IN: 20.08
BUG: 190580
BUG: 158090
Test Plan:
With some recursion allowed:
{F8267580}
Without any recursion allowed (default):
{F8267581}
Reviewers: elvisangelaccio, ngraham, #dolphin
Reviewed By: elvisangelaccio, ngraham, #dolphin
Subscribers: feverfew, anthonyfieroni, iasensio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D25335
|
|
QCollator (especially with Qt 5.14 and ICU 65.1) is very unhappy with
threads.
To avoid having to lock and unlock the mutex everywhere (and ensure it
is unlocked before calling other things that might lock it, etc.), we do
it as locally as possible. Even if for some reason Qt and ICU make
QCollator threadsafe in the future locking here should have minimal
impact.
BUG: 419585
Differential Revision: https://phabricator.kde.org/D28659
|
|
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
|
|
|
|
|
|
GIT_SILENT
|
|
|
|
Summary:
Current behavior of dolphin in sorting of files with textual columns (e.g. tags) is to show files without this particular textual column (e.g. without tags) first.
This patch changes this behavior so that dolphin shows the files with some value before the files without any value for chosen sorting method.
BUG: 410538
Test Plan:
Sorting by name (isn't affected by the patch): https://i.imgur.com/eqbYwyZ.png
Sorting by textual column ("tags" in this particular example),
old version (non-tagged files and folders come first): https://i.imgur.com/5KLLujU.png
patched version (tagged files and folders come first): https://i.imgur.com/oUAeZ2z.png
Reviewers: #dolphin, #vdg, ngraham
Reviewed By: #dolphin, #vdg, ngraham
Subscribers: elvisangelaccio, ngraham, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D23482
|
|
"Local" URLs can also be slow.
This might jeopardize loading large local directories where a resorting could take place but imho it's better than leaving the user
wondering when files will finally show up. However, it takes some time for KDirLister to initially signal items having been added,
and only then our 2 second timer starts.
Also, stop the timer when loading has completed.
Differential Revision: https://phabricator.kde.org/D23460
|
|
Summary:
All files and folders with cyrillic names are placed in latin 'A' group. This patch fixes this issue.
CCBUG: 406867
Test Plan:
Make grouping by name in the dir with cyrillic files or dirs in it.
See screenshots below.
Before {F6985465}
After {F6985459}
Reviewers: #dolphin, ngraham, cfeck, elvisangelaccio
Reviewed By: #dolphin, ngraham, elvisangelaccio
Subscribers: hein, cfeck, ngraham, elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D22303
|
|
This reverts commit dc586ada63d1822fbbe38a0dd3449c73b03928e0.
D22303 had a wrong diff.
CCBUG: 406867
|
|
Summary:
All files and folders with cyrillic names are placed in latin 'A' group. This patch fixes this issue.
BUG: 406867
FIXED-IN: 19.11.80
Test Plan:
Make grouping by name in the dir with cyrillic files or dirs in it.
See screenshots below.
Before {F6985465}
After {F6985459}
Reviewers: #dolphin, ngraham, cfeck, elvisangelaccio
Reviewed By: #dolphin, ngraham, elvisangelaccio
Subscribers: hein, cfeck, ngraham, elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D22303
|
|
GIT_SILENT
|
|
|
|
GIT_SILENT
|
|
Summary:
Add options to show aspect ratio and frame rate.
BUG: 366524
FIXED-IN: 19.08.0
Test Plan: Under Control -> Additional Info -> Video, there should be options for aspect ratio and frame rate.
Reviewers: #dolphin, #kde_applications, ngraham
Reviewed By: #dolphin, #kde_applications, ngraham
Subscribers: astippich, ngraham, elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D20074
|
|
|
|
Summary:
The documentation of QDateTime::toString() says that:
Any sequence of characters that are enclosed in single
quotes will be treated as text and not be used as an expression.
This means that translators cannot replace single quotes with other
characters such as «...». This is now described in the context of the
affected strings.
We also check that the translated string contains exactly 2 single
quotes, and we use the untraslated string otherwise.
BUG: 401382
Reviewers: lueck, aacid, cfeck
Subscribers: ltoscano, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D18769
|
|
|
|
Summary:
When using the list header to change the role and order, if one
changes the order to descending and then changes role, dolphin
also changes the order back to ascending. This results in sorting
the list of files twice in a row. This patch removes the first
(useless) sort.
Reviewers: #dolphin, elvisangelaccio
Reviewed By: #dolphin, elvisangelaccio
Subscribers: elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D17111
|
|
|
|
Summary:
When renaming a file from '.hidden' to 'not_hidden', the file
would still be displayed like a hidden file with a semi-transparent
icon and a grey text.
BUG: 399599
Reviewers: #dolphin, elvisangelaccio
Reviewed By: elvisangelaccio
Subscribers: elvisangelaccio, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D16115
|
|
This avoids creating a QDateTime object with all the timezone processing that comes with it since we're only
interested in the actual pretty date once we show the role to the user.
Differential Revision: https://phabricator.kde.org/D14880
|
|
This avoids creating a QDateTime object with all the timezone processing that comes with it since we're only interested in the
relative order, not absolute precise date time values.
CHANGELOG: Sorting files by date is significantly faster now
Differential Revision: https://phabricator.kde.org/D14394
|
|
Summary:
Uses a reference to the collator instead of copying and reinitializing it again and again. This is the reason for the speedup.
Changing the implementation from a Functor class to a Lambda removes some boilerplate code, but is not relevant for performance.
This requires a workaround for https://bugreports.qt.io/browse/QTBUG-69361
Just a single comparison to force the clean state of QCollator.
Test Plan:
Sorting in a directory with 82874 images:
[TIME] Sorting: 19883 (before)
[TIME] Sorting: 4198 (after)
kfileitemmodelbenchmark before: .............. Passed 29.36 sec
kfileitemmodelbenchmark after: .............. Passed 20.39 sec
Reviewers: #dolphin, #frameworks, markg, elvisangelaccio, bruns
Reviewed By: #dolphin, markg, elvisangelaccio
Subscribers: elvisangelaccio, apol, bruns, markg, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D13814
|
|
Summary: This reverts commit 765cc968c9dfbd4350226b775377506135c0442d.
Test Plan: revert-hammer
Reviewers:
Subscribers:
|
|
Summary:
Use a lambda function to use only one QCollator initialized only once.
This requires a workaround for https://bugreports.qt.io/browse/QTBUG-69361
Just a single comparison to force the clean state of QCollator.
Test Plan:
Sorting in a directory with 82874 images:
[TIME] Sorting: 19883 (before)
[TIME] Sorting: 4198 (after)
kfileitemmodelbenchmark before: .............. Passed 29.36 sec
kfileitemmodelbenchmark after: .............. Passed 20.39 sec
Reviewers: #dolphin, #frameworks, markg, elvisangelaccio, bruns
Reviewed By: #dolphin, markg, elvisangelaccio
Subscribers: elvisangelaccio, apol, bruns, markg, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D13814
|
|
I prefer to wait until QQCollator is thread safe or
someone discovers why this is happening now and not before.
Summary: This reverts commit 63825de82f3adc9376b0f0f27e24e21bccf62e2a.
Test Plan: revert-hammer
Reviewers:
Subscribers:
|
|
Summary:
Use a lambda function instead of a class.
This way the member QCollator is not copied and initialized several times.
Test Plan:
Sorting in a directory with 82874 images:
[TIME] Sorting: 19883 (before)
[TIME] Sorting: 4198 (after)
kfileitemmodelbenchmark before: .............. Passed 29.36 sec
kfileitemmodelbenchmark after: .............. Passed 20.39 sec
Reviewers: #dolphin, #frameworks, markg, elvisangelaccio
Reviewed By: #dolphin, markg, elvisangelaccio
Subscribers: elvisangelaccio, apol, bruns, markg, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D13814
|
|
|
|
Use integer comparison for word count, line count, track, and release year.
BUG: 394355
Differential Revision: https://phabricator.kde.org/D12948
|
|
Summary:
This patch splits the single property "Image Size" into "Width" and "Height", providing more fine-tuned control for power users.
FEATURE: 374559
Test Plan:
- Sorting works correctly
- No real change, only exposed differently
Reviewers: #dolphin, elvisangelaccio, ngraham
Reviewed By: #dolphin, elvisangelaccio, ngraham
Subscribers: ngraham, elvisangelaccio
Differential Revision: https://phabricator.kde.org/D11816
|
|
Reviewers: markg, elvisangelaccio
Reviewed By: markg, elvisangelaccio
Subscribers: chehrlic, rkflx, elvisangelaccio, #dolphin
Differential Revision: https://phabricator.kde.org/D10995
|
|
This reverts commit 533f050855a50212bba7be57a1590f9ce743e26d.
D10995 has not been approved.
|
|
Summary: I used CLion inspection to hunt all unused #include
Reviewers: #dolphin, elvisangelaccio, markg
Reviewed By: #dolphin, elvisangelaccio, markg
Subscribers: bcooksley, markg, elvisangelaccio, #dolphin
Differential Revision: https://phabricator.kde.org/D10985
|
|
Reviewers: #dolphin, markg
Reviewed By: markg
Subscribers: elvisangelaccio, #dolphin
Differential Revision: https://phabricator.kde.org/D10995
|
|
Summary: I used CLion inspection to hunt all unused #include
Reviewers: #dolphin, elvisangelaccio, markg
Reviewed By: #dolphin, elvisangelaccio, markg
Subscribers: markg, elvisangelaccio, #dolphin
Differential Revision: https://phabricator.kde.org/D10985
|
|
- "include own header first line"
- "put config.h in angle brackets line"
- "do not include QtModule/QtClass line"
`QElapsedTimer` was implicitly included by
kfileitemmodelsortalgorithm.h, now we need to explicitly include it in
kfileitemmodel.cpp.
We also need to explicitly link to `Qt5::Concurrent`, otherwise we
cannot `#include <QtConcurrentRun>`.
|
|
Summary:
Takes the original date a photo was taken out of the data provided by Baloo & makes it available to the user
FEATURE: 303645
{F5671033}
Test Plan:
- Works with a batch of time-tagged photos
- Can be hidden/shown/sorted like any other property
Reviewers: #dolphin, ngraham, elvisangelaccio
Reviewed By: #dolphin, ngraham, elvisangelaccio
Subscribers: elvisangelaccio, ngraham
Differential Revision: https://phabricator.kde.org/D10059
|
|
Conflicts:
CMakeLists.txt [versions]
src/panels/places/placesitemmodel.cpp
|
|
Summary:
Currently the folderpanel is inert when browsing outside of home because urls end up as 'file:////a/b/c'
and since Qt 5.10 this is an invalid URL: http://code.qt.io/cgit/qt/qtbase.git/commit/?id=f62768d046528636789f901ac79e2cfa1843a7b7
Premptive bug fix.
Test Plan:
Open dolphin
Leave home directory
Reviewers: #dolphin, elvisangelaccio
Subscribers: dfaure, elvisangelaccio, ngraham, anthonyfieroni
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D9610
|