Commit graph

7062 commits

Author SHA1 Message Date
Felix Ernst
e321a9cc3e Merge branch 'release/22.04' 2022-04-09 11:27:42 +02:00
l10n daemon script
c4092e9047 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"
2022-04-09 01:51:05 +00:00
Felix Ernst
3bf471e02a Add symmetric padding on right side of details view
There have been some reports that users were unable to figure out
that the padding on the left of the left-most "name" column can be
used for deselecting or for dropping file items. All of these
reports were by people using a Dolphin version in which that
padding was way too narrow because of a regression (that has since
been fixed). Nonetheless this highlights the potential problem that
some users might be unable to notice/figure out the usefulness of
the left padding.

This commit adds a similar area on the right side of the view when
the column widths are set automatically by Dolphin. The width of
the right padding column mirrors the width of the left padding
column when sized automatically. Both can manually be hidden or
resized similarly to resizing other columns.

There are various usability advantages to having this padding by
default on both sides of the view and not only on the left:
- The right margin is more discoverable since the item highlight
    ends right before the padding column
- Less mouse travel time to reach either of the areas
- More than double the likelihood of users figuring out the
    advantages of these padding areas for deselecting or dropping
- More visual symmetry

I had suggested also having this kind of right padding even before
the initial implementation of the left padding. The contributor
implementing it was in favour of it. It only wasn't implemented
because the contributor said it was impossible without a lot of
work. Turns out adding two characters at the right position seems
to suffice in most ways.

This commit does not contain the string change of renaming "Leading
Column Padding" to "Column Padding" (since it changes two paddings
now) to not infringe on the string freeze.

BUG: 452273
2022-04-08 11:44:58 +02:00
l10n daemon script
e50ff16e68 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"
2022-04-07 02:58:35 +00:00
l10n daemon script
9a334caf7d 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"
2022-04-07 01:45:45 +00:00
Heiko Becker
2a3b731ca2 GIT_SILENT Upgrade release service version to 22.03.90. 2022-04-05 21:19:50 +02:00
l10n daemon script
50c3be0ca0 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"
2022-04-05 02:58:27 +00:00
l10n daemon script
989d19c126 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"
2022-04-05 01:51:00 +00:00
Felix Ernst
86df5ae994 Merge branch 'release/22.04' 2022-04-04 14:42:02 +02:00
Felix Ernst
2de8f4c0fb Improve details mode ctrl-press rubberband creation
Since d383961719 dragging the
highlighted row of already selected items in the details view mode
will begin a drag operation of all selected items.

As a unintended side-effect of this change, dragging the row of a
previously unselected item while holding the control key would also
begin a drag operation.

After this commit, dragging the row of a previously unselected item
while holding the control key in details view mode will instead
create a rubberband. Ctrl-dragging the item's icon or text directly will drag the item as expected.

With this change, using multiple rubberbands to select scattered
items among a list of items should be as convenient as it was
previously.

BUG: 452181
2022-04-04 12:39:37 +00:00
Felix Ernst
fc965a725c Merge branch 'release/22.04' 2022-04-04 12:59:29 +02:00
Felix Ernst
a4f9974daf Revert "KStandardItemListWidget: handle RtL drawing properly"
This reverts commit 3ce9d1d19e.
This reverts commit ddba4f5fd8.

Aside from the two bugs mentioned below, this also fixes another
regression: The spacing on the left of the view does now once again
follow the size of its column header.

BUG: 451704
BUG: 451341
2022-04-04 10:54:42 +00:00
Ben Cooksley
836690829d Baloo is available on Linux/FreeBSD only 2022-04-03 20:09:57 +12:00
Felix Ernst
b3add25694 Refactor DolphinContextMenu so its actions are retrievable
This mostly red MR should have no visible effect. It is part of my work towards !273.

There are two calls necessary to open the DolphinContextMenu:
One to construct it and one to execute/show it.

Before this commit, the actual populating of the ContextMenu was
done on execute. This meant that the actions of the ContextMenu
couldn't be looked at or changed without first showing the Menu
to the user. It also meant that the construction itself didn't
actually do much constructing/populating at all which might seem
a bit unintuitive.

This commit changes this behaviour so the DolphinContextMenu is
actually populated fully on construction. The executing/showing of
the ContextMenu now does just that and nothing more.

Previously, some actions in the context menu were actually not
wired up to anything and instead the DolphinContextMenu or the
DolphinMainWindow executed some code after the user had clicked
such a dummy action from the ContextMenu. Now all the actions are
properly constructed beforehand and no special handling is
necessary when the ContextMenu hides itself.

This commit removes the pos parameter from the DolphinContextMenu
constructor. This parameter contained the position where the Menu
would be shown later. This information isn't necessary to have on
construction and was already part of the exec(pos) call in the
first place. The variable m_pos that stored the value is removed.

This commit also removes a "customActions" functionality that can
supposedly be used to add further custom actions to the
DolphinContextMenu but this functionality isn't ever used
anywhere so its usefulness is questionable. It also wouldn't be
difficult to re-add this functionality if it was ever required for
something.

This commit also addresses an old TODO in dolphinpart.cpp that
asked for the calls for opening the DolphinContextMenu to actually
contain the information for which items the DolphinContextMenu is
supposed to be constructed. Before this, only the item that was
directly clicked was transmitted and then DolphinContextMenu
retrieved the currently selected set of items by itself.
It makes more sense that DolphinContextMenu would be informed on
construction which items it is supposed to show context actions
for.

Most of this is necessary so we are able to show the contextual
actions anywhere else than in the ContextMenu in the future.

I am targeting 22.08 with this MR because it makes no sense to merge a refactor for the upcoming release already.
2022-04-02 17:00:58 +00:00
Alexander Lohnau
0c38a27cc0 Install servicemenus in new install location
Since KIO 5.85, this new file location is preferred over the
KServiceTypeTrader results.

With this change, single desktop files from the KDE store are installed
in the correct location. If however a custom install script is used,
developers need to adjust their scripts.

Because the "kio/servicemenus" locations is different than the one
KAuthorized allows by default, we have to mark the file as executable.

Task: https://phabricator.kde.org/T14543
2022-04-01 17:55:11 +00:00
Felix Ernst
0e15ff7f14 Merge branch 'release/22.04' 2022-04-01 12:17:25 +02:00
George Florea Bănuș
29383426d6 Fix tooltip closing while mouse moves over item
The itemHovered signal is emitted whenever the mouses moves causing the
tooltip to close.
2022-04-01 10:12:05 +00:00
l10n daemon script
356ccd21b4 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"
2022-04-01 02:03:03 +00:00
Nicolas Fella
3ccc0420a6 Merge branch 'release/22.04' 2022-04-01 00:13:19 +02:00
Nicolas Fella
1041b52c7a Don't crash when mountpoint is not found
findByPath may return a nullptr, in that case don't access it

BUG: 452100
2022-03-31 23:24:59 +02:00
Kai Uwe Broulik
64ffcdad4f [ToolTipManager] Create DolphinFileMetaDataWidget on-demand again
This reverts b7fbd19a76 but creates the
widget only once and then reuses it.

However, ownership of a parent-less widget is transferred to the
`KToolTipWidget` but since we first request metadata, then show the
tooltip (or won't if the mouse moved on since), we cannot rely on
the `KToolTipWidget` exclusively.

Instead, when we still delete the widget ourself until we have
shown the `KToolTipWidget` once at which point it will handle the
life time for us.

This fixes parenting the widget to `DolphinView` which would make
it appear as a broken line in the top left of the window.
2022-03-31 14:22:24 +02:00
l10n daemon script
a8966d230c 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"
2022-03-29 03:51:20 +00:00
l10n daemon script
c7531ba749 GIT_SILENT made messages (after extraction) 2022-03-29 03:00:38 +00:00
l10n daemon script
447c35868c 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"
2022-03-29 02:21:23 +00:00
l10n daemon script
d658c7e090 GIT_SILENT made messages (after extraction) 2022-03-29 00:58:32 +00:00
Kai Uwe Broulik
df75b31304 Merge branch 'release/22.04' 2022-03-28 17:09:52 +02:00
Kai Uwe Broulik
466fa20f7f [ViewProperties] Apply better default roles for special views
This adds the following additional special view modes (some of them were
already there but broken because they weren't applied, or were
changed to have better defaults now that they are actually used):

* Recent Files and Recent Documents, timeline:
  Details view with grouped sorting enabled and Name, Path, Modified
* Search For Images:
  Icon view with Name, Dimensions, Date Time of the Picture
* Search For Audio:
  Details view with Name, Artist, Album, Duration
* Search For Videos:
  Icon view with just Name
* Search For everything else, including Documents:
  Details view with Name, Path, Modified
* Trash:
  Details view with Name, (Original) Path, Deletion Time

BUG: 400969
BUG: 340393
BUG: 186376
FIXED-IN: 22.04.0
2022-03-28 14:56:49 +02:00
Kai Uwe Broulik
e304aa79b4 [ViewProperties] Consider existing roles in convertAdditionalInfo
Otherwise all default overrides for roles we perform in this class are moot.
2022-03-28 14:52:15 +02:00
Nicolas Fella
b7fbd19a76 Reuse metadata widget when creating tooltips
Currently any time we hover the mouse over a file we create a new DolphinFileMetaDataWidget (even when we don't actually show a tooltip).

That is quite wasteful

Instead we can reuse the existing instance and only change the URL
2022-03-25 11:18:46 +01:00
Steffen Hartleib
f509d41baf Using the gesture recognizer from KWidgetsAddons
Using the gesture recognizer from KWidgetsAddons, so that the source code for the gestures is only in one place
2022-03-23 22:00:31 +00:00
Felix Ernst
45af4bc0e0 Allow for more explicit button labels
This commit allows us to very explicitly refer to any set of items
in text. This way buttons don't need to be labeled generically
like "Permanently Delete" but can be enriched to be labeled
"Permanently Delete "FileName"" or "Copy 7 Selected Folders" or
"Copy 6 Files" or "Rename "file1", "file2", "file3", "file4" and
"folder5"".

This commit tries to save translators a lot of work by using a
translation puzzle. This might be problematic for some languages.
The alternative on the other hand would mean that any label which
wants to be explicit would need to have over 10 translations just
for one label which seems quite bad as well.

A fallback is to be implemented for languages that can't really
accommodate for any specific word puzzle. This is explained in the
documentation.
2022-03-23 15:03:32 +00:00
l10n daemon script
0a9c018497 GIT_SILENT made messages (after extraction) 2022-03-23 02:46:59 +00:00
l10n daemon script
49726ad591 GIT_SILENT made messages (after extraction) 2022-03-23 00:58:56 +00:00
Nicolas Fella
1cd00946c4 Port to target-based ecm_add_app_icon 2022-03-21 20:43:31 +01:00
Nicolas Fella
05132a2f1d Port to target-based ecm_add_app_icon 2022-03-20 20:16:04 +01:00
l10n daemon script
109eb3334d 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"
2022-03-20 03:39:12 +00:00
l10n daemon script
3c1ebfcfb1 GIT_SILENT made messages (after extraction) 2022-03-20 02:49:46 +00:00
l10n daemon script
fa72ae8577 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"
2022-03-20 02:14:36 +00:00
l10n daemon script
990c6e7aa5 GIT_SILENT made messages (after extraction) 2022-03-20 00:55:37 +00:00
Kai Uwe Broulik
3fab07c967 Prettify labels in back/forward button menu
Adds a compact label based on the closes place similar to the
address bar (e.g. instead of /home/user/Pictures/Holidays it will
show Pictures/Holidays), unless "show full path in address bar"
is enabled.

Also, add the folder icon
2022-03-18 19:57:13 +01:00
Laurent Montel
c6bccbf6de Fix some compile error against qt6 2022-03-15 13:30:13 +01:00
Albert Astals Cid
db16b7d1cd GIT_SILENT Upgrade release service version to 22.07.70. 2022-03-12 12:57:14 +01:00
Albert Astals Cid
f9baca9288 GIT_SILENT Upgrade release service version to 22.03.80. 2022-03-12 12:20:04 +01:00
Anthony Fieroni
94acf0ba0b Pass dolphin view as parent widget to plugins
Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
2022-03-11 08:20:09 +02:00
l10n daemon script
ecda1e9500 GIT_SILENT made messages (after extraction) 2022-03-11 00:51:19 +00:00
l10n daemon script
7c6a34222c 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"
2022-03-07 01:44:55 +00:00
l10n daemon script
3366f62b09 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"
2022-03-05 01:48:28 +00:00
l10n daemon script
62f1897e59 GIT_SILENT made messages (after extraction) 2022-03-05 00:47:08 +00:00
Kai Uwe Broulik
df79f5b477 [Places Panel] Reject drops on unwritable locations
Indicate that you cannot drop here.

Avoids a "Cannot drop file" or "not supported" error when
dropping files ontop of a search or timeline URL.

It is done in Dolphin rather than the library as there we cannot
assume what a consumer might be doing with the drop.
2022-03-04 18:25:38 +00:00
David Edmundson
b6e03e05f4 Fix issue where newly inserted items end up in the wrong directory
If we have directory "a" and "a/b" and expand both, then collapse "a" we
tell KDirWatcher to stop watching both these directories.

However, KDirWatcher keeps them in the listersCurrentlyHolding list as
well as the listersCurrentlyListing list and will still notify of
changes. If a new file appears in "a/b/" we will still get change
notifications.

When dolphin processes these changes we cannot find the relevant parent
node. It then gets confused and inserts the item into the root directory
from the POV of the model notifications. When we then open the relevant
folder the model knows a node with that URL exists and fails to add it
correctly.

This can also be reproduced by continually downloading files into a
subdirectory tree and rapidly expanding and collapsing folders a few
levels deep.
2022-03-04 10:57:16 +00:00