Steven Kirk
c3220b92f1
Don't try to show non-materialized item.
Also added null checks for all ControlExtension methods. Fixes #578 .
10 years ago
Steven Kirk
5a72ed8586
Don't add virt items when attached to visual tree.
Don't add virtualized items before the virtualizing panel is attached to
the visual tree, as bindings etc won't be set and so measurement will
produce 0,0 causing all items to be materialized.
10 years ago
Steven Kirk
d581bfe69e
Limit initial measure of virtualized list.
Prevents all items being materialized when virtualized control is
measured with infinity.
10 years ago
donandren
0d3429389a
added new constructor with IWindowImpl parameter
10 years ago
Steven Kirk
9b9b048fbb
Use Parent property.
Instead of `LogicalParent` - they're the same but `Parent` is used below
- this clarifies that it's the same property to those unfamiliar with
the codebase.
10 years ago
donandren
b89d75f43a
Fixed ContentPresenter add/remove from logicalchildren otside teamplate
10 years ago
donandren
b9ad9b82ce
process scroll events in ScrollContentPresenter in more generic way (support also horizontal scroll)
and horizontal scroll support in VirtualizationMode
10 years ago
donandren
9b230ec1a0
possible solution of bug #539 -
actually ContentPresenter if not used in ContentControl was not detaching it's child from logical tree
10 years ago
Steven Kirk
dc8d05d0c3
Handle partial last items when items added.
Fixes #565 .
10 years ago
Steven Kirk
58cebab9a7
Don't round ScrollViewer values.
Not sure why this was being done, but it's almost certainly wrong.
10 years ago
Steven Kirk
04c48bbd54
Make adding items work.
When virtualizing panel is not yet full.
10 years ago
Steven Kirk
7010272985
Reset first/next indexes on items nulled.
Fixes #563 .
10 years ago
Steven Kirk
63c2cd41fd
Add containers on Items reset.
If new items have been added on Reset and the panel was not previously
full, then create containers for the new items. Fixes #561 .
10 years ago
Steven Kirk
299ad92c37
Fixed TabStrip.
10 years ago
Steven Kirk
2268227f20
Make template instantiated by style a name scope.
To do this had to move the name scope stuff into Avalonia.Styling.
10 years ago
Steven Kirk
d772017768
Added <Template>
The new <Template> is a template that can be used as a setter value,
meaning that the setter will materialize the template each time it sets
the value. Make assigning a control to `Setter.Value` throw an error
indicating that the control should be wrapped in a template.
10 years ago
Steven Kirk
259144838c
Set item container properties with Style priority.
So that they can be overridden by styles.
10 years ago
Nikita Tsukanov
b296bb764c
Added `Styles` preview support
10 years ago
Steven Kirk
69e2c459c4
Do a null Items check in ScrollIntoView
This can happen when bindings are in the process of updating, or if the
client calls SelectingItemsControl.ScrollIntoView themselves.
10 years ago
Steven Kirk
7b3e25949e
Revert "Revert "Set ContentPresenter.DataContext in UpdateChild.""
This reverts commit bf02ae41a9 .
10 years ago
Nikita Tsukanov
ee37ab8df4
Added UsePlatformDetect
10 years ago
Steven Kirk
bf02ae41a9
Revert "Set ContentPresenter.DataContext in UpdateChild."
This reverts commit f3c7ea27a1 .
10 years ago
Steven Kirk
5ce57ad029
Fix menu separators.
10 years ago
Steven Kirk
22b495b1ac
Fix directional nav for non-virtualized lists.
Except Page Up/Down - these will need some extra code.
10 years ago
Steven Kirk
86dfadf514
Implement Home and End navigation.
10 years ago
Steven Kirk
95eefa3cf1
Implement AutoScrollToSelectedItem
For virtualizing lists.
10 years ago
Steven Kirk
d7a757385a
Fix failing tests.
10 years ago
Steven Kirk
ad9abd53c1
Fixed scrolling differently sized items.
10 years ago
Steven Kirk
0d32bc420c
Allow changing orientation in virt sample.
10 years ago
Steven Kirk
5346f20d81
Use correct ItemContainerGenerator for menus.
10 years ago
Steven Kirk
6d5b3e02c4
Added page up/down support to virt lists.
10 years ago
Steven Kirk
d0942f84a9
FocusNavigationDirection => NavigationDirection
And added page up/down.
10 years ago
Steven Kirk
37390e8b33
Don't create items immediately...
...in virtualized ItemsPresenters.
10 years ago
Steven Kirk
67647f925f
Tidied ScrollContentPresenter logic.
10 years ago
Steven Kirk
4c000b9ce4
Fixed ScrollContentPresenter.
Did not react correctly to child changing.
10 years ago
Steven Kirk
32760bbc08
Fix changing virtualization mode in theory.
That is; tests pass. In practise in the virtualization test app it still
doesn't quite work.
10 years ago
Steven Kirk
7e4f667d89
Fix PixelOverflow during arrange.
10 years ago
Steven Kirk
ae2ea31c6e
Allow changing virtualization mode in test app.
Not yet working correctly.
10 years ago
Steven Kirk
e8dd81fa20
Support horiz keyboard movement.
10 years ago
Steven Kirk
cba5200645
Fix keyboard nav with partially visible items.
10 years ago
Steven Kirk
81b66596c0
Use a full item's offset for overflow.
10 years ago
Steven Kirk
7a718ef9c2
Updated overflow algorithm.
10 years ago
Steven Kirk
acdf599dec
Initial impl. of scrolling with arrow keys.
- Currently only vertical implemented
- Doesn't handle partially visible items at end of list
10 years ago
Steven Kirk
f660da41c7
Fix virtualized list to taking up available space.
Previous commit was slightly wrong: too many controls were being created
for the list in VirtualizingTest.
10 years ago
Steven Kirk
71b3343097
Allow virtualized list to take up available space.
10 years ago
Steven Kirk
f3c7ea27a1
Set ContentPresenter.DataContext in UpdateChild.
Thus delaying any changes that changing the data context would make
until we know we have the correct child.
10 years ago
Steven Kirk
2cca250916
Move items in panel Children collection
Instead of removing and re-adding them as this causes a removal and
re-addition to the logical tree, with all the overhead that involves.
10 years ago
Steven Kirk
d717b46112
Fixed DevTools.
- Set `InheritanceParent` before Parent so that control doesn't
initially inherit the wrong DataContext
- Don't set `InheritanceParent` when setting `Parent` if
`InheritanceParent` already set
- Added `IDataTemplate.SupportsRecycling`
10 years ago
Steven Kirk
35c4835ae4
Recycle DataTemplates.
If a `ContentPresenter`s content is assigned a value which matches the
current `DataTemplate` then just change the
`ContentPresenter.DataContext` and the existing item will update itself.
10 years ago
Steven Kirk
fbb7ea759b
Make ItemContainerGenerator create containers
Make the untyped ItemContainerGenerator create `ContentPresenter`
containers when the data isn't a control. This is required for correct
binding to `DataContext` in a data template.
10 years ago