I'm curious, why create a new GUI toolkit from scratch rather than doing a new, modern .NET wrapper over something mature like Qt or even WinForms? Is there a big advantage to having the widgets themselves implemented in .NET?
I ask because there's a lot more to a GUI toolkit than meets the eye, particularly when it comes to accessibility and (I'd guess) internationalization.
I hesitate to guilt-trip, but if anyone actually uses Perspex for real applications, and it doesn't implement the platform accessibility APIs, then some people (e.g. blind people) won't be able to use the application at all
Not really; sorry. I haven't done much work on the application/toolkit side of the accessibility APIs, though I did do some work on the Windows port of WebKit a few years ago. The fact that Perspex is built on observable properties should help already.
Oh, one other tip: Using the OS default theme (e.g. via UxTheme.dll on Windows) is also important for accessibility, for a different set of users; people who are visually impaired but not totally blind sometimes change their color scheme.
@grokys If I were to abstract the various platform accessibility APIs into a multi-platform library with a C API, would you use that library, or would you implement each platform's API directly in C# anyway?
I mean, if you actually take Perspex to the point where accessibility would even matter