Commit graph

6714 commits

Author SHA1 Message Date
Laurent Montel
a440ff1acb Remove not implement methods 2021-03-07 20:41:15 +01:00
l10n daemon script
35ec23ac1b GIT_SILENT made messages (after extraction) 2021-02-25 02:45:20 +01:00
Heiko Becker
ae1aeadef7 GIT_SILENT Update Appstream for new release
(cherry picked from commit 7fbe747427)
2021-02-25 00:12:43 +01:00
Méven Car
5e5f236d00 KFileItemModelRolesUpdater: Avoid refreshing items when we receive their content count
It concerns the detail view.

It can cause multiple preview to be generated for the same file.
This is visible for directories whose icons use a random value for their inner files thumbnails.

Only the view needs to be updated for this model change.
2021-02-20 18:37:00 +00:00
David Lerch
0811bf4a2b Use only enabled preview plugins in InformationPanelContent and ToolTipManager. 2021-02-19 23:07:54 +01:00
Alexander Lohnau
d691aa96f2 Do not run benchmark test automatically
Same reasoning as https://invent.kde.org/frameworks/kio/-/merge_requests/301 and
the commit series.
2021-02-18 20:08:05 +00:00
Stefan Brüns
ba041233e8 Apply 1 suggestion(s) to 1 file(s) 2021-02-17 15:21:41 +00:00
Stefan Brüns
492cfb73a3 [FileItemRolesUpdater] Use STL-style iterator instead of iterating a copy
QSet<T>::erase(it) is the save way of erasing from a QSet while iterating
it. This saves creating a copy of the QSet, lookup of a node by value in
`QSet<T>::remove(item)`, and repeated rehashing caused by `remove`.
2021-02-15 17:40:17 +01:00
Stefan Brüns
7c0b5c08cc [FileItemRolesUpdater] Reserve space in two temporary lists
Reserve sufficient space to avoid reallocation later. Overallocating
actually requires less memory than growing and copying it, and it
is freed immediately after anyway.
2021-02-15 17:34:01 +01:00
Stefan Brüns
68704c2a28 [FileItemRolesUpdater] Fix reservation size
The code below always adds the visible range, up to 5 pages before and
after the visible range (each capped to ResolveAllItemsLimit/2) and
the very first and last page (each up to m_maximumVisibleItems).

Use this number to avoid growing the list later.
2021-02-15 17:24:15 +01:00
Stefan Brüns
b4676b71c6 [FileItemRolesUpdater] Fix calculation of requested indexes
In case the last and/or first page (a page being n=m_maximumVisibleItems
items) overlapped the already inserted items, one item for each range
would be inserted a second time, e.g. for the first page and last page:

`beginExtendedVisibleRange == 0` => `endFirstPage := 0` => `0 <= 0` is
inserted again.

`count == 100; endExtendedVisibleRange == 99; m_maximumVisibleItems == 20`
=> `beginLastPage := 99` => `99 < 100` is inserted again.
2021-02-15 17:24:01 +01:00
Kai Uwe Broulik
b351afb9e1 [Status Bar] Hide zoomLabel also in menu handler 2021-02-14 23:07:46 +00:00
Méven Car
61a4ae4d3f Remove a missing emit KEYWORD
NO_CHANGELOG
2021-02-14 15:21:22 +01:00
l10n daemon script
39f5f1b530 GIT_SILENT made messages (after extraction) 2021-02-11 03:02:42 +01:00
Nicolas Fella
7c48344d0e Port away from deprecated KToolInvocation::invokeTerminal 2021-02-10 23:08:06 +00:00
Felix Ernst
998d71e5a7 Remove item move animation on view resize
This commit removes an animation that happens when the view is
resized. Before this commit, whenever the geometry of the view
changed, the items in the view drifted towards their new position
in the layout after a 300 ms delay. It would look like the items
are slow to find their position.

This commit simply moves them to their new position in an instant
which will abort any ongoing move animations.
2021-02-10 15:16:42 +01:00
Nicolas Fella
f65b0899c3 Build with QT_NO_KEYWORDS 2021-02-09 20:39:50 +00:00
Nicolas Fella
7dc863add7 Require C++17
Not only does C++17 bring many nice things, it also will be required
with Qt6.

Many KDE projects already require 17 without issues.
2021-02-09 20:34:23 +00:00
Nicolas Fella
3184c2707f Port to QRecursiveMutex
QMutex::Recursive is deprecated
2021-02-09 00:54:45 +01:00
Nicolas Fella
b68abb7d27 Add missing includes 2021-02-09 00:40:54 +01:00
Ahmad Samir
dd9405bf2f Port away from deprecated KIO signals
Use KDirLister::listingDirCompleted(const QUrl &) instead of
completed(const QUrl &).
2021-02-08 21:38:34 +00:00
Felix Ernst
a825e1bd74 Avoid KJob::exec() in DolphinView
This commit replaces an error-prone usage of KIO::StatJob::exec() in
DolphinView with the recommended KIO::StatJob::start().

The containing method DolphinView::statusBarText() is changed to be a
method without return value: requestStatusBarText()
The new status bar text is instead returned through a new
setStatusBarText() signal that will be emitted asynchronously if
necessary.

The calling code that deals with status bar text is refactored to
correctly work despite the new asynchronicity. The helper method
calculateItemCount() is moved into requestStatusBarText() and some
other code from requestStatusBarText() is moved into a new helper
method emitStatusBarText().

The documentation of KIO::KJob::exec() explains why it should be
avoided. A reproducible crash is the reason for this commit.
2021-02-08 21:32:10 +00:00
l10n daemon script
7eae6bba5f GIT_SILENT made messages (after extraction) 2021-02-08 02:48:28 +01:00
Heiko Becker
24f04d75e1 GIT_SILENT Update Appstream for new release
(cherry picked from commit 0f6b39d0cd)
2021-01-29 21:04:28 +01:00
Nate Graham
c161b895ff Merge branch 'release/20.12' 2021-01-25 10:25:51 -07:00
Harald Sitter
5ed12ed44a don't crash when building without baloo
show_information_panel is only created when building with baloo. only
access it when built with baloo, otherwise always report the panel as
off.

this fixes a nullptr deref because action() would return a nullptr since
show_information_panel isn't a thing in all build configurations

(full disclosure: I can't reproduce the crash, nor did I build without
baloo)

BUG: 431730
2021-01-25 10:12:53 +01:00
Nate Graham
be73a01f48 Make zoom slider and free space bar a little smaller by default
This makes more room for the new explanatory label for the zoom slider.
The zoom slider in particular was huge, and probably would have stood to
be reduced in width anyway even if we didn't add an explanaory label.
2021-01-23 23:15:56 +00:00
Nate Graham
0ba739c47e Add explanatory label to status bar's icon size slider
Right now the slider has no label. Let's add one so it's clear what it
does.

BUG: 429255
FIXED-IN: 21.04
2021-01-23 23:15:56 +00:00
Laurent Montel
8236e95c76 Autogenerate categories file 2021-01-23 09:23:41 +01:00
l10n daemon script
aac6a5245f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2021-01-21 07:07:06 +01:00
Norbert Preining
33270dd442 Show button to open knetattach inline with URL nav on remove:// view
This is a backport of b1cadeba93

  From b1cadeba93 Mon Sep 17 00:00:00 2001
  From: Nate Graham <nate@kde.org>
  Date: Tue, 15 Dec 2020 23:03:00 -0700
  Subject: [PATCH] Show button to open knetattach inline with URL nav on
   Remote:// view

  In conjunction with
  https://invent.kde.org/frameworks/kio/-/merge_requests/260,
  the net result is to hide the knetattach launcher in the view, and show
  it inline with Dolphin's URL navigator toolbar when viewing the
  remote:// view, just like how we add an "Empty Trash" button when
  viewing trash://.

The backport ensures that even with frameworks << 5.78 only one network
button is shown.

BUG: 431626
2021-01-19 07:48:36 +09:00
l10n daemon script
25bfe6149e GIT_SILENT made messages (after extraction) 2021-01-18 03:04:46 +01:00
Kai Uwe Broulik
2e79e21c3f [DolphinView] Fix "Folder is empty" label showing prematurely
Don't show the label while still loading. Since there is no property in
`KDirLister` a dedicated `m_loading` is added for this purpose.

Also, I removed the explicit update on `urlChanged` as the view
probably won't change until the lister starts loading.

BUG: 430085
2021-01-17 13:32:56 +00:00
l10n daemon script
6945a54004 GIT_SILENT made messages (after extraction) 2021-01-17 02:49:13 +01:00
Elvis Angelaccio
de8ea90ca7 Merge branch 'release/20.12' 2021-01-16 19:28:59 +01:00
Ilia Kats
a6d095fa04 fix folder size calculation on FUSE and network file systems
KFileItem::isSlow uses hardcoded logic that returns true if the
filesystem is Smb or Nfs. However,
KFileSystemType::determineFileSystemTypeImpl on Linux returns Nfs also
if the file system in question is a FUSE file system, which includes
NTFS, sshfs, and others.

BUG: 430778
BUG: 431106
2021-01-16 19:20:11 +01:00
The Imp
764861af51 Change copy location shortcut in dolphin so as to not conflict with Konsole panel
BUG: 426461
FIXED-IN: 20.12.2
2021-01-16 19:15:20 +01:00
Ilia Kats
3b4dae3556 fix folder size calculation on FUSE and network file systems
KFileItem::isSlow uses hardcoded logic that returns true if the
filesystem is Smb or Nfs. However,
KFileSystemType::determineFileSystemTypeImpl on Linux returns Nfs also
if the file system in question is a FUSE file system, which includes
NTFS, sshfs, and others.

BUG: 430778
BUG: 431106
2021-01-15 20:41:24 +00:00
Antonio Rojas
4683c03be6 Don't show "Add network folder" button if knetattach is not available
knetattach is part of plasma-desktop, so it doesn't necessarily have to be installed.
In that case, instead of showing a button that doesn't do anything, don't show it at all.
2021-01-15 18:02:03 +01:00
l10n daemon script
9fde9035a8 GIT_SILENT made messages (after extraction) 2021-01-15 02:57:54 +01:00
l10n daemon script
9b55f5d0f9 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2021-01-14 07:07:18 +01:00
l10n daemon script
138c5017d9 GIT_SILENT made messages (after extraction) 2021-01-12 02:59:22 +01:00
Stefan Brüns
cade3eb302 [BalooRolesProvider] Use Property IDs instead of string matching
Instantiating KFileMetaDataInfo for each file and property, even when
the role is not used, is somewhat expensive and unnecessary. Use the
numeric Property ID to map it to a role, and only instantiate the used
PropertyInfo's.

Remove the properties provided by KFM::UserMetaData from the map, as
these will newer match.
2021-01-11 12:28:38 +01:00
Stefan Brüns
dcdf4b01c8 [BalooRolesProvider] Reduce number of XAttr reads
Typically most of the extended attributes are not set for a file. Instead
of trying to fetch each attribute individually check which attributes
exist first.
2021-01-11 12:28:38 +01:00
Stefan Brüns
fa60438376 [BalooRolesProvider] Remove explicit default constructor calls 2021-01-11 12:28:38 +01:00
Stefan Brüns
7d716fd9bd [BalooRolesProvider] Remove unused roleForProperty method 2021-01-11 12:28:38 +01:00
Stefan Brüns
09b6c99325 [BalooRolesProvider] Simplify single tag case
When the list contains just one value, return it instead of trying to
sort the list with a QCollator.
2021-01-11 12:28:33 +01:00
Stefan Brüns
34f74e4226 [BalooRolesProvider] Move static tagsFromValues to anonymous namespace 2021-01-11 12:27:11 +01:00
Stefan Brüns
4c31ec3789 [BalooRolesProvider] Remove unused includes 2021-01-11 12:27:11 +01:00
l10n daemon script
a344998ae9 GIT_SILENT made messages (after extraction) 2021-01-11 02:57:22 +01:00