┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-01-06Fix focus changing when unminimising on X11Felix Ernst
In f220e3b0783a24a6c7195f170297cf4b12a29d85 I made the keyboard focus move to the places and terminal panel whenever they are toggled visible. Unfortunately the QDockWidget::visibilityChanged() signal is also emitted (at least on X11) simply when the window containing that panel is minimized or restored. This commit overrides the QDockWidget::event() method to ignore such spontaneous show or hide events so QDockWidget won't emit the visibilityChanged() signal then. BUG: 497803
2025-01-06GIT_SILENT Sync po/docbooks with svnl10n daemon script
2025-01-05GIT_SILENT Sync po/docbooks with svnl10n daemon script
2025-01-04Update copyright to 2025Justin Zobel
BUG: 474515
2025-01-03GIT_SILENT Sync po/docbooks with svnl10n daemon script
2025-01-02GIT_SILENT Update Appstream for new releaseHeiko Becker
(cherry picked from commit b3022e728b86f0ad94053369aedf164fee54c229)
2025-01-02GIT_SILENT Sync po/docbooks with svnl10n daemon script
2025-01-01GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-31GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-30GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-29Mirror details view mode for right-to-left languagesFelix Ernst
This commit implements mirroring of the details view mode for right-to- left languages. This is the last of the Dolphin view modes which did not adapt to right-to-left languages correctly. Implementation-wise this is mostly about adapting the math so all the information is placed correctly no matter the view mode or layout direction. While most of the view actually changes the painting code for right-to-left languages, for the column header I decided to keep the logic left-to-right and instead reverse the order of the role columns. To implement this mirroring I needed to rework quite a bit of logic, so I used the opportunity to fix some bugs/behaviur quirks: - Left and right padding is now saved and restored separately instead of only saving the left padding - Changing the right padding no longer disables "automatic column resizing". - The grip handles for column resizing can now be grabbed when near the grip handle instead of only allowing grabbing when slightly to the left of the grip. - Role column headers now only show a hover highlight effect when the mouse cursor is actually above that role and not above the grip handle or the padding. - There is now a soft-boarder when shrinking the right padding so shrinking the padding "below zero width" will no longer immediately clear automatic resize behaviour. So now it is possible to simply remove the right padding by resizing it to zero width. BUG: 449211 BUG: 495942 # Acknowledgement 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.
2024-12-29Have special keyboard controls in selection modeFelix Ernst
Prior to this commit keyboard controls and behaviour of Dolphin's main view were identical no matter if selection mode was enabled or not. While selection mode makes it impossible to accidentally clear the selection by singular mouse clicks, any press of an arrow key on the keyboard would still clear the full selection which goes against selection mode's objective. Furthermore, keyboard-only users had no reason to ever enable selection mode because it made no difference to them. This commit changes this by offering a changed control scheme for key presses while in selection mode. Arrow key presses without modifier now only move focus between items but do no longer clear or change the selection. Similarly, Page Up/Down, Home, and End key presses only move keyboard focus. Enter, Return, and Space key presses now only toggle the selection for the current item. The above controls are however mostly unchanged when combining them with Modifier keys like Shift or Control. The type-ahead feature is also changed in selection mode to only move keyboard focus without changing the selection. This way keyboard users are less likely to clear their selection by mistake. Regression tests are added for these selection mode controls. The code changes to change this keyboard behaviour are quite minimal. Most of the added code is for making selection mode accessible. That's because we need to make sure the changed control scheme is properly announced and communicated or a blind user will be left utterly confused why the normal keyboard controls "stopped working". Enabling or disabling selection mode is announced to accessibility software. Furthermore whenever focus goes to the main view, the selection mode state is also mentioned when active. BUG: 458091
2024-12-27GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-26GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-25GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-24GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-21GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-20GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-19dolphinview: Update thumbnail on filename changeAkseli Lahtinen
If filename of an item was updated previously, it would modify the model before the file was actually changed. This led to the model calling a signal that would try to run a previewjob, but since the filename is not actually changed yet on disk, it would fail. This patch moves the model updating after copyjob. Copyjob will take care of the file renaming if there is already existing file. We just need to update the model correctly after the job has succeeded. BUG:497555
2024-12-19GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-17GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-16ViewProperties: Return nullptr if viewPropertiesString is emptyAkseli Lahtinen
If viewPropertiesString is empty, return a nullptr. This will later used in the stack by the defaultProperties call. In defaultProperties, if we can't find the global directory, create new one with a tempfile. If tempfiles can't be created, use default instead. This will ensure that view settings are saved and loaded correctly if user has separate view properties per folder. This will also add an unit test, where we create a global directory, modify it and make sure the changes are reflected in the unmodified folder. BUG:495878
2024-12-16DolphinViewContainer: make sure searchbox is initialized before setSearchPathAkseli Lahtinen
If searchBox is not initialized, it can't be updated properly with setSearchPath due to some buttons not existing. There is also just no need to update it if it's not initialized. Make sure we check for it's initialized during setting the search path. BUG:497021
2024-12-16GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-14GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-14SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2024-12-14GIT_SILENT made messages (after extraction)l10n daemon script
2024-12-13GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-10GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-09Fix inline renaming multiple files when renaming changes sorting orderIlia Kats
Suppose we are renaming file i and the new name will be sorted after file i+1. We are now pressing ArrowDown to immediately start renaming file i+1. However, because of the sorting we would not actually end up renaming what used to be file i+1. What would happen is that editing would be started in dolphinview.cpp:2065. However, after 100 ms the timer in KFileItemModel would fire, resulting in the model emitting itemsMoved(). This would trigger doLayout() in KItemListView::slotItemsMoved(). doLayout() resizes the KItemListWidgets, wich causes the renaming to be canceled in KStandardItemListWidget::resizeEvent(). Now, we start a new renaming operation for the correct widget after the relayouting is complete.
2024-12-09GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-09GIT_SILENT made messages (after extraction)l10n daemon script
2024-12-08GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-07CI: Flatpak: Add ark for compressionJustin Zobel
2024-12-07GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-06GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-05Adapt to Orca 47Felix Ernst
The screen reader Orca has seen some fundamental changes between Orca 46 and Orca 47. While they are improvements overall, they do require changes to Dolphin to preserve the intended user experience for Orca users. The biggest change is perhaps that Orca will now not only announce changes to the currently focused item, but also of its parent, which means we do not need to pass focus around between file items and the main view within Dolphin, but can keep focus on the file items most of the time. This commit implements this. The only exception of when we cannot have focus on the items within the main view is when the current location is empty or not loaded yet. Only then is the focus moved to the view itself and the placeholderMessage is announced. This commit worsens the UX for users of Orca 46 or older, so this should only be merged once most users are on Orca 47 or later.
2024-12-05GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-04Always focus the view after place activationFelix Ernst
This one-liner makes sure keyboard focus always moves to the active view when a place in the places panel is activated. Previously focus would remain on the places panel if the activated location was identical to the already displayed location. This added consistency is helpful because keyboard-only users will get used to be able to move from the places panel to the view by pressing the Enter key, even though this does not always work prior to this commit. This issue was identified in an accessibility scan done by HAN University of Applied Science.
2024-12-03GIT_SILENT Update Appstream for new releaseHeiko Becker
(cherry picked from commit 73b83b866eae1e095d84d611ceb6dd094a54b98f)
2024-12-02KItemListSmoothScroller: stop animation on property or targetobject changeAkseli Lahtinen
Due to changes in 15e0c2a98f480f203ce168b6fa9a2e1f2b0ed8f8 we do not automatically stop animations now on property or targetobject change, which causes warnings and timeouts. This patch makes sure we stop them if their state is Running, before modifying them. See also: https://invent.kde.org/system/dolphin/-/merge_requests/857#note_1083279
2024-12-02GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-12-02SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2024-12-02GIT_SILENT made messages (after extraction)l10n daemon script
2024-12-01GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-11-30GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-11-29Make "open path" and "open path in new tab" scroll to the selected itemAkseli Lahtinen
**Open Path** When user clicks on "Open Path" after searching for an item, user expects the view to show the item immediately. We wait for the KItemListSmoothScroller to be done with its animation before the scrollbar sizes are being changed. **Open Path in New Tab** When user selects "Open Path in New Tab", we open a new tab to the folder where the file is, then select and set the file current. We need to get the correct tab when opening one, so it has been added as a return value. BUG:495613
2024-11-29GIT_SILENT Sync po/docbooks with svnl10n daemon script
2024-11-28DolphinTabPage: Update container view url on redirectionAkseli Lahtinen
On url redirect, we should check which container url is being changed and then update it accordingly. This makes sure the tab name is updated. We also should not disconnect redirection on view activation since the redirection might be used by the other split. The disconnection is done in `setSplitViewEnabled` instead. This allows us to update the tab name every time the url changes, even inside a splitview where the split which name is changed is not active. BUG:496414
2024-11-27fix: Flatpak must have --filesystem=~/.var/appRyan Brue
This permission is needed because --filesystem=host doesn't expose other flatpak files from ~/.var/app Signed-off-by: Ryan Brue <[email protected]>