┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphinmainwindow.cpp
AgeCommit message (Collapse)Author
2022-07-14Port from KNewFileMenu::setPopupFiles to KNewFileMenu::setWorkingDirectoryNicolas Fella
The former is deprecated
2022-07-13Add "Show statusbar" menu entry in "Settings"Kai Uwe Broulik
Makes this setting more accessible and makes it consistent with other KDE applications. Since Dolphin has a separate status bar on each view container and doesn't use kxmlgui's statusbar, we don't get this menu entry automatically.
2022-07-13Open >5 terminals dialog: use action terms instead of Yes/No buttonsFriedrich W. H. Kossebau
Yes/No buttons in dialogs are discouraged (not only) by KDE HIG in favour of actions terms.
2022-06-22do not open excessive tabAndrey Butirsky
even if directory of the file to be created is not the top-most opened in TreeView BUG: 440663
2022-06-21formattingAndrey Butirsky
2022-06-20Remove duplicate headers between cpp/hLaurent Montel
2022-06-15Use cmakedefine01Ahmad Samir
This way we get a build time warning if the var isn't defined at all, e.g. a missing check_include_files() CMake call.
2022-06-15Use one config-dolphin.h.cmake configuration fileAhmad Samir
2022-05-31Migrate old custom view font config entriesAhmad Samir
2022-05-29Allow OpenTerminalHere to work for recentlyused:/ and recentdocuments:/Méven Car
2022-05-13Drop KNS3 prefix for KMoreTools includesAlexander Lohnau
In KF6 KMoreTools should become it's own library and thus the KNS3 prefix should get removed. Considering that the classes are not in any namespace, having a namespaced include is not needed and only causes noise.
2022-05-02Re-add "Open Terminal Here" featureoioi 555
This is equivalent to the "Open Terminal Here" feature that existed until Version 20.12. If the user has selected folders, replace "Open Terminal" in the context menu with "Open Terminal Here". When more than 5 folders are selected, a modal window will ask the user if they are sure they want to open all 6 or more terminal windows. In Detail View, users can also select a file, which will open a terminal at the location of that file. BUG: 452637 FIXED-IN: 22.08
2022-04-02Refactor DolphinContextMenu so its actions are retrievableFelix Ernst
This mostly red MR should have no visible effect. It is part of my work towards !273. There are two calls necessary to open the DolphinContextMenu: One to construct it and one to execute/show it. Before this commit, the actual populating of the ContextMenu was done on execute. This meant that the actions of the ContextMenu couldn't be looked at or changed without first showing the Menu to the user. It also meant that the construction itself didn't actually do much constructing/populating at all which might seem a bit unintuitive. This commit changes this behaviour so the DolphinContextMenu is actually populated fully on construction. The executing/showing of the ContextMenu now does just that and nothing more. Previously, some actions in the context menu were actually not wired up to anything and instead the DolphinContextMenu or the DolphinMainWindow executed some code after the user had clicked such a dummy action from the ContextMenu. Now all the actions are properly constructed beforehand and no special handling is necessary when the ContextMenu hides itself. This commit removes the pos parameter from the DolphinContextMenu constructor. This parameter contained the position where the Menu would be shown later. This information isn't necessary to have on construction and was already part of the exec(pos) call in the first place. The variable m_pos that stored the value is removed. This commit also removes a "customActions" functionality that can supposedly be used to add further custom actions to the DolphinContextMenu but this functionality isn't ever used anywhere so its usefulness is questionable. It also wouldn't be difficult to re-add this functionality if it was ever required for something. This commit also addresses an old TODO in dolphinpart.cpp that asked for the calls for opening the DolphinContextMenu to actually contain the information for which items the DolphinContextMenu is supposed to be constructed. Before this, only the item that was directly clicked was transmitted and then DolphinContextMenu retrieved the currently selected set of items by itself. It makes more sense that DolphinContextMenu would be informed on construction which items it is supposed to show context actions for. Most of this is necessary so we are able to show the contextual actions anywhere else than in the ContextMenu in the future. I am targeting 22.08 with this MR because it makes no sense to merge a refactor for the upcoming release already.
2022-03-18Prettify labels in back/forward button menuKai Uwe Broulik
Adds a compact label based on the closes place similar to the address bar (e.g. instead of /home/user/Pictures/Holidays it will show Pictures/Holidays), unless "show full path in address bar" is enabled. Also, add the folder icon
2022-02-05Hide "Places" section header when panels are unlockedKai Uwe Broulik
Avoids showing "Places" twice.
2022-01-31Add "Unlock panels" to main window context menuKai Uwe Broulik
It's the Qt-provided one that shows on the menu bar and dock widget title bars.
2022-01-29Sync panel action icon to built-in toggleViewActionKai Uwe Broulik
Ensures the icon is used consistently also in Qt-provided UI
2022-01-25Expose konsolepart shortcuts in Dolphin's shortcuts viewStephan Sahm
Adapt some changes from Yakuake https://invent.kde.org/utilities/yakuake/-/commit/a0b08cb1f71ef18449bfbf5852c01e323604142f credit to Stephan Sahm @schlichtanders BUG: 428265
2022-01-15We depend against kf5.91Laurent Montel
2022-01-09Port back to KFilePlacesViewKai Uwe Broulik
This removes the custom-view engine version of the places panel and replaces it with the upstream `KFilePlacesView` from KIO.
2021-12-18Merge branch 'release/21.12'Kai Uwe Broulik
2021-12-18Use QUrl::toDisplayString when presenting to the userKai Uwe Broulik
Strips out password information
2021-12-17Enable Ctrl/Shift-Click to open folder in a new tab/windowAlessio Bonfiglio
and more
2021-12-16Remove calls to no-op KNewFileMenu::setViewShowsHiddenFilesNicolas Fella
The implementation doesn't do anything
2021-12-13Drop now unneeded QOverload statementsAlexander Lohnau
By defining the KF_DISABLE_DEPRECATED_BEFORE_AND_AT and QT_DISABLE_DEPRECATED_BEFOREvalues, the deprecated overloads are hidden. This way we only have the un-deprecated one visible.
2021-12-02Tweaked showFilterBar tooltip text for accuracyPaul Brown
2021-11-13Fix updating window and tab titlesEugene Popov
This MR fixes an issue where the window and tab titles don't properly handle creating/deleting/renaming items in the places bar, as well as switching to the Search mode.
2021-10-20Utilize KXMLGUI API to store state config in separate fileAlexander Lohnau
CCBUG: 397602
2021-09-28Merge branch 'release/21.08'Nate Graham
2021-09-28Fix closing a secondary viewContainer on startup settings changeEugene Popov
Apply split view settings only when changing the corresponding option. BUG: 426221 FIXED-IN: 21.08.2
2021-09-22Don't force icon for preferred search tool action if one is manually configuredNicolas Fella
The code reads the icon from the relevant application and uses that for the action When the user has configured one manually in the toolbar settings that is overridden To avoid this only change the icon if it is the default one (search) BUG: 442815 (cherry picked from commit d3f427a6da1b117c85b1080bf198ae4758d00e8e)
2021-09-22Don't force icon for preferred search tool action if one is manually configuredNicolas Fella
The code reads the icon from the relevant application and uses that for the action When the user has configured one manually in the toolbar settings that is overridden To avoid this only change the icon if it is the default one (search) BUG: 442815
2021-08-31Port to KTerminalLauncherJobNate Graham
Dolphin still uses KToolInvocation::invokeTerminal() which is deprecated and requires KInit. However Dolphin was ported away from requiring it in other ways, so it is now possible to have Dolphin running but not KInit, which breaks the "Open in Terminal" functionality. Using KTerminalLauncherJob fixes this. It was introduced in Frameworks 5.83, so the CMake dependency version is accordingly increased. BUG: 441072 FIXED-IN: 21.12
2021-08-10Avoid crash on start when help actions are restricted through the Kiosk systemAlexander Volkov
KHelpMenu may not create some actions, so check for nullptr before setting "What's this?" text. (cherry picked from commit 0ac57fbe90d580a514c3bac4cefaa9ed87f178f9)
2021-08-10Avoid crash on start when help actions are restricted through the Kiosk systemAlexander Volkov
KHelpMenu may not create some actions, so check for nullptr before setting "What's this?" text.
2021-08-02Merge branch 'release/21.08'Nate Graham
2021-07-28Revert "Don't session-restore invalid paths"Nate Graham
This reverts commit c733b3aa9787a618a0ce5bb03b3fc731f5663b21. There are people who prefer the old behavior of session-restoring all paths including the ones which are currently inaccessible. The idea is that Dolphin is like a web browser; if a website is not currently available, the browser tells you that instead of silently discarding the URL and showing you the homepage. Doing this can be considered a form of data loss. In addition, the reason for the change was to prevent Dolphin from showing invalid paths on launch for unmounted removable disks, but that specific case was fixed separately by switching to ~ for any tabs/views that were showing locations on a just-unmounted removable disk. So you will never run into the problem if yo unmount a disk in Dolphin and then close it. Accordingly, let's revert the change because it causes more problems than it resolves. BUG: 439864 CCBUG: 427619 FIXED-IN: 21.08
2021-07-19Clean up KF API older than 5.82Ahmad Samir
GIT_SILENT
2021-07-10Avoid crashing on startup if DBus isn't runningAlex Richardson
I am trying to run Dolphin on a minimal FreeBSD CHERI-RISC-V QEMU instance and I haven't got DBus running. Without this change, I get crashes because QDBusConnection::sessionBus().interface() returns NULL if DBus isn't running.
2021-07-04Reuse KFileItemActions instance during lifetime of dolphinAlexander Lohnau
With https://invent.kde.org/frameworks/kio/-/merge_requests/411 the plugin instances can be reused during the lifetime of the KFileItemActions object. This improves performance and also allows the plugins to emit errors, even if they run async.
2021-07-04Port to new KActionMenu popup mode APIDavid Hurka
Use KActionMenu and KToolBarPopupAction::setPopupMode() methods instead of setDelayed() and setStickyMenu(). Are available since KF 5.77 and KF 5.78 respectively, which is already required by Dolphin.
2021-06-22Merge branch 'release/21.04'Felix Ernst
2021-06-08Add "Sort By" to the hamburger menuFelix Ernst
People seem to use the "Sort By" menu often enough that it should be available through the hamburger menu. Before this change one could only sort the view through the right- click context menu, using the details view mode or by using the actions from the menu bar.
2021-05-31Fix crash on Wayland when closing the mainwindow while another dialog is openElvis Angelaccio
For some reason on Wayland `QClipboad::dataChanged` can be emitted after the main window gets deleted. In particular this happens when closing the main window while another dialog is open. Since we are closing the window, we can just disconnect this signal and prevent this crash from ever happening.
2021-05-18Use more appropriate icon for "Create New" actionNate Graham
Right now this action is using the "document-new" icon, which depicts creating a new file. This is inaccurate, as the menu provides options for creating more than just files: it has one option to create folders and three for creating different types of links. In fact, depending on the set of installed software, there may not be any options to create new documents at all! To fix this, the icon would need to be made either more specific or more generic. There is no such icon that depicts being able to create a folder, a document, or a link; such a thing is too specific to be able to represent with a small icon. So our only real option is to use a more generic icon. This commit does that.
2021-05-17Fix primary view changing folder for the closing animationFelix Ernst
This commit fixes a bug which made it so an UrlNavigator that was disconnected from a viewContainer would still indirectly control the viewContainer because of a dubious connection created in DolphinMainWindow. Instead the internal UrlNavigator of the viewContainer is used which is always connected to its own viewContainer. This way the the supposedly disconnected primary UrlNavigator will actually not affect the old disconnected viewContainer that is currently being closed. BUG: 437080 FIXED-IN: 21.08
2021-05-13Re-arrange the contents of the hamburger menuFelix Ernst
To improve usability, the entries in the hamburger menu are changed. Maybe the biggest fault of the previous menu contents were that there were too many actions. The new menu contents are composed of all the actions which are necessary to use Dolphin and those which are very useful and should be of interest for most users. Some menu contents change depending on the state of the application. We can be more bold in only showing what really seems necessary because this commit activates the special sub-menu of KHamburgerMenu that helps users discover all further features of Dolphin. The hamburger menu is from now on also added to the context menus in the view when both the menu bar and toolbar are hidden. This allows users to hide both of them and still use all features of Dolphin.
2021-05-05Set initial size corectlyNate Graham
The resize() that we do to set the initial size is working around a bug in frameworks that is going to be fixed soon. See https://invent.kde.org/frameworks/kxmlgui/-/merge_requests/53.
2021-04-29Replace custom hamburger/control menu with KHamburgerMenuFelix Ernst
2021-04-24InformationPanel: Allow to refresh the panel when its displayed content changesMéven Car
BUG: 430095 BUG: 412902 FIXED-IN: 21.08