Commit graph

7169 commits

Author SHA1 Message Date
Méven Car f9c1a5556e settings: improve confirmation tab layou layout 2024-05-08 17:08:37 +02:00
Méven Car 2c5e15aa5a settings: use QFormLayout for confirmation tab
For consistency.
2024-05-07 18:49:43 +02:00
Anthony Fieroni 67de3b7344 DolphinView: Update selection on newly created item(s)
Adjust paste to url to new KF6 signals

BUG: 476670

Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
2024-05-04 07:58:47 +00:00
Carl Schwan 41df5fa026
Fix usage of ecm_add_app_icon
The DESTINATION and THEME arguments are non existent and as such this
breaks the macOS builds and create warnings for the other platforms.
2024-04-30 11:20:37 +02:00
l10n daemon script ca78971140 GIT_SILENT made messages (after extraction) 2024-04-24 00:41:05 +00:00
l10n daemon script c556aed545 GIT_SILENT made messages (after extraction) 2024-04-22 00:40:16 +00:00
l10n daemon script 2f2681f464 GIT_SILENT made messages (after extraction) 2024-04-19 00:40:32 +00:00
Felix Ernst 57f45004cf Add branding colors for Flathub
This is needed or they definitely won't feature us.

The light blue color is chosen because it is vibrant and fits the
association with "Dolphin". The very dark color is chosen to still have
a good contrast with the Dolphin icon even though it is already quite
dark at the top left corner.

For more information see:
https://docs.flathub.org/blog/introducing-app-brand-colors/
2024-04-18 10:28:28 +00:00
Felix Ernst a07f24228a Fix crash while entering selection mode with Qt6.7
`deleteLater()` on a non-existing object seems to cause a crash with
Qt6.7. This makes some sense but wasn't the case previously.

I didn't test this yet but it is a harmless change so if anyone can confirm we can IMO merge directly.

This was brought up in https://invent.kde.org/system/dolphin/-/merge_requests/764#note_920935, reported in the bug linked below, and the sentry crash reporting page also has a few dozen reports (https://crash-reports.kde.org/organizations/kde/issues/13589/?project=4&query=is%3Aunresolved&referrer=issue-stream&stream_index=1).

Dolphin 24.02 is also affected but we are already past the last bug fix release for it.

BUG: 485599
2024-04-17 07:32:27 +00:00
l10n daemon script 4320310b9b GIT_SILENT made messages (after extraction) 2024-04-17 00:40:26 +00:00
l10n daemon script a9b94d3469 GIT_SILENT made messages (after extraction) 2024-04-16 00:40:25 +00:00
l10n daemon script 7d6f82b8ab GIT_SILENT made messages (after extraction) 2024-04-15 00:40:15 +00:00
l10n daemon script d8987d3d62 GIT_SILENT made messages (after extraction) 2024-04-14 00:40:15 +00:00
l10n daemon script 98640eafd4 GIT_SILENT made messages (after extraction) 2024-04-13 00:40:29 +00:00
l10n daemon script 8e180d2110 GIT_SILENT made messages (after extraction) 2024-04-12 00:39:40 +00:00
Méven Car 9ba1d33b57 viewproperties: remove now obsolete recentdocument reference 2024-04-11 15:53:39 +00:00
Carl Schwan be59daa853 Improve appstream summary
Use verb
2024-04-11 12:53:00 +00:00
Joshua Goins 39ce726862 DisabledActionNotifier: Prevent null dereferences
This prevents a crash on startup where it tries to delete a null
QShortcut because it didn't check if the QShortcut actually exists in
the QHash.

BUG: 485089
2024-04-11 11:20:02 +00:00
Felix Ernst 13cf4c096f Fix saving sort role after change from header
This is a partial revert of
5186f09cab. That commit tried to
simplify code, however this lead to the saving of view properties
being skipped, introducing the linked bug.

The issue is that by the time the slotSortRoleChangedFromHeader()
method is called, the model already changed its sort role.
Therefore the check if the new role is identical to the old sort
role fails and no saving would occur.

With this partial revert the header will continue to change the
sort role itself (which allows a minor optimization of not double
sorting when also changing the sort order at the same time). The
method slotSortRoleChangedFromHeader() is then only responsible
for saving that change in the ViewProperties and telling the
SortBy menu in the user interface that the sorting has changed.

BUG: 480246
2024-04-09 05:53:41 +00:00
Heiko Becker 2df8de8fcb GIT_SILENT Update Appstream for new release
(cherry picked from commit 6c00620392)
2024-04-08 17:05:41 +02:00
Jin Liu d6beab23ec Change "Could not" to "Cannot" in error messages
To align with KIO
2024-04-06 17:13:10 +08:00
Amol Godbole 24268a4df5 KItemListController: don't create rubber band for a right click in an empty region
Rubber band was being incorrectly created for a right click in an empty region.
Handle this case in KItemListController::onPress().

BUG: 484881
2024-04-05 13:47:10 +00:00
Méven Car b9024361fa versioncontrol: make observer the sole owner of plugins
Also properly shutdown thread.
2024-04-04 13:39:47 +02:00
Méven Car 95e88ff1fc kitemlist: don't open dir when double-click on expand arrow
BUG: 484688
2024-04-04 09:44:52 +02:00
Jin Liu 7d49cb567b DolphinMainWindow: show a banner when the user presses the shortcut of a disabled action
Currently, there's no feedback when the user presses a shortcut of a disabled
action, e.g. cut / paste in a read-only directory. This patch shows a banner
in that case.

It's implemented by enabling a QShortcut for each disabled action. the
QShortcut is deleted when the action is enabled again.

The following actions are included:
cut
paste
rename
moveToTrash
deleteWithTrashShortcut
deleted
createDir
copyToOtherView
moveToOtherView
2024-04-03 12:34:50 +00:00
Nate Graham fc120fab3b Mark servicemenu items' KNS content as risky
By design, these items will run arbitrary shell scripts on the user's
machine. That makes them security-sensitive and risky. Mark them
accordingly so the user is informed of the risk.

Depends on https://invent.kde.org/frameworks/knewstuff/-/merge_requests/309
2024-04-02 08:35:05 -06:00
Eugene Popov efbae76afe Fix layout in Compact View mode for RTL
This MR fixes the layout in Compact View mode when items are grouped.
2024-03-30 12:21:58 +00:00
Eugene Popov 181c33a159 Fix selection marker for RTL
This MR makes the selection marker to be shown on the right in RTL mode.
2024-03-30 11:54:13 +00:00
Méven Car c57b0c422b Contextmenu: add a separator before vcs actions 2024-03-30 12:12:58 +01:00
Méven Car 9cadc790c7 Also use breeze style on macOS 2024-03-28 10:56:16 +00:00
Julius Künzel b30eabbee2 Use breeze style on Windows
Most KDE apps to the same
2024-03-28 10:56:16 +00:00
Felix Ernst 231200e680 Add comment to explain KColorSchemeManager 2024-03-28 10:55:07 +00:00
Julius Künzel d30c921e8f KColorSchemeManager only on Windows and macOS 2024-03-28 10:55:07 +00:00
Julius Künzel aeb704851d Use KColorSchemeManager
Fixes the dark theme on Windows
2024-03-28 10:55:07 +00:00
Tem PQD d1b06ab94f Touch up various user-visible strings
This improves consistency among wording. More clarity is achieved
by avoiding technical terms or terms with multiple meanings.

Notable changes:
-Specify full settings path: "Configure Dolphin > View > General"
in Show Hidden Files whatsThis
-Mention setting to hide files with application/x-trash MIME type
in "Show Hidden Files" whatsThis
-Mention Split View mode in "Copy/Move to Other View" whatsThis
-Reword "Activate Tab" actions to "Go to Tab" (Next, Previous,
Last, numbers)
-Add "Last Tab" iconText, consistent with "Next Tab" & "Previous
Tab"
-Update Split View whatsthis to explain how to tell which view is
"in focus" visually
-Replace "pane" with "view" in split view settings text, and
clarify tooltip text
-Reword "objects" to "items" in whatsThis texts
-Reword "find bar" to "search bar" in Search button whatsThis text
2024-03-27 23:52:18 +00:00
Eugene Popov 240d33ce17 Better support for RTL
This MR fixes some issues related to RTL scripts:
- wrong layout in Compact View mode
- broken horizontal scrolling in Icon View and Details View modes
- broken navigation with left and right arrow keys in Details View mode

BUG: 484012  
BUG: 449493
2024-03-27 10:28:15 +00:00
Julius Künzel b318ec31bb Fix right-mouse click crashes on Windows 2024-03-25 16:05:22 +00:00
Méven Car d270700c0e versioncontrol: Prevent a use-after-free in UpdateItemStatesThread
UpdateItemStatesThread kept a pointer reference to m_plugin whose
lifetime was tied to VersionControlObserver parents.
On application shutdown it could happen the thread is still running when
the Observer is destroyed.

Make the plugin pointer a weak reference, allowing to stop the thread
when the plugin is gone.

BUG: 477425
2024-03-24 11:55:54 +01:00
Eugene Popov bddf439124 Avoid wrapping text in the status bar
The size of the status bar isn't intended to display multiline text.
2024-03-23 21:02:24 +00:00
Eugene Popov b3ac8d783b KItemListView: Improve scrollToItem()
Prevent an item with a long name from scrolling to the right edge when navigating in Compact View mode.
2024-03-23 09:30:29 +00:00
Kai Uwe Broulik f97c61ffac DolphinContextMenu: Add hint that secondary app will be opened by middle click
Displays it in the menu like a keyboard shortcut. Otherwise nobody
will ever find this feature.
2024-03-18 17:48:28 +00:00
Nicolas Fella d7c1799057 Save 'Open Archives as Folders' setting
This got lost in 489b56b68b

BUG: 474500
2024-03-16 15:23:11 +01:00
l10n daemon script d7bdba870b SVN_SILENT made messages (.desktop file) - always resolve ours
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-03-16 01:17:09 +00:00
l10n daemon script d9c712fda8 GIT_SILENT made messages (after extraction) 2024-03-16 00:40:39 +00:00
Heiko Becker aa2574c9a3 GIT_SILENT Update Appstream for new release
(cherry picked from commit 8b7ae959be)
2024-03-15 21:25:29 +01:00
Benedikt Thiemer 1d4355f619 Add settings page for Panels
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-03-15 16:28:35 +00:00
Felix Ernst ad47e8dea1 Adapt testOpenInNewTabTitle() to upstream change
Prior to this commit the test failed because it expected a generic "inode-directory" icon for directories like "home" or "tmp" even though we have more specialised and nicer icons for these directories. I assume the test only used to pass because we were actually always using generic and therefore unhelpful icons for tabs.

This commit removes the hard-coded expectation of the "inode-directory" icon and instead compares the tab icon with the return value of KIO::iconNameForUrl(tabUrl).
2024-03-14 10:50:48 +00:00
Kai Uwe Broulik 3a7e54f4b4 Sync Dolphin icon with Breeze system-file-manager
The upstream Breeze variant colorizes based on the user's color scheme
which was lost when Dolphin switched to using its org.kde.dolphin icon.

BUG: 482581
FIXED-IN: 24.02.1
2024-03-13 17:18:21 +00:00
Felix Ernst f588a7d48b Animate most of the bars
When a bar is toggled visible this usually happens because the
user might want to use its functionality now. However, if bars
appear without animation or at a location the user is not
currently looking at, they might not notice that they have appeared
at all.

An animation makes it more likely that the user notices the change
and can then use the newly made visible component.

Another reason for animations for showing or hiding of components
is that it can be disorienting for users when panels or bars
suddenly appear or disappear without animation. There is no visible
movement then, so the user might not know what happened if they
didn't concentrate or blink at that moment. The newly appearing or
disappearing component might also displace other components which
can make it difficult to find what one was just looking at.

These bars animate now after this change:
- Search panel
- Filter bar
- Status bar

This is implemented by extracting the animation code from
SelectionMode::TopBar into a new abstract base class
AnimatedHeightWidget. This class is now also used in
SelectionMode::BottomBar and the animating code there was removed.

These bars are left in Dolphin that stay without animation:
- Menu bar (Would probably need to be implemented in KXmlGui)
- Tool bar (Would probably need to be implemented in KXmlGui)
- Tab bar (Needs a different appraoch because it already inherits
QTabBar and therefore can not inherit AnimatedHeightWidget)
2024-03-13 15:39:00 +00:00
Jin Liu 3a03f86b83 Enable custom view properties for special folders even if "remember for each folder" is off
Special folders include: search, trash, recents, timeline

Not including Downloads, although we have a custom view when "remember
for each folder" is on.

Rational: These folders really need the custom view. So even if the
user selects a global view for all "normal" folders, s/he probably
still want a custom view for special folders.
2024-03-12 09:43:44 +00:00