Re: client side decorations

2011-07-23 Thread Enrico Weigelt
* microcai micro...@fedoraproject.org schrieb:

 When app lock up, the  wayland can start a remote-thread inside the
 client, and this thread can handle move/drag stuff or even terminate the
 process. This can be implemented as a signal hander inside
 libwayland-client, or no need to start the thread at-all.

Wow, what a reliable proposal. Server relies on client not doing bad
things. When the client locks up, it's normally far too late to do
anything useful there ...

 So the libwayland-client must juse one signal internally. But there is
 no problem here. GUI app usually don't use signals.

Really ?


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--
___
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel


Re: What's wrong with wayland?

2011-04-21 Thread Enrico Weigelt
* Sam Spilsbury smspil...@gmail.com schrieb:

 It really isn't that complicated. Just make a Netland server which
 manages your application's buffer and transmits it across the network
 to the other Netland server which then fills the buffer on the client
 machine.

A buffer of what exactly ?
Framebuffer ?

 The whole reason remoting was taken out at the server level
 is because these days it accounts for a lot of the overhead you'll get
 with rendering,

True for X11, but not neccessarily for a completely new approach.

 since the majority of clients will do all the surface painting Client-side
 (cairo, Qt) or direct to the hardware (OpenGL).

That's the main problem, IMHO. It leads to really a lot of unnecessary
code and data duplication. (btw: I'm glad to have all my systems free
of the Qt bloat ;-o).

Alternative: let the clients just _describe_ their window contents
as vector graphics, that only get manipulated when needed (and NOT
repainted over and over by the client itself!). Most of the common
widget toolkit's code (and runtime data) would be simply obsolete
this way.

 The other reason why remoting at a server level has become more
 useless is because people *are* choosing to use client-side rendering
 libraries like cairo and Qt and just sending the bitmaps to the X
 Server. 

Because X (which just happens to be the current standard) doesn't
provide high level functionality required todays. Doing this on
client-side is just a ugly workaround on a limited protocol.

 In a network situation this drastically increases bandwidth usage,
 rather than the relatively small bandwidth operations such as
 lines, arcs and fills. So what we have now for networking is this
 sub-optimal mix of both round-tripping a lot when we don't need to
 (latency) /and/ high-bandwidth usage.

Wayland doesn't even have anything like a network situation ...

  I'd start with an proper model before starting to think about
  an specific protocol: why should a client still be responsible
  for drawing, instead of just describing what it wants to have
  displays (eg. an scene graph or something more hi-level) ?
 
  Typical GUI applications have concepts of windows (and windows
  within windows), widgets, etc. Those are all objects that can
  be described formally and rendered in a hi-level display server.
  This also would allow large savings of now heavily duplicated
  code and data in the individual clients.
 
  8 1/2 could be a interesting conceptional starting point.
 
 This is indeed the kind of remoting that could be achieved at a toolkit level.

Yes, but it still leaves the big bandwith/latency problems,
most notably the need for client-side repainting still in place.


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--
___
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel


Re: What's wrong with wayland?

2011-02-20 Thread Enrico Weigelt
* Marty Jack marty...@comcast.net schrieb:

 If remote clients is your thing, instead of forecasting doom
 because the old way may not work any more, first off, nothing
 stops someone from writing a thing that listens on port 6000
 and acts just like a remote X server only it is a Wayland
 client, and second off,

At this point, I fail to see the real benefit of Wayland, at
least from user or infrastructure view. (yes, having the hw
and composition part of the fat Xserver IMHO is a good thing
from sw-architectural view).

One thing that annoys me is that the current design papers
explicitly take remoting out of the picture (almost declares
that obsolete or tells people to use insufficient workarounds
like VNC) and delegates a lot of things to individual clients
(so in the end introducing massive code and data duplications).

 nothing stops someone from redesigning and rethinking what
 the proper remote protocol is, 

I'd start with an proper model before starting to think about
an specific protocol: why should a client still be responsible
for drawing, instead of just describing what it wants to have
displays (eg. an scene graph or something more hi-level) ?

Typical GUI applications have concepts of windows (and windows
within windows), widgets, etc. Those are all objects that can
be described formally and rendered in a hi-level display server.
This also would allow large savings of now heavily duplicated
code and data in the individual clients.

8 1/2 could be a interesting conceptional starting point.

 using modern encryption and compression techniques and whatever
 else is needed to get a VNC like solution that performs well
 and is secure.  

VNC can not be done right that way, as it's conceptionally
meant for a whole different purpose: it operates on screen level.
It has no idea windows, server-side resource objects, etc.
Simply lacks this information.


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--
___
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel


Re: What's wrong with wayland?

2011-02-20 Thread Enrico Weigelt
* Sam Spilsbury smspil...@gmail.com schrieb:

 But the core part of X11 is that it only managed windows and
 pixmaps which were owned by clients running in different processes
 over a network protocol. The window manager and compositors are
 implemented externally, using that information from the server to
 blit the graphics on to the screen and actually change the size
 and position of the windows.

ACK. And that is a very strong concept. It allows one to eg. choose
window manager on the fly and even run it on a different host.
Very handy for distributed environments.

I, personally, definitively don't want to loose that, similarily
as I also never want to loose the ability to run individual
clients on separate hosts easily.

 The key difference with wayland is two-fold. First of all, it
 recognizes that server-side rendering is a bit useless and

Why exactly is that useless ? Do you want all remote clients to
transfer huge bitmaps for every little change on screen ? Or
do you want no remote clients at all ?

 Second of all, it integrates the windowmanager, compositing manager
 and window server into one process(through libwayland-compositor). 

That's the point that annoys me: I want the window manager to
remain separate and exchangable at runtime.

 Wayland requires that you render to a graphics buffer on the hardware
 (eg direct to memory that is accessible to the video card). 

So, no chance for distribution between several hosts, virtualization, etc.

At this point, I'm really curious about what makes it so different from
or better than Fusion ?

 It is also likely that any other drawing frameworks are going to be
 implemented on top of OpenGL ES since that is the most portable way
 of implementing a draw-to-buffer method.

What about graphics devices that don't support it ?
Software rendering ?


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--
___
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel


Re: Type safety of protocol calls

2011-02-20 Thread Enrico Weigelt
* Chris Morgan chmor...@gmail.com schrieb:

 Maybe we could compile the c code as c++? Wouldn't require using
 classes etc but would provide better type conversion checking.

Actually, I'm currently in process of building several packages
with an C++ (instead of C) compiler for analysis and cleanup
purposes (eg. it enforced you to write parameter types before
the parameter names, and other things I'd consider much cleaner).

This approach might turn out as a fine QM tool ...


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--
___
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel


Re: Some of my thoughts on input for wayland

2011-01-28 Thread Enrico Weigelt
* Chase Douglas chase.doug...@canonical.com schrieb:

 Can you describe more here? If you are meaning a real computer
 process, I think it would help to split input and output display into
 separate processes. Practically every system shipping in the future will
 have multiple cores, so making the input system wait around while output
 does its thing seems unnecessary.

Of course, processes are the natural way of parallelism (on mainline
architectures). But we'll have to differenciate between separate
layers of input events. Things like transforming lolevel scancodes
into some highlevel keystrokes (eg. mapping the scancode for 'A' to
some key A was pressed event or decoding mouse protocol into
movement events) probably would find a good place in separate
server processes (eg. little 9P servers, and their clients capable
of dynamically reconnecting, so the servers can be plugged easily).
But at the windowing layer - transforming an global mouse click into
an click event _within_ some window - we need the window geometries,
so that should live in a process which knows about all of this.
(this doesn't necessarily doesn't need the actual _display_ server,
but the one who actually handles window positioning/sizing).


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--
___
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel