┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/panels
AgeCommit message (Collapse)Author
2026-03-10information/pixmapviewer: handle hdipi for animated imagesMéven Car
BUG: 510829
2026-02-11panels/panels: handle lifetime of internal actionsMéven Car
Preventing a mem-leak on process leave.
2026-01-28panel/terminal: Add ability to disable konsole url syncEgor Maksimov
Sometimes when you work on the project using the build in konsole, most commands are meant to be run at the project root. This allows for user to disable URL sync so that one could browse the project tree without constantly needing go back to the root folder just to run a command. BUG: 306381
2026-01-22clang-tidy: use default for trivial constructorMéven Car
2025-11-20informationpanel: prevent a crash when creating video preview panel and a ↵Jean-Baptiste Mardelle
media file is selected To reproduce the crash: - Open Dolphin, disable information panel and close Dolphin - Re-open Dolphin - Select a video file - Enable information panel - Crash Problem is that some elements of the MediaWidget panel are created when the widget is shown, in `showEvent` (`m_seekSlider` and `m_topLayout`), and these elements are called before being created. This MR fixes 2 different crashes: - Crash creating panel when a video file is selected (call to `m_seekSlider` before its creation) - Crash creating panel when a video file is selected and autoplay enabled (call to `m_topLayout` before its creation)
2025-11-07informationpanel: ensure selection info is shown when using keyboard navigationweinan li
The original implementation prioritized mouse hover over keyboard selection, preventing panel updates when navigating with arrow keys while the mouse was over another item. This patch adds explicit state tracking to ensure keyboard selections always update the panel, regardless of mouse position. BUG: 474507
2025-10-23Don't do an animation on the information panelMarco Martin
The information panel does a scaling animation when switching between files. It does not completely make sense because the pixmap passes immediately to the new one, it just animates the scale between the two which just looks glitchy. the effect is particularly visible when switching between a normal folder and one that has thumbnails overlayed on top: the two folder icons appear the same size, but still a weird animation occurs when going from one to another. Also, the rest of the text of the information panel does change immediately. ideally perhaps some sort of fading animation could make sense, but only if everything in that panel faded together, only the icon fading with the text that is already the "new" one doesn't make much sense BUG:503036
2025-09-28informationpanelcontent: prevent repeated disabled effect on previewsPan Zhang
When switching files quickly in the Information Panel, the preview pixmap could appear progressively brighter/whiter. This happened because markOutdatedPreview() was applying KIconEffect::toDisabled() multiple times on the same pixmap while a preview job was still pending. This patch fixes the issue by: - Tracking the URL that was last disabled, and only applying the disabled effect once per URL. - Clearing the disabled state whenever a new preview job starts or when a new pixmap is shown. With this change, the "disabled preview" effect is preserved (still useful for slow HDD or network filesystems), but the progressive white-out artifact no longer occurs when navigating rapidly. BUG: 507844
2025-09-26placespanel: Fix default width by moving things from showEvent to constructorTem PQD
Move instantiation, setModel, and some connections to constructor and remove showEvent. This was being done in an erroneous lazy order which led to the places panel's sizeHint not being called properly. Also removes the double loading workaround in setUrl, which is no longer needed either. BUG: 449070
2025-09-23GIT_SILENT: Don't duplicate headers between .h/.cppLaurent Montel
2025-09-12informationpanel: use QTextEdit for filename display to avoid newlines in ↵Weinan Li
copied text QLabel does not support line wrapping at arbitrary positions. The original code achieved word wrap by manually adding newline characters to the text, which resulted in these newlines being included when the filename was selected and copied. This patch replaces QLabel with QTextEdit for filename display, leveraging QTextEdit's built-in word wrap functionality that handles line breaks purely for display without modifying the underlying text. This ensures copied filenames remain free of unintended newlines. BUG: 493279
2025-07-13panels/information: Fix preview size for animated imagesIsmael Asensio
If the image size is larger than the available size, we need to scale so it fits into the preview
2025-06-28clean includeMéven Car
2025-06-28mediawidget: bind arrow keys to slide in mediaMéven Car
2025-06-28InformationPanel: Port from Phonon to QtMultimediaMéven Car
2025-05-09DolphinView: Remove -1 interval, add setAutoActivationEnabledAkseli Lahtinen
In future Qt versions, Qt Timers do not allow negative intervals. Instead, they will be changed to 1. Related Qt commit: https://github.com/qt/qtbase/commit/f1f610bc67bfd5c2ef31270a6945e7bae93b5e4a Instead of relying on the interval, use a boolean variable to check if the autoactivation is enabled or not.
2025-03-16Apply 1 suggestion(s) to 1 file(s)Luc Schrijvers
Co-authored-by: Felix Ernst <[email protected]>
2025-03-16only use KDirNotify if existingLuc Schrijvers
will not be there if we have no dbus enabled for kio
2025-03-04Use nicer split iconNate Graham
This is the icon that Konsole uses, and it communicates the point better than the current one. Related to #68
2025-03-03placespanel: Use correct loop index when connecting device signalsWang Yu
The loop in slotRowsInserted was using the 'first' parameter instead of the loop variable 'i', causing only the first index to be connected multiple times.
2025-01-20InformationPanel: fix potential glitches with gifsMéven Car
2025-01-17Refactor Overlay HandlingMéven Car
Now all overlays icons in kitemviews are added in KStandardItemListWidget::updatePixmapCache. data[iconOverlays] now contains icon names. DolphinFileItemListWidget::refreshCache is the sole responsible of setting the overlays either coming from KFileItemModelRolesUpdater or KVersionControlPlugin. This garantees consistency in rendering. BUG: 497372
2025-01-17InformationPanel: prevent animated images from glitchingMéven Car
And show them in their actual pixel density.
2025-01-15Clean stop-gap porting ifdef for KICONTHEMES_VERSIONMéven Car
That were introduced in: a55c467fbb31d822d89722812388425327830377 38ab14c87a945153e683657483fa4bcf44d6b0fb
2025-01-11Icons: when adding overlays pass in the output sizeMéven Car
Instead of the pixmap size that won't be accurate. It allow KGuiAddons::addOverlays to draw larger images to add overlays. Consequently the emblems are not longer dependant scaled based on the pixmap aspect ratio. BUG: 498211
2025-01-09information panel: scale according dprMéven Car
Also use dpr for icons. Amends cebcf8db BUG: 497576
2024-11-25Switch to C++20Méven Car
2024-09-02[terminal] Don't try to change dir into an empty URLNicolas Fella
SENTRY: DOLPHIN-2Q4
2024-07-27Port from KIconLoader::drawOverlays to KIconUtils::addOverlaysNicolas Fella
The latter is what most other projects use
2024-07-18Port away from deprecated KIconEffect APINicolas Fella
2024-07-01Revert "DragAndDropHelper::updateDropAction: use StatJob for remote URLs"Felix Ernst
This reverts commit dc149ec5e52f52c514cf362603d05ba8eea506b8. This prevents a crash. One issue identified is that the commit that I am reverting here accesses a QDropEvent at a moment in time in which it might have already been deleted. We cannot check if it exists by that time because we do not control its lifetime and it is not a QObject.
2024-03-15Add settings page for PanelsBenedikt Thiemer
For now this just includes the settings for the information panel. Prior to this commit the options for configuring the information panel were only exposed via right clicking the information panel. This was not discoverable enough. Our guidelines also state that much. See: https://community.kde.org/Get_Involved/Design/Frequently_Discussed_Topics#Context_menus_are_not_enough The settings page is missing the "Configure" button for the entries in the information panel, which can only be found in the context menu. This is because I thought it would be weird to move it to the settings page. (The "configure" button is used to select the entries for the information panel) BUG: 480243 FIXED-IN: 24.05
2024-02-29DragAndDropHelper::updateDropAction: use StatJob for remote URLsJin Liu
When dragging onto tabs/Places from a remote URL, we don't process the QDropEvent immediately, but start a StatJob and process the event when it finishes. Also, the result of the StatJob is cached for 30 seconds, to avoid starting duplicate jobs.
2024-02-17Improve DnD handling in read-only dirsJin Liu
1. Places panel and tabbar update drag status in read-only dir 2. Don't create drop job in readonly directories
2024-01-10terminalpanel.cpp: Set m_konsolePart to nullptr during exit signalAkseli Lahtinen
If Dolphin terminal is open, and one types `exit` there and then closes Dolphin, Dolphin crashes due to a dangling pointer. Konsole KPart is deleting itself when Konsole session exits, but Dolphin tracks it as a child of the Terminal Panel. The Terminal Panel doesn't get destroyed when Konsole KPart does, and it tries to double free during children clean up. (Thanks @sitter !) Setting `m_konsolePart` to `nullptr` during exit signal fixes this, since there is already check in place for that in the destructor. BUG:479596
2024-01-03Use correct KIO includeNicolas Fella
2023-12-26Do not rely on KIO source-code compat codeAlexander Lohnau
2023-11-26Places Panel: Swap "Open in Split View" and "Configure Trash"Kai Uwe Broulik
Ensure the "open" actions are all in a row.
2023-11-21panels/information: Create pixmap with explicit devicePixelRatioKai Uwe Broulik
2023-11-21Create thumbnails with scene devicePixelRatioKai Uwe Broulik
2023-11-15Fix accessibility ancestor tree for folders panelFelix Ernst
This is a followup to 549fad2daeeccac53b88b4777dcc9effbc2110e5. That previous commit made sure that the accessibility tree for Dolphin's main view was complete even though the view had no parent by explicitly setting an accessible parent. The folders panel also has a view though and that previous commit did not contain an explicit call to also set an accessible parent for it. This commit rectifies that. Fixes a sanity check & crash in the debug build. Belongs to Dolphin issue #47.
2023-11-10Set position of KMessageWidgetCarl Schwan
To use a more frameless style
2023-11-08Adapt to KConfigGroup name officially being a QString typeFriedrich W. H. Kossebau
GIT_SILENT
2023-09-28TerminalPanel: Disconnect signal in destructor only when we have a konsolePartMéven Car
2023-09-19TerminalPanel: Disconnect destroyed signal in destructorKai Uwe Broulik
Otherwise, when QObject cleanup, which runs after our destructor, destroys the terminalPart, it would call back into us when we're already half-destroyed. This trips an assert in Qt "Called object is not of the correct type (class destructor may have already run)"
2023-09-19Merge branch 'master' into kf6Nate Graham
2023-09-16terminalpanel: Improve Konsole missing messageOliver Beard
It now forces the pane to fit its height, and will animate on every appearance.
2023-09-10Merge remote-tracking branch 'origin/master' into kf6Méven Car
2023-09-09Add open in split view actionEric Armbruster
This action is shown only if a single folder is selected. The action opens the selected folder in the inactive split view (and opens the split view if necessary). FEATURE: 465500
2023-08-28Clean obsolete ifdefs since dolphin requires KF 5.101+Méven Car