Commit graph

6745 commits

Author SHA1 Message Date
Alexander Lohnau
ad93532f93 Set empty value for packagekit transaction flags
Otherwise the value would be Trusted Only, which will
forbid installing local packages
2020-11-12 17:03:25 +01:00
Nate Graham
8276f1e46e Merge branch 'release/20.12' 2020-11-10 10:39:15 -07:00
Méven Car
6b1524e4ff Places panel: show a tooltip after 500 ms
BUG: 426455
FIXED-IN: 20.12
2020-11-10 08:04:15 +00:00
Elvis Angelaccio
6719072837 Merge branch 'release/20.12' 2020-11-10 00:05:27 +01:00
Felix Ernst
63f4981fe0 Adress the third round of Angelaccio's review comments
Additionally remove some redundant code concerning UrlNavigator visuals.
2020-11-09 23:49:07 +01:00
Felix Ernst
2d4d2ce9a1 Adress most of the second round of Angelaccio's review comments
This commit applies most suggestions which were made on the MR.
Most notably the DolphinUrlNavigator class is split up which leads to
the creation of a DolphinUrlNavigatorsController class.

Additionally some minor coding style and const correctness changes are
included.

The error value of cached integers is changed from -1 to INT_MIN
because situations could come up in which -1 would be a valid value.
2020-11-09 23:49:07 +01:00
Felix Ernst
4202383137 Apply Méven Car's suggestions 2020-11-09 23:49:07 +01:00
Felix Ernst
a418d6229e Fix a crash and extract unrelated changes
The secondary UrlNavigator is now created when and only when:
- split view mode is activated for the active tab
OR
- switching to a tab that has split view already enabled.
This fixes a crash that occurs when the setting to always start in
split view mode is enabled.

An animation for activating split view is also removed from this and
moved into a separate MR. Another unrelated name change left over from
a previous commit (viewContainers() -> activeViewContainers()) is
dropped.
2020-11-09 23:49:07 +01:00
Felix Ernst
37327c9b0a Make UrlNavigators in the toolbar the only option
The UrlNavigators will be automatically added to the toolbar. The Sort By
action is removed from the default toolbar to make space.

Remove all options to have UrlNavigators outside the toolbar and remove
those code paths.

Make it so the new NavigatorsWidgetAction contains two UrlNavigators when
in split view mode. Spacing was also added to align these UrlNavigators
with the ViewContainers when enough space is available.

Force the toolbar to be either at the top or bottom of the window.

Set a sane sizeHint for DolphinUrlNavigator. It would be better to do this
in KUrlNavigator in the future.

This commit also contains a changes which should be moved to a separate
merge requests before this gets merged:
- Add an expansion animation when split view is enabled by the user
2020-11-09 23:49:07 +01:00
Felix Ernst
6151a7aec0 Add the UrlNavigator to the toolbar automatically if needed
This commit adds the DolphinUrlNavigatorWidgetAction::addToToolbarAndSave()
method which changes the users toolbar configuration to contain an
Url Navigator. This way the user doesn't need to do anything manually.

Aside from that a bunch of minor fixes like renaming and reordering
2020-11-09 23:49:07 +01:00
Felix Ernst
b6fc58c3c3 Adress the first round of Angelaccio's review comments
- Split the viewContainers(bool includeInActive) into two methods
    without parameters
- Prevent users from accidently hiding all Url Navigators by
    preventing the dangerous action and then displaying a helpful
    message instead
Unrelated to review comments: Remove a useless line of code
2020-11-09 23:49:07 +01:00
Felix Ernst
00abc6d280 trailing whitespaces 2020-11-09 23:49:07 +01:00
Felix Ernst
ad5d3367c7 Add an option to use an UrlNavigator in the toolbar instead
This commit adds a locationInToolbar KToggleAction to switch between
using a location bar to navigate or using a new custom QWidgetAction
in the toolbar.

A big portion of this MR is refactoring because until now the
UrlNavigator was tightly intertwined with the DolphinViewContainer.
With this MR an UrlNavigator for controlling a View can be freely
connected or disconnected with a single method call.

A DolphinUrlNavigator class is created in the process which contains all
Dolphin-specific UrlNavigator code which did previously reside in the
DolphinViewContainer class. Other application parts that belong to
UrlNavigator-management are also moved here.
2020-11-09 23:49:07 +01:00
Méven Car
880766bd56 PlacesItemListWidget: Use Solid to check if device is a network share 2020-11-09 12:30:43 +00:00
Elvis Angelaccio
e5d137b81d Merge branch 'release/20.12' 2020-11-08 23:24:12 +01:00
Elvis Angelaccio
f6327ffec8 Add missing reference 2020-11-08 23:23:07 +01:00
Ismael Asensio
ee4ab8ce69 Iterate over a const copy list of containers
This effectively reverts the mutable iterations approach on
2448f88c5f, and fix crashes
and ghost items when using the filter bar

BUG: 428374
2020-11-08 21:59:34 +00:00
Albert Astals Cid
dd9e25cde5 GIT_SILENT Upgrade release service version to 21.03.70. 2020-11-08 18:33:53 +01:00
Albert Astals Cid
e270aae920 GIT_SILENT Upgrade release service version to 20.11.80. 2020-11-08 17:46:54 +01:00
Alexander Lohnau
801fb7e0fd Do not expose KCMs in application launchers
We still need to build them, because they
are also loaded on konqueror.
2020-11-07 14:51:20 +00:00
Méven Car
1c2fbdef09 KDirectoryContentsCounter: fix support of symlinks dir
BUG: 428712
FIXED-IN: 20.12
2020-11-07 06:21:11 +00:00
Elvis Angelaccio
465e06138e Add support for KUserFeedback
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.
2020-11-05 18:31:28 +00:00
Méven Car
61bf84c13d Details view: display empty text instead of unknown for sizeless dirs
BUG: 420037
BUG: 420040
FIXED-IN: 20.12
2020-11-05 08:50:55 +01:00
Chris Holland
6a196bf69d Move m_textInfo to fix ctor warning, and document why it's protected. 2020-11-04 23:16:13 +00:00
Chris Holland
70656d08f9 Use QDeadlineTimer instead of QDateTime.
Use early returns instead of deeply nested if/else.
2020-11-04 23:16:13 +00:00
Chris Holland
60c3fa8d39 Cleanup imports 2020-11-04 23:16:13 +00:00
Chris Holland
9e9cb4d1e1 Remove wip debugging 2020-11-04 23:16:13 +00:00
Chris Holland
ee743717e5 Fix freeSpaceInfo cache not being reset. 2020-11-04 23:16:13 +00:00
Chris Holland
b8e68a5ea9 Use KDE GitLab url instead of the GitHub mirror 2020-11-04 23:16:13 +00:00
Chris Holland
4a0dbdea4f Cleanup unused colors. Use const. Use KColorScheme danger.
The draw code is more like the last state of D21312 now.
2020-11-04 23:16:13 +00:00
Chris Holland
89ede4b9a1 Refactor capacity by to use async KIO FreeSpaceJob.
Based on this kio filepicker patch:
933887dc33
2020-11-04 23:16:13 +00:00
Chris Holland
8f76df41da Only show capacity bar for devices (has a udi). 2020-11-04 23:16:13 +00:00
Chris Holland
e75326077b Only check if place url is mount point once during polish event.
The capacity bars will no longer update when capacity changes. It only
checks the size on init.

Updating during polish event is only a temporarily solution just to
draft code flow for seperating logic from painting. Eventually this
logic update should be in a worker thread detached from blocking the
rendering thread that blocks launching the dolphin window.
2020-11-04 23:16:12 +00:00
Chris Holland
ac6de72048 Draw 2 Rectangles below mount points to represent a disk capacity bar
Draws overtop text that's goes below the baseline like a 'j'. It's
fairly difficult to add extra space below the text as the places view
is a "details" view, so the text is vertically centered in the
widget's "row" as you'd desire it to in the main file view.

We can make the widget 8px taller, adding 4px above and below so
there's adequate room for the capacitybar, but that wastes 4px for
each mount point.

Ideally we'd use the "compact" view, which displays the text/size in a
column beside the icon. However the compact view was not designed to
take up the entire width of the viewport. It's also designed to
overflow with a horizontal scrollbar.
2020-11-04 23:16:12 +00:00
Ezike Ebuka
e9a39700fc Improve padding in the Places View 2020-11-04 21:54:10 +00:00
Elvis Angelaccio
957cc92f46 Revert "D-Bus activation systemd service"
This reverts commit eb441b1188.

We'll push it again after we branch 20.12. We don't want to push a too
recent version of KF5 on distros.

!27
2020-11-04 01:12:48 +01:00
Méven Car
c7d4c37534 Compute text width taking into account the zoom level
This makes the icon view less crowded.
2020-11-03 10:03:45 +00:00
l10n daemon script
af1e13f9fa 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"
2020-11-03 06:20:03 +01:00
Méven Car
ffe01ee840 FolderPanel: prevents scanning directory tree recursively
KFileItemListView contents are periodically scanned by KFileItemModelRolesUpdater.
It uses then KDirectoryContentsCounter to scan directories to determine their size possibly recursively.

Introduce a scanDirectories setting to disable directory scanning by KFileItemModelRolesUpdater.

BUG: 426617
FIXED-IN: 20.08.3
2020-11-03 02:21:43 +00:00
l10n daemon script
5e9a869a39 GIT_SILENT made messages (after extraction) 2020-11-03 02:35:33 +01:00
Elvis Angelaccio
15a5189b11 Fix PlacesItemModelTest
Since 3dfa0c1c2f87bf1e6bc9 in kio timeline:// is no longer in the places
model.
2020-11-02 01:09:55 +01:00
Elvis Angelaccio
299aff588d servicemenuinstaller: use Q_GLOBAL_STATIC
Global statics should be avoided when possible.
This fixes a clazy warning.
2020-11-02 00:03:20 +01:00
Elvis Angelaccio
6496721110 Port away from deprecated QWheelEvent::delta()
QWheelEvent::angleDelta() returns a QPoint instead of int, so we need to
use its y() value to get the number of steps.
2020-11-01 23:42:46 +01:00
Elvis Angelaccio
327c22bc3b Use QString::rightRef() as suggested by clazy 2020-11-01 23:31:58 +01:00
Martin T. H. Sandsmark
15baa93640 make sure we use valid icons 2020-11-01 22:17:17 +00:00
Martin T. H. Sandsmark
891ebf5758 Fix warnings about scaling pixmaps 2020-11-01 22:17:17 +00:00
Christoph Feck
adfca90730 GIT_SILENT Update Appstream for new release
(cherry picked from commit 92d41a7433)
2020-10-31 17:58:55 +01:00
David Faure
97fbcf3ab5 Port from QStandardPaths::DataLocation to QStandardPaths::AppDataLocation
They are the same on Linux (but DataLocation is deprecated). On Windows this enables the use of the roaming path.

NO_CHANGELOG
2020-10-31 14:31:22 +01:00
Nate Graham
bf11c835eb Disable session management for daemon
We don't need to autostart the daemon if it was running at logout.

BUG: 417219
FIXED-IN: 20.12
2020-10-29 15:00:39 -06:00
Lothar Paltins
129570b131 Fix wrong parameter in function call
In KDirectoryContentsCounterWorker::CountResult, the first parameter in
the call of walkDir was wrong. It should be path without conversion,
because the conversion is done in the called function.

BUG: 428282
2020-10-27 15:54:03 +01:00