┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistview.cpp
AgeCommit message (Collapse)Author
2012-08-14Adding the Accessibility classesAmandeep Singh
2012-07-12Re-implement dropping of files on folders in the Places Panel.Frank Reininghaus
This resolves a regression caused by the Places Panel rewrite. There is a small glitch left when reordering items (dragging below the last or above the first item only shows the drop indicator when first dragging out of the item and then back), but I prefer not to fix this glitch right now because this would require a more intrusive change, and I do not want to risk regressions because is not much time left to fix them before 4.9.0 is released. Thanks to Peter Penz for providing some advice about this issue. BUG: 302557 FIXED-IN: 4.9.0 (cherry picked from commit f4c960025167b7c7e04e1290ac9d9fee03a9b62d)
2012-07-12Re-implement dropping of files on folders in the Places Panel.Frank Reininghaus
This resolves a regression caused by the Places Panel rewrite. There is a small glitch left when reordering items (dragging below the last or above the first item only shows the drop indicator when first dragging out of the item and then back), but I prefer not to fix this glitch right now because this would require a more intrusive change, and I do not want to risk regressions because is not much time left to fix them before 4.9.0 is released. Thanks to Peter Penz for providing some advice about this issue. CCBUG: 302557
2012-06-02Always support a moving animation in case of the details viewPeter Penz
This fixes the issue that resizing items results in flickering when expandable items are shown.
2012-05-28Implement dropping of items into the Places PanelPeter Penz
Some polishing regarding the icons and group-alignment must still be done, but at least the basic functionality is back again.
2012-05-26Further preperations for drag & drop support in the places panelPeter Penz
2012-05-21Places Panel: Show drop indicatorPeter Penz
The dropping itself has not been implemented yet.
2012-05-18Enable basic drag and drop support for the Places PanelPeter Penz
The dropping has not been implemented yet, however in the context of this step the creating of the drag-pixmap is now forwarded to the item-widgets. This allows creating some optimized dragging-pixmaps e.g. for the details-view, where only the name and icon should be provided as drag-pixmap.
2012-05-17Fix crash related to group-headersPeter Penz
If multiple ranges are inserted or removed, the updating of the group-headers may only be done after _all_ ranges have been inserted/removed and not after each individual range. Otherwise the layouter-cache is not in a consistent state yet.
2012-05-09Let the group-headers respect the item-offsetPeter Penz
2012-05-02Places Panel: Allow showing of hidden itemsPeter Penz
2012-05-02Places Panel: Fix implementation issues when hiding itemsPeter Penz
2012-05-01Places Panel: Allow hiding of itemsPeter Penz
Related changes: - Animate changed items for the details-view in case it is not expandable - Remove the hardcoded "isHidden"-code in KStandardItemListWidget and allow derived widgets to define themselves what means "hidden" within their context. The current code needs a lot of bugfixing, but lets make this in smaller steps during the next days...
2012-04-30Fix crash when closing Dolphin during generating previewsPeter Penz
BUG: 299108 FIXED-IN: 4.9.0
2012-04-24Provide additional default groups for the Places PanelPeter Penz
If Nepomuk is enabled, it is now possible to easily search for some most common queries by having additional groups.
2012-04-23Details mode: Fix wrong required column-width calculationPeter Penz
BUG: 298577 FIXED-IN: 4.9.0
2012-04-21Inline renaming: Fix wrong assertionPeter Penz
BUG: 298512 FIXED-IN: 4.9.0
2012-04-21Prepare view-engine for non-KFileItem usecasePeter Penz
Up to now the view-engine only provided a model-implementation that supports file-items. The view-engine always had been designed to be able to work with any kind of model, so now a KStandardItemModel is available. The plan is to convert the places panel to the new view-engine. It should be no problem to fix this until the feature freeze - in the worst case the places-panel code could be reverted while still keeping the KStandardItemModel changes.
2012-04-17Implement inline-renaming for the new view-enginePeter Penz
BUG: 286893 FIXED-IN: 4.9.0
2012-04-14Allow to optionally limit the maximum number of text linesPeter Penz
Showing the whole filename unclipped seems to be a good default, however for users with a lot of files that have extremely long names this might get a problem especially in the icons-view. - Allow to limit the maximum number of lines in the icons-view - Allow to specify a maximum width in the compact-view (No limit is required for the details-view, as the name is shortened automatically to show other columns) BUG: 288596 FIXED-IN: 4.9.0
2012-04-11KItemViews: Internal directory restructurationPeter Penz
- Move all private headers from the kitemviews-directory into the 'private' subdirectory. - Get rid of DolphinDirLister and just use a directory-lister internally in KFileItemModel. - Minor interface-cleanups for signals
2012-04-05KItemListView: Minor internal cleanupPeter Penz
2012-04-05Fix filtering issuePeter Penz
When filtering items it might be possible that the update of the widgets is wrong although the model internally has a correct state. BUG: 297269 FIXED-IN: 4.8.3
2012-04-01Allow showing Nepomuk metadata inside viewsPeter Penz
Metadata like image-size, rating, comments, tags, ... can be shown now in the view (e.g. as column in the Details mode). Still open: The rating-information needs to be shown as stars. In the context of this feature also the following bugs have been fixed: - Fix visual glitches in the header of the Details mode - Improve the minimum column width calculation to respect also the headling and not only the content BUG: 296782 FIXED-IN: 4.9.0
2012-03-27KItemListView interface and implementation simplificationPeter Penz
- Remove KItemListView::preferredRoleColumnWidth() and allow implementing this as part of derived classes from KItemListWidget. Those derived classes are aware about the layout and hence also can provide the preferred role width. - Make KItemListView::itemSizeHint() non-virtual and also allow implementing the size hint as part of derived classes from KItemListWidget.
2012-03-26Rename KItemListView::preferredColumnWidth() to preferredRoleColumnWidth()Peter Penz
2012-03-26Internal interface cleanupPeter Penz
Let derived classes from KItemListView just implement preferredColumnWidth() for one role of an item instead of returning a hashtable for a given item-range.
2012-03-25Details view: Don't reset to automatic resizing when adding columnsPeter Penz
Until now when a new column is added in the case where custom column widths are used, the automatic resizing has been turned on again. The patch fixes this so that the current widths stay and the new column gets a proper default width.
2012-03-24Cleanup and minor fixes for column-handlingPeter Penz
2012-03-23Details view: Optionally remember user changed column-widthsPeter Penz
If the user changed a column-width in the details-view, up to now the width got reset when changing a directory or when restarting Dolphin. Now the column-widths automatically get remembered for each directory in case if the user has modified the width. The automatic resizing is still turn on per default. The storing of the custom column-width can easily be reset by right clicking on the header and selecting "Automatic Column Widths" from the context-menu. Some finetuning is still necessary (e.g. the "Adjust View Properties" dialog currently is not aware about this setting) but this will be fixed during the next weeks. BUG: 264434 FIXED-IN: 4.9.0
2012-03-22Details view: Expand the name-column like in Dolphin 1.xPeter Penz
With the new view-engine the name-column always has been expanded to the maximum width of all available names. But this makes it impossible to see other columns without scrolling when having long filenames, so per default the Dolphin 1.x behavior has been applied to the new view-engine so that the name-column-width gets decreased to be able to show the other columns. This patch will be released with KDE applications 4.8.2. For Dolphin 2.1 (KDE applications 4.9) user-modified widths of the columns will be remembered per directory also between different sessions. CCBUG: 264434
2012-03-20Fix alternate background issuePeter Penz
When items get inserted or deleted, the alternate background must be updated.
2012-03-09Prevent endless scrolling of list when dragging itemsPeter Penz
BUG: 295584 FIXED-IN: 4.8.2
2012-03-09Details view: Allow to turn off expandable folders like in Dolphin 1.7Peter Penz
The option for turning off expandable folders has been removed with the new view-engine. Due to several requests this option has been readded again. As for 4.8.x no new user-interface strings may be introduced, the line ExpandableFolders=false must be manually added below the section "[DetailsMode]" in the file ~/.kde/share/config/dolphinrc if the expandable-folders feature should be disabled. Thanks to H.H. "cyberbeat" for the initial patch! BUG: 289090 FIXED-IN: 4.8.2
2012-03-07Allow custom sorting of details-view columnsPeter Penz
Fix regression that Dolphin 2.0 did not allow to adjust the sorting of the details-view columns. BUG: 164696 FIXED-IN: 4.8.2
2012-02-28Update siblings when turning on/off groupingPeter Penz
2012-02-28Finetuning of margins and alternate row colorsPeter Penz
Thanks to Martin Zilz for the ongoing support.
2012-02-23Whitespace cleanups and documentation fixesPeter Penz
2012-02-22Fix alternate backgrounds when enabling groupingPeter Penz
Up to now the alternating backgrounds just have been calculated by checking whether the item index is odd. This does not work well when grouping is enabled: In this case the alternate background color of the first item of a group should stay consistent.
2012-02-21Fix possible crash if no model is setPeter Penz
When updating the siblings-information by e.g. a call to setSupportsItemExpanding() it is possible that the model is not set yet.
2012-02-21Don't trigger assert when switching to details-viewPeter Penz
If the visible roles of the details-view are equal to the visible roles of other views, then switching to the details-view will trigger an assert because the invisible roles don't get updated. Thanks to Frank Reininghaus for the detailed analyses! In the context of this fix optimizations have been done when switching view-modes: The "don't-animate-workaround" could be removed. BUG: 294531 FIXED-IN: 4.8.1
2012-02-17Remember the row- and column-information for visible itemsPeter Penz
Up to now KItemListView has not been aware to which column or row an item belongs to. This has been handled internally in KItemListViewLayouter. But for deciding whether a move-animation might result in overlapping items it is mandatory to be aware about the column/row. The current approach to guess a column/row change by comparing the source- and target-rectangle works very well but breaks on some corner-cases when e.g. zooming. Now the layouter allows to access the information. This assures that in the vertical alignment no move-animation is done between rows and the in the horizontal alignment no move-animation is done between the columns.
2012-02-16Compact view: Padding- and margin-improvements for grouped alignmentsPeter Penz
2012-02-14Details view: Fix filter issue with sibblingsPeter Penz
When the filter has been enabled, the sibblings got not updated. Explicitely update the sibblings when inserting, removing or moving items. For layouting implicitely update the sibblings only for recycled widgets.
2012-02-14Details view: Siblings fixesPeter Penz
The siblings should only range within one group.
2012-02-14Details view: Fix indicator-branchesPeter Penz
Up to now no indicator-branches have been drawn when showing a tree. The patch fixes this so that that the style-dependent branches are drawn. The main part of the patch is the implementation of KItemListView::updateSiblingsInformation(). Most of the other changes are related due to an internal renaming of the expansionsLevel-role to expandedParentsCount and some related cleanups. BUG: 290276 FIXED-IN: 4.8.1
2012-02-11Group header layout fixesPeter Penz
- Don't use a margin for the first group header - Provide margins between the groups - Use a more subtle coloring - Prevent animation glitches when resizing a window
2012-02-08Layout optimizationsPeter Penz
- Differ internally between margins and paddings - Add a small padding in the icons-view and the compact-views - Optimize the width of the icons-view if previews are shown
2012-02-06Group header improvementsPeter Penz
- Use a simpler background and colors as suggested by Martin Zilz. This is just an early draft, I need to post some comparison screenshots to Martin for review. - Fixes of some layout issues that have been revealed because of adjusting the group header heights. - More clever animation/no-animation detection when doing listview-property changes in parallel.
2012-02-05Fix potential endless loop in layoutPeter Penz
Usecase: - No scrollbar is shown - Window size will be decreased so that a scrollbar gets necessary The decreased window size minus the space required for the scrollbar results in a relayout of the items. In 99 % of all cases a decreased window size won't result in showing more items in parallel in comparison to a larger window size. However in the remaining 1 % this can happen (e.g. see bug 293318 for a sample). This results in an endless loop as now no scrollbar is required anymore, the layout changes again, the scrollbar is required again, ... BUG: 293318 FIXED-IN: 4.8.1