Steven Kirk
e686786959
Use dictionary to track item containers.
Because even when virtualized we were still creating a list the size of
the Items collection to store the containers. Using Dictionary here
still isn't ideal - we'd ideally use some sort of sparse array but that
can be optimized later.
10 years ago
Steven Kirk
20847b1960
Added documentation for item virtualizers.
10 years ago
Steven Kirk
aeab538162
Fix CarouselPresenter.
Forgot to assign to return value!
10 years ago
Steven Kirk
6e73244a1e
Handle move and replace in virtualized lists.
10 years ago
Steven Kirk
f9e730e705
Tweaked comments.
10 years ago
Steven Kirk
c718f65e4c
Make inserting items more user friendly.
10 years ago
Steven Kirk
7ca7f53537
More work on items removed.
10 years ago
Steven Kirk
b6dc913b20
Allow multiple selection in virt test app.
10 years ago
Steven Kirk
72ea9f02c7
More work on virtualization with INCC.
Got removes working a bit better.
10 years ago
Steven Kirk
96c5578690
Merge pull request #554 from VitalElement/grokys/item-virtualization-avalonia
WIP Further Implementation of INCC handling
10 years ago
Dan Walmsley
ac8185b8c3
added implementation for removing first and last elements.
10 years ago
Dan Walmsley
1417aab362
added some more test cases for simple virtualization.
10 years ago
danwalmsley
2e9c19beaf
Throw not implemented exception placeholder.
10 years ago
danwalmsley
e2fe94cafb
Added test for removing last item in the list, when scrolled to end.
10 years ago
danwalmsley
e015fc15b2
add items, adds after selected item.
10 years ago
danwalmsley
94f8abbc4d
add items at selected index, or at end if no selection.
10 years ago
danwalmsley
defae349a7
added button to prepend and append items to list.
10 years ago
danwalmsley
35fe93c9c2
added support for add items and remove items in virtualization sample app.
10 years ago
Steven Kirk
3e8a8c6d7c
WIP: INCC virtualization support.
10 years ago
Steven Kirk
722a329106
Add containers at beginning when scrolled to end.
10 years ago
Steven Kirk
6df5ff4917
Split virtualization tests in two
One for base virtualization tests and one for simple mode tests.
10 years ago
Steven Kirk
7f09154020
Correctly handle partially obscured items.
And move logical for selecting horizontal/vertical components of
extent/offset/viewport into `ItemVirtualizer` base class.
10 years ago
Steven Kirk
749c32ace6
Added failing partial item tests.
10 years ago
Steven Kirk
be78eb2ed1
Dematerialize correct items.
10 years ago
Steven Kirk
780ff4c0b4
Correctly resize items.
10 years ago
Steven Kirk
2ea322f54f
Added "Recreate" button to virtualization test app.
10 years ago
Steven Kirk
9c791dbbc1
Clarified variable name.
10 years ago
Steven Kirk
2d4151ddfe
Update containers when Items changes.
10 years ago
Steven Kirk
55f05defd1
Make scrolling up >= 1 page work
10 years ago
Steven Kirk
43d9fa5724
Show scroll info in virt test app.
10 years ago
Steven Kirk
5582750bb6
Added virtualization test app.
10 years ago
Steven Kirk
69ba9810d8
Added ListBox.VirtualizationMode
10 years ago
Steven Kirk
6cab63fb70
Don't try to dematerialize null containers.
10 years ago
Steven Kirk
2c8d8179e5
Fix virtualized item selection.
So that recycled items' selection state is set correctly.
10 years ago
Steven Kirk
2d5a41a729
Update ListBoxTests
Now ListBox is virtualized it needs more setup for unit testing.
10 years ago
Steven Kirk
cfdfa9400e
Simplify ListBox unit test template creation.
10 years ago
Steven Kirk
e930c35882
Expose IScrollable in ListBox.
To allow programmatic control of the ListBox's scroll.
10 years ago
Steven Kirk
d346b35ab7
Added IScrollable interface.
This is now the basic Extent/Offset/Viewport interface. Implemented by
ScrollViewer and ScrollContentPresenter.
10 years ago
Steven Kirk
b44589e0cb
Renamed IScrollable -> ILogicalScrollable
We're going to need IScrollable as an interface to ScrollViewer-type
controls.
10 years ago
Steven Kirk
03c138ff90
Delegate ScrollIntoView to ItemVirtualizer.
This doesn't make sense for ItemVirtualizationMode.Simple so we do
nothing here.
10 years ago
Steven Kirk
f12435731b
Removed Thingamybob.
10 years ago
Steven Kirk
fa3550882a
Handle scrolling >1 page.
10 years ago
Steven Kirk
f527d4ef1a
Update scroll after arrange.
10 years ago
Steven Kirk
1d83126d20
More WIP on virtualization.
Kinda nearly working in the test app.
10 years ago
Steven Kirk
cce2ab603f
Ensure to update scroll info when items changed.
10 years ago
Steven Kirk
1c7a99dc5e
WIP Trying to get virt scrolling working.
10 years ago
Steven Kirk
91e2f2a0ca
Refactored virtualization handling into classes
Also take into account the scroll direction of the panel.
10 years ago
Steven Kirk
850dfdea48
Dematerialize items when removed.
10 years ago
Steven Kirk
38afaf1aca
More WIP on adding virtualization to ItemsPresenter.
10 years ago
Steven Kirk
f9b3d2ac03
WIP: Adding virtualization to ItemsPresenter.
10 years ago