┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews
AgeCommit message (Collapse)Author
2013-05-02Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
2013-05-02Use the same text color for selected hidden and non-hidden itemsFrank Reininghaus
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-04-23Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
Conflicts: plasma/applets/folderview/folderview.cpp CCMAIL: [email protected] @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!
2013-04-23Disable Find/Replace in the "rename inline" line editFrank Reininghaus
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
2013-04-23Do not dereference null pointer in KItemListViewAccessibleFrank Reininghaus
BUG: 316285 FIXED-IN: 4.10.3
2013-04-22Comment out assertion to fix a crash when filtering in Icons/Compat ViewFrank Reininghaus
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
2013-04-22Always determine icons for the visible items firstFrank Reininghaus
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
2013-04-12Merge remote-tracking branch 'origin/KDE/4.10'Aurélien Gâteau
2013-04-12Fix moving image while transitioning to hover pixmapAurélien Gâteau
See: http://youtu.be/OMYO0U0kSL0 REVIEW: 109960 FIXED-IN: 4.10.3
2013-03-27Merge remote-tracking branch 'origin/KDE/4.10'Luca Beltrame
Conflicts: plasma/applets/folderview/folderview.cpp
2013-03-27Update icon if it couldn't be determined upfront (.desktop file on slow mount)David Faure
This requires an up-to-date kdelibs >= 4.10. CCBUG: 290666
2013-03-26Improve grouping by name for non-ASCII file namesFrank Reininghaus
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
2013-03-21Merge remote-tracking branch 'origin/KDE/4.10'Aurélien Gâteau
@emmanuel: this merge includes your fix from https://git.reviewboard.kde.org/r/109488/ . I assume this is not a problem. CCMAIL: [email protected]
2013-03-21Fix transition between m_pixmap and m_hoverPixmapAurélien Gâteau
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
2013-03-17Refresh all expanded directories too, when reloading a directory.Emmanuel Pescosta
BUG: 295300 FIXED-IN: 4.10.2 REVIEW: 109488
2013-03-15Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
2013-03-15Improve handling of filtered items when folders are deleted/collapsedFrank Reininghaus
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
2013-03-12Fix recent regressions when "Sort by Type" is usedFrank Reininghaus
This commit ensures that the mime types and icons are determined synchronously for 200 ms when "Sort by Type" is enabled. REVIEW: 109344
2013-03-11Do not skip rows in when clicking the empty area of the scroll barFrank Reininghaus
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
2013-03-10Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
Conflicts: dolphin/src/kitemviews/kfileitemmodel.cpp
2013-03-10Remove filtered children if the parent folder is collapsedFrank Reininghaus
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
2013-03-03Use a consistent way to group files by "Date"Daniel Kreuter
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
2013-02-27Removed everything related to m_expandedParentsCountRoot ->Emmanuel Pescosta
This concept is not needed anymore because of the new "determine parents and expansion levels" approach Side effect: Enables treeview for trash, ... REVIEW: 109191
2013-02-27Big Thanks to Frank Reininghaus, who helped me a lot with theseEmmanuel Pescosta
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
2013-02-19Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
Conflicts: dolphin/src/tests/kfileitemmodeltest.cpp lib/konq/konq_operations.cpp
2013-02-18Remove items from m_filteredItems if their parent is deletedFrank Reininghaus
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
2013-02-17Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
2013-02-17Prevent repeated re-layouting of all items while previews are generatedFrank Reininghaus
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
2013-02-11Merge remote-tracking branch 'origin/KDE/4.10'Aurélien Gâteau
2013-02-11Fix blinking when moving the mouse over an hidden itemAurélien Gâteau
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
2013-02-10Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus
2013-02-10Re-organize the code that compares expanded itemsFrank Reininghaus
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
2013-02-10Include parent-child relationships in KFileItemModel's consistency checkFrank Reininghaus
2013-02-06KFileItemModel::insertItems(): reserve sufficient space for m_itemsFrank Reininghaus
This prevents expensive and unnecessary repeated rehashing when many items are inserted into the model.
2013-02-05Apply changes of the KGlobalSettings::singleClick() setting immediatelyAniket Anvit
Fixes a regression introduced by commit 7a364cbf489af25e123d18713523151a3a53f814. Patch reviewed and pushed by Frank Reininghaus. BUG: 313342 FIXED-IN: 4.10.1
2013-02-03Two small optimizations in KFileItemModel::removeItems()Frank Reininghaus
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.
2013-02-03const QList<int> -> const QList<int>&Frank Reininghaus
2013-01-29Fix crashes in KFileItemModel::removeItems()Frank Reininghaus
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
2013-01-27Move the consistency check for KFileItemModel from the test to the classFrank Reininghaus
This makes it possible to check the model's consistency also in other places, e.g., in KFileItemModel's benchmark.
2013-01-27Performance improvements in KFileItemModel::removeItems()Frank Reininghaus
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
2013-01-27Add some benchmarks for KFileItemModelFrank Reininghaus
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.
2013-01-24Merge remote-tracking branch 'origin/KDE/4.10'Luca Beltrame
2013-01-24KFileItemModelRolesUpdater: Avoid multiple updates for Nepomuk dataVishesh Handa
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
2013-01-15Remove incorrect comments about the sorting functionsFrank Reininghaus
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.
2013-01-15Re-organise the sorting codeFrank Reininghaus
The KFileItemModel-specific parts are now separated from the generic ones, like the parallel sorting implementation. REVIEW: 108386
2013-01-15Change the sort and merge functions to a more generic form.Frank Reininghaus
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.
2013-01-15Use std::rotate, rather than reversing three timesFrank Reininghaus
We need less code now, and moreover, the STL implementation of rotate should be more efficient than three reverse() calls.
2013-01-15Merge branch 'KDE/4.10'Simeon Bird
2013-01-14Select right item as current item (first item after the deletion) after ↵Emmanuel Pescosta
deleting files BUG: 290736 REVIEW: 108356 FIXED-IN: 4.10
2013-01-11Merge remote-tracking branch 'origin/KDE/4.10'Frank Reininghaus