These are chat archives for AvaloniaUI/Avalonia

9th
Mar 2016
danwalmsley
@danwalmsley
Mar 09 2016 09:27
@grokys iv just noticed some bindings seem to have broken
selecteditem binding on dropdown
Steven Kirk
@grokys
Mar 09 2016 09:35
hmm, ok.
danwalmsley
@danwalmsley
Mar 09 2016 13:39
yeh bindings is definitely broken big time, my IsExapanded binding is also broken so I cant expand / collapse stuff in tree view, well I assume its bindings, but it might be something under the hood in controls.
Steven Kirk
@grokys
Mar 09 2016 13:47
is it only in the very latest nuget?
danwalmsley
@danwalmsley
Mar 09 2016 14:03
last 2 or 3, I can go back and see where it breaks
give me a little time to check
Jason Jarvis
@jazzay
Mar 09 2016 16:38
@grokys I spoke with @kekekeks and we decided that it was ok for me to start contributing to getting SkiaSharp port up and running. So I will be creating a branch to do so, unless you have any objections.
Steven Kirk
@grokys
Mar 09 2016 16:38
no objections whatsoever, that would be fantastic
Jason Jarvis
@jazzay
Mar 09 2016 16:39
cool. I am eager to get the iOS platform working better ;)
Steven Kirk
@grokys
Mar 09 2016 16:39
yeah. it would be nice to port the mobile test apps to use xaml as well
Jason Jarvis
@jazzay
Mar 09 2016 16:40
yah I was trying to do that recently but the current Skia implementation is fragile
danwalmsley
@danwalmsley
Mar 09 2016 17:08
@jazzay awesome i'll be checking your branch out soon then
danwalmsley
@danwalmsley
Mar 09 2016 19:17
@grokys do you need a repro for the issue with binding?
Steven Kirk
@grokys
Mar 09 2016 19:18
please, if you have a simple one
danwalmsley
@danwalmsley
Mar 09 2016 19:18
il see if it affects Perspex test app
Steven Kirk
@grokys
Mar 09 2016 19:19
thanks - i'm busy trying to track down a leak before i go away for 4 days ;)
danwalmsley
@danwalmsley
Mar 09 2016 19:22
@grokys ok it happens in the test app
just goto the lists tab
and try to change the drop down to select another item
you cant change it
so its probably not a problem with binding just the controls
i bet its some really quick thing
Steven Kirk
@grokys
Mar 09 2016 19:23
ahh - ok, thanks! yeah, hopefully simple!
will look at that now
danwalmsley
@danwalmsley
Mar 09 2016 19:24
no rush, though I can wait if you want to find your leak first
Steven Kirk
@grokys
Mar 09 2016 19:36
man, that was not only simple, it was also very stupid ;)
Perspex/Perspex@ac0a782
danwalmsley
@danwalmsley
Mar 09 2016 19:38
awesome i'll give it a go once build finishes
thanks for sorting that
Andrey Kunchev
@donandren
Mar 09 2016 19:46
Hi @grokys , I've a question about the unittests and set a template of a control being tested
Steven Kirk
@grokys
Mar 09 2016 19:47
sure
Andrey Kunchev
@donandren
Mar 09 2016 19:48
in unit tests for Layouttransform I'm initializing the template via this code
            Template = new FuncControlTemplate<LayoutTransformControl>(
                            p =>
                            {
                                var c = new ContentPresenter() { Content = p.Content };
                                //we need to force create visual child
                                //so the measure after is correct
                                c.UpdateChild();
                                return c;
                            })
for example if i don't call UpdateChild() of ContentPresenter
next measures of the control are zeroes
always
I know why this is happening
Steven Kirk
@grokys
Mar 09 2016 19:49
yeah, the content presenter child is usually only created when the ContentPresenter is attached to a visual tree
Andrey Kunchev
@donandren
Mar 09 2016 19:49
the reason is in ApplyTemplate of the ContentPresenter
yes
is there other way to overcome this problem instead call UpdateChild
Steven Kirk
@grokys
Mar 09 2016 19:50
the reason for that is, a DataTemplate is needed and they come from the logical tree
there's not a nice way, no
or you can add a TestRoot control as a parent of the control you're testing
Andrey Kunchev
@donandren
Mar 09 2016 19:53
ok so it's not a problem the code to reamin this way or you prefer it otherwise
Steven Kirk
@grokys
Mar 09 2016 19:54
personally i'd make the call to UpdateChild outside the template because it's not actually part of the template
the way that i do it in the link above
Andrey Kunchev
@donandren
Mar 09 2016 19:54
ok I can change it, it's not an issue
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:04
@grokys TreeView expanding is broken :(
danwalmsley
@danwalmsley
Mar 09 2016 20:05
@wieslawsoltes I think thats the same bug he just fixed for me
drop downs were also affected
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:06
well this is happening in 1262-nightly
also in DevTools
danwalmsley
@danwalmsley
Mar 09 2016 20:06
ah still happening
for me some items are expanding and some not
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:07
I can expand by setting IsExpanded but otherwise is broken
danwalmsley
@danwalmsley
Mar 09 2016 20:07
I think thats what im seeing too
yep
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:09
expanding using Keyboard shortcuts works
Steven Kirk
@grokys
Mar 09 2016 20:10
hmm, i really screwed things up recently didn't I?
got to deal with something at work, will take a look soon
Steven Kirk
@grokys
Mar 09 2016 20:34
ok, that should be fixed
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:34
why in this case Direct property is used ?
does this affect binding in any way
Steven Kirk
@grokys
Mar 09 2016 20:35
it's a bit of a complex one
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:35
will this work ?
                <Style Selector="TreeViewItem">
                    <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"/>
                </Style>
Steven Kirk
@grokys
Mar 09 2016 20:36
this blog post i wrote kind of explans it: http://grokys.github.io/perspex/perspex-binding-priorities-part-3/
though the details are out of date, and the new solution to the problem is the use direct properties
but yes, that will still work
you can actually style direct properties
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:37
its bit confusing for me sorry ;)
Steven Kirk
@grokys
Mar 09 2016 20:37
yeah, i know
i wish i could think of a way to make it simpler
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:38
so when creating perspex properties (not attached) the preferred are Direct ?
Steven Kirk
@grokys
Mar 09 2016 20:38
no, it depends
it comes from the fact that we're conflating two concepts with properties
there are styled properties like in CSS where the most recently added binding takes precedence
this is needed for our CSS-like styling system to work
these are StyledPropertys as the name suggests
so if you bind A to property P and then bind B to the same property, then only B will have effect (as long as it's not producing PerspexProperty.UnsetValue)
the BorderBrush value in Button:pointerover /template/ ContentPresenter is added as a binding to the button
when the styling system detects that the :pointerover class is present, it will produce the {StyleResource ThemeBorderMidBrush} value
Steven Kirk
@grokys
Mar 09 2016 20:43
when that class is not present it will produce PerspexProperty.UnsetValue
which means that the earlier added value of {TemplateBinding BorderBrush} will take affect
make sense?
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:45
yeah I now understand StyledProperty :)
Steven Kirk
@grokys
Mar 09 2016 20:46
ok, but the problem that you were seeing comes from here:
so a two-way binding is set up between the |> toggle button and IsExpanded
but then you also bind it in here:
                <Style Selector="TreeViewItem">
                    <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"/>
                </Style>
so that one always takes precedence!
which means... clicking the button does nothing
clear so far?
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:48
I hijacked the toggle button behavior :smile:
Steven Kirk
@grokys
Mar 09 2016 20:48
ha, yeah kinda!
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:48
yes clear
Steven Kirk
@grokys
Mar 09 2016 20:48
so in this case, we don't want CSS-like binding precedence
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:48
so StyledProperty is indended to use when using Selector's
Steven Kirk
@grokys
Mar 09 2016 20:49
yeah kinda - it should be used for things that are related to style, not function
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:49
that makes sense and is clear now
and this type of property may be useful in some scenarios
Steven Kirk
@grokys
Mar 09 2016 20:50
yeah - because DirectProperty is just a field, it doesn't maintain a list of prioritized bindings
it just takes the last value it was given
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:51
ok but most important for me it works with bindings
one more question
what about the
        public static PerspexProperty<double> ZoomSpeedProperty =
            PerspexProperty.Register<PanAndZoom, double>("ZoomSpeed", 1.2, false, BindingMode.TwoWay);
should I use PerspexProperty or DirectProperty here
Steven Kirk
@grokys
Mar 09 2016 20:52
you could use either
if you're not having the problems that we just saw, other factors come into play in choosing the type of property to use
there was a doc that explained them
but it seems to have disappeared since the docfx change
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:54
its in wiki
I was thinking to move the wiki docs to docfx
Steven Kirk
@grokys
Mar 09 2016 20:54
oh no - it's still there
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:56
look like the docfx is bit different
Steven Kirk
@grokys
Mar 09 2016 20:56
yeah, it's more recent
we should delete the wiki one
deleted
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:57
ok thanks for explanation
Steven Kirk
@grokys
Mar 09 2016 20:57
the reason that you don't come across the problem in WPF is that it doesn't have a CSS-like system
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:57
this helps when I browse the Perspex code
Steven Kirk
@grokys
Mar 09 2016 20:58
the reason you don't come across it in HTML/CSS is that there are two separate sets of properties
CSS properties and DOM properties
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 20:59
I do not use HTML/CSS a lot
Doing UI in HTML is pain
Steven Kirk
@grokys
Mar 09 2016 21:00
i do quite a lot - in some ways it's more difficult, but in some ways a lot better than WPF
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 21:00
I just like more XAML way
Steven Kirk
@grokys
Mar 09 2016 21:00
though with polymer, a lot of the downsides are eliminated
i like both ;)
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 21:01
well maybe in future Perspex could run in browser ;)
C# -> C++ -> JavaScript :worried:
Steven Kirk
@grokys
Mar 09 2016 21:02
haha, oh god no
i don't want to have to debug that! ;)
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 21:04
oh and I wanted to say that look like performance is getting much better after last few days
Steven Kirk
@grokys
Mar 09 2016 21:10
yeah, i've been working on it quite a bit
there's more to come!
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 21:13
this is great even without Grid fixes it feel much smoother
Steven Kirk
@grokys
Mar 09 2016 21:14
in doing it, i'm finding bugs too
so all good
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:20
seems I am finished with span algorithm at last
but during testing I found some strange issues in test app
first - im first time measure size width is huge - more than 4000 px
after window resizing it becomes normal
Wiesław Šoltés
@wieslawsoltes
Mar 09 2016 21:21
@grokys I have found possible bug, the ScrollBar is not working when you do click+drag, the mouse wheel works
Steven Kirk
@grokys
Mar 09 2016 21:22
grrrr - i guess it's the same problem
these things are showing up because i fixed a bug that was masking them
@QuantumDeveloper cool - any idea why first measure is wrong?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:23
and one more issue is regarding Grid in layout tab. It`s not rendering correctly, but I am pretty sure measuring and arranging algorithm is correct.
I tested the same Grid with my app and it renders as expected
@grokys have no idea - it just arrives to the grid already with such size. Its not grid issue, i think
after window resizing Grid receive correct available size and start working correctly)
Steven Kirk
@grokys
Mar 09 2016 21:32
if it's not a grid issue, how come it works now?
are you cross-checking behavior against WPF's Grid?
you must realise that Grid is really central to a lot of layouts, so it needs to be rock-solid
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:35
yeah, I know that
Steven Kirk
@grokys
Mar 09 2016 21:36
btw, is there anywhere we can see the work so far?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:36
if it's not a grid issue, how come it works now?
Now it works after first resizing
Previous algorithm worked in completely different manner, so it could fix some issues by the cost of performance (I guess)
Steven Kirk
@grokys
Mar 09 2016 21:37
what i mean is: the current Grid works
do you understand why the current Grid works and your Grid doesnt?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:37
maybe because of magic in that loop from 0 to 6)
Steven Kirk
@grokys
Mar 09 2016 21:37
haha
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:38
because each loop it reasiign size to the grid rows and cols
so, maybe that fixed somehow this issue
Steven Kirk
@grokys
Mar 09 2016 21:38
have you created the unit tests we spoke about, where you can compare WPF's grid and your grid?
that might help if you haven't
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:40
not yet. I was trying to solve all visible issues first.
But if your unit tests are ready at some point we could use them
Steven Kirk
@grokys
Mar 09 2016 21:40
those unit tests are like our current Grid implementation: impossible to understand ;)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:41
hm
WPF grid behaviour also not always obvious
Steven Kirk
@grokys
Mar 09 2016 21:41
yeah, i know
there was a reason i didn't try to write Grid myself ;)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:41
hehe
Steven Kirk
@grokys
Mar 09 2016 21:42
i mean maybe we could say "our grid works differently to WPF's" deal with it
but i think people would then get upset
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:42
I am pretty sure I have reached some good results for my first implementation of controls with such hard logic)
Steven Kirk
@grokys
Mar 09 2016 21:43
ok, is it in a fork? i can't see one on your profile
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:43
and I could guarantee that you will have significantly performance boost at dev tools)
I didnt make forks, but this is not a problem to make one or I could make a PR?
Steven Kirk
@grokys
Mar 09 2016 21:45
sure, do both
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:46
ok
Steven Kirk
@grokys
Mar 09 2016 21:46
please though: you'll have to be patient getting this into perspex, as it's such a core thing
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:46
yeah, I understand
Steven Kirk
@grokys
Mar 09 2016 21:46
thanks for your work so far though!
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:46
I am not 100% sure there is no fatal bugs)
BTW, I found an issue with GridSlitter
Steven Kirk
@grokys
Mar 09 2016 21:47
well the first thing is to get rid of the 4000px bug ;)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:47
seems in some conditions it could pass negative values
Steven Kirk
@grokys
Mar 09 2016 21:47
ok. yeah, gridsplitter is a bit broken
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:47
which will lead to exception
so, I recomment just add check to value
Steven Kirk
@grokys
Mar 09 2016 21:48
it came from a pull request and i think it needed a bit more work before we merged it
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:48
and if it less than 0, just make value 0
Steven Kirk
@grokys
Mar 09 2016 21:50
ok, if you have a fix, please make a separate branch for it from your grid branch and submit a PR (with a unit test preferably!)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 21:59
yeah, really
just looking at old implemenattion of the grid
first measure for the first grid is - 4476 * 1053
but because of hacky logic noone seems noticed that
Steven Kirk
@grokys
Mar 09 2016 22:04
so on the first Measure, the existing grid returns 4476 * 1053 as its DesiredSize?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:08
yeah, thats right
because in main grid you have star row and coluns
so, grid must expand them on available width and height
I think window sends incorrect size for measure to the grid at first time on some reason
Steven Kirk
@grokys
Mar 09 2016 22:13
on the first measure, Window will send MaxClientSize as the availableSize
what this is saying is: "this is the largest a Window can be, tell me how big you are"
remember that the availableSize passed to Measure is the size available
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:14
but why it is so? Does WPF do the same?
Steven Kirk
@grokys
Mar 09 2016 22:15
i imagine so
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:15
ok
Steven Kirk
@grokys
Mar 09 2016 22:15
as for why: "the availableSize passed to Measure is the size available"
you can pass infinity to Measure
which means "be as big as you want to be"
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:15
with infinity its much simpler)
because in that case all stars become auto)
Steven Kirk
@grokys
Mar 09 2016 22:17
yeah, but a window in fact has a maximum size
that comes from the OS...
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:17
ok, following the grid logic how gris must understand that available size is not fully available?
Steven Kirk
@grokys
Mar 09 2016 22:17
i have no idea!
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:17
exactly)
there is no way to find out this
Steven Kirk
@grokys
Mar 09 2016 22:18
how does the current grid work then?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:18
I have no idea also
Steven Kirk
@grokys
Mar 09 2016 22:18
by anyway, the available size is fully available
a window can be that big
you might want to try comparing against WPF
maybe it doesn't pass the maximum window size
though i seem to remember that i checked before i implemented that, and it did
but if it shouldn't pass that size, what size should it pass?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:20
infinity?
Steven Kirk
@grokys
Mar 09 2016 22:21
but a window's maximum size isn't infinity...
try WPF, see what it does there
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:22
how exactly check that use case in WPF?
Steven Kirk
@grokys
Mar 09 2016 22:24
override Windows MeasureOverride or MeasureCore
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:25
ah, ok
hm
I see 1440*759
for the window withuot width and height
and if I set width and height, that values will come to the measure
Steven Kirk
@grokys
Mar 09 2016 22:27
and in Perspex?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:27
and this is completely logic, I think
Steven Kirk
@grokys
Mar 09 2016 22:28
(sorry, i would try myself but i'm in the middle of something)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:28
hehe)))
I see that it just ignore width and height at first time, but in second and others it sends correct values, I think. Thats why after first resize grid start working correctly
Steven Kirk
@grokys
Mar 09 2016 22:31
hmm ok
but if you don't set Width and Height?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:32
the same behaviour
Steven Kirk
@grokys
Mar 09 2016 22:33
same as WPF?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:35
no, same as Perspex before)
Steven Kirk
@grokys
Mar 09 2016 22:36
ok, i'm confused
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:36
BTW, if set sizeToContent on the window in WPF to width and height - it will send infinity as available size
Steven Kirk
@grokys
Mar 09 2016 22:37
no, same as Perspex before)
what do you mean by this? what are the values?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:37
the same
completely
Steven Kirk
@grokys
Mar 09 2016 22:37
AS WHAT?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:37
because regardless of the size, you pass max window size first
Steven Kirk
@grokys
Mar 09 2016 22:38
and WHAT ARE THOSE VALUES? JUST TELL GIVE ME NUMBERS :)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:38
4476 * 1053 at first measure and
1240*720
Steven Kirk
@grokys
Mar 09 2016 22:39
hmm, ok. i wonder where those numbers are coming from
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:39
as I said before - results the same regardless of will I set width or height or not
which numbers exactly?
Steven Kirk
@grokys
Mar 09 2016 22:40
4476 * 1053
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:40
you said that this is max window size?
var desired = base.MeasureOverride(availableSize.Constrain(_maxPlatformClientSize));
no?
Steven Kirk
@grokys
Mar 09 2016 22:41
yeah, they should come from windows itself: SM_CXMAXTRACK and SM_CYMAXTRACK
which are the largest sizes for a window
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:41
I think they are)
Steven Kirk
@grokys
Mar 09 2016 22:41
but why is WPF passing 1440*759 i wonder? where do those numbers come from?
just tested - on my machine the max window size is passed as 1940x1100 which makes sense
WPF however passes infinity
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:44
WPF paases infinity only if sizetocontent is set
as far as I can see
if no, it pass straight values
I think it calculate them according to the screen resolution maybe
Steven Kirk
@grokys
Mar 09 2016 22:44
yeah, i've got SizeToContent set
ok, so we've decided that WPF's behavior is correct?
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:45
so, I was right, you need to pass infinity to the measure
Steven Kirk
@grokys
Mar 09 2016 22:45
ok
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:45
or just width and height of the window depending on sizetocontent
Steven Kirk
@grokys
Mar 09 2016 22:45
yeah, we can do that
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:46
I think in that case grid must be measured correctly
just simulate that
yeah, I was right
Steven Kirk
@grokys
Mar 09 2016 22:49
ok, if you want to make that change, you'd make it here: https://github.com/Perspex/Perspex/blob/master/src/Perspex.Layout/LayoutManager.cs#L143
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 22:50
but there is one issue with infinity and that grid
in case of infinity current main grid structure will be broken, because stars will be changed to auto
Steven Kirk
@grokys
Mar 09 2016 23:00
ok, ScrollViewer should be fixed
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:07
Perspex/Perspex#469
If someone want to add something, It will be very good
Steven Kirk
@grokys
Mar 09 2016 23:13
coooool!
will be next week by the time i can take a proper look
but interested to see it in action!
i notice there are no tests though :(
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:14
now everyone could see it in action if he wants)
yeah, before test writing we must know what we exactly expected to see in each case
Steven Kirk
@grokys
Mar 09 2016 23:15
well, we do ;)
i think you might have missed the lesson on test driven development ;)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:16
then i need a use cases )
Steven Kirk
@grokys
Mar 09 2016 23:16
WPF grid!
the existing Grid!
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:16
heh
Steven Kirk
@grokys
Mar 09 2016 23:16
the passing tests in the grid-test branch!
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:17
BTW, yeah
Steven Kirk
@grokys
Mar 09 2016 23:17
there's loads of places to find Grid tests ;)
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:17
I think the best way is to start from grid-tests branch
Steven Kirk
@grokys
Mar 09 2016 23:17
yeah - i wouldn't recommend using the tests there as they are
as they are hacked to fit into Perspex
but you could maybe take some of them
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:18
I will look
and below that line
they could easily be ported
but all the CreateAsyncTest stuff - don't port that, it's horrible
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:20
ok
thanks for the hint
Steven Kirk
@grokys
Mar 09 2016 23:21
thanks for the work!
Denis Zaporozhets
@QuantumDeveloper
Mar 09 2016 23:23
welcome, but its not clear understand does my work good enough
Steven Kirk
@grokys
Mar 09 2016 23:31
yeah, that will have to be seen
it works with all the sample apps though?
and the devtools?