Nathaniel Graham [Wed, 21 Mar 2018 23:00:17 +0000 (17:00 -0600)]
Fix missing entries in context menu for links
Summary: https://cgit.kde.org/dolphin.git/commit/?id=86f4fcb8cd574f6d886627fc5e01c9edfc84e977 introduced a regression: the context menu for links no longer shows various items that were gated behind being a directory. However, a link can be both a link and a directory, from KIO's perspective. This patch resolves the issue.
Test Plan:
- Context menus for files, folders, and file links are unchanged.
- The missing context menu items for folder links have returned: {F5761809}
I should have tested that patch better, and for that I apologize and offer to fix this regression here. I will endeavor to up my reviewing game.
Nathaniel Graham [Thu, 15 Feb 2018 21:26:57 +0000 (14:26 -0700)]
Also use standard keyboard shortcut for "show/hide hidden files"
Summary:
Use Ctrl+H as another keyboard shortcut to show and hide hidden files, as it is already the standard used in other GTK-based Linux file managers (Nautilus, Nemo, Caja, Thunar, Pantheon Files). This doesn't replace any existing shortcuts, so existing KDE users' muscle memory is retained.
FEATURE: 390527
FIXED-IN: KDE Applications 17.12.3
Test Plan:
- Ctrl+H now shows and hides hidden files
- Alt+. still works to do the same
- F8 still works to do the same
- Toolbar button still changes state appropriately when any of the three shortcuts are used
Marjio Mustac [Wed, 14 Feb 2018 14:40:36 +0000 (07:40 -0700)]
Add icons to Edit menu
Summary:
Since Breeze offers such a great palette of action icons I thought we should make use of them which make things also more consistent with other applications.
Robert Hoffmann [Tue, 13 Feb 2018 22:12:44 +0000 (23:12 +0100)]
Fix resetting "View Modes" preferences to defaults
Summary:
Removed call to settings.readConfig() in ViewSettingsTab::loadSettings(),
because it overwrites default settings with user settings even if called
from ViewSettingsTab::restoreDefaultSettings().
Test Plan:
Settings -> Configure Dolphin -> View Modes:
Choose "Custom Font", "Choose...": other font settings than preselected;
alter "Icon Size" slider positions;
click OK; OK;
note modified text font next to icons, icon sizes
Settings -> Configure Dolphin -> View Modes:
Click "Defaults"
check "Font" is reset to "System Font";
check "Icon Size" slider positions are reset to default positions;
click OK
check text font next to icons, icon sizes are reset to defaults
Elvis Angelaccio [Sun, 21 Jan 2018 11:18:21 +0000 (12:18 +0100)]
Build TerminalPanel also on Windows
Summary:
terminalpanel.cpp *should* compile on Windows, so there is no reason to
remove it from the build and use tons of #ifdefs in dolphinmainwindow.
We still keep the terminal panel disabled on Windows
(i.e. the two remaining #ifndef Q_OS_WIN in dolphinmainwindow),
because it is probably not functional.
But at least we won't break the Windows CI every time
someone touches the terminal panel code (see e.g. 2e942237c9).
Test Plan: Builds on Linux, someone on Windows should test this patch if possible.
Jaime Torres [Sun, 4 Feb 2018 20:19:33 +0000 (21:19 +0100)]
Faster drag&drop in directories with thousands of files
Summary:
The check is called when the mouse is moved in a drag&drop operation.
Dragging all files in a directory with 3000 files under callgrind,
moving the mouse to the other panel and then canceling, doing it twice,
callgrind shows that the method urlListMatchesUrl is called around
200 times, spending around 9,30% of the cpu in those calls.
Applying the patch, callgrind tells it uses now 0.31% of the cpu in 1208 calls.
Nathaniel Graham [Wed, 31 Jan 2018 00:05:57 +0000 (17:05 -0700)]
Let the terminal panel dock to any part of the window
Summary:
BUG: 362593
Just what it says: Let the terminal panel sit on the left or right side of the window.
Test Plan:
Tested in KDE Neon:
- Opened terminal panel, unlocked widgets, and tried to drag it to the right or left side of the window: I can
- Put terminal panel on right side, quit Dolphin and opened Dolphin again: terminal panel appears on the right as expected
- Put terminal panel on right side, closed terminal panel, quit Dolphin, opened Dolphin, and opened the terminal panel again: terminal panel appears on the right as expected
- Removed dolphinrc file and opened terminal panel: appears on the bottom
Marco Martin [Mon, 29 Jan 2018 10:52:23 +0000 (11:52 +0100)]
base scrolling on the smallest item
Summary:
CCBUG: 386379
after recent highdpi patches on scrolling that delegated it
completely to the scrollbar, based upon the scrollbar singleStep
setted to the tallest of the items in the view.
tough this makes scrolling way too fast, and on folders where just
few filenames are longer than most we can get a single scrolling
step almost double the number of lines configured in the
mouse kcm.
Using the shortest item instead of the tallest mitigates this problem
making it a bit more usable
Test Plan:
tested on different folders in different view modes both with
mouse and touchpad
Elvis Angelaccio [Sun, 21 Jan 2018 09:50:11 +0000 (10:50 +0100)]
Port away from deprecated QStyle::SH_Widget_Animate
Summary:
Use the new QStyle::SH_Widget_Animation_Duration instead,
which allows us to not manually hardcode the duration.
We still use 1 if animations are disabled,
otherwise the scroll would not work at all.
See also D5883 for some background.
Test Plan: Played with different values in the Animation tab of the Breeze config dialog.
Use BatchRenameJob to rename multiple files in Dolphin
Summary:
Use KIO::BatchRenameJob in Dolphin::RenameDialog to rename multiple files.
With this viewing progress of rename operation and undo is possible.
Set the focus to the active view, after leaving the terminal panel
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.
folderspanel context-menu option "Limit to Home Directory" should be always visible
Summary:
Only by chance I discovered that this option is visible but only when inside home. Before that I always edited dolphinrc to reenable it.
I think it's less confusing to always show it but toggle its enabled state
Test Plan:
compile and run
show folderspanel context-menu in different places
Summary:
Make sure that hidden devices loaded after module initialization does
not appear in the view.
Check for item visibility before add it on the model.
Summary:
Currently Infopanel does wrap its title when trying to narrow it.
Initially:
{F5619283}
Expanded:
{F5619284}
Resizing fails, watch cursor:
{F5619286}
Patch applied:
{F5619287}
Maybe this behaviour it intentional. Personally, I prefer the patch.
Test Plan:
compile & run
Resize infopanel with long title
Summary:
Currently the folderpanel is inert when browsing outside of home because urls end up as 'file:////a/b/c'
and since Qt 5.10 this is an invalid URL: http://code.qt.io/cgit/qt/qtbase.git/commit/?id=f62768d046528636789f901ac79e2cfa1843a7b7
Nathaniel Graham [Wed, 13 Dec 2017 05:52:21 +0000 (22:52 -0700)]
Change "Empty Search" to just "Search" to handle searches with no search text
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.
Julian Schraner [Sun, 3 Dec 2017 14:58:02 +0000 (07:58 -0700)]
Change window title when searching
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
Ahmad Samir [Sat, 25 Nov 2017 17:25:34 +0000 (18:25 +0100)]
Use kSqueezedTextLabel for the label text on the statusbar
Summary:
Following up from D8927; use kSqueezedTextLabel for the label text on the statusbar:
- This simplifies the code in updateLabelText()
- Remove the eventFilter as it's not needed any more since kSqueezedTextLabel has a resizeEvent function
- Specify a stretch factor, 1, for m_label, m_zoomSlider and m_spaceInfo, this prevents the changing of the width of m_label when the label text is updated from changing the widths of the zoomSlider and the spaceInfo widgets as that is a bit too jumpy.
(Thanks to the code of konversation statusbar for the hint about using the stretch factor in addWidget()).
Ahmad Samir [Wed, 22 Nov 2017 01:18:01 +0000 (18:18 -0700)]
Elide the label text on the statusbar in the middle
Summary:
BUG: 387189
Currently the label text on the statusbar is elided in on the right, but that means that when the text gets elided the size of the file isn't shown.
The label text on the statusbar shows the file name, the mime type and the size; the name is already shown in the main window and the mimetype can usually be guessed from the icon or from the extension, so it's usually the size that the user wants to see on the statusbar.
Andreas Krutzler [Sun, 19 Nov 2017 03:32:37 +0000 (20:32 -0700)]
Fix scrolling during inline renaming causes rename of wrong file
Summary:
Scrolling during inline renaming accepts the renaming now, like if one would hit Return for example. I chose this approach because it seems the easiest way to fix this.
This also fixes the “possible” Ui glitch where the renaming KTextField doesn’t move along with the list item. Possible glitch, because I don’t know if this is intentional, but for me it looks broken.
BUG: 378786
Fixes T7443
Test Plan:
* Enable "Rename inline" in dolphin settings
* Go to a folder where you have to scroll through items (many files, big zoom,…)
* Start to rename a file (context menu, F2, …)
* Scroll with mouse wheel
* Rename accepted -> file is renamed
Andreas Krutzler [Sun, 19 Nov 2017 03:32:37 +0000 (20:32 -0700)]
Fix scrolling during inline renaming causes rename of wrong file
Summary:
Scrolling during inline renaming accepts the renaming now, like if one would hit Return for example. I chose this approach because it seems the easiest way to fix this.
This also fixes the “possible” Ui glitch where the renaming KTextField doesn’t move along with the list item. Possible glitch, because I don’t know if this is intentional, but for me it looks broken.
BUG: 378786
Fixes T7443
Test Plan:
* Enable "Rename inline" in dolphin settings
* Go to a folder where you have to scroll through items (many files, big zoom,…)
* Start to rename a file (context menu, F2, …)
* Scroll with mouse wheel
* Rename accepted -> file is renamed
Nathaniel Graham [Thu, 16 Nov 2017 14:23:46 +0000 (07:23 -0700)]
Use KConfig::readEntry()'s default argument properly
Summary: Follow-on patch to D7440 to use KConfig::readEntry()'s default argument properly to reduce some unnecessary code
Test Plan: Tested in KDE Neon. no regressions; by default, all plugins are enabled if the key is not set, and if it is set, user changes to the list are remembered