| Age | Commit message (Collapse) | Author |
|
|
|
|
|
The previous implementation forced a custom background colour
before delegating to the style's PE_PanelItemViewItem primitive.
This interferes with theme‑specific drawing and results in a hard‑coded,
non‑themed highlight that breaks styling across themes.
Remove the explicit brush assignment, allowing the style to
paint the background itself. The focus rectangle handling remains
unchanged and is still drawn only for the active item.
And pass the State_MouseOver to focus rect style option when hovered.
|
|
|
|
When the main window is closed m_mainWindow becomes dangling
Since data collection happens infrequently we don't need to cache the window, just find it on demand
BUG: 519876
SENTRY: DOLPHIN-VPX
|
|
|
|
Prior to this commit, searching in Dolphin using "File Indexing" results
in the location bar showing a percent-encoded title instead of a
human-readable one.
|
|
|
|
(cherry picked from commit 632c991f6d975752f41457a3af865e21535a0999)
|
|
This regressed after bad63660b4c3253fdbd5fc3f989146519a7338b7.
This also could cause crashes when asserts are active.
|
|
1. Restore session if this is the first instance
even with "new-window" option.
Otherwise, if Dolphin has not been opened before,
and a program (such as browsers or Kate) that
launch Dolphin with "new-window" option will
start Dolphin, it opens only with one tab and
closes the user's previous session.
With this patch, the behavior is similar to
how the first instance of browsers opens
with setting for tab recovery enabled.
Also restore sessions if this is restoring
multiple instances with session restoration
after reboot enabled.
2. Dolphin should not restore all tabs for
additional instances.
This is especially noticeable if the
"Keep a single Dolphin window, opening new folders
in tabs" checkbox is turned off, and when the
Dolphin window is already open (with several tabs),
folders from the desktop (plasmashell) are opened
by double-clicking. Desktop opens a new Dolphin
window with the tabs restored and an open folder
at the end.
BUG: 464693
CCBUG: 448707
CCBUG: 469271
|
|
This function should return a list without
daemonized process, because it is a list of
GUI instances.
So, check whether the found DBus service can
actually call requests for the path `/dolphin/Dolphin_1`,
by calling `isActiveWindow()` method from this interface.
|
|
|
|
|
|
Otherwise the focus can be passed.
|
|
|
|
|
|
One can close a chip by pressing the "X" close button on it. Prior to
this commit, one could also close a chip somewhat unexpectedly by
choosing an option from the Chip's dropdown. This commit removes any
"empty" options from the Chips which would lead to the Chip disappearing.
Example: Choosing "Any Rating" would remove the rating chip because it
would no longer act as a restriction on what the search should find. Now
the "Any Rating" option is not added to the Chip in the first place.
|
|
|
|
The typed keys are displayed in the status bar while also displaying
which file name they were auto-completed to (i.e. which file was
selected because of the typing).
This commit contains some refactoring to keep the original status bar
functionality working as expected.
This commit also separates DolphinMainWindow from DolphinStatusBar which
is great news architecture-wise. The status bar is encapsulated within
the DolphinViewContainer.
|
|
This is prone to errors. CommandLauncherJob takes care of it with the
right syntax.
|
|
|
|
Because of a bug these messages haven't reached users in years, and it seems it is better this way. Remove the dead code.
Preparation for https://invent.kde.org/system/dolphin/-/merge_requests/1254
|
|
Previously, c035e95 introduced `QtConcurrent::run` to execute `KConfig::sync()` in a separate thread. However, this introduced thread-safety issue:
BUG 518433 (UAF caused by RC):
During application exit, the main thread frees the old `s_sessionConfig` in `KMWSessionManager::saveState()` to create a new one. Meanwhile, the worker thread is still iterating over the old instance's entryMap during `KConfig::sync()`, leading to a Use-After-Free (UAF) crash.
Changes:
Copy the `config` in the main thread so `KConfig::sync()` can safely run in the worker.
BUG: 518433
BUG: 516481
CCBUG: 425627
|
|
|
|
kxmlgui KCommandBar uses QAction::menu() to construct its action list.
Reuse the popupMenu as the menu, so KCommandbar finds zoom actions.
|
|
|
|
When a program is running on front while the graphical view is being changed, that can make the terminal and file view working directories out of sync. I wasn't able to find a signal from Konsole for when the foreground program exits, so having the terminal respond to F5 is the second best thing.
BUG: 510557
|
|
|
|
|
|
actions to be
"Empty Trash" has caused me to delete files that I've wanted to restore. This moves the position to where you expect them to be.
To my understanding the standard order in the context menu is:
Creation operations
Visual adjustments
Destructive operations
Misc.
Settings
| Before | After | Restore for comparison |
|-|-|-|
| {width=185 height=144}| {width=225 height=161} | {width=270 height=159} |
BUG: 518713
|
|
|
|
|
|
|
|
|
|
|
|
When browsing kdeconnect scheme, offer to open the KDE Connect
app to configure the devices.
On the overview, the button just opens the app. When listing
storage on a device, it opens the app directly with the given device.
|
|
|
|
This method would adjust the document to "reasonable size" but such
size is set nowhere, nor there is any indication what is a reasonable
size. This leads to the rename field being a lot wider than the
actual item size, making it look broken.
Removing this just keeps the document size same width as
the widget itself, making it more sensible and less broken looking.
|
|
|
|
Remove unused `referenceItem` variable in KFileItemModelRolesUpdater
and add Q_FALLTHROUGH() annotation for intentional SingleSelection →
MultiSelection fallthrough in KItemListController.
|
|
Reset m_hoveredItem when a new selection is set, preventing the
information panel from showing outdated hover data after selecting
a different item
|
|
|
|
|
|
|
|
|
|
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"
|
|
|
|
|
|
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"
|