| Age | Commit message (Collapse) | Author |
|
KFileItemModel now emits the itemsMoved signal when the model
is resorted, and KItemListSelectionManager has a new function
itemsMoved() which will be called indirectly when this signal
is emitted. Unit tests for the new functionality are included.
The following things are still needed to make the feature
work:
1. KFileItemMdel::resortAllItems() should not emit
itemsAdded/itemsRemoved any more.
2. KItemListView::itemsMoved() must update the view according
to the changes in the model, and it must call
KItemListSelectionManager::itemsMoved().
|
|
Prevent unnecessary calls to visibleRolesSizes() when
expanding items. Also the performance has been improved when
resizing the window.
|
|
When inserting items or when updating the item-roles there is no
need to recalculate the column-widths for all items to get an
optimized column-width.
|
|
If an item does not fit into the available width/height a scrollbar
should be provided (e.g. typically this represents the horizontal
scrollbar in the details-view where the width can be larger than
the than the visible width).
Currently the interaction with the scrollbar is not implemented but
this will be a quite minor task in comparison to this patch.
|
|
This results in less overhead if item-changes are done rather fast
(e.g. when applying the number of sub directories for the "size"
role).
|
|
Additionally it is assured that on role-changes the size-hints
get updated if necessary.
|
|
Still open:
- Column content is not clipped correctly
- First column is not automatically increased to the available
width like in Dolphin 1.7
|
|
Up to now the layout has only been updated when the geometry has
not been changed for at least 300 ms. This has been changed so
that at least each 300 ms the layout is updated to give a better
visual feedback when resizing the window.
|
|
|
|
Simply use a QList<QByteArray> instead of QHash<QByteArray, int>.
|
|
|
|
|
|
- Start autoscrolling when doing a dragging
- Start autoscrolling with a small delay
|
|
This modifications will also allow to do an autoscrolling in an
easy way for drag and drop operations (not fully implemented yet).
|
|
|
|
Includes a lot of TODOs but is a base for getting back full drag
and drop support quite soon.
|
|
The autoscrolling should not be triggered if the rubberband
direction is different from the autoscroll direction
|
|
If the autoscrolling has been activated when using the rubberband,
it was possible that an endless recursion occured as the
autoscrolling triggered a change of the rubberband which triggered
a change of the autoscrolling etc.
|
|
This is just a rough draft: The rubberband gets visible and an
automatic scrolling is done if the autoscroll-margins have been
reached. However currently no items get selected yet. Currently
the autoscrolling has a severe bug if the scrollbars are manually
changed before or after a rubberband selection.
|
|
They could lead to crashes if the Details View is used and the
view is not wide enough to show all columns for the items.
|
|
|
|
|
|
|
|
It still looks a bit ugly, but at least we can see the current
item now :-) It is only updated by mouse clicks at the moment.
|
|
|
|
Dolphin 2.0 will get a new view-engine with the
following improvements:
- Better performance
- Animated transitions
- No clipped filenames due to dynamic item-sizes
- Grouping support for all view-modes
- Non-rectangular selection areas
- Simplified code for better maintenance
More details will be provided in a blog-entry during
the next days.
Please note that the code is in a very
early alpha-stage and although the most tricky parts
have been implemented already very basic things like
drag and drop or selections have not been pushed yet.
Those things are rather trivial to implement but this
still will take some time.
|