Summary:
BUG: 298467
Set the focus to the active view, after leaving the terminal panel.
This is a fork of the patch at https://git.reviewboard.kde.org/r/116118/ by @emmanuelp which should fix the issue with the original patch reported by Frank Reininghaus.
Test Plan: Works for me.
Reviewers: #dolphin, emmanuelp, ngraham
Reviewed By: #dolphin, ngraham
Subscribers: ngraham, emmanuelp
Differential Revision: https://phabricator.kde.org/D9955
Summary:
BUG: 387854
The pre-defined searches (Documents, Videos, etc) all default to no search text. https://cgit.kde.org/dolphin.git/commit/?id=702429ac8e64a5aff4e110a56f526b96ecb795fd changed their window title from "baloosearch - /" to "Empty Search", but the search isn't really empty; it just lacks a search string. It's still looking for documents, or videos, or whatever.
Test Plan:
Is it too late to get this into 5.12?
Tested in KDE Neon. Before:
{F5545170}
After:
{F5545171}
Reviewers: #dolphin, elvisangelaccio, broulik
Reviewed By: broulik
Differential Revision: https://phabricator.kde.org/D9305
Summary:
When you search for a file (e.g. "hello world") the window title of Dolphin will now change to "Search for [input]" instead of "baloosearch - /".
BUG: 321575
Test Plan:
- Disables it iself after search bar is hidden
- Works with multiple word searches
Reviewers: #dolphin, ngraham, elvisangelaccio
Reviewed By: #dolphin, ngraham, elvisangelaccio
Subscribers: anthonyfieroni, elvisangelaccio, rkflx, emmanuelp, ngraham, #dolphin
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D8273
When unmounting a removable media Dolphin checks if there are
some files open on the device before performing the unmount.
If the terminal window in dolphin is open and the to be unmounted path is open,
the unmount process will be blocked.
This patch sets the terminal window current path to the home directory upon unmount request
if the terminal directory is set to the mount path.
The unmount request could came from two sources:
The user could hit right click on the media in the dolphin's places panel and hit unmount.
The user could request an unmount from the indicator applet
This patch was originally written by Arjun AK for the kdelibs4 version
of Dolphin: https://git.reviewboard.kde.org/r/121613/
BUG: 158264
FIXED-IN: 17.11.80
Differential Revision: https://phabricator.kde.org/D7847
When inside a place, the address bar already gives it precedence over the actual folder name.
By doing this in the title bar also, we make it consistent and can mask ugly technical terminology
like "trash:/" and instead show the nice localized "Trash" place name as well as "Home" instead
of lowercase internal user name.
BUG: 211959
Differential Revision: https://phabricator.kde.org/D4826
It was introduced in kconfig(widgets) 5.25. Using the standard action
results in less code and no need to hardcode the F2 shortcut.
Differential Revision: https://phabricator.kde.org/D6777
It was introduced in kconfig(widgets) 5.25. Using the standard action
results in less code and no need to hardcode the Del shortcut.
Test Plan:
- Change shortcut in System Settings -> Shortcuts -> Standard Shortcuts
- Make sure the new shortcut is used by dolphin.
Differential Revision: https://phabricator.kde.org/D6778
* Applications/17.04:
Change in "Open in new tab" feature in Dolphin
Ignore drops-onto-items from invalid places items
Revert "Increase smooth scrolling animation duration from 100 to 300 ms and set easing curve to InOutQuart"
Summary:
This patch proposes a change to the "open in new tab" feature.
The "open in new tab" feature will try to open selected items (files or folders) in a new tab, however, if there are no valid items to be opened in a new tab then nothing will happen, making it look like a bug. This patch adds the functionality that when there are no valid items(files or folders) to be opened in a new tab the current folder will be opened.
Test Plan:
1. Select a file(pdf, text, image etc) in Dolphin
2. Click on the "Open in new tab" toolbar button
Expected: since the file is not a valid target to open in a new tab, the current directory should be opened (as is the case where selection is empty)
Actual: Nothing happens after the button is pressed
Reviewed By: #dolphin, elvisangelaccio
Differential Revision: https://phabricator.kde.org/D6182
For now it contains a test case for the crash in bug #379135
CCBUG: 379135
Reviewers: emmanuelp, dfaure
Differential Revision: https://phabricator.kde.org/D5936
Summary:
Now that we can use the metadata widgets in the tooltips, we can also
open the tags:// url if the user clicks some tag in a tooltip.
The behavior is now consistent with the metadata widget in the information panel.
Test Plan: Click a tag when the metadata tooltip shows up.
Reviewers: emmanuelp
Subscribers: #konqueror, #dolphin
Differential Revision: https://phabricator.kde.org/D5658
This patch will cause a "New Window" command to open a new window with
the URL from the active view. Opening a new instance via launcher will
still open a new window with the URL specified in Startup settings.
This is the behavior in Windows 10 file explorer. The advantage is this
gives the user a way to open a new window with the current URL(New
Window) as well as a new window with URL specified in Startup
settings(new instance) whereas currently, there isn't an easy way to
open a new window with the current URL. You'd have to either open a new
window and copy and paste the URL, or open a new tab(which opens with
the same URL) and detach it. I'd much rather have the new window open
with the current URL and if what I wanted was the Startup URL I could
easily get there as it's already bookmarked.
REVIEW: 129973
Summary:
It was introduced in kconfig 5.25 and it properly handles the shift+del
shortcut (together with kxmlgui >= 5.30). This allows us to drop the
custom delete shortcut as well as the shift+del workaround in
DolphinMainWindow.
Test Plan: Shift+Del still deletes files, without the 'ambiguous shortcut' warning dialog.
Reviewers: emmanuelp
Differential Revision: https://phabricator.kde.org/D5010
The KAuthorized key to prevent shell access according the documentation
is simply "shell_action" not "action/shellAction" so should use
authorize not authorizeKAction
This appears to have come about as part of a porting bug when going from
KApplication::authorize to KAuthorized in kdelibs3 to kdelibs4.
To currently block shell access a sysadmin currently needs to
have both keys set already, so we can be confident it won't have any
actual compatibility problems.
qApp->isSessionRestored() specifies whether the application has been
restored by session management. This is obviously wrong here. Use
qApp->isSavingSession() instead.
BUG: 353548
FIXED-IN: 15.12.2
REVIEW: 126917
This is not necessary because the sub menus are children of the main
menu, such that they are deleted together with the other actions by
QMenu::clear().
This prevents a crash that can happen if a sub menu is open while
another menu action is clicked.
Thanks to Fabian Vogt and Wolfgang Bauer for investigating this issue!
BUG: 354558
FIXED-IN: 15.12.2
REVIEW: 126693
* Instead of setting and resetting GeneralSettings's split view option, just pass it on to openFiles/openDirectories.
* Require at least one url in openFiles/openDirectories
REVIEW: 123395
QWeakPointer a QPointer (+comment) to make it clear, that we must track the lifetime of the context menu instead of doing "only" out of scope deleting.
Thanks to Frank for pointing out this problem!
CCMAIL: frank78ac@googlemail.com
* Use the new syntax to connect to DolphinMainWindow::openNewTab from the url
navigator and from folders panel (removed the unused optional parameters from
openNewTab and openNewActivatedTab)
This adds a third option to the "in new tab" and "in new window" which opens
the parent folder in the same view
BUG: 298704
FIXED-IN: 4.15
REVIEW: 110133
This commit ensures that the selector is visible in all location bars
if and only if the Places Panel is hidden. It fixes a regression caused
by commit 6a98d83312.
BUG: 337389
FIXED-IN: 4.14.0
REVIEW: 119238
Instead of always opening a new tab with the home url and closing it again when directory/file urls are passed on,
we now use the given directories/files directly to open new tabs on startup.
Makes the code easier and we can reuse openDirectories/openFiles in future (if needed).
REVIEW: 118966
The signal activeViewUrlChanged in DolphinTabPage is currently unused, but we need it later when
we implement the tab widget and tab bar.
DolphinTabPage has saveState/restoreState which are using a QByteArray instead of the KConfigGroup to
be more generic.
REVIEW: 118964
tabs menu related code from DolphinMainWindow in a new class.
The DolphinRecentTabsMenu remembers the tab configuration if a
tab has been closed.
REVIEW: 118805
The return type and return values of KMessageBox::createKMessageBox()
have changed in KF5. We have to adjust the code
in DolphinMainWindow::closeEvent(QCloseEvent* event) in order to make
windows with multiple tabs closable.
BUG: 335732
REVIEW: 118508
Since the master branch had never been merged into frameworks since the
creation of the frameworks branch, I had to fix a couple of merge
conflicts and make another change in order to make it build - I hope I
did not get anything wrong.
We should probably merge master into frameworks on a regular basis from
now on.
CCMAIL:kfm-devel@kde.org
Conflicts:
dolphin/src/dolphinmainwindow.cpp
dolphin/src/search/dolphinfacetswidget.cpp
dolphin/src/statusbar/dolphinstatusbar.cpp
dolphin/src/views/dolphinview.cpp
Middle clicking on Forward/Backward/Home/etc. will no longer open a new
tab since the QAction triggered signal no longer tell us which mouse
button was pressed
This does not work properly yet, there are probably quite a few bad signal/
slot connections due to KUrl -> QUrl. However dolphin starts without
crashing.
Accessibility is not ported since that changed quite a lot from Qt4 -> Qt5
and I have no idea how it is supposed to be used.
This is the first commit for review 117395
Updating this action is only required if the clipboard contents change,
or if the "is writable" state of the current location changes. In all
other cases, an update of this action should be prevented because it
can be very expensive if many files are in the clipboard.
In particular, the update when the selection changes could make
changing the current item in the view very slow.
BUG: 333903
REVIEW: 117782
FIXED-IN: 4.13.1
In addition to the current long text for previous and next toolbar
buttons ("Activate Previous/Next Tab"), this commit adds shorter icon
texts for them to be used only on the toolbar ("Previous/Next Tab").
BUG: 332629
REVIEW: 117794
FIXED-IN: 4.14.0
when multiple tabs are opened. Disable them again
when there is only one remaining tab.
Additionally set the default state to disabled.
BUG: 332628
FIXED-IN: 4.13.1
REVIEW: 117778
The problem was that we restored the URL of the right view while the
left one is still active. When we received the signal
urlChanged(KUrl& url) from the right URL navigator, we then set the URL
of the active (i.e., left) view to 'url', such that both views showed
the same URL.
BUG: 330047
FIXED-IN: 4.12.3
REVIEW: 115406
The fix for bug 161385 (which was about Dolphin still showing an empty
view if a device that had been unmounted earlier was clicked in the
Places Panel) caused a regression: the view state (current item, scroll
position, Details View expansion state) was not restored any more when
going "Back".
The reason is that "m_view->reload()" in
DolphinViewContainer::setUrl(const KUrl& newUrl) was always executed
just after entering a directory, and that command overwrites this
information.
Distinguishing between "change URL" and "reload the view" works better
if it's done in DolphinMainWindow instead of DolphinViewContainer.
BUG: 326039
FIXED-IN: 4.11.3
REVIEW: 113290
If the number of selected items is not two, Dolphin disables this
action. However, it is still possible to trigger it via D-Bus, and this
could cause a crash in DolphinMainWindow::compareFiles() because this
function did not test at all if there are really two items selected.
This patch adds such a check and simplifies the code in that function.
BUG: 325517
FIXED-IN: 4.11.3
With this patch, Dolphin ignores all files passed to it that it can't
Also, archives are now opened inside Dolphin so it can be used as an
archive manager at least for local files. If the user tries to open a
remote archive Dolphin still opens it externally; I have observed that
if it receives one as an argument, it will display a pseudo-folder that
contains only said archive. So having it set as the archive handler is
still broken, but in a less annoying way.
CCBUG: 318683
REVIEW: 113191
FIXED-IN: 4.11.3
Removed all signal-slot-connections related to DolphinNewFileMenu->errorMessage(QString)
in DolphinMainWindow and DolphinContextMenu and replaced it by a better solution.
Now we make use of the already existing DolphinNewFileMenuObserver singleton class to achieve a better
error handling, because every newly created DolphinContextMenu instance registers himself by DolphinNewFileMenuObserver
and we use this to connect the errorMessage(QString) signal of every DolphinContextMenu instance to the errorMessage(QString)
signal of the DolphinNewFileMenuObserver singleton class.
So we need only one connection from DolphinNewFileMenuObserver to DolphinMainWindow (or to DolphinPart) to
collect all error messages thrown by every DolphinNewFileMenu instance.
REVIEW: 112178
When 'browse through archives' is enabled, open archive files
like folders on middle clicking, context menu -> new tab action
and context menu -> new window action.
BUG: 196035
REVIEW: 110487
Finding out whether shift is pressed initially can be done
with qApp->keyboardModifiers(), and finding out that the user is pressing
or release shift can be done with keyPressEvent/keyReleaseEvent.
This required to inherit from KMenu rather than having the KMenu
as a member.
KModifierKeyInfo is only implemented on X11, so this makes the code
more portable. If similar solutions can be found for other users of
KModifierKeyInfo, it will be deprecated in KF5.
REVIEW: 110303
KFileItemModel calls the dir lister's setMainWindow() method to make
sure that the dir lister caches authentication data. However, the method
used to determine the main window (qApp->activeWindow()) is not
guaranteed to yield the DolphinMainWindow or the KonqMainWindow. In
particular, if "Split View" is enabled in Dolphin's settings dialog, the
active window is the dialog, and when it is closed, any later access to
the stored pointer leads to a crash.
A better method is to verify that the model's parent is a QWidget and
then use this widget's window(). I had to make a small modification in
DolphinMainWindow to make sure that it also works correctly when the
view is split (the new view container had been created with a 0 parent
previously).
I tested it in Dolphin and Konqueror and verified that the "main window"
passed to the dir lister is really the application's main window.
BUG: 306459
FIXED-IN: 4.9.3
- Determine group of a new entry dependent from the protocol
- Allow panels to forward error-messages to the view-container
(also applied to Folders Panel)
The places-entries for searching revealed some serious issues in
combination with the search-panel. Move the filtering away from
QDockWidget and bring it back below the search-bar.
Up to now the view-engine only provided a model-implementation that
supports file-items. The view-engine always had been designed to be able
to work with any kind of model, so now a KStandardItemModel is available.
The plan is to convert the places panel to the new view-engine. It should
be no problem to fix this until the feature freeze - in the worst case
the places-panel code could be reverted while still keeping the
KStandardItemModel changes.
The attached patch sets the main window on the main directory
lister in DolphinView and KIO jobs in DolphinMainWindow to ensure
that login data for remote protocols such as sftp, ftp are cached
properly for the duration of the application. Otherwise, the end
user is going to end up being unnecessarily re-prompted to enter
password login information.
Thanks to Dawit Alemayehu for the patch!
REVIEW: 104614
FIXED-IN: 4.9.0