Commit graph

5211 commits

Author SHA1 Message Date
Elvis Angelaccio
c3de867622 Fix drop menu position with urlnavigator drops
Commit 1e251d2f6a in kio broke drop menus when dropping on the URL
navigator (menus show up in the DolphinView rather than the URL bar).
This happens because in DolphinView::dropUrls() we set `this` as the
widget passed to KJobWidgets::setWindow() (in DragAndDropHelper::dropUrls()).

We need to replace `this` with the actual widget that received the QDropEvent
and that can mapToGlobal() the relative pos of the drop event.
Unfortunately this widget is not KUrlNavigator itself, but one of its
KUrlNavigatorButton children (private class, not exported). So
unfortunately we need a new API in KIO that exposes this child widget.

Differential Revision: https://phabricator.kde.org/D6684
2017-07-27 15:49:52 +02:00
David Faure
cf273cd8a9 Bundle the XMLGUI files into qrc resources.
This is a step towards being able to run applications uninstalled,
and it simplifies deployment on non-linux.
2017-07-25 11:39:57 +02:00
Tobias C. Berner
286eaa7402 Add role for file creation time.
Summary: At least on FreeBSD UFS and ZFS support birthtimes of files.

Reviewers: #freebsd, #dolphin

Subscribers: #konqueror

Differential Revision: https://phabricator.kde.org/D6243

(cherry picked from commit d8061b4d9e)
2017-07-18 18:57:47 +02:00
Albert Astals Cid
ec3da79560 GIT_SILENT Upgrade KDE Applications version to 17.07.80. 2017-07-17 22:10:37 +02:00
Luigi Toscano
72ddf319b6 Merge remote-tracking branch 'origin/Applications/17.04' 2017-07-15 14:40:03 +02:00
Elvis Angelaccio
69c3eba0ad Fix knewstuff popup menu position on wayland
On Wayland we need to pass a parent to popup menus.
See https://community.kde.org/Guidelines_and_HOWTOs/Wayland_Porting_Notes#Popup_Menus

So we use the new setParentWidget() method from KNewStuff (introduced in
Frameworks 5.37).
2017-07-13 17:30:36 +02:00
Elvis Angelaccio
aa771da32d Add missing emit keywords
GIT_SILENT
2017-07-13 17:11:33 +02:00
Albert Astals Cid
df0741ce37 GIT_SILENT Upgrade KDE Applications version to 17.04.3. 2017-07-10 00:33:40 +02:00
Kai Uwe Broulik
da42a9eefb [Places Panel] Disallow editing devices
I introduced this bug when I changed the layout of the menu.
While it would be nice if one could edit devices, it is currently not possible
and would require significant re-engineering effort in Solid.

While the "Edit" menu works just fine, changes are not persisted.

Reviewed-By: emmanuelp

Differential Revision: https://phabricator.kde.org/D6294
2017-06-27 14:03:31 +02:00
Kai Uwe Broulik
0d2f86de18 Support "Deletion Time" role in Trash
This allows to sort by and show (both as additional data in icon view and column in column
view) deletion date of files in Trash.

CHANGELOG: It is now possible to view and sort by "Deletion Time" in Trash

BUG: 153492
FIXED-IN: 17.08.0

Differential Revision: https://phabricator.kde.org/D6269
2017-06-20 11:32:29 +02:00
Elvis Angelaccio
96eff55e75 Merge branch 'Applications/17.04'
* Applications/17.04:
  Change in "Open in new tab" feature in Dolphin
  Ignore drops-onto-items from invalid places items
  Revert "Increase smooth scrolling animation duration from 100 to 300 ms and set easing curve to InOutQuart"
2017-06-11 19:33:36 +02:00
Emirald Mateli
ec9f4ed17c Change in "Open in new tab" feature in Dolphin
Summary:
This patch proposes a change to the "open in new tab" feature.

The "open in new tab" feature will try to open selected items (files or folders) in a new tab, however, if there are no valid items to be opened in a new tab then nothing will happen, making it look like a bug. This patch adds the functionality that when there are no valid items(files or folders) to be opened in a new tab the current folder will be opened.

Test Plan:
1. Select a file(pdf, text, image etc) in Dolphin
2. Click on the "Open in new tab" toolbar button

Expected: since the file is not a valid target to open in a new tab, the current directory should be opened (as is the case where selection is empty)
Actual: Nothing happens after the button is pressed

Reviewed By: #dolphin, elvisangelaccio

Differential Revision: https://phabricator.kde.org/D6182
2017-06-11 19:28:39 +02:00
Elvis Angelaccio
c85ca11455 Ignore drops-onto-items from invalid places items
If the QMimeData object created by PlacesItemModel doesn't have any url
set (e.g. when dragging unmounted devices), it is detected by the
resulting DropJob as "drop raw data" because the mimeData has one format set
(the internalMimeType() used for dragging between places items).

This results in a crash because the DropJob schedules a PasteJob, but in
the meantime the QDrag from Dolphin ends and deletes the mimeData object
that was passed to the paste job.

The fix is to prevent the DropJob in the first place. We can introduce a
new internal mimetype that we use to blacklist drops-onto-items (while
still allowing drops-between-items). This way PlacesItemModel can set
the blacklist flag if the mimeData is being created without urls.

BUG: 373005
FIXED-IN: 17.04.3

Test Plan:
Drag and drop an unmounted device to another place item or the DolphinView, doesn't crash anymore.
Dropping the unmounted device between two places item still works.

Differential Revision: https://phabricator.kde.org/D5535
2017-06-11 19:11:56 +02:00
Elvis Angelaccio
a2f9e005a5 Drop unnecessary method 2017-06-06 19:16:34 +02:00
Albert Astals Cid
5246e19a40 GIT_SILENT Upgrade KDE Applications version to 17.04.2. 2017-06-05 20:52:31 +02:00
Elvis Angelaccio
883b908b4b Revert "Increase smooth scrolling animation duration from 100 to 300 ms and set easing curve to InOutQuart"
This reverts commit 58c5eae195.

Reasons against this change:

1. Scroll is now too fast with devices such as touchpads or trackpoints.
2. Scroll behavior is now inconsistent between Dolphin and other applications
   (e.g. the Plasma file dialog). Breeze's default animation duration is 100 ms.
3. Many people complained and this feature is currently not configurable. We
   should introduce a QStyle::SH_Widget_Animation_Duration hint that would
   allow us to not hardcode durations in Dolphin (i.e. respect whatever
   duration the users set in their QStyle).
   Proposal in https://codereview.qt-project.org/#/c/195712/

Reviewers: #vdg, #plasma, emmanuelp, davidedmundson

Reviewed By: #plasma, davidedmundson

Differential Revision: https://phabricator.kde.org/D5883
2017-05-31 14:07:16 +02:00
Elvis Angelaccio
1faef1c92d Introduce DolphinMainWindowTest
For now it contains a test case for the crash in bug #379135

CCBUG: 379135

Reviewers: emmanuelp, dfaure

Differential Revision: https://phabricator.kde.org/D5936
2017-05-27 10:28:09 +02:00
Elvis Angelaccio
4216c7e6ba Move non-exported code to a static library
This allows us to speed up the compilation because we don't need to
build twice the source files we use in the unit tests.

Test Plan: Builds, dolphin works and tests pass.

Reviewers: emmanuelp, dfaure

Differential Revision: https://phabricator.kde.org/D5935
2017-05-27 10:23:47 +02:00
l10n daemon script
4d9c396a98 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"
2017-05-25 04:21:54 +02:00
Luca Beltrame
95f9dc9de0
Merge branch 'Applications/17.04' 2017-05-22 23:32:36 +02:00
Anthony Fieroni
43da84eefc Correct searchbox, split view transitions between tabs
Differential Revision: https://phabricator.kde.org/D5864

BUG: 379135
BUG: 380032
FIXED-IN: 17.04.2

Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
2017-05-22 20:35:29 +03:00
Pino Toscano
588db66536 add few more Q_DECL_OVERRIDE 2017-05-12 00:07:15 +02:00
Hannah von Reth
e0f6b74226 Port tests from ecm_mark_as_test to ecm_add_test
Summary: This enables us to run the tests on Windows.

Reviewers: elvisangelaccio, kfunk, dfaure

Reviewed By: elvisangelaccio

Subscribers: #konqueror, #dolphin

Differential Revision: https://phabricator.kde.org/D5810
2017-05-11 20:05:25 +02:00
Elvis Angelaccio
f6095c86c1 Fix kfileitemmodeltest
Commit 6dcbb8127c introduced the isHidden role, update the test
accordingly.
2017-05-11 19:52:14 +02:00
Hannah von Reth
6c3cacd2b3 Remove define to disable exports
As the tests are now correctly linked to dolphinprivate we need the
actual export macro.
2017-05-11 12:33:15 +02:00
Elvis Angelaccio
0c8ef2977e Merge branch 'Applications/17.04' 2017-05-08 16:09:15 +02:00
Elvis Angelaccio
73f885f9d3 Don't ignore tag clicks in the tooltips
Summary:
Now that we can use the metadata widgets in the tooltips, we can also
open the tags:// url if the user clicks some tag in a tooltip.

The behavior is now consistent with the metadata widget in the information panel.

Test Plan: Click a tag when the metadata tooltip shows up.

Reviewers: emmanuelp

Subscribers: #konqueror, #dolphin

Differential Revision: https://phabricator.kde.org/D5658
2017-05-08 16:04:19 +02:00
Albert Astals Cid
e74910cfdf GIT_SILENT Upgrade KDE Applications version to 17.04.1. 2017-05-08 12:55:47 +02:00
Athanasios Kanellopoulos
65467d8019 Sort the tag-values alphabetically in the "Tags" column
Up until now tag-values have appeared unsorted in the Tags column
when the selected View Mode is "Details".
In older versions of Dolphin (in KDE4) the tags-values were
alphabetically sorted in the Tags column, which means that back then
this was the desired behavior.
This commit restores this functionality.

BUG: 377589
FIXED-IN: 17.04.1
REVIEW: 130068
2017-04-29 12:59:30 +02:00
Albert Astals Cid
de01efd9c3 GIT_SILENT Upgrade KDE Applications version to 17.04.0. 2017-04-12 13:36:03 +02:00
Kevin Funk
f2758ec9f7 Fix some compiler warnings 2017-04-07 16:13:27 +02:00
Albert Astals Cid
61382806a1 GIT_SILENT Upgrade KDE Applications version to 17.03.90. 2017-04-05 21:51:09 +02:00
Elvis Angelaccio
d8282e9294 Update name of the delete action in the .rc files
Summary:
Small regression in commit 68bb0ec22a. We need to use the new (standard)
name for the delete action, otherwise it won't be properly
enabled/disabled.

BUG: 378154
FIXED-IN: 17.03.90

Reviewers: emmanuelp

Differential Revision: https://phabricator.kde.org/D5248
2017-03-29 19:07:44 +02:00
Albert Astals Cid
a3920e3ae9 Merge remote-tracking branch 'origin/Applications/17.04' 2017-03-28 00:53:36 +02:00
Don Nguyen
4de29ad90d behavior change -> New Window opens with same URL
This patch will cause a "New Window" command to open a new window with
the URL from the active view.  Opening a new instance via launcher will
still open a new window with the URL specified in Startup settings.
This is the behavior in Windows 10 file explorer.  The advantage is this
gives the user a way to open a new window with the current URL(New
Window) as well as a new window with URL specified in Startup
settings(new instance) whereas currently, there isn't an easy way to
open a new window with the current URL.  You'd have to either open a new
window and copy and paste the URL, or open a new tab(which opens with
the same URL) and detach it.  I'd much rather have the new window open
with the current URL and if what I wanted was the Startup URL I could
easily get there as it's already bookmarked.

REVIEW: 129973
2017-03-28 00:52:29 +02:00
Albert Astals Cid
08661f3db1 GIT_SILENT Upgrade KDE Applications version to 17.03.80. 2017-03-20 23:42:30 +01:00
Albert Astals Cid
287e61b480 GIT_SILENT Upgrade KDE Applications version to 17.07.70. 2017-03-20 23:16:43 +01:00
Kai Uwe Broulik
12c4272912 [PlacesItemModel] Use QDir::homePath() instead of KUser().homeDir()
KUser does quite a lot of stuff under the hood and also calls getpwuid which might block with network login.

Differential Revision: https://phabricator.kde.org/D5049
2017-03-15 15:38:53 +01:00
Kai Uwe Broulik
429427767b Cleanup Places Panel context menus
Differential Revision: https://phabricator.kde.org/D4498
2017-03-14 22:42:07 +01:00
Marco Martin
db54c9b6ce make services GHNS work with store.kde.org
Summary:
point the knsrc providers file to the new kde store,
and port the servicemenuinstallation/servicemenudeinstallation
scripts to kf5 (they still were based on kde4-config)
BUG:376922

Test Plan:
downloaded some service menus (send to telegram, convert svg)
by the knewstuff ui available in the services page of config dialog
they get installed in the proper folder and work, uninstall works

Reviewers: #dolphin, emmanuelp

Reviewed By: #dolphin, emmanuelp

Subscribers: elvisangelaccio

Differential Revision: https://phabricator.kde.org/D5035
2017-03-14 12:25:31 +01:00
Elvis Angelaccio
68bb0ec22a Port to KStandardAction::DeleteFile
Summary:
It was introduced in kconfig 5.25 and it properly handles the shift+del
shortcut (together with kxmlgui >= 5.30). This allows us to drop the
custom delete shortcut as well as the shift+del workaround in
DolphinMainWindow.

Test Plan: Shift+Del still deletes files, without the 'ambiguous shortcut' warning dialog.

Reviewers: emmanuelp

Differential Revision: https://phabricator.kde.org/D5010
2017-03-13 19:40:07 +01:00
Sergey Kalinichev
042b0c8409 Revert "Make "show filter bar" a toggle action"
This reverts commit edf8e57373.

See https://git.reviewboard.kde.org/r/129662 for discussion
2017-03-12 11:48:12 +03:00
Elvis Angelaccio
e8eb6a7f2c Show pointing hand cursor when hovering spaceinfo bar
Summary:
This improves the discoverability of the diskspace menu, a feature
otherwise almost impossible to find.

Reviewers: gregormi, emmanuelp

Differential Revision: https://phabricator.kde.org/D4873
2017-03-10 18:56:58 +01:00
Kai Uwe Broulik
b79ea9f5e4 Pass application name and icon to KRun
Otherwise this results in the generic executable icon as bouncy cursor.

Differential Revision: https://phabricator.kde.org/D4823
2017-03-08 16:52:15 +01:00
Kai Uwe Broulik
6dcbb8127c Honor KFileItem isHidden() in view
Instead of just assuming hidden files always start with a "."
The items were already filtered out but when showing hidden files they weren't painted at reduced opacity.

Differential Revision: https://phabricator.kde.org/D4978
2017-03-08 14:38:46 +01:00
Vishal Rao
58c5eae195 Increase smooth scrolling animation duration from 100 to 300 ms and set easing curve to InOutQuart
Summary:
The current animation duration for smooth scrolling is 100 ms which feels as if there is no smooth scroll animation in the first place. Bumping this up to something like 300 ms seems to make the scrolling actually appear smooth.

Also, based on diff comments the easing curve is set to InOutQuart.

Test Plan: Built this change locally and tried scrolling a folder with many items both single step mouse wheel and also larger steps of the mouse wheel.

Reviewers: elvisangelaccio, emmanuelp

Reviewed By: emmanuelp

Subscribers: htietze, colomar, andreask, emmanuelp, elvisangelaccio

Differential Revision: https://phabricator.kde.org/D4560
2017-02-26 23:48:27 +01:00
l10n daemon script
cc07b135d4 GIT_SILENT made messages (after extraction) 2017-02-24 03:49:52 +01:00
David Edmundson
f72dadb0c1 Work round missing right click event after dismissing a context menu
There is a bug that can happen in the following situation:
- user right clicks to open a menu

- that context menu grabs input

- the QGrabphicsView also notes the mouse was pressed, but not that the
mouse was released because it doesn't have mouse events any more

- when a user clicks to dismiss the menu and then without moving clicks
quickly again to send, we don't get another press event because the
QGraphicsScene still thinks the mouse is pressed from the first time the
context menu was shown and
QGraphicsScenePrivate::lastMouseGrabberItemHasImplicitMouseGrab still
points to the old object.

This is a known bug in QGraphicsView and you can see
QGraphicsScenePrivate::sendMouseEvent has a workaround to reset the
lastMouseGrabberItemHasImplicitMouseGrab on mouse moves, with the
comment: "This is a temporary fix for until we get proper mouse
grab events."

Realistically this isn't going to happen in QGraphicsView now.

We do get a double click event though. By checking for double click
events we can grab those missed clicks. It doesn't cause any other side
effects because normally the context menu will fire after the first
click and this rarely gets processed.

REVIEW: 129960
2017-02-20 16:41:27 +00:00
Emmanuel Pescosta
0bdd8e0b05
Disallow executing Dolphin as root on Linux
Basically a copy of commit kate/9adcebd3c2e476c8a32e9b455cc99f46b0e12a7e which was
written by Martin Grässlin.
2017-02-19 02:39:52 +01:00
Emmanuel Pescosta
bea831da52
Added .kdev4 to gitignore 2017-02-18 23:00:48 +01:00