]> cloud.milkyroute.net Git - dolphin.git/log
dolphin.git
12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Tue, 23 Apr 2013 17:40:42 +0000 (19:40 +0200)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
plasma/applets/folderview/folderview.cpp

CCMAIL: ignat.semenov@blue-systems.com

@Ignat: We've been following a merge-based approach in kde-baseapps
for quite some time now, see

http://lists.kde.org/?t=134744909400005&r=1&w=1

It would be nice if you could merge KDE/4.10 into master after any
non-trivial changes in folderview to prevent that others have to
figure out how to resolve the merge conflicts. Thanks!

12 years agoDisable Find/Replace in the "rename inline" line edit
Frank Reininghaus [Tue, 23 Apr 2013 17:31:08 +0000 (19:31 +0200)]
Disable Find/Replace in the "rename inline" line edit

These actions do not work correctly because renaming is considered
finished as soon as the line edit loses focus, which happens when the
"Replace" dialog pops up.

BUG: 317772
FIXED-IN: 4.10.3

12 years agoDo not dereference null pointer in KItemListViewAccessible
Frank Reininghaus [Tue, 23 Apr 2013 17:25:52 +0000 (19:25 +0200)]
Do not dereference null pointer in KItemListViewAccessible

BUG: 316285
FIXED-IN: 4.10.3

12 years agoComment out assertion to fix a crash when filtering in Icons/Compat View
Frank Reininghaus [Mon, 22 Apr 2013 19:36:57 +0000 (21:36 +0200)]
Comment out assertion to fix a crash when filtering in Icons/Compat View

I'm not sure yet if there is a problem somewhere else in the code. For
the time being, I think it's better to replace the assert by a TODO
comment to prevent that users find out the hard way that there is
something that we're not quite sure about.

BUG: 317827
FIXED-IN: 4.10.3

12 years agoAlways determine icons for the visible items first
Frank Reininghaus [Mon, 22 Apr 2013 19:21:31 +0000 (21:21 +0200)]
Always determine icons for the visible items first

When entering a folder, KFileItemModelRolesUpdater has not yet been
informed about the visible index range by the view when it tries to
determine icons synchronously. This resulted in the problem that it
tried to determine icons for all items in random order, and some visible
icons were somtimes still unknown after the "synchronous icon loading"
timeout of 200 ms.

This commit tries to improve the situation by loading icons starting
with the first item in increasing order. This should make it less likely
that some visible items still have unknown icons after 200 ms.

BUG: 316129
FIXED-IN: 4.10.3
REVIEW: 109843

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Sat, 20 Apr 2013 07:44:11 +0000 (09:44 +0200)]
SVN_SILENT made messages (.desktop file)

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Fri, 19 Apr 2013 11:27:40 +0000 (13:27 +0200)]
SVN_SILENT made messages (.desktop file)

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Aurélien Gâteau [Fri, 12 Apr 2013 14:31:03 +0000 (16:31 +0200)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoFix moving image while transitioning to hover pixmap
Aurélien Gâteau [Thu, 11 Apr 2013 09:26:16 +0000 (11:26 +0200)]
Fix moving image while transitioning to hover pixmap

See: http://youtu.be/OMYO0U0kSL0

REVIEW: 109960
FIXED-IN: 4.10.3

12 years agoMove Bluetooth places items to Device section of places list
Kai Uwe Broulik [Tue, 2 Apr 2013 14:07:29 +0000 (16:07 +0200)]
Move Bluetooth places items to Device section of places list

REVIEW: 109622
BUG: 301276

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Luca Beltrame [Wed, 27 Mar 2013 15:50:22 +0000 (16:50 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
plasma/applets/folderview/folderview.cpp

12 years agoUpdate icon if it couldn't be determined upfront (.desktop file on slow mount)
David Faure [Wed, 27 Mar 2013 13:32:08 +0000 (14:32 +0100)]
Update icon if it couldn't be determined upfront (.desktop file on slow mount)

This requires an up-to-date kdelibs >= 4.10.

CCBUG: 290666

12 years agoImprove grouping by name for non-ASCII file names
Frank Reininghaus [Tue, 26 Mar 2013 00:21:00 +0000 (01:21 +0100)]
Improve grouping by name for non-ASCII file names

This commit prevents that all non-ASCII letters which are not umlauts
are grouped in a single group "Others", and that the joint group of
an ASCII letter and the associated umlaut in some locales is called
"Others" if there is only the umlaut in the group.

BUG: 315569
REVIEW: 109457
FIXED-IN: 4.10.2

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Aurélien Gâteau [Thu, 21 Mar 2013 13:12:28 +0000 (14:12 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

@emmanuel: this merge includes your fix from
https://git.reviewboard.kde.org/r/109488/ . I assume this is not a
problem.

CCMAIL: emmanuelpescosta099@gmail.com

12 years agoFix transition between m_pixmap and m_hoverPixmap
Aurélien Gâteau [Thu, 21 Mar 2013 13:06:07 +0000 (14:06 +0100)]
Fix transition between m_pixmap and m_hoverPixmap

The default SourceOver composition mode of QPainter cannot be used
to interpolate between two images, we must use intermediate buffers
to perform the interpolation and blend the result on the widget.

More details are available in the review request.

REVIEW: 109614
FIXED-IN: 4.10.2

12 years agoRefresh all expanded directories too, when reloading a directory.
Emmanuel Pescosta [Sun, 17 Mar 2013 19:13:55 +0000 (20:13 +0100)]
Refresh all expanded directories too, when reloading a directory.

BUG: 295300
FIXED-IN: 4.10.2
REVIEW: 109488

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Weng Xuetian [Sat, 16 Mar 2013 04:47:11 +0000 (00:47 -0400)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agouse plain text for information panel
Weng Xuetian [Sat, 16 Mar 2013 04:43:22 +0000 (00:43 -0400)]
use plain text for information panel

REVIEW: 109129
BUG: 315693
CCBUG: 262464

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Albert Astals Cid [Fri, 15 Mar 2013 20:55:53 +0000 (21:55 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
dolphin/src/dolphin.desktop
konq-plugins/searchbar/searchbar.desktop
konqueror/settings/kio/proxy.desktop
konqueror/settings/kio/uasproviders/chrome10onwinnt51.desktop
konqueror/settings/kio/uasproviders/chrome50oncurrent.desktop
konqueror/settings/kio/uasproviders/googlebot.desktop
konqueror/settings/kio/uasproviders/ie60oncurrent.desktop
konqueror/settings/kio/uasproviders/op90oncurrent.desktop
konqueror/settings/kio/uasproviders/safari20.desktop
konqueror/sidebar/default_entries/history.desktop
konqueror/sidebar/default_entries/root.desktop
konqueror/sidebar/history_module/kcmhistory.desktop

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Fri, 15 Mar 2013 13:57:44 +0000 (14:57 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Fri, 15 Mar 2013 09:09:23 +0000 (10:09 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Thu, 14 Mar 2013 23:28:40 +0000 (00:28 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoImprove handling of filtered items when folders are deleted/collapsed
Frank Reininghaus [Thu, 14 Mar 2013 23:23:44 +0000 (00:23 +0100)]
Improve handling of filtered items when folders are deleted/collapsed

If an expanded folder with filtered children is collapsed or removed,
and the parent-child relationship cannot be determined by parsing the
URLs, this patch makes sure that the filtered children do not reappear
when the filter bar is cleared.

REVIEW: 109455

12 years agoPrevent accidental deletion of home directory in Terminal Panel
Frank Reininghaus [Thu, 14 Mar 2013 23:12:33 +0000 (00:12 +0100)]
Prevent accidental deletion of home directory in Terminal Panel

The protection against unwanted execution of "rm -rf" when changing the
directory while entering the command did not work if there was never any
automatic "cd" command sent to the terminal before.

This patch ensures that Terminal Panel's member m_clearTerminal is
false after the initialization of the panel, such that the protection is
effective after that.

BUG: 316300
FIXED-IN: 4.10.2
REVIEW: 109431

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Thu, 14 Mar 2013 16:08:18 +0000 (17:08 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Thu, 14 Mar 2013 08:38:14 +0000 (09:38 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoFix recent regressions when "Sort by Type" is used
Frank Reininghaus [Tue, 12 Mar 2013 18:26:36 +0000 (19:26 +0100)]
Fix recent regressions when "Sort by Type" is used

This commit ensures that the mime types and icons are determined
synchronously for 200 ms when "Sort by Type" is enabled.

REVIEW: 109344

12 years agoDo not skip rows in when clicking the empty area of the scroll bar
Frank Reininghaus [Mon, 11 Mar 2013 17:18:25 +0000 (18:18 +0100)]
Do not skip rows in when clicking the empty area of the scroll bar

The height of the header widget must be subtracted from the view's
height in Details View to determine the "pageStep" for the scroll bar.

BUG: 315619
FIXED-IN: 4.10.2
REVIEW: 109210

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Sun, 10 Mar 2013 17:31:23 +0000 (18:31 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
dolphin/src/kitemviews/kfileitemmodel.cpp

12 years agoRemove filtered children if the parent folder is collapsed
Frank Reininghaus [Sun, 10 Mar 2013 17:26:20 +0000 (18:26 +0100)]
Remove filtered children if the parent folder is collapsed

This is analogous to commit e053ecdcd57cc39fdcbc314fc8dd22c8b9dbdd4f,
which fixes the same problem for the case that the parent folder is
deleted.

BUG: 316335
FIXED-IN: 4.10.2
REVIEW: 109343

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Thu, 7 Mar 2013 22:00:22 +0000 (23:00 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoRemove duplicated slot
Frank Reininghaus [Thu, 7 Mar 2013 21:56:52 +0000 (22:56 +0100)]
Remove duplicated slot

The slot DolphinViewContainer::focusView(), introduced in commit
2f0114730d1f5c3dfaee833300168b8e16b068f2, is actually unnecessary
because DolphinViewContainer::requestFocus() provides the same
functionality already.

12 years agoUse a consistent way to group files by "Date"
Daniel Kreuter [Sun, 3 Mar 2013 17:20:59 +0000 (18:20 +0100)]
Use a consistent way to group files by "Date"

Before this change, files were grouped by calendar weeks if they were
modified in the current month and ignoring the "first week day setting",
but by the actual distance measured in multiples of seven days if the
were modified last month.

This not only fixes the "ignores first week day" bug, but also the
problem that the inconsistencies in the algorithm could lead to a broken
grouping in the first days of a month (see screenshot in the review
request).

BUG: 181337
FIXED-IN: 4.11
REVIEW: 108667

12 years agoRemoved everything related to m_expandedParentsCountRoot ->
Emmanuel Pescosta [Wed, 27 Feb 2013 18:56:55 +0000 (19:56 +0100)]
Removed everything related to m_expandedParentsCountRoot ->
This concept is not needed anymore because of the new "determine parents and
expansion levels" approach

Side effect:
Enables treeview for trash, ...

REVIEW: 109191

12 years agoBig Thanks to Frank Reininghaus, who helped me a lot with these
Emmanuel Pescosta [Wed, 27 Feb 2013 12:35:20 +0000 (13:35 +0100)]
Big Thanks to Frank Reininghaus, who helped me a lot with these
changes! :)

* Fixed the "Network browser" and "timeline" issues, by using the
KDirLister's itemsAdded(KUrl,KFileItemList) signal -> Use the
given Url to define the parent-child relationship.

* Changed the name of the slot "slotNewItems" to "slotItemsAdded"
for consistency with the signal.

* Use a QHash<KFileItem, ItemData*> instead of a QSet<KFileItem> to
store the filtered data (needed to keep the O(1) lookup for filtered
KFileItems in slotItemsDeleted + needed to fix bug 311912 "After
erasing a filter, some thumbnails randomly disappear")

* Made the determination of the "expandedParentsCount" slightly
simpler - just adding 1 to the parent's level (Also needed to fix the
"Network browser" and "timeline" issues)

FIXED-IN: 4.11.0
REVIEW: 109180
BUG: 304565
BUG: 311912
BUG: 312890
BUG: 315593

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Fri, 22 Feb 2013 16:54:48 +0000 (17:54 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Fri, 22 Feb 2013 05:41:23 +0000 (06:41 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoReturn the focus from the filter bar to the view if Enter is pressed
Jens Rutschmann [Tue, 19 Feb 2013 21:42:55 +0000 (22:42 +0100)]
Return the focus from the filter bar to the view if Enter is pressed

BUG: 297140
FIXED-IN: 4.11.0
REVIEW: 109020

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Tue, 19 Feb 2013 14:45:44 +0000 (15:45 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
dolphin/src/tests/kfileitemmodeltest.cpp
lib/konq/konq_operations.cpp

12 years agoFix crash when clicking an action in context menu for a removed device
Frank Reininghaus [Mon, 18 Feb 2013 22:58:26 +0000 (23:58 +0100)]
Fix crash when clicking an action in context menu for a removed device

Devices can be added and removed while the context menu is open.
Sfter an action has clicked that needs to access a device, we therefore
have to check if its position in the model has changed, and more
importantly, if it is still there at all in order to prevent a crash.

BUG: 315298
FIXED-IN: 4.10.1
REVIEW: 108989

12 years agoRemove items from m_filteredItems if their parent is deleted
Frank Reininghaus [Mon, 18 Feb 2013 22:49:33 +0000 (23:49 +0100)]
Remove items from m_filteredItems if their parent is deleted

Fixes the problem that filtered children of expanded deleted folders
reappear if the filter is cleared.

BUG: 315210
FIXED-IN: 4.10.1
REVIEW: 108976

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Sun, 17 Feb 2013 11:17:01 +0000 (12:17 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoAnother fix for KItemListControllerTest::testMouseClickActivation()
Frank Reininghaus [Sun, 17 Feb 2013 11:12:52 +0000 (12:12 +0100)]
Another fix for KItemListControllerTest::testMouseClickActivation()

One one machine, I see that changing the global "single click" setting
fails. I don't know why that is the case, but I think we should better
just skip the test in that case and not hang forever.

12 years agoUpdate Dolphin version to 2.2.60
Frank Reininghaus [Sun, 17 Feb 2013 10:36:03 +0000 (11:36 +0100)]
Update Dolphin version to 2.2.60

12 years agoPrevent repeated re-layouting of all items while previews are generated
Frank Reininghaus [Sun, 17 Feb 2013 10:21:00 +0000 (11:21 +0100)]
Prevent repeated re-layouting of all items while previews are generated

There was some code in KStandardItemListView::itemSizeHintUpdateRequired
already that was supposed to prevent an expensive re-layouting of all
items when a preview is received. However, it didn't quite work as
intended because also the "iconOverlays" role changed.

The new approach is to only re-layout if text of a visible role changes,
because this is the only way how the space needed by an item might
change (see KStandardItemListWidgetInformant::itemSizeHint()).

BUG: 315315
FIXED-IN: 4.10.1
REVIEW: 108984

12 years agoImprove the recently added test testMouseClickActivation
Frank Reininghaus [Wed, 13 Feb 2013 16:56:03 +0000 (17:56 +0100)]
Improve the recently added test testMouseClickActivation

The method to make sure that the first item is visible turned out to be
less reliable than I thought. This could make the test hang forever.
Moreover, this commit removes some trailing whitespace that had been
added accidentally.

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Aurélien Gâteau [Mon, 11 Feb 2013 09:53:52 +0000 (10:53 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoFix blinking when moving the mouse over an hidden item
Aurélien Gâteau [Fri, 8 Feb 2013 14:44:37 +0000 (15:44 +0100)]
Fix blinking when moving the mouse over an hidden item

The opacity of the unhovered pixmap must be gradually reduced while
animating otherwise the alpha channel saturates.

REVIEW: 108858
BUG: 299371
FIXED-IN: 4.10.1

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Sun, 10 Feb 2013 18:27:21 +0000 (19:27 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoRe-organize the code that compares expanded items
Frank Reininghaus [Sun, 10 Feb 2013 17:09:07 +0000 (18:09 +0100)]
Re-organize the code that compares expanded items

The previous approach, which was based on comparing the URLs as
strings, was not only very complex, but also could lead to
inconsistencies in the model, namely, that not all children were
removed from the model when the dir lister reported the parent as
deleted. Later on, this could even lead to a crash.

BUG: 311947
FIXED-IN: 4.11
REVIEW: 108766

12 years agoAdd benchmark for adding many child items in a tree structure
Frank Reininghaus [Sun, 10 Feb 2013 17:07:55 +0000 (18:07 +0100)]
Add benchmark for adding many child items in a tree structure

12 years agoInclude parent-child relationships in KFileItemModel's consistency check
Frank Reininghaus [Sun, 10 Feb 2013 17:06:07 +0000 (18:06 +0100)]
Include parent-child relationships in KFileItemModel's consistency check

12 years agoKFileItemModel::insertItems(): reserve sufficient space for m_items
Frank Reininghaus [Wed, 6 Feb 2013 17:58:54 +0000 (18:58 +0100)]
KFileItemModel::insertItems(): reserve sufficient space for m_items

This prevents expensive and unnecessary repeated rehashing when many
items are inserted into the model.

12 years agoAdd unit test for bug 313342
Frank Reininghaus [Tue, 5 Feb 2013 19:06:49 +0000 (20:06 +0100)]
Add unit test for bug 313342

12 years agoApply changes of the KGlobalSettings::singleClick() setting immediately
Aniket Anvit [Tue, 5 Feb 2013 18:58:06 +0000 (19:58 +0100)]
Apply changes of the KGlobalSettings::singleClick() setting immediately

Fixes a regression introduced by commit
7a364cbf489af25e123d18713523151a3a53f814.

Patch reviewed and pushed by Frank Reininghaus.

BUG: 313342
FIXED-IN: 4.10.1

12 years agoTwo small optimizations in KFileItemModel::removeItems()
Frank Reininghaus [Sun, 3 Feb 2013 22:28:57 +0000 (23:28 +0100)]
Two small optimizations in KFileItemModel::removeItems()

1. It seems that it really can happen that KFileItems that we get from
   the dir lister's itemsDeleted signal are not in the model any more,
   e.g., if a folder where hidden files are shown is left and a folder
   where hidden files are not shown is entered. There is no need to
   output warnings then.
2. Remove the emptiness-check for the KFileItemList at the beginning.
   Even in the unlikely event that we do get an empty list, we return
   just a few lines later in the code.

12 years agoconst QList<int> -> const QList<int>&
Frank Reininghaus [Sun, 3 Feb 2013 22:19:58 +0000 (23:19 +0100)]
const QList<int> -> const QList<int>&

12 years agoRemove unneeded #include
Frank Reininghaus [Sun, 3 Feb 2013 22:12:55 +0000 (23:12 +0100)]
Remove unneeded #include

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Wed, 30 Jan 2013 20:06:34 +0000 (21:06 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
dolphin/src/tests/kfileitemmodeltest.cpp

12 years agoAdd unit test for bug 314046
Frank Reininghaus [Wed, 30 Jan 2013 20:02:43 +0000 (21:02 +0100)]
Add unit test for bug 314046

The regression happened in the master branch only, but I think it
doesn't hurt to add the test to the stable branch.

CCBUG: 314046

12 years agoUpdate Dolphin version to 2.2 for KDE 4.10.0
Frank Reininghaus [Tue, 29 Jan 2013 18:13:49 +0000 (19:13 +0100)]
Update Dolphin version to 2.2 for KDE 4.10.0

12 years agoFix crashes in KFileItemModel::removeItems()
Frank Reininghaus [Tue, 29 Jan 2013 18:08:28 +0000 (19:08 +0100)]
Fix crashes in KFileItemModel::removeItems()

These crashes were caused by the recent commit
ff3267c6dcd0f6d0621b3a96b5462a9581a03883. It introduced two problems:

a) A logic error in the code that removes the ItemData pointers from
   m_itemData that could cause crashes if multiple item ranges are
   removed, and there were un-removed items behind the last one.
b) The implicit assumption that any call of removeItems() will actually
   result in items being removed in the model. This is incorrect if
   the model is first cleared and then the hidden-files setting is
   modified, which happens if "Save view properties for each folder" is
   enabled, and a folder where hidden files are shown is left. In that
   case, the dir lister emits itemsDeleted for the hidden items after
   they have been removed from the model due to the folder change.

I'll add a unit test covering these issues soon.

Many thanks to Romário Rios and Hrvoje Senjan for testing!

BUG: 314046

12 years agoMerge branch 'KDE/4.10'
Weng Xuetian [Sun, 27 Jan 2013 19:13:04 +0000 (14:13 -0500)]
Merge branch 'KDE/4.10'

12 years agoescape the existing text instead of set to plain text
Weng Xuetian [Fri, 25 Jan 2013 21:07:33 +0000 (16:07 -0500)]
escape the existing text instead of set to plain text

@info indicates it's rich text and will be added <html> tag by kdelibs,
so just escape the text that will be set to label for KDE/4.10

REVIEW: 108584
BUG: 313992

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Sun, 27 Jan 2013 14:25:47 +0000 (15:25 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

Conflicts:
dolphin/src/tests/kfileitemmodeltest.cpp

12 years agoMove the consistency check for KFileItemModel from the test to the class
Frank Reininghaus [Sun, 27 Jan 2013 14:19:39 +0000 (15:19 +0100)]
Move the consistency check for KFileItemModel from the test to the class

This makes it possible to check the model's consistency also in other
places, e.g., in KFileItemModel's benchmark.

12 years agoAdd a unit test for a recently fixed crash
Frank Reininghaus [Sun, 27 Jan 2013 13:09:39 +0000 (14:09 +0100)]
Add a unit test for a recently fixed crash

Before commit 90c7fd400c34e6d4d583c54c04631856c387d359, adding a
KFileItem with an empty path caused a crash in
KFileItemModel::expandedParentsCountCompare().

12 years agoPerformance improvements in KFileItemModel::removeItems()
Frank Reininghaus [Sun, 27 Jan 2013 12:07:46 +0000 (13:07 +0100)]
Performance improvements in KFileItemModel::removeItems()

The performance of this method is improved by:
a) Not removing items one by one, but doing it in a way that minimizes
   the number of moves to prevent O(N^2) worst-case complexity.
b) Not sorting the removed items using the potentially extremely slow
   KFileItemModel::lessThan. We can get the indexes of the removed items
   very easily from the hash m_items, and sorting ints is a lot faster.
c) Preventing repeated rehashing of m_items when removing the deleted
   URLs by replacing remove() by erase().

REVIEW: 108540

12 years agoAdd some benchmarks for KFileItemModel
Frank Reininghaus [Sun, 27 Jan 2013 11:55:37 +0000 (12:55 +0100)]
Add some benchmarks for KFileItemModel

The benchmark executable must be run manually. It is not run
automatically with the other unit tests to prevent waste of CPU cycles
in the not-so-uncommon situation that only test failures attract
attention.

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Luca Beltrame [Thu, 24 Jan 2013 22:49:59 +0000 (23:49 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoKFileItemModelRolesUpdater: Avoid multiple updates for Nepomuk data
Vishesh Handa [Tue, 22 Jan 2013 11:48:48 +0000 (17:18 +0530)]
KFileItemModelRolesUpdater: Avoid multiple updates for Nepomuk data

The Nepomuk ResourceWatcher emits 3 signals - propertyChanged,
propertyAdded and propertyRemoved. We should only listen to either the
propertyChanged signal or the propertyAdded + Removed signals. There is
no point in listening to all 3 signals. That will just result in
unnecessary updates.

Additionally, we do not need to listen to the resourceCreated signal.
That is only emitted when we are watching for a specific types, which we
are not.

REVIEW: 108543

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Thu, 24 Jan 2013 08:39:33 +0000 (09:39 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoMake the "A folder cannot be dropped into itself" message less intrusive
Frank Reininghaus [Tue, 22 Jan 2013 06:13:34 +0000 (07:13 +0100)]
Make the "A folder cannot be dropped into itself" message less intrusive

Showing this message in the KMessageWidget above the view, which means
that the view contents are moved down, can be extremely annoying
according to user feedback. Just showing the message in the status bar
is probably enough.

BUG: 313466
REVIEW: 108483
FIXED-IN: 4.10.0

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Fri, 18 Jan 2013 07:05:47 +0000 (08:05 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Thu, 17 Jan 2013 11:48:56 +0000 (12:48 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Luca Beltrame [Wed, 16 Jan 2013 22:42:25 +0000 (23:42 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoAllow Timeline-URLs as homepage
Andrea Scarpino [Wed, 16 Jan 2013 22:05:47 +0000 (23:04 +0059)]
Allow Timeline-URLs as homepage

FEATURE: 313151
REVIEW: 108428

12 years agoAllow Timeline-URLs as homepage
Andrea Scarpino [Wed, 16 Jan 2013 22:05:47 +0000 (23:04 +0059)]
Allow Timeline-URLs as homepage

FEATURE: 313151
REVIEW: 108428

12 years agoUse proper IconSize for PlacesItemEditDialog's KIconButton
Kai Uwe Broulik [Wed, 16 Jan 2013 21:54:32 +0000 (22:54 +0100)]
Use proper IconSize for PlacesItemEditDialog's KIconButton

REVIEW: 108443

12 years agoSVN_SILENT made messages (.desktop file)
Script Kiddy [Wed, 16 Jan 2013 11:34:10 +0000 (12:34 +0100)]
SVN_SILENT made messages (.desktop file)

12 years agoRemove incorrect comments about the sorting functions
Frank Reininghaus [Tue, 15 Jan 2013 18:07:36 +0000 (19:07 +0100)]
Remove incorrect comments about the sorting functions

In fact, we could use the sorting functions provided by Qt or the STL.
The reason why we have our own is that we want to support parallel
sorting because sorting many items naturally by name can be expensive.

12 years agoUpdate Dolphin version to 2.1.98 for KDE 4.10 RC 3
Frank Reininghaus [Tue, 15 Jan 2013 17:56:14 +0000 (18:56 +0100)]
Update Dolphin version to 2.1.98 for KDE 4.10 RC 3

12 years agoRe-organise the sorting code
Frank Reininghaus [Tue, 15 Jan 2013 17:50:21 +0000 (18:50 +0100)]
Re-organise the sorting code

The KFileItemModel-specific parts are now separated from the generic
ones, like the parallel sorting implementation.

REVIEW: 108386

12 years agoChange the sort and merge functions to a more generic form.
Frank Reininghaus [Tue, 15 Jan 2013 17:47:00 +0000 (18:47 +0100)]
Change the sort and merge functions to a more generic form.

This might make it easier to reuse the parallel sorting code. Moreover,
some the upperBound/lowerBound functions have been removed because
equivalents are provided by the STL.

12 years agoUse std::rotate, rather than reversing three times
Frank Reininghaus [Tue, 15 Jan 2013 17:44:00 +0000 (18:44 +0100)]
Use std::rotate, rather than reversing three times

We need less code now, and moreover, the STL implementation of rotate
should be more efficient than three reverse() calls.

12 years agoThe locking around the plugin access in actions doesn't seem to be
Simeon Bird [Sat, 12 Jan 2013 15:37:57 +0000 (10:37 -0500)]
The locking around the plugin access in actions doesn't seem to be
necessary, as actions is only called from the main thread.

Also it wasn't checked consistently; if the lock could not be taken, the
plugin was accessed anyway.

12 years agoWe don't need the mutex guarding m_itemStates in the
Simeon Bird [Sat, 12 Jan 2013 15:37:26 +0000 (10:37 -0500)]
We don't need the mutex guarding m_itemStates in the
UpdateItemStatesThread, because m_itemStates is only accessed by the
when the thread is done, and set before the thread starts.

Also combine the setData function with the constructor.

12 years agoMerge branch 'KDE/4.10'
Simeon Bird [Tue, 15 Jan 2013 16:11:11 +0000 (11:11 -0500)]
Merge branch 'KDE/4.10'

12 years agoA crash occurs if updateItemStates runs between the
Simeon Bird [Sun, 13 Jan 2013 18:49:21 +0000 (13:49 -0500)]
A crash occurs if updateItemStates runs between the
UpdateItemStatesThread finishing and the finished() signal being
delivered.

In this case, a new thread was not created, because the old thread
still existed. However, pendingItemStatesUpdate was not set, because the
thread was not running. Instead, the old thread was restarted.

This meant that the finished() signal from the first run could be delivered
while the thread was running for a second time, causing the thread to be
deleted while still running and thus a crash.

Solution: set pendingItemStatesUpdate if the thread is non-null,
even if it is not running, knowing that slotThreadFinished has not yet run,
and will call updateItemStates itself.

BUG: 302264
FIXED-IN: 4.10
REVIEW: 107656

12 years agoSelect right item as current item (first item after the deletion) after deleting...
Emmanuel Pescosta [Mon, 14 Jan 2013 19:01:03 +0000 (20:01 +0100)]
Select right item as current item (first item after the deletion) after deleting files

BUG: 290736
REVIEW: 108356
FIXED-IN: 4.10

12 years agoDon't delay popup menus of "Create New" and "Recently Closed Tabs" toolbar buttons
Kai Uwe Broulik [Mon, 14 Jan 2013 09:42:03 +0000 (10:42 +0100)]
Don't delay popup menus of "Create New" and "Recently Closed Tabs" toolbar buttons

REVIEW: 108397

12 years agoUpdate Dolphin's About dialog
Frank Reininghaus [Sun, 13 Jan 2013 13:12:32 +0000 (14:12 +0100)]
Update Dolphin's About dialog

Emmanuel has contributed a lot of useful patches to Dolphin. Thank you
very much for that! The Dolphin community is looking forward to further
contributions from you.

CCMAIL: emmanuelpescosta099@gmail.com

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Luca Beltrame [Sat, 12 Jan 2013 09:19:44 +0000 (10:19 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoShow the file name as plain text in the file-metadata-tooltip
Emmanuel Pescosta [Fri, 11 Jan 2013 16:27:53 +0000 (17:27 +0100)]
Show the file name as plain text in the file-metadata-tooltip

FIXED-IN: 4.10
BUG: 262464
REVIEW: 108336

12 years agoMerge remote-tracking branch 'origin/KDE/4.10'
Frank Reininghaus [Fri, 11 Jan 2013 16:24:05 +0000 (17:24 +0100)]
Merge remote-tracking branch 'origin/KDE/4.10'

12 years agoSlightly reduce the tinting for selected icons and previews
Frank Reininghaus [Fri, 11 Jan 2013 16:12:34 +0000 (17:12 +0100)]
Slightly reduce the tinting for selected icons and previews

The intention of the tinting was to make it more obvious in icons view
which icons are selected. However, some icons and previews look quite
ugly with the current tinting value of 1.0 (i.e., the value passed to
KIconEffect::colorize). A slight reduction of this value to 0.8 makes
this a little less ugly. However, the real fix is to remove the tinting
altogether and find something better to indicate which items are
selected.

CCBUG: 309722

12 years agoOnly use parallel sorting when sorting by name
Frank Reininghaus [Fri, 11 Jan 2013 15:57:43 +0000 (16:57 +0100)]
Only use parallel sorting when sorting by name

The reentrant natural comparison of strings is the only really
expensive operation. Other comparison functions are much cheaper and
might not be reentrant at all. Therefore, we disable parallel sorting
when not sorting by name to prevent crashes and other unpleasant
behaviour.

BUG: 312679
FIXED-IN: 4.10
REVIEW: 108309

13 years agoFix information panel interpreting html tags
Kai Uwe Broulik [Wed, 9 Jan 2013 21:10:04 +0000 (22:10 +0100)]
Fix information panel interpreting html tags
Only fixes the most obvious file name, the other entries in the table
probably have to be fixed in the FileMetaDataWidget.
REVIEW: 108307
BUG: 262464
(cherry picked from commit 3d7d900d2830c71255ff8c02f5f7439224cd4122)

13 years agoFix information panel interpreting html tags
Kai Uwe Broulik [Wed, 9 Jan 2013 21:10:04 +0000 (22:10 +0100)]
Fix information panel interpreting html tags
Only fixes the most obvious file name, the other entries in the table
probably have to be fixed in the FileMetaDataWidget.
REVIEW: 108307
BUG: 262464

13 years agoShow the real audio file duration in additional informations
Emmanuel Pescosta [Wed, 9 Jan 2013 15:24:15 +0000 (16:24 +0100)]
Show the real audio file duration in additional informations

Big Thanks to Frank Reininghaus and Vishesh Handa!

BUG: 311794
REVIEW: 108281
FIXED-IN: 4.10