[haiku-appserver] Re: investigating some bugs
- From: "Stephan Assmus" <superstippi@xxxxxx>
- To: haiku-appserver@xxxxxxxxxxxxx
- Date: Mon, 28 Mar 2005 17:14:56 +0200 CEST
Hi Adi,
> > but the
> > clipping of the views they contain seems to be wrong. At least I
> > don't
> > see these views draw correctly, with the result being pretty much
> > the
> > same wether my Painter driver is used or the ViewDriver. See src/
> > tests/
> > servers/app/windows. After I added more stuff there, I started to
> > see
> > bits of drawing way outside the windows too.
>
> I think this is your fault. :-P
> I don't know if I can help with this one...
As I wrote above, the results are the same with your original
ViewDriver and the Painter based implementation. I have investigated a
little further and I'm relatively sure that the problem is in the
clipping and invalidation of the views. It looks like issues with
converting the clipping regions between differnet levels of layers
(parent<->child). At first I thought that the update message was not
carried out correctly by the client window (and there seems to be
something wrong there as well, because parent views draw over child
views (in the rare cases when they do draw something)). So I commented
out the app_server side blanking with the view color, but that doesn't
show the view contents either. Views simply don't draw themselfs (or
only tiny bits of them), or they have the wrong clipping region applied
to them. Here are some suggestions: The DisplayDriver expects all
drawing and of course also clipping to be in screen coordinates. So
make sure that all drawing commands that arrive at the level of the
DisplayDriver are consistently in screen coordinates. As I said, the
results are the same with the original DisplayDriver implementation and
my implementation. I can easily change the implementation to take into
account the "origin" of the DrawData, should this make the
implementation easier, but the coordinates of the drawing commands and
the clipping must be consitent in the same coordinate system (local or
world).
Best regards,
-Stephan
- Follow-Ups:
- [haiku-appserver] Re: investigating some bugs
- From: Adi Oanca
- References:
- [haiku-appserver] Re: investigating some bugs
- From: Adi Oanca
Other related posts:
- » [haiku-appserver] investigating some bugs
- » [haiku-appserver] Re: investigating some bugs
- » [haiku-appserver] Re: investigating some bugs
- » [haiku-appserver] Re: investigating some bugs
- » [haiku-appserver] Re: investigating some bugs
- » [haiku-appserver] Re: investigating some bugs
- » [haiku-appserver] Re: investigating some bugs
- [haiku-appserver] Re: investigating some bugs
- From: Adi Oanca
- [haiku-appserver] Re: investigating some bugs
- From: Adi Oanca