/srv/irclogs.ubuntu.com/2017/02/03/#ubuntu-mir.txt

dufluWow. Easier to launch and debug Unity8 standalone than I expected. Win.09:29
=== marcusto_ is now known as marcustomlinson
duflugreyback: Launching unity8 standalone looks different. Missing pulldown, and now inexplicably in tablet mode too. How to I reset it to look like a proper desktop login?09:53
dufluAlso how to dismiss the tutorial? :)09:54
greybackduflu: "gsettings set com.canonical.Unity8 usage-mode Windowed"09:54
dufluCool ta09:54
greybackstrange that changed, I don't see any unity8 changes that would break those things on you09:55
greybackdismissing tutorial? I think you just gotta be tutored :)09:56
dufluEven stranger, sometimes the 12x slowdown Unity8 has compared to other servers just goes away09:56
greyback12x slower rendering? Input lag?09:56
duflugreyback: In production U8 is 10ms per frame, but demo servers are 0.8ms. However in debugging sometimes U8 occasionally becomes just as fast09:56
greybackunity8 is doing a lot more gl calls..09:57
dufluI know and am trying to debug it. 10ms per frame on a high-end server is a problem..09:57
greybackplease let us know what you learn09:59
greybackI've not done an optimisation pass of unity8 graphics in a good while now09:59
duflugreyback: Was only curious because I wanted to do something new to clear my mind of the week. Now looking at SVG profile graphs of Unity8 but not yet understanding...10:01
greybackduflu: this might help with high-level perspective, if you've not seen it before: http://doc.qt.io/qt-5/qtquick-visualcanvas-scenegraph-renderer.html10:02
dufluOh I forgot I need debug syms for this to be readable10:03
dufluAnd now it's the weekend10:04
greybackduflu: have a good one!10:06
dufluI give up. Bye10:09
anpoksometimes?10:14
=== marcusto_ is now known as marcustomlinson
hikikohi alan_g11:21
hikikoquestion :)11:22
alan_ghikiko: well, what is the question?11:22
hikikowhere should I start looking to write a client for mir? miral api or mir client api?11:23
hikikois miral something like a simplified mir server or a totally different program?11:25
alan_ghikiko: miral is, in principle, about writing servers.11:25
alan_gAlthough, there's some C++ wrappers for the client API in there that we need to split out as they are proving useful.11:26
hikikoyes, but I guess that if I need to have access to all mir features I need to run the mir server and start using the client API11:26
alan_gFor access to all the mir features you need to run miral-server. Unity8 is getting there (and does it more stylishly).11:28
alan_gYou writing C++ or C for this?11:29
alan_ghikiko: http://voices.canonical.com/alan.griffiths/2016/11/25/testing-for-mir/ and, if you're writing C++ you may want to use miral's miral/toolkit headers that wrap the Mir client API.11:31
alan_gWe ought to move those headers into a separate package, and probably to Mir.11:33
alan_g...one day there will be time!11:33
hikikoalan_g, does miral wraps every mir client function?11:33
hikikowrap*11:34
alan_gnope, originally only the ones I happened to need. Then dandrader started using them too...11:34
alan_gBut they don't replace, just simplify use and inter-work just fine.11:35
dandraderlike C++ version of  the client API I guess11:36
hikikoyeah11:37
hikikoI need to port the ozone platform on mir11:37
hikikoso I think it's better to use mir directly11:37
hikikoI might need most of the client functions11:37
alan_git's fine to use mir_toolkit directly, but that isn't a reason to avoid miral/toolkit11:38
alan_ghikiko: see for example, https://github.com/AlanGriffiths/mircade/blob/master/main.cpp#L141 - that calls a mir_toolkit API with a miral/toolkit Surface.11:43
hikikoso alan_g you suggest that I run miral server11:44
hikikoand I use miral where I can11:44
hikikoand mir_toolkit11:44
hikikowhen miral doesn't have a wrapper?11:45
alan_ghikiko: running miral-server is easy: sudo apt install miral-examples && miral-app11:45
hikikoand when I need to use a mir_toolkit functionality that isn't wrapped by miral, will I be able to use it with miral-server?11:47
hikikoor I need mir server for that case?11:47
hikiko#include <miral/toolkit/surface_spec.h>11:47
hikiko#include <mir_toolkit/mir_buffer_stream.h>11:47
hikikoI see here you combine miral and mir_toolkit11:48
hikikoso I guess that the miral-server can receive mir-server requests11:48
hikikois this correct?11:48
alan_gmiral-server is a mir server (and implements the most features)11:48
alan_gthe miral/toolkit headers just make using the client-side mir_toolkit more convenient.11:49
alan_gThey can be used in any mir client.11:49
alan_gAnd  work against all mir server11:50
hikikoso, if I find out that something I need desperately is not in miral-server yet I can just run mir keeping the mira/toolkit headers in my program?11:51
hikikoI mean11:51
hikikothe client will still be running on mir without changes?11:51
hikiko(if that's the case then I go for miral :D) I want to be sure that if I use miral I won't have to switch to mir in the future because something I need from mir isn't there11:52
hikikoor if I switch, what I've written in miral/toolkit will still be working11:53
hikikoit seems that miral can do that, correct?11:53
alan_gmiral/toolkit depends only on the mir/toolkit API, it doesn't need a miral server, just any mir server.11:54
hikikothen that's great :) I'll start with miral-server miral/toolkit and I'll use mir_toolkit when necessary and then we see if I need to swap servers :)11:55
hikikothanks alan_g11:55
alan_gThe easiest mir server to test with is miral-shell (used one of the scripts miral-app or miral-desktop). But you should also test with Unity811:56
alan_ghikiko: if you find stuff missing from the miral/toolkit wrappers, please MP it for everyone to use.11:57
* alan_g resolves logs bug 166158412:01
ubot5bug 1661584 in MirAL "split miral/toolkit out of libmiral-dev as it doesn't belong" [Low,Triaged] https://launchpad.net/bugs/166158412:01
dandraderalan_g, is thre any difference between mir_create_input_method_window_spec() and mir_create_window_spec()+mir_window_spec_set_type()+mir_window_spec_set_width()+mir_window_spec_set_height() ?13:08
=== dandrader is now known as dandrader|afk
alan_gdandrader|afk: yes, it defaults buffer usage and pixel format13:37
=== dandrader|afk is now known as dandrader
alan_gdandrader: in case you've not found it yet: https://bazaar.launchpad.net/~mir-team/miral/trunk/view/head:/include/miral/toolkit/window_spec.h#L12414:00
dandraderalan_g, did you just push this?14:01
alan_gA few hours ago - after the MP got approved14:02
dandraderalan_g, I had to stop using miral::WindowSpec as it has no equivalent to mir_create_window_spec()14:03
dandraderalan_g, besides some other methods14:04
alan_gmiral::WindowSpec spec{mir_create_window_spec(...)}14:04
dandraderalan_g, and going back and forth between miral::WindowSpec and MirWindowSpec makes the code confusing14:04
* dandrader looks14:04
alan_gYou can use miral::WindowSpec anywhere you use MirWindowSpec*14:05
dandraderalan_g, ah, you call mir_create_window_spec() WindowSpec::for_changes in miral. a bit confusing14:06
alan_gWell, that is the original intent. It is a PITA to use it to create things as it doesn't init various default values14:08
=== dandrader is now known as dandrader|afk
=== dandrader|afk is now known as dandrader
=== dandrader is now known as dandrader|afk
=== dandrader|afk is now known as dandrader

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!