News for hackers. Stuff that matters.
Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @05:58PM (#12063523)
Hi all, I'm the originator of this project and the main contributor, please ask anything you like!

Though this did have to hit front page when I'm doing a day of travel didn't it? :)

Re:Avalonia – A multi-platform .NET UI framework by lossolo on Saturday July 09, 2016 @06:46PM (#12063687)
I was looking for something like this after .NET Core 1.0 announce. I am just waiting for it to be compatible with .NET Core. Any plans for making it compatible?

Great job!

Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @07:24PM (#12063810)
Yep! The main thing that's holding me back personally is that we'd have to convert our .csprojs to project.json... And then convert them back in a few months/a year when core moves back to .csproj. So seems like wasted effort to me right now...
Re:Avalonia – A multi-platform .NET UI framework by jsingleton on Sunday July 10, 2016 @04:47AM (#12064990)
Nice work. Looking forward to .NET Core support.

I assume this is the relevant issue? https://github.com/AvaloniaUI/Avalonia/issues/314

Re:Avalonia – A multi-platform .NET UI framework by joshburgess on Saturday July 09, 2016 @09:47PM (#12064196)
Why are they moving back to .csproj?
Re:Avalonia – A multi-platform .NET UI framework by samirageb on Saturday July 09, 2016 @10:46PM (#12064342)
Re:Avalonia – A multi-platform .NET UI framework by MichaelGG on Sunday July 10, 2016 @01:10AM (#12064634)
There was nothing wrong with csproj, apart from the MSBuild verbosity baggage. JSON's a terrible format for anything like this due to lack of comments and visual noise. (The mandatory quotes all over the place makes it hard to read.)

But I can't imagine it is hard to convert between them. Most .csproj's are basically a list of references and a <Compile><Include>*.cs.

Re:Avalonia – A multi-platform .NET UI framework by cm2187 on Sunday July 10, 2016 @05:28AM (#12065065)
For a non professional developer, it is almost entertaining to watch all the fads coming and going.

XML is fantastic, all data XML!

XML is horrendous. All data in JSON. I can't believed we were using this awful XML!

JSON is sooo lame. XML is the new JSON!

Same for languages, frameworks, programming patterns, etc...

Even more volatile than fashions.

Re:Avalonia – A multi-platform .NET UI framework by andybak on Sunday July 10, 2016 @08:17AM (#12065378)
While some people get a bit cargo cult about things there is a rough consensus that XML is good for some things and terrible for others whilst JSON is the exact reverse ;-)

I personally rather like YAML for anything intended for humans to read and edit.

Re:Avalonia – A multi-platform .NET UI framework by MichaelGG on Sunday July 10, 2016 @08:03PM (#12067906)
If XML didn't have those idiotic verbose closing tags, this probably wouldn't even be a discussion. Or if JSON had comments and didn't require quoting all keys.

What's funnier is seeing the HTTP/JSON folks re-invent SOAP. But maybe this time it'll actually be Simple.

Re:Avalonia – A multi-platform .NET UI framework by girvo on Sunday July 10, 2016 @02:08AM (#12064732)
> due to lack of comments

Visual Studio Code handles this by just allowing comments in JSON used for configuration, heh.

Re:Avalonia – A multi-platform .NET UI framework by MichaelGG on Sunday July 10, 2016 @08:01PM (#12067902)
In other words it handles this by not actually using JSON. Sorta proves the point.
Re:Avalonia – A multi-platform .NET UI framework by mwcampbell on Saturday July 09, 2016 @06:55PM (#12063710)
Do you have any plans to implement accessibility? On Windows, you should probably implement a UI Automation provider. For GTK-based platforms, I guess you need to use ATK. You'll need an accessibility API of your own to abstract over the multiple back-ends; maybe copy what Gecko has in its nsIAccessible and related interfaces.
Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @07:22PM (#12063804)
Yes this is definitely something we need to do. Unfortunately it's not something I'm very familiar with, but contributions welcome! ;)
Re:Avalonia – A multi-platform .NET UI framework by colejohnson66 on Saturday July 09, 2016 @09:02PM (#12064087)
Are there any plans to support styling so you can get a native look-and-feel on non "Modern" Windows operating systems?
Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @09:09PM (#12064103)
There's already https://github.com/picoe/Eto if you want to use native controls - if that's what you need go for it! But there's a need for both approaches IMO and hopefully Avalonia can start to fill one of those!

EDIT: Ah you edited your question: yes controls are fully styleable - the reason we've got the "modern" look so far is simply because it's easy! More themes, and "native" looking themes are definitely welcome.

Re:Avalonia – A multi-platform .NET UI framework by jsingleton on Sunday July 10, 2016 @04:49AM (#12064993)
It looks like Eto doesn't plan to support .NET Core. https://github.com/picoe/Eto/issues/457

But this might change if a framework like Avalonia adds Core support.

Re:Avalonia – A multi-platform .NET UI framework by yodon on Saturday July 09, 2016 @06:27PM (#12063632)
Any chance you plan on supporting UI's for Unity3d?
Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @06:33PM (#12063650)
Not really thought about unity in particular, but we do have game ui as a potential use-case.
Re:Avalonia – A multi-platform .NET UI framework by johnhattan on Saturday July 09, 2016 @08:49PM (#12064060)
Would this potentially work with Monogame, as that's built on the same framework?
Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @09:12PM (#12064112)
Honestly - no idea. However our backends are pluggable so in theory you should be able to adapt it.

However, I imagine our performance at the moment exclude use in games. It's something that needs to be optimized.

Re:Avalonia – A multi-platform .NET UI framework by c-smile on Saturday July 09, 2016 @09:38PM (#12064178)
What graphics backend do you use there?

If you want it to be used in games then on Windows, for example, Direct2D is the only reasonable option.

It will allow to render UI on layers inside DirectX 3D scenes: http://sciter.com/sciter-and-directx/

Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @11:43PM (#12064486)
Yep, we have a Direct2D backend (in fact that's our main one - the others are lagging behind a little)
Re:Avalonia – A multi-platform .NET UI framework by heinbau on Saturday July 09, 2016 @06:04PM (#12063543)
Anything around graphing yet? Or Is that still something that I would need to roll with SyncFusion, Telerik or something similar.
Re:Avalonia – A multi-platform .NET UI framework by grokys on Saturday July 09, 2016 @06:08PM (#12063558)
No not currently - were still working on the core at the moment, though I think we're just about ready for it now if anyone was interested in starting on it.
Re:Avalonia – A multi-platform .NET UI framework by govert on Sunday July 10, 2016 @01:55PM (#12066438)
Maybe Avalonia support can be added to OxyPlot (https://github.com/oxyplot/oxyplot/tree/develop/Source). It's already portable with a bunch of rendering targets.
Re:Avalonia – A multi-platform .NET UI framework by zem on Sunday July 10, 2016 @03:20AM (#12064844)
what is the support for custom controls like? (i.e. inheriting from a canvas and drawing themselves, while being added as a new widget type to the layout code.)
Re:Avalonia – A multi-platform .NET UI framework by grokys on Sunday July 10, 2016 @09:26AM (#12065491)
Custom controls are supported, although I'm not sure that inheriting from Canvas is the best way to do that. See e.g. https://github.com/Core2D/Core2D for an example of an application with lots of custom controls.
Re:Avalonia – A multi-platform .NET UI framework by wiso on Sunday July 10, 2016 @01:52PM (#12066420)
The support is great, you can see this example [1] of using custom rendering in Canvas being part of UI layout [2]. You can also see Avalonia in action here [3].

[1] https://github.com/wieslawsoltes/SpiroNet/blob/master/src/Sp...

[2] https://github.com/wieslawsoltes/SpiroNet/blob/master/src/Sp...

[3] https://youtu.be/wZK9MPR_UeE