These are chat archives for AvaloniaUI/Avalonia

20th
Nov 2015
Weston
@ronnyek
Nov 20 2015 18:27 UTC
did you guys ever upload a sample of app for running perspex in ios apps?
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:30 UTC
We don't have one
I've only got rendering backend working there so far
There is an old unmaintained version through
That have been never merged to master
Weston
@ronnyek
Nov 20 2015 18:31 UTC
oh and everything still relies on xamarin
thats the peice I was lookign for
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:32 UTC
Yeah
And it will be for a long time
At least for iOS
Weston
@ronnyek
Nov 20 2015 18:32 UTC
boo
oh well =)
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:32 UTC
We have some ideas how to run on android without using any xamarin libs
And even without using JNI
Weston
@ronnyek
Nov 20 2015 18:32 UTC
yeah
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:32 UTC
But that's will be UI-only
Weston
@ronnyek
Nov 20 2015 18:33 UTC
I dont even know if you guys we targeting perspex for that
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:33 UTC
And I don't think we should bother with that before 1.0
There is NativeActivity class in android that allows you to handle input using only C/C++
Basically we need to implement our IWindowImpl interface using NativeActivity in C++
And then load managed app using libmono
That app can even target .NET 4.5
Weston
@ronnyek
Nov 20 2015 18:35 UTC
oh cool
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:35 UTC
It becomes tricky with iOS
Weston
@ronnyek
Nov 20 2015 18:35 UTC
I'm fond of what xamarin achieves
not fond of xamarin or their licensing
haha
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:36 UTC
Since we'll need to somehow wire up Mono's AOT with xcode
Weston
@ronnyek
Nov 20 2015 18:36 UTC
yeah, isnt that exactly what they do?
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:36 UTC
yeah
The other problem is that mono runtime is LGPL-licensed
We can't use Mono to run our code there
So we'll somehow need to make coreclr run on iOS
That's the real issue
I'm not even sure that Mono's AOT can be compatible with coreclr
It might be better to wait for some solution from MS
Weston
@ronnyek
Nov 20 2015 18:38 UTC
yeah
not sure ms gives a shit about that to be honest
and I totally wouldnt blame em
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:38 UTC
Well, they are developing LLVM-backend for their C++ compiler
Weston
@ronnyek
Nov 20 2015 18:39 UTC
and targets for c# afaik
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:39 UTC
.NET Native might be able to target LLVM in the future
if thats not the ms one, they do have one
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:40 UTC
Nope, not this one
This one doesn't work and experimental
It might be available sooner through
Weston
@ronnyek
Nov 20 2015 18:42 UTC
Are the days of Microsoft's proprietary compiler over? Microsoft has announced they've started work on a new .NET compiler using LLVM and targets their CoreCLR — any C# program written for the .NET core class libraries can now run on any OS where CoreCLR and LLVM are supported. Right now the compiler only supports JIT compilation but AOT is being worked on along with other features. The new Microsoft LLVM compiler is called LLILC and is MIT-licensed.
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:42 UTC
Ehm
Weston
@ronnyek
Nov 20 2015 18:42 UTC
thats from slashdot fwiw
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:42 UTC
They were over several years ago
Because, you know, Roslyn
LLILC isn't C# compiler
It's MSIL->LLVM bytecode translator
Weston
@ronnyek
Nov 20 2015 18:43 UTC
well I just read some blog post about building stuff for llvm support complaining about performance of llvm garbage collection crapola
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:43 UTC
TL;DR: We might be able to avoid using Xamarin in the future, but currently aren't able to do that with iOS at all
Xamarin-less Android build is totally possible even right now, but I don't think that we should invest time in it at current point
Because we don't even have proper touch handling infrastructure and all that stuff is really volatile right now
We need wait for things to get stabilized
Weston
@ronnyek
Nov 20 2015 18:48 UTC
well what was the initial target for you guys
cross platform desktop apps?
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:48 UTC
Write once, run everywhere, burn Xamarin.Forms with fire
Weston
@ronnyek
Nov 20 2015 18:49 UTC
does that even make sense when it comes to xamarin being required for mobile support?
or can you do that with free xamarin stuffs
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:49 UTC
It totally does
Have you tried to build an app using Xamarin.Forms?
It's not their licensing that sucks
Weston
@ronnyek
Nov 20 2015 18:50 UTC
no I havent
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:50 UTC
It's just horrible to have UI toolkit per platform
Xamarin.Forms tries to give you a common denominator for mobile UI toolkits
Weston
@ronnyek
Nov 20 2015 18:50 UTC
wtf I thought they had a few lowest common denominator controls
(lol)
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:50 UTC
But fails miserably, because that was a bad idea in the first place
Weston
@ronnyek
Nov 20 2015 18:51 UTC
yeah
Nikita Tsukanov
@kekekeks
Nov 20 2015 18:51 UTC
If you need to customize look&feel, you need to go deeper and face native controls
So that madness returns
And at some point you have spagetti made from native controls, xforms, bindings and a bunch of hacks to glue everything together
Xamarin itself is fine
Having to deal with native UI toolkits isn't
Well, it can't be worse than dealing with GTK, but still
Weston
@ronnyek
Nov 20 2015 21:17 UTC
you guys ever get the tinywm stuff integrated
?
Nikita Tsukanov
@kekekeks
Nov 20 2015 21:19 UTC
Nope, still planned
We needed an actual mobile backend to work with
Johan Larsson
@JohanLarsson
Nov 20 2015 21:20 UTC
Have any of you used the MetadataStore?
Nikita Tsukanov
@kekekeks
Nov 20 2015 21:21 UTC
Does not work fo us
at all
Johan Larsson
@JohanLarsson
Nov 20 2015 21:25 UTC
I want to write a custom d:Attribute, dunno if metadata store is right
Have a feeling they store nasty things in there :)
Weston
@ronnyek
Nov 20 2015 21:52 UTC
I still think I want to get a reference implementation running perspex running on android linux, without bionic crapola
effectively end up with coreclr+perspex simplistic embedded os
dont know fi that means I'll need to have a compositor like weston with wayland at that point or not
Nikita Tsukanov
@kekekeks
Nov 20 2015 22:06 UTC
Mir/Weston support EGL
libfreetype is supported by Skia
We'll need libhybris to isolate android
Or we can somehow try to access DRM directly
That way we won't need external compositor
I'm not sure that it will be usefull through
Nikita Tsukanov
@kekekeks
Nov 20 2015 22:16 UTC
@grokys Why KeyboardDevice/MouseDevice are abstract?
Weston
@ronnyek
Nov 20 2015 23:02 UTC
I think egl / skia can talk to drm drivers
b ut yeah
I agree ttotally that its limited application to anyone but me