because you i think everything that talking on the so question you know i can join us like product this year i so you know nice easy question this talk with what's your sixty second package for while and better that's a so that that's common question in this one that that's always hard times of but i think the key idea is that if you look at the way most modern uses a mix use X today isn't that they've don't actually use X we have a composite or that that's responsible for presenting everything on screen and we have clients that really just wanna put push your content to the composite are and it find we have input going into the X to which we don't know with window we should be going to and in the middle there's the X i was sitting there trying to talk clients and talk to composite or with an external process but what we were you want to build today second possible the talks directly to the kinds not had any middle name that sits there and doesn't do anything so it it's a big part of the idea is to just cut out there's this big old me demanding and get a straight path five to composite are and we got a lot of in small benefit from this and big benefits in the in the process you know what the basic idea is that if we look at the system we have today and if we were to design a graphics that tools to support that user experience there's just no way you wind up inexorably to okay thank you know the more than six seconds by get like so you know what way to form of this one side a few questions prepared but anytime i wanted to get some questions to think that or question myself of an owl and so if you do any questions please makes visible we when we have a question again so first question gets is michael sorted you can think about a nice mission which is you know and who there might be the i so do you said you see when in the dark as it the X eleven you know what you she's it key advantages well i think it is a competitive to X in many use cases but and you can you can state it like that you can say is wailing competing with X because there is there are two different especially but if you look at it in this case like don't shell and yes we could definitely use X M use brain and if there's a comparison we can make their if you're using thilo be among it has to be happy with you do timit exterm there's no reason you should switch to wait and we can improve that situation for that use if you're building a new system for automotive in entertainment in your car then if you're building a clean slate system there you can also use weight and we can make the same comparison they're not does this way to get other and so would you say is the way to direct compared to tell you it in some sense that that's nothing in there that that's try to them at the school where you can use weighted it's not time for just a bone formal but only but at the same time is a different system and you can you can make the comparison for a given you know open when we point of the spectrogram you see the model come amount in terms of these of underlying stack them used on that and building on exactly the same underlying technologies the more taxes bill on data sharing resources and very bugs yep so that was a lot of what and one of the really it is a brilliant is that we have a in for infrastructure now that's great of into modular components all the hard stuff about painting input viruses don't you get three drivers so independent a big star can be used and came yes "'kay" misses most addicts bit of the X to is that we can use it without having to bring up a next over of course on the clients that we for a long time moving we things out of exhibiting two times font rendering hydro is it'll as a five hundred are now so all the all this complexity has moved out of clients or how to fix the rain to as well eight zero in two times in the online stack we can we can now scale that bring of a different place so it's a this is wise feasible that old we talk different space to because all the hard not think it's now market right everybody libraries a private so we can see are the the driver running driver rider really for we can see are the libraries retyping our way one go all the stuff this year we will have a lot of the same basic we just have and what lot of active of mixes what we from but i mean you don't think some events you don't know what recently on that trying to avoid some of the some of the problem we have an X M S between the compose the you know a extensions to a for you know in hot rendering and shoulder we kind of get tools manage the weighted manager of every frame is perfect and X do you know that do you think that there is just immiscibility need all waited given the improvements you be making to the composite and that there is no individual problem you can't solve the next are like a little bit better with the break ticket working for three eight when a rabbit it done well the resizing in that you're taking away the who is not a probably what said okay i have we don't create my window resize like that too but i mean the thing is you know it's not every problem individually eventually the number of messages in a context which is and just draw to have so you doing in there really becomes unattainable and you know some things are really easy to do with max and some things are really hard i mean there are things where they get with waylon that would require whole new X extensions and of just the all you know i'm really looking for that year we don't sell say i no longer have to talk the X server whenever i want to do something to display hardware i connected this access to display hardware instead of like sending everything process X interface it's not that we can devise solutions there and i think the other case where want to devise solutions short term to get people improve performance before we consider every do real and but you know the more given doing that the more pay more suffering from so i think it's a great opportunity to clean about pain and make so the new things why do instead of being really hard the this recording easy it to give an example of one of those features is it there how coffee to go feel where we had we had it it's extensions to come find me it the on the motion to that corner when you when you for the corner of the over that contraband of the old you then we had to and extension to can find the cursor into that corner and we have to make known to use it we with the weight and based don't feel you position the cursor inside don't feel we waited work on the screen you want you can find the motion however you want so in you know what is don't feel finally because it's just a matter of adding that were to occur some okay so i don't feel you have to go by export called X extensions for that because on any questions nutrients rich can so you could but just to add want one that and then to follow elevator pitch question this is why it's hard to make a elevator pitch will it because there is it is one of those days where we have a thousand apricots and if i have to listen thousand caught in an elevator pitch it's gonna be model sixty seconds but that is that is the problem is that we can always fix something in X what it takes a lot if we're in and it takes a lot of all of topics and it is just something that there's too much work involved it okay some question that you don't want sorority but we'll suspend just with system composites a and G and or what's done i will be you we using G i don't shout was the system and section of the whole one well things like whether or not we're using a range create any composer is the system composed rapping that idea of a system post a piece aces coolness a bit by the wayside to what's the name david letterman david have you so is the recent progress explaining this thinking at the moment is more like having halvings assistant be basically deal with a lot of challenges or moving in a us privileges between can post as a spy the different sessions if you had different user sessions you're switching between might have composes the need to where you need to repair privileges of the you could have devices and the the around device we to switch between mouse to my and that's yes it in that that's what i tried but you can do it it's possible you have a policy expertise that in one you between these different session composed this you have a i'm starting might have to switch from one section to another but the problem is if you go for the session can post a model now your inputs being rudy another part and so we don't really want that actually like see we are and so the king or it's very hard we you don't you don't need it us to do with the new frame to the just a very possible so that basically so i think the like there is to instead of five to put W process in between the composer and hardware the ideas to maybe add a few but i hope tools to be that's that we can be devices and we already had defeated okay so we take away came it's nothing from india five so that is to just put the arbitration into a small process so that we don't have a process in the hot that between input and make living and so on what a process that you know disables and as well as the sexy part and there's a few things we can do the that and one thing is that when you be to switch the way if we if we do process sessions which might be to switch you can still get that an estimate on the screen so you can still go to get away on if you or fate something else on top of it but what you what you're missing there is you can have it like any meeting and she's been a waste get caught that snapshot of what was on screen anyway so and we can get that to a thank you did you could be the process it does this so when you switched away from usa i thank you guys that are uncontroversial question coming up so you know why just we don't expect to draw decorations for that we can of themselves well try to in can system user interfaces you know you made that decision well it's a that's a lot it is that that's a lot of reasons and everyone of all the deep technical reasons is that we want to have a line window you want so one text so we don't wanna spit what is like one screen at one unit one atomic going to like different texture so that you have to have decorations so the same from want to extend called the same from another take to because we need to rotate or scale down or otherwise transform your window you end up with there seems that seems but it and eighty S it is between these parts the window but if you if you all same thing from one protected so this is this is really deal details of hardware that we what we could do simple one big text a that you get bilinear filtering on the same can you give nice very nice it is between winners to and from behind the point of you i think it also makes sense to have application percent the higher window it's one unit that's the you and percent it so when we thought what consistency there's like just two dimensions you can see this well one window do we talk about consistency within that window do we want it title bar and the decorations to be consistent with the rest of that we know content what do we want to talk about maybe inconsistent between the contents but be consistent with all the time lost on this and that that's so that's a trade-off there can common as well on the had a cases where it's kind of nice having that's why decorations if you're working with designers sometimes they want to have the model be where you can somebody applications contents will over that's where you might wanna close button for winter objective start when we are working on the case as you go more than this but is we have the browser you are where they wanted to be able huh location bar top browser no need to have i'm sorry to the right and that you are about within sprite class wearing so their case by design choice you want and of course inconsistencies enforce we didn't want to look at because it's not something that an application would do it's a toolkit which are just like boston and the scroll bar to which is so there's just this parliament indicate we know that there is a toolbar that you kate also forty to get see it's gonna look the same and you can and if you were going up and exterm function and an X okay since i will and that guess a decoration from the X window manager and look that different from your rest of the gnome desktop what exterm those different from the rest of so it is probably fair that it gets a different great that the biggest concern i guess is it consisted interaction so you don't have like buttons and different places but the windows you don't have a close button right click windows those point therefore you kate make it so on any other questions millions a gym on there's actually another problem we do we tyneside decorations implement right now is that they include that input our a and it shadows what we what about we don't want to change the channel for example in the other you know that none shall we have a what around the we know and we don't want that's the into space on the wind attacks so about this is that when you application when this is yellow and borders you have to annotate the card with the composer and you re the one thing about snap you don't wanna step windows will see a stop they need to annotate window thing this thirty two pixels inside of exactly where that we know this starts the when you wanna move away the rights that that's what was so snapping we of against we are still be computed based on that content big input is a different we see this is we will take so that way you don't you can make that market so you can pick up to resize that any if we from their job of that window which is again different of well for over an extent so but then besides basically the actual size of the window which the visible part a great part about part that you don't know which stands outside of this because you have invisible board of writing and then you have the shadows which is it actually tells pointed part and from the composer to you want to do it you was high to control that to treat them separately from time to time yes and it was one of the you didn't mention which i guess was the specific still it's region that's you so if you know if you need to blend certain regions of your window come close to wants to limit how much event spending is kind of expensive especially considering screen a it's just it's right right but your windows do but region are just implementation it does not directly map to the visible are we know because we know might be transporting inside i mean going further we have the possibility that you could enhance the winner particles that say hey you know if well i meant easy cake one and i'm talking to name shall and this is what you should be presenting for the in the energy but then it fullback this heuristic of such as what the dog was the dimensions with the actually in the region and then click on that but hey maybe percent applications at that very small maybe to make a lot of sense at the way that rule not big be drawn back to sell that's a that's a graphical representation pull than inside a that useful so you could actually hand house having a specific vertical a specific lines talk to because right cool well what is question what about network transplants as well and wouldn't be too difficult to implemented in the future which is not transparency what like that that's entirely possible and the think that people focus on where we don't discuss network transparency is whether or not remote rendering it's worthwhile so the what X does is that you have out just industry rendering commands you save rented this gleefully here or there rectangle here what is why are we here and there so you used and the scheme of entering commands and they it's that's a nice concept that every can understand that you've got a big ball for use in the be coming a time to commit to feel that with the break thing that's a very efficient encoding of the result but what we have today is a that all the rendering command that you have to sing to rent any given web page so three D C is that the that the data have to send to render that is also bigger then the final assault so encoding it it's not as simple as as most people think that there's a there's a trade off for some scenes obviously the big rectangle it's not more efficient us and that one minute maid for most break there we're just to use cases it's a it's a especially when you're back compression to be the end result it's not clear that sending the comments is a better choice and then if we accept that is sending them and it makes is not necessarily a win then there's really nothing and weighted that prevents you from the remote rendering you have for every application in the system have between the content and you can you can either take that window content that's in people's pictures across with some kind of encoding or you can you can do would be in C start a remote waiting tightest of after can possibly more windows and some that is and since we know when a kind of it's window we know the damage we know exactly what we all react phantastic position to do right here because we have pixels we have there information about what changed and we just need to call this and cost so that that's the something that that's that can be done and what i think what we can protocol is that it's optimised for if you want to say and in general will be trying to do is when you any meeting something we only one of context with into also the ones and then back into the time once frame so if you wanting six different to say can you have occasionally runs sixty times a second to render that you free so that means that we can just in kind of events back and forth to that frame it's all optimised so that it is started for you receive what eventually composite that you need to render that frame what you're gonna frame you send everything back to impossible that the composer needs to know about that next right and it turns out that optimization is it works real well for network transparency to where we're not becomes way more expensive so if we if we're animating something we are receiving input mentoring in response a over the network then that think mathematician that makes sense in local case for or maybe embedded devices what we have is our that makes a lotta sense in more cases well because we don't have a lot of our kids over the network we have a protocol that is very asynchronous and doesn't have any round trip so i think so they're the protocol itself is it's good promoting the pixel constant something we can send us very silly so there's really nothing in the way of doing remote will and i have a have a prototype that i'm working on a no we have an R P you were that the less you run and wisdom instance and then connected not peak onto that you get you get an are you into your desktop so this is if we're just the top remote display but the only thing that we not gonna do is remote rendering because the way will it works is at all times to whatever entering locally and we just take so but well but in so the short answer is no nothing in the way of remote rendering and we will do eventually one way or another what he will bring we could do we have it a custom extensively and then it's to create able for an instant when it rains to brand without that awful content and that you can use for a moment so there there's the i guess most people's concern is that from saying that is possible and describing our submission might work to actually having something that works at that's opposite other way there's no guarantee that it will so i think you can say that just because it's possible that we will be there once waylon achieved world domination but it will next question so rob you're working on maybe in name shell with that through bit marginal what you been doing a problem pattern and for the composing side to so that you can have them show runs away the composite and includes point one like it's applications through experiment how's that going making pretty good progress were if you have so but in two thousand eleven i guess is wanna go we did a concept of this we don't matter where it's running as a what we call a hybrid X away and compose the matter and i'm shell essentially becomes display manager they are remote sensing they are diapering what they are in the input devices and it's we have X whale and which is how we deal with compatibility on the fact that matter is basically as much of an accent as you could ever have sorry realise on X way to start with and it's become the window manager correct way so we've updated the what we did for the whale and one two parts go one of the changes pop this generate cleaning up thing since we did that concept is that we may to say that we support runtime selection of running as a whale and compose to buses traditional X composed to which was to try and make it easier for us get this code upstream it would be kind of nice to be a that this place just ship the builder martin supporting by there's some questions as to whether or not this try to the trade off of this is what well with the complexity is introduces but just for being and different tracks that weeks news been doing work on the input side of things a bunch of great the spits out from waylon to do utilities in and moved into to don't know so up to now we're looking at opportunities to check i with some of the guys working on an announcement can post a so they're looking at spitting out some in and very that we might be able to use as well as and so then there's a bunch of things deal with gonna might setting and something a bit like i don't have anyone seeing what's in there is this privilege process question or which at the moment is the way we deal with things like but switching privileges for their am and it's a i dealing with the be to have a device privileges and that's talking about idea we've got this idea that privilege right is probably gonna move in the system they are in the meantime where working to be have to shed some of the sky between west and the lunch so name show eventually bunch of that live it become done well so i guess and nice thing relates that as you have a nice stuff helping out actually recently with the one of the an issue when we first met step one of the are and it's time was well how we deal with display configuration to make this something you could actually shipment at this ther is you need to be able type name control centre figure out the change your my it's your machine so now we're looking at having at the bus service name shows to controls the controls and to what the that's the sort of thank you well so many more questions on the audience all yes hello is a question that iteratively after a long time so million least someone so well no it wasn't intended to implement those but either a there are some did some decision to take on for example that i hear i'm just the was mentioning that you but not clear E mentors will be a something that to be minus by the client would like computer and expertise mention in the one term used yes the complete control and i'm sorry and monitoring implement of doing what we can with the one hundred and sent to do to the client is all essentially this was at some of the little a do you know the reason the conclusion of about so i mean they're all their dirty proposed that there is a proposed article for implementing a method since current substation area for a right schools and it was to ask to house a particle that a client implement to talk to the composite which is all about communicating so the texture information that the method say so this is that these are the character the meantime to also suffer the client to tell the input method about the context is and then come actually there's a particle for input methods to communicate with composite and i think the right way forward that would be for name shelved implement the same into method article that we implemented inside western so that we can reuse the same the methods inside the got women and i'm channels are running on the other people's and that is working right now i mean is because i think that you say that there are two proposals or you have got many not like that away but then there is not to a system it is one interface is from the client to the composite and i need to look at the patch and find someone who understand implemented to help review and integrate that passion to G T K that's one issue and every to okay nice is it than that but this piece of the talk it's can talk to any can post and still have input methods and then there's a implemented particle for the composite to start to talk in the method process which means you can use any implemented the implements that particle with any composer to and than any client so you can get the multitude of functionality so the you can ensure that you're not having to do special work inside name shell just you have to reinvent every implemented in every time and that inside magellan simile specialises in every took we can have these protocols to allow us to we use well i mean is because this is the pushbutton my second button i don't know you remember that i mean that was the on a lot of to switch allows you have the right to present or something of that and i just was wondering if they're just tools we use these kind of problems in order from the things that right now we can do with X that this from someone you use training for humans for some one shown before our i'm going to look like example this is something about a screen reader is doing right now but right now i would probably implement that application need to should be here is we have to be right so we that because and it was you happy past event they have to tool it's to exactly eight one consumer not you don't understand at the best event to application something that i mean is so i think you need to capture every time you might so one thing that i didn't quite cover in michael was that the ability to have sort of trusted clients so when it the can put also to can start a client and if folks applying it can get a particular the socket that it should the file descriptor that it should communicate with inside as viral and then we can go wrong to access the interface is that wouldn't be available to generic lines so if you could have a particular accessibility process that you will you know was gonna manage something any says hey you know you the way it works is by getting key events before sending them to the clients you could have a protocol that you could create a they compose it would send the key event to that accessibility process is a hey july centre cynical i don't you want to swallow it and that you can solve some of the you can remain the you could just initial the security and they isolation because you would be a trusted wanted composers started and knows to only use that interface for the idea is not a lot for every possibly to maybe a beep or something like is pi that's very receptive to provide just well and i mean and you and you have to people would be asking for the service to peace problems so i suppose you must but what you're saying is that should someone starts in the place about and you probably should on that stuff news okay so that's that you see body hit the you know this is a great example of where on the weight and we don't have we can actually use we can generally create specific purpose particles to solve a problem wrong trying to use whatever mechanism we may have inside actually walking window trio all sorts of maybe racy or you know tricky things we can actually say hey we can do this the right way and we can set up the way we need okay so for someone from the don't wanna be people from us fifty is making at least one needs i mean right because the problem is that know what we have resulted in cost of experience with william so maybe i don't know that list of meets a as well sometimes that are but i would that there is two point two to one i that's the one or two you the other part is how we split composed what we have exactly say so when you take the key we can so the cost of course get input events from there you be the hardware devices and guess before anybody else so this has nothing and you can i can do to save the keys coming from the heart of the you have full access on our way to save any given input event and i just send it to the kind of not send it to the time we can decide to send that input event to implement instead of sending it are to the time so we have for flexibility in there and the other protocol about rob mentions what was is a protocol between the composite and it that we use to communicate out input method to to send a key events out and maybe get a text doing that before nine but and that's currently wailing protocol and we can restrict access to that as a detailed but we can also say that and people's protocol that we wanna talk but nobody was we can we can we can do that and then send the results back to the time we don't even we can even build the input method into the composite one so we could do or like input method in there longer model or probably some so that there's a lot of flexibility how to structure the incremental change and important parts of we have a protocol between possible clients to talk about what can i think so it it's them i think the this we have we have all the big do we need for the there is that we need review and feedback on it but i think that we okay agreement thank you so you know in summary i'd that not all school the on the panels a on this questions i what do you think the biggest challenges are facing the way the project in a mixed i would well i'm not sure i'm qualified to talk or the world products in general men as a lot of things outside we don't but a male talk about science get we just need to have this pretty soon in place because you know we want which are a and we want to get their it not like five years now but really within the next year would like the you know ideally every singer and what it next year using real on the laptops that that's a short time scale the lot of things to make that work i mean and that extends from no basic we're getting don't sell unwilling going to all do pretty all these back together that's all the places and it us up or we use a little bit of extra one thing or another male that be covered waylon and also extends a little bit it up next i mean i think we're pretty lucky with the free drivers is that we already have everything set up so will and broadens you seem of like to we have the X server but when you know people have you know is it in video drivers of the lab or something then there's a bigger challenge there to make that work with waylon so we have a lot of these we have to put together we have to quickly and that's a basic count but there's no one technical problem that's going to i think also it's you know re this you draw them i guess some hours once or a similar but it's it's about the fact is that it takes to really get some thing and and a large majorities hands how do i get name show basically working as a welcome post a shipping it destroy the lots of people are using and what are the italy all the tales that we need to figure out like this just in the integration and G D M integration and there is real blockers for actually shipping this the people to play with even if it's got some wards it's just about the basic stick and people sounds really "'cause" i think it was noble once this more people able to contribute and but it's more relevant to to people when you can get this running on your laptop and can contribute to the to get an application where that's gonna build on top of this question so i so i think the biggest challenge to wait a nice to get out there and before in take so because i think really that angle this is the that out holding but increasingly we see and a beta system and then like what i had is it is a problem for about that this discover what is not restricted to embedded of this to be a wide a shot anything this place to about and i think tangoing colours of the cases where you want somebody what thank you want to more modern display server you want support or they've been achieved it out there and on the on the other end of the spectrum have X and which is good enough for people i think X is good enough so if you think ex's finding stick X you are something more you might go with an assistant what used like impulsive thing apart and so wait and five to have a fit into that gap between people to want to improve X and people are just wanna go in and i think i so interesting not a lot of these opportunities and i think we can get without their we have a chance to actually model i see open source graphics technically control that that's part of the community and define infrastructure we have an option to actually get it out there and provide a new standard for graphics on the next that that's all you instead of just see seating there they opportunity to who the end structure so i think that that's the biggest what is it is a bit of race right thank you question so you know that's what we heading towards the year the wailing desktop then next year so thank everyone thank you thank you and raw question for opposing the power and i just wanna say we do have a you have session to on monday in room at wanna i twenty thank you