┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-11-09Adress most of the second round of Angelaccio's review commentsFelix Ernst
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-09Apply Méven Car's suggestionsFelix Ernst
2020-11-09Fix a crash and extract unrelated changesFelix Ernst
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-09Make UrlNavigators in the toolbar the only optionFelix Ernst
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-09Add the UrlNavigator to the toolbar automatically if neededFelix Ernst
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-09Adress the first round of Angelaccio's review commentsFelix Ernst
- 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-09trailing whitespacesFelix Ernst
2020-11-09Add an option to use an UrlNavigator in the toolbar insteadFelix Ernst
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-09PlacesItemListWidget: Use Solid to check if device is a network shareMéven Car
2020-11-08Add missing referenceElvis Angelaccio
2020-11-08Iterate over a const copy list of containersIsmael Asensio
This effectively reverts the mutable iterations approach on 2448f88c5f42d7a2040fcf3bcd3c5f2a2f62cd03, and fix crashes and ghost items when using the filter bar BUG: 428374
2020-11-07Do not expose KCMs in application launchersAlexander Lohnau
We still need to build them, because they are also loaded on konqueror.
2020-11-07KDirectoryContentsCounter: fix support of symlinks dirMéven Car
BUG: 428712 FIXED-IN: 20.12
2020-11-05Add support for KUserFeedbackElvis Angelaccio
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-05Details view: display empty text instead of unknown for sizeless dirsMéven Car
BUG: 420037 BUG: 420040 FIXED-IN: 20.12
2020-11-04Move m_textInfo to fix ctor warning, and document why it's protected.Chris Holland
2020-11-04Use QDeadlineTimer instead of QDateTime.Chris Holland
Use early returns instead of deeply nested if/else.
2020-11-04Cleanup importsChris Holland
2020-11-04Remove wip debuggingChris Holland
2020-11-04Fix freeSpaceInfo cache not being reset.Chris Holland
2020-11-04Use KDE GitLab url instead of the GitHub mirrorChris Holland
2020-11-04Cleanup unused colors. Use const. Use KColorScheme danger.Chris Holland
The draw code is more like the last state of D21312 now.
2020-11-04Refactor capacity by to use async KIO FreeSpaceJob.Chris Holland
Based on this kio filepicker patch: https://github.com/KDE/kio/commit/933887dc334f3498505af7a86d25db7faae91019
2020-11-04Only show capacity bar for devices (has a udi).Chris Holland
2020-11-04Only check if place url is mount point once during polish event.Chris Holland
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-04Draw 2 Rectangles below mount points to represent a disk capacity barChris Holland
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-04Improve padding in the Places ViewEzike Ebuka
2020-11-03Compute text width taking into account the zoom levelMéven Car
This makes the icon view less crowded.
2020-11-03SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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-03FolderPanel: prevents scanning directory tree recursivelyMéven Car
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-03GIT_SILENT made messages (after extraction)l10n daemon script
2020-11-02Fix PlacesItemModelTestElvis Angelaccio
Since 3dfa0c1c2f87bf1e6bc9 in kio timeline:// is no longer in the places model.
2020-11-02servicemenuinstaller: use Q_GLOBAL_STATICElvis Angelaccio
Global statics should be avoided when possible. This fixes a clazy warning.
2020-11-01Port away from deprecated QWheelEvent::delta()Elvis Angelaccio
QWheelEvent::angleDelta() returns a QPoint instead of int, so we need to use its y() value to get the number of steps.
2020-11-01Use QString::rightRef() as suggested by clazyElvis Angelaccio
2020-11-01make sure we use valid iconsMartin T. H. Sandsmark
2020-11-01Fix warnings about scaling pixmapsMartin T. H. Sandsmark
2020-10-31GIT_SILENT Update Appstream for new releaseChristoph Feck
(cherry picked from commit 92d41a743399f6f38ff55b9cb59657f5c5a5a510)
2020-10-31Port from QStandardPaths::DataLocation to QStandardPaths::AppDataLocationDavid Faure
They are the same on Linux (but DataLocation is deprecated). On Windows this enables the use of the roaming path. NO_CHANGELOG
2020-10-29Disable session management for daemonNate Graham
We don't need to autostart the daemon if it was running at logout. BUG: 417219 FIXED-IN: 20.12
2020-10-27Fix wrong parameter in function callLothar Paltins
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-24Use mutable iterators where requiredAlexander Lohnau
2020-10-23Compile with QT_NO_KEYWORDSAlexander Lohnau
2020-10-23Compile without foreachAlexander Lohnau
2020-10-23DolphinTabWidget: prefer QUrl::toDisplayString() for tooltipsElvis Angelaccio
This is better for remote urls. !35
2020-10-23KItemListSizeHintResolver: remove no longer used memberElvis Angelaccio
2020-10-23Don't session-restore invalid pathsNate Graham
When session restore is populating the main window, it's unconditional; you'll get whatever was there before. This can be a problem if any of those things are now missing. For example, maybe you were browsing files on a removable disk, then quit Dolphin, and finally removed the disk. The next time you launch Dolphin again, it will try to show you the view from the now-missing removable disk. To prevent this, we now look at all the URLs in all of the view containers that were created after session-restore has finished doing its thing; if any of them are invalid local URLs, we change the URL to the home folder instead to avoid showing the user a view with an invalid location in it. BUG: 427619 FIXED-IN: 20.12
2020-10-23Show home folder if needed after unmounting mounted diskNate Graham
Right now, when you unmount a device that any active view containers are displaying, nothing in the view changes. As a result, it's possible to try to navigate to files or folders in that view, which cannot be done because the disk that the files or folders are located on has been unmounted! With this commit, we detect that case and switch the view containers to show the home folder after the disk whose contents they are displaying gets unmounted. BUG: 158934 FIXED-IN: 20.12
2020-10-23Fix DolphinMainWindow::viewContainers() to take into account split viewsNate Graham
The function was previously assuming that each tab view has exactly one view container, which is not necessarily accurate; some could have a split view open.
2020-10-23If include is define in .h remove it if it's defined in .cpp too (scripted)Laurent Montel