| Age | Commit message (Collapse) | Author |
|
|
|
We should avoid custom painting since that will cause issues with
Union and other styles. We however still use the old hardcoded painting
for Breeze style, which can be removed when Breeze 6.8 is released.
For other styles, we draw using the primitives the QStyle provides.
Also make the icon items less wider for better information density.
CCBUG: 508294
BUG: 508465
|
|
|
|
|
|
|
|
|
|
In navigator in frame mode (as opposed to inToolbar).
Once we set a colspan and rowStretch on the main widget (the splitter),
we don't need to pass bogus rowspan/colspan values to addWidget.
This prevents some warnings.
`QGridLayout: Multi-cell fromRow greater than toRow`
|
|
Inline rename was canceled when the edited item scrolled out of view. Scrolling could both finish the edit and recycle the item widget, causing the typed name to be lost.
Keep the inline rename editor alive while the item is temporarily offscreen. Update the editor geometry on scroll, avoid recycling the widget while it is being edited, and suppress the temporary FocusOut triggered by hiding the editor.
If the user interacts with another item while the edited one is offscreen, finish the hidden edit first so normal selection behavior is preserved.
BUG: 506884
|
|
|
|
Parent the QMediaPlayer and QAudioOutput so they can get deleted with
their parent.
|
|
To allow to cancel an edit role when the widget starts being animated.
This was hooked to a function not a signal.
|
|
|
|
|
|
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 no device was found or no storage within.
|
|
|
|
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"
|
|
|
|
|
|
Sometimes the selection is empty or not updated properly. Better be
safe than sorry and make sure the items are always up to date.
This amends commit db49ac4e
|
|
For this widget.
If a file is being moved due due to external events, an animation may
start, in which case we better cancel the edit.
If we hook this at the animation start instead of checks spread out, we
can't miss this cancellation anymore.
KStandardItemListWidget gets a cancelRoleEditing slot to cleanly cancel
editing and clean up its internal state.
|
|
|
|
When switching tabs with split view enabled and the filter bar visible,
a storm of activation calls is triggered and at the end signal/slot
connections for both views is a mess (no listeners, navigation buttons
linked to unfocused view etc.).
Disconnect DolphinTabPage slot when it changes its own state.
BUG: 508554, 512011, 508405, 511076, 503576
|
|
|
|
|
|
search results
When navigating away from a search result, hiding the search bar unintentionally emitted urlChangeRequested(searchPath). This inserted an extra navigation step into the history, causing the “Back” button to require multiple presses to return to the search results.
Introduce Search::Bar::HideBehavior to allow callers to hide the search bar without triggering a URL change, and use it when the bar is automatically hidden due to non-search navigation.
BUG: 515236
|
|
|
|
|
|
|
|
The search field moves upwards and becomes obscured when pressing navigation keys like the down arrow. This happens because the underlying QScrollArea processes keyboard navigation events, shifting the visible viewport even when scrollbars are completely hidden and disabled.
Move the event filter from the contents container directly to the QScrollArea (m_contentsContainerParent) and its viewport. Update the filter to intercept Qt::Key_Up and Qt::Key_Down events, preventing the scroll area from handling these inputs.
BUG: 510469
|
|
|
|
|
|
|
|
Prevent a mem-leak detected with asan.
|
|
|
|
Currently, Dolphin's filter bar defaults to plain text, but it actually has a hidden regex functionality too: it tries to auto-detect and switch to a regular expression if characters like '*', '?', or '[' are present in the search string.
This approach has a couple of issues. First, the regex/wildcard functionality is completely hidden from the user. Second, the auto-detection is flawed because those are perfectly valid characters in Linux filenames. If a user tries to filter for a file literally named [draft].txt, the auto-switching kicks in and causes unexpected behavior.
This MR fixes this by making the filtering modes explicit through a ComboBox at the side of the filter bar, with the options 'Plain Text', 'Glob' and 'Regular Expression'. It also adds a button to toggle the case sensitive matching. A visual feedback for when the user is inputting an invalid expression has also been implemented by turning the bar background red and making appear an error symbol.
|
|
|
|
Adds ZoomLevel flag to the directory and uses it instead of global settings when globalViewProps is set to false.
CCBUG: 169405
|
|
|
|
Explicitly grabGesture TapAndHoldGesture to be able to ignore them and
thus prevent bubbling the event to the parent widget.
BUG: 431307
|
|
This removes the .desktop suffix to match https://invent.kde.org/utilities/kfind/-/blob/master/src/org.kde.kfind.appdata.xml?ref_type=heads#L3
BUG: 510370
|
|
KCModuleLoader when passed in a parent Widget will add a layout to it.
The internal widget is added to it.
When we don't pass a parentWidget, this layout leaks.
Instead don't add a layout ourselves, let the one in KCModuleLoader do
the work.
Detected by asan.
|
|
|
|
|
|
Prevents a mem-leak on exit spotted by -fsanitize/asan.
|
|
BUG: 510829
|
|
|
|
BUG: 433937
|
|
So the selection manager can consider the selection has changed.
This makes sense as when editing file name you can only have a single item selected.
BUG: 453262
|
|
|