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.
This MR removes the horizontal scrollbar of the Places panel. For titles that don't fit in the panel, their elided versions will be used (i.e., with ...).
Jordan Bucklin [Sat, 17 Jul 2021 01:37:36 +0000 (18:37 -0700)]
Fix placeholder label text within an empty folder in Trash
An empty folder within the Trash bin previously had the placeholder
label "Trash is empty". This label should only appear in top-most
Trash/ url, and "Folder is empty" otherwise.
Alexander Lohnau [Sun, 18 Apr 2021 06:37:45 +0000 (08:37 +0200)]
Reuse KFileItemActions instance during lifetime of dolphin
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.
David Hurka [Sun, 6 Dec 2020 18:47:07 +0000 (18:47 +0000)]
Port to new KActionMenu popup mode API
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.
Mufeed Ali [Tue, 29 Jun 2021 13:52:57 +0000 (13:52 +0000)]
Show a "Loading..." placeholder text
Since a placeholder text is being used when the folder is empty, it
also makes sense to show a similar placeholder text when the view is
still loading, especially now that the status bar which previously
contained a loading indicator now disappears when a folder is loading.
Derek Christ [Fri, 18 Jun 2021 13:12:54 +0000 (15:12 +0200)]
Fix shift-action modifier in context menu
Before this patch, the shift-action modifier in context menus did not
work when a sub-context menu is open, that does not have the main
context menu as its parent.
The new fix installs an event filter on QApplication whenever a new
context menu is opened to make the context menu aware of shift-presses
even when a sub-context menu is in focus.
Ahmad Samir [Mon, 14 Jun 2021 13:14:57 +0000 (15:14 +0200)]
Fix X-DocPath entries
This way they're more correct, which means they can work with KHelpCenter
and when falling back to opening the relevant page at docs.kde.org in any
web browser.
See https://invent.kde.org/graphics/okular/-/merge_requests/441 for more
details.
Ahmad Samir [Mon, 14 Jun 2021 13:14:57 +0000 (15:14 +0200)]
Fix X-DocPath entries
This way they're more correct, which means they can work with KHelpCenter
and when falling back to opening the relevant page at docs.kde.org in any
web browser.
See https://invent.kde.org/graphics/okular/-/merge_requests/441 for more
details.
Felix Ernst [Tue, 8 Jun 2021 12:06:42 +0000 (14:06 +0200)]
Remove the filter action from the toolbar
This commit removes the "toggle_filter" action from the default
toolbar configuration. It is not quite important enough to be
always visible on the toolbar by default. Instead it is easily
accessible through the hamburger menu and the menu bar.
The filter is only really necessary if one has a lot of items in
the current location and one knows exactly how to identify a
certain item among them by the name which probably isn't how most
people browse their files.
There are also some more advanced use-cases but advanced users
will be able to either learn the keyboard shortcut or move this
action back to the toolbar.
Felix Ernst [Tue, 8 Jun 2021 11:48:41 +0000 (13:48 +0200)]
Add "Sort By" to the hamburger menu
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.
Alexander Lohnau [Sat, 29 May 2021 18:24:47 +0000 (20:24 +0200)]
Remove code path for loading deprecated VSC plugins
In case there are custom, old plugin lying around they can't be loaded
anyways, because the version does not match. In case that gets fixed one
could just port the plugin to JSON metadata.
Also the mechanism that is used is about to be deprecated.
Elvis Angelaccio [Sat, 19 Dec 2020 17:43:44 +0000 (18:43 +0100)]
Fix crash on Wayland when closing the mainwindow while another dialog is open
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.
Eugene Popov [Tue, 25 May 2021 11:24:11 +0000 (14:24 +0300)]
Use SmallMedium icon size in the Places panel as default
This patch makes the Places panel to use SmallMedium icon size as default, making it easier to read. It also removes extra spacing from items with small icons (reverts e9a39700 and 56888a56).
Nate Graham [Sun, 16 May 2021 15:25:35 +0000 (09:25 -0600)]
Use more appropriate icon for "Create New" action
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.
Felix Ernst [Mon, 17 May 2021 12:52:45 +0000 (14:52 +0200)]
Fix primary view changing folder for the closing animation
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.
Felix Ernst [Thu, 13 May 2021 16:49:27 +0000 (16:49 +0000)]
Re-arrange the contents of the hamburger menu
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.
Nate Graham [Fri, 23 Apr 2021 00:06:06 +0000 (18:06 -0600)]
Set initial size corectly
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.
Harald Sitter [Mon, 19 Apr 2021 10:39:00 +0000 (12:39 +0200)]
fix padding in places view
padding was only applied when the icon size was applied, the icon size
however is only applied when the user had set an explicit size. this
resulted in inconsistent spacing. by default no padding would be used if
the user had changed the icon size to medium and back to small it would
suddenly have padding.
to fix this, set padding unconditionally on construction and never touch
it again .
Nate Graham [Fri, 9 Apr 2021 19:29:30 +0000 (13:29 -0600)]
Increase default window size
The current default window size of 750x500 is quite small on today's
screens, and results in an initial user experience of a very cramped app
window. The very first action that I see from new users interacting with
Dolphin is to make the window bigger.
So let's do it for them by making the default window size a bit bigger
ourselves.