Bug 302373

Summary: Icons are rendered on top of each other
Product: [Applications] dolphin Reporter: Otso Helenius <kde>
Component: view-engine: icons modeAssignee: Dolphin Bug Assignee <dolphin-bugs-null>
Severity: normal CC: emmanuelpescosta099
Priority: NOR    
Version: 2.0   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In: 4.11.0
Attachments: Icon mode rendering bug

Description Otso Helenius 2012-06-22 21:35:46 UTC
Created attachment 72055 [details]
Icon mode rendering bug

When the view is forced to scroll up after deleting many files (icon view mode), some of the icons are rendered on top of each other. I can produce this behaviour on KDE 4.8.3 Dolphin 2.0 every time when using the icon mode and forcing the view to scroll up.

How to produce:
1) create a new folder with many test files
2) switch to icon view mode and scroll to the bottom of the file list
3) delete enough files to force the view to scroll upwards

I attached a screenshot demonstrating the rendering bug.
Comment 1 Jeroen van Meeuwen (Kolab Systems) 2012-08-24 16:19:54 UTC
Resetting assignee to default as per bug #305719
Comment 2 Emmanuel Pescosta 2013-06-22 13:56:42 UTC
I can't reproduce this bug with Dolphin build from master 22.06.2013
Comment 3 Christoph Feck 2013-07-03 23:54:01 UTC
I have recently (~ 2 weeks) seen this issue with master, but I am not sure if the commits done since then could have fixed it.
Comment 4 Emmanuel Pescosta 2013-07-05 17:01:54 UTC
Thanks for your feedback! 

I have found a way to reproduce it :) 
Patch is already in progress! (Maybe for bug 319951 too)
Comment 5 Emmanuel Pescosta 2013-07-11 16:22:51 UTC
Please test this patch https://git.reviewboard.kde.org/r/111486/ and maybe give some feedback, if it works for you too or if you find a regression (Hopefully not!). Thanks :)
Comment 6 Frank Reininghaus 2013-07-25 20:20:54 UTC
Git commit 6e1a8774e9a3d99044fec4f5183b22baae5b1e63 by Frank Reininghaus.
Committed on 25/07/2013 at 20:15.
Pushed by freininghaus into branch 'KDE/4.11'.

Prevent that removing items can cause icons to overlap

When items are removed, new items may become visible because of that.
This includes

(a) Items *behind* the removed range. KItemListView may try to create
    their widgets at their "imaginary" old positions and move them to
    the new position with an animation.

(b) Items *before* the removed range, if the deletion causes the view
    to scroll up. In that case, the "imaginary" old position and the new
    position was equal, but KItemListView still tried to determine the
    "old" position by adding the number of removed items to the index.
    The result was that the widgets were created at completely wrong
    positions, and no animation was started to fix this.

Thanks to Emmanuel for helping to find the cause of this bug!
FIXED-IN: 4.11.0
REVIEW: 111630

M  +16   -12   dolphin/src/kitemviews/kitemlistview.cpp