Commit graph

18634 commits

Author SHA1 Message Date
Frank Reininghaus fba053e984 KFileItemModel::insertItems(): guarantee O(N) run time complexity
This commit prevents repeated insertions of single items into the list
m_itemData, which shift all following items by one position and result
in O(N^2) worst case complexity for the entire function.

Moreover, the hash m_items is updated only for the items starting from
the first inserted/removed item to save some superfluous calculations
of hash values.

REVIEW: 110355
2013-05-22 18:27:44 +02:00
David Palser aea63beaf7 Improve Konqueror docs 2013-05-22 18:37:04 +03:00
l10n daemon script 78239c1ff7 SVN_SILENT made messages (.desktop file) 2013-05-22 03:31:12 +00:00
Eike Hein 360d8c703f Merge branch 'KDE/4.10' 2013-05-22 03:35:32 +02:00
Eike Hein f86bf88770 Preserve relative positions when changing icon size in containment case.
Icon positions are preserved by scaling the top-left coordinate pair
by the difference between the old and new grid sizes, or by recreating
the same logical column/row coordinate pair in the newly-calculated
grid if the align-to-grid option is enabled.

Icons that run out of bounds (or exceed the maximum column or row)
accumulate at the relevant screen edges. There is a precedent for
this behavior in the general align-to-grid code.

The left-to-right or right-to-left flow is taken into account when
scaling.

Smarter behaviors can be imagined as an optimization (e.g. identi-
fying groups of icons along screen edges and preserving their edge
alignment regardless of overall layout flow), but this simple scaling
implementation certainly beats throwing positions away altogether.

However, positions do still get thrown away in the non-containment
case - as the regular widget is capable of handling overflow via a
scrollbar, relayouting to exploit that felt better in practice.

CCBUG:182712
2013-05-22 03:35:00 +02:00
Josef Weidendorfer d3470ef4fb Merge branch 'KDE/4.10' 2013-05-21 18:56:38 +02:00
Josef Weidendorfer accd263635 fsview: fix for bug 318706 2013-05-21 18:51:05 +02:00
Eike Hein 03f308af8c Merge branch 'KDE/4.10' 2013-05-20 03:09:15 +02:00
Eike Hein ff68ed3e6a Preserve icon positions across theme changes. 2013-05-20 03:07:47 +02:00
Script Kiddy 9c821f47d3 SVN_SILENT made messages (.desktop file) 2013-05-18 10:15:39 +02:00
Script Kiddy 48145668a8 SVN_SILENT made messages (.desktop file) 2013-05-17 14:30:44 +02:00
Eike Hein da6c1903b0 Merge branch 'KDE/4.10' 2013-05-16 19:57:03 +02:00
Eike Hein e14314d5c0 Fix non-square icon scaling when items are selected. 2013-05-16 19:56:42 +02:00
Script Kiddy ef10e25ebd SVN_SILENT made messages (.desktop file) 2013-05-14 22:27:26 +02:00
Yuri Chornoivan 253c5f5294 Add David Palser to credits 2013-05-14 20:19:36 +03:00
David Palser a1bcb35685 Improve Konqueror docs 2013-05-14 20:05:35 +03:00
Script Kiddy d46c2d4b2d SVN_SILENT made messages (.desktop file) 2013-05-14 17:28:24 +02:00
Dawit Alemayehu 8e023ae9e5 - Factored out the Delete/Move To Trash action into own class.
- Updated both the Dolphin KPart and context menu to use the new
  DolphinRemoveAction class to manage "Delete/Move to Trash" actions.

See also https://git.reviewboard.kde.org/r/107509/.

REVIEW: 108802
2013-05-14 08:37:21 -04:00
Dawit Alemayehu 2102017a61 Merge remote-tracking branch 'origin/KDE/4.10' 2013-05-14 08:36:11 -04:00
Dawit Alemayehu 67d4ea9431 Updated the midnightcommander profile to use dolphinpart instead of konq_detailedlistview.
Bug reporter says it still does not fix the crash, but for me it at least restores a working
midnight commander profile.

CCBUG: 312093
REVIEW: 110421
2013-05-14 08:34:59 -04:00
Vishesh Handa 2c68fe33ca DolphinSearchBox setReadOnly: Update if either of the parameters change
This way when another read only query is added, the internal state is
changed and the search label gets updated.

REVIEW: 110324
BUG: 315796
FIXED-IN: 4.10.4
2013-05-13 14:40:39 +05:30
Vishesh Handa 6bcc70a185 Dolphin Places: Make it easier to drag and drop items
When doing a drop, a check is performed to see if it is within x pixels
from the top or x pixel from the bottom of the rect. If it is, then the
drop is considered a drop between items.

This x was fixed to qMax( 4, myStyleOption.padding ) which would
generally be 4. This is fine for some cases, but when the rectangle size
increases then this 4 pixels is not enough. Hence this 'x' is now being
set to 30% of the rectangle height.

By default the rectangle height is 20 pixels, so x is now 6 instead of 4
in the default case, which does make it slightly easier.

Also, this in-between-items check is only performed when moving from one
item to another. This is not good since if you enter the item and the
bottom, the indicator is shown, and then as to start moving it up it
stops showing, and then it should start showing again as you approach
the top edge.

Modified the code to run the check on every mouse drag event even if the
hovered item has not changed.

Both these changes combined make it much easier to drag and drop items.

REVIEW: 110342
2013-05-13 14:39:23 +05:30
David Faure 6072f58cf3 Dropping a link to the trash: don't move the full contents, just make a link
BUG: 319660
FIXED-IN: 4.10.4
2013-05-12 23:30:58 +02:00
David Faure e1428451f6 Fix crash when an xmlgui file has shortcuts for viewmode actions.
BUG: 299020
FIXED-IN: 4.10.4
2013-05-12 23:30:58 +02:00
Frank Reininghaus 4e9268f092 Make error message translatable 2013-05-12 10:38:22 +02:00
Frank Reininghaus 039bb2bad2 Merge remote-tracking branch 'origin/KDE/4.10' 2013-05-12 10:04:01 +02:00
Frank Reininghaus 5324fcd315 Hide the message widget when the URL changes
Most error messages are only relevant when trying to open a URL, e.g.,
they inform the user that opening the URL failed. After the next
successful URL change, these errors are not relevant any more.
Therefore, it makes sense to hide the message widget automatically to
prevent that the user is forced to close it manually.

BUG: 312872
FIXED-IN: 4.11.0
REVIEW: 110369
2013-05-12 10:01:01 +02:00
Frank Reininghaus 958f1871f1 Fix unit test failure
The recent commit 022b564831, which added
a few source files to kitemlistcontrollertest, caused a crash in that
test - an assert was hit because now a different virtual method was
called in one place (KStandardItemListView::initializeItemListWidget()),
and qobject_cast could not cast the 'item', which is of type
KFileItemListWidget, to its base class KStandardItemListWidget. Adding
the source file kfileitemlistwidget.cpp fixes this.

CCMAIL: ps_ml@gmx.de
2013-05-12 09:34:05 +02:00
Frank Reininghaus 5786895f14 Merge remote-tracking branch 'origin/KDE/4.10'
Conflicts:
	CMakeLists.txt
2013-05-11 18:47:58 +02:00
Frank Reininghaus 4cff8cf14d Update copyright year 2013-05-11 18:44:21 +02:00
Andrea Iacovitti 854fab5bfa Restore the old behavior where the icon is removed from the status bar
when starting loading a new page.

BUG: 319675
FIXED-IN: 4.10.4
2013-05-11 18:43:27 +02:00
Frank Reininghaus 4e438670d8 Update the required kdelibs version
Since commit b8c9aa55ff, kde-baseapps
calls KFileItem::isFinalIconKnown(), which has been added to KFileItem
in KDE 4.10.2. Update the required version accordingly in the
CMakeLists.txt, such that people with an older version get a CMake
error, rather than a build failure.
2013-05-11 18:36:42 +02:00
Patrick Spendrin 022b564831 fix building tests under windows 2013-05-10 23:03:23 +02:00
Daniel Faust f12345a57f Don't try to change the icon of the "sort" action menu if it doesn't exist
BUG: 255819
FIXED-IN: 4.10.4
REVIEW: 109966
2013-05-10 22:27:22 +02:00
David Palser a81ebe5d79 Improve Konqueror docs 2013-05-08 18:40:59 +03:00
Burkhard Lück 51be8ffdf5 &kregexpeditor; is in git now 2013-05-07 16:50:00 +02:00
Vishesh Handa 24609e78f8 Dolphin Places: React to Nepomuk system changes
Reload the places panel when Nepomuk starts up and shutsdown. This way
the user does not need to restart Dolphin to see the custom searches and
places after Nepomuk switches on.

BUG: 304918
REVIEW: 110323
2013-05-07 01:36:37 +05:30
David Faure 3c092af49b Merge remote-tracking branch 'origin/KDE/4.10' 2013-05-05 22:45:21 +02:00
David Faure 58fc982e28 Reimplement handling of Shift while showing menu without KModifierKeyInfo
Finding out whether shift is pressed initially can be done
with qApp->keyboardModifiers(), and finding out that the user is pressing
or release shift can be done with keyPressEvent/keyReleaseEvent.

This required to inherit from KMenu rather than having the KMenu
as a member.

KModifierKeyInfo is only implemented on X11, so this makes the code
more portable. If similar solutions can be found for other users of
KModifierKeyInfo, it will be deprecated in KF5.

REVIEW: 110303
2013-05-05 22:42:49 +02:00
David Faure 291966486c Fix konq's unittests by ensuring it picks up khtmlpart rather than kwebkitpart.
(the tests cast to KHTMLPart)
2013-05-05 22:41:59 +02:00
David Faure 712d12c143 Move bookmarks in reverse order so that their address remains valid.
BUG: 287038
FIXED-IN: 4.10.4
2013-05-05 10:01:05 +02:00
David Faure e0c4b4478b Add unittest for DnD of multiple bookmarks
When the bookmarks are selected from bottom to top, it works.
When they are selected from top to bottom, it makes addresses invalid,
and breaks.
More debugging tomorrow.
CCBUG: 287038
2013-05-05 01:07:52 +02:00
Script Kiddy 8b36ea1163 SVN_SILENT made messages (.desktop file) 2013-05-04 09:46:31 +02:00
David Palser 86f410b0a8 Fix typos and improve Konqueror docs 2013-05-03 17:33:35 +03:00
David Faure d78bdf9cef Remove erroneous double-quotes around %c in Exec line 2013-05-03 13:22:33 +02:00
David Faure 775b9487c6 Remove kgenericfactory include 2013-05-03 13:22:33 +02:00
Frank Reininghaus e5777f4c52 Merge remote-tracking branch 'origin/KDE/4.10' 2013-05-02 19:45:08 +02:00
Frank Reininghaus 2e123de94f Do not change the view URL if it is a symlink to the current directory
BUG: 302037
FIXED-IN: 4.10.3
REVIEW: 110233
2013-05-02 19:40:01 +02:00
Frank Reininghaus 572513a167 Use the same text color for selected hidden and non-hidden items
This fixes the problem that the names of selected hidden items are
unreadable with some color schemes.

BUG: 305734
FIXED-IN: 4.10.3
REVIEW: 110164
2013-05-02 19:28:10 +02:00
Frank Reininghaus cbb2a4cf47 Rename multiple files: Determine correctly if the name pattern is valid
The "Rename" button in the dialog should be enabled if and only if the
"new name" pattern is valid. This is the case if the pattern contains
exactly one sequence of '#', which will be replaced by digits.

This patch fixes the problem that
(a) A pattern that contains a single '#' is not considered valid, and
(b) A pattern without any '#' at all is not recognized as invalid.

BUG: 318942
FIXED-IN: 4.10.3
REVIEW: 110223
2013-05-02 19:23:38 +02:00