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