| Age | Commit message (Collapse) | Author |
|
|
|
Fixes a crash when searchbox is not active and tab gets renamed.
I forgot to add this to merge request
https://invent.kde.org/system/dolphin/-/merge_requests/864
CCBUG:496387
|
|
urlNavigator
This fixes a dolphin crash if tab with a search box open gets its path
changed while its not active.
This patch adds a guard for the m_urlNavigatorConnected->setLocation,
and makes sure the searchPath is set to the correct folder.
BUG:496387
|
|
|
|
|
|
NO_CHANGELOG
|
|
|
|
|
|
Currently when next item is set selected, it's not set as an anchor.
This means that shift-click will not select items between the selection
and the next item, and instead behaves like ctrl-click.
This is rather inconsistent behavior.
We should set the next selected item as an anchor so that shift-click
will work: This change starts the `beginAnchoredSelection`
process after `setSelection`.
For example, if user trashes an item and the next item is selected,
shift-click would stop working.
BUG:495371
|
|
|
|
|
|
|
|
Currently natural sort compares the entire filenames
(basename.extension) when sorting. This causes eg.
"a 2.txt" to appear before "a.txt" when sorted by ascending.
This is unintuitive since people prioritize basenames more
than file extensions.
Instead, change natural sort to compare by basename only and
fallback to comparing extensions if basenames were equal.
This change causes "a.txt" to appear before "a 2.txt" and
matches how other platforms such as GNOME and Windows behave.
BUG: 416025
BUG: 470538
BUG: 421869
BUG: 312027
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This uses only qobject_cast here, having static_cast after it is
redundant.
Also remove the topLevelWidgets variable, since we can just
call the method instead.
|
|
In generalViewSettingsPage, ActiveWindow is not necessarily a
mainWindow, which can cause dolphin to crash. For example when user
opens folder properties and then dolphin settings, this part thinks
the folder settings is mainWindow.
Instead of static_cast, use qobject_cast, since it will return nullptr
if the DolphinMainWindow is not found.
BUG:492741
|
|
|
|
Prior to this commit, when Dolphin was opening in a directory for
which the free space information cannot be retrieved, the free
space info in the status bar would still briefly be visible before
hiding for good.
This commit avoids this flickering by keeping the space info hidden
until space info has been successfully retrieved. There is no use
showing an empty/wrong space info before that anyway.
I assume the error in the previous code was that it assumed that
one could prevent a widget from being shown by overriding
QWidget::showEvent(). This does not work because this method is
only called to notify QWidgets of their state change.
This commit was primarily written because the brief showing of an
empty space info was messing with automatic tests.
|
|
This commit extends the dolphinmainwindowtest for the accessible tree
to test that each object a user can reach through the Tab key or the
Shift+Tab key combination is distinguishable by its accessible info
from the previous object.
Objects are considered distinguishable if they have different
accessible names or their first ancestor with an accessible name is
different.
|
|
|
|
|
|
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"
|
|
|
|
|
|
|
|
When moving through Dolphin by repeatedly pressing the Tab key,
there is one seemingly invisible object that catches keyboard
focus. On a default toolbar it receives keyboard focus between the
"Details View Mode" button and the first button of the location
bar. That object is the splitter of the location bar itself, which
never requires manipulation by keyboard. This commit skips this
object by setting its focusProxy to the primaryUrlNavigator()
instead.
|
|
|
|
|
|
BUG: 483937
|
|
|
|
|
|
Pressing Escape on the location bar while in breadcrumb mode has no
effect at all. This commit changes this to instead move the focus
to the active view. This is more logical because a user pressing
escape while having focus on the location bar is no longer
interested in interacting and changing the location in the location
bar. They most likely want to act on the current location instead.
|
|
The "Replace Location" action moves focus to the location bar and
selects the full path there so it can easily be replaced with a
different path.
When the full path is already selected, triggering "Replace
Location" will toggle the editable state of the location bar.
This commit makes it, that this also moves the focus to the view.
This way, pressing Ctrl+L multiple times will switch back and forth
between focusing and selecting the location bar path and focusing
the view. This seems more sensible than only partially resetting
the state when the "Replace Location" keyboard shortcut is pressed
twice.
|
|
|
|
|
|
|
|
(cherry picked from commit 0fb381a7edef8b3c60f1c01fb7cc9d9335556fb4)
|
|
|
|
|
|
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"
|
|
|
|
This commit brings the main view of Dolphin into a usable state
accessibility-wise. Users of screen readers should have a way better
experience while browsing files and folders and navigating along the
file system hierarchy.
This commit fixes most of the remaining already-identified
accessibility issues listed in
https://invent.kde.org/teams/accessibility/collaboration/-/issues/28,
but not all. Namely, these should now be fixed:
1. Orca should read the element type in dolphin (file, folder, device,
link to folder, link to file)
2. Orca should read complete label in icon and compact view mode,
currently it only speaks the name, but there could be additional
information like the number of elements or the file size.
3. Orca is not able to announce Selecting / Unselecting files in
Dolphin. It also never announces how many items are selected in total.
(Announcing the total selection can be done by reading out the view
element or by pressing the Tab key to get to the status bar with the
relevant information.)
4. Dolphin opens on the home directory, but Orca doesn't tell you so.
Consider enclosing the area in a frame/panel which updates its
accessible name each time you modify the current path by entering or
leaving a directory.
5. I don't know what the folder presentation widget is, but it should
be presented as a grid view. Currently, we have a terrible experience
because the entire row of folders is read at once, with no indication
that we can move left and right with the arrows to go between the
elements of a row. When I found that out, however, I discovered that
when you're on the last icon of the first row and press right arrow,
you get to the first icon of the next row, but that's not announced,
instead, the whole row is announced at once
6. Orca should announce the current elements instead of "layered pane"
when the Folder / File view gets the focus in dolphin
7. Orca reads only name in Table View only of Dolphin
8. Items are sometimes confusingly announced as "collapsed" in contexts
in which there is no concept of collapsing/expanding e.g. in icon view
mode.
A lot of code was moved around and renamed. The three accessibility
classes, which all used to be in the same file, are moved into separate
files.
*Acknowledgement*
Thanks to Christian Hempfling and bgt lover for testing as well as
originally identifying a lot of the pain points being addressed here.
This work is part of a my project funded through the NGI0 Entrust Fund,
a fund established by NLnet with financial support from the European
Commission's Next Generation Internet programme, under the aegis of DG
Communications Networks, Content and Technology.
https://kde.org/announcements/2024_ngi_openletter/
|
|
|
|
Existing settings are converted.
Works on most FS except FAT/exFAT which fallback to .directory files.
If the extended file attributes (in ADS in Windows) can't be saved, they are saved to file as before.
BUG: 322922
You can see file xattr using for instance for Unix filesystems:
getfattr -d /home/meven
|