[haiku-appserver] Re: user needs to know about the clipping region?

  • From: Adi Oanca <adioanca@xxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Sun, 27 Nov 2005 16:41:17 +0200

Hi,

Stephan Aßmus wrote:
Adi, you're confusing something. Simple statement: overlay bitmaps cannot be used in this way. A "video overlay" with respect to movies means something completely different from what we're talking about (transparent overlays). I'm sorry, but please understand, it's something completely different.

I know. You are talking about BView overlays. AFAIUnderstood. But you also were talking dragging something with the mouse. And in this case only, HW overlays can be used.


Also, there is no support in the driver API to allocate something in the unused graphics memory. At least Rudolf said this, and I have not seen anything usable either while working briefly on AccelerantHWInterface.

There is (optional)support to allocate a limited number of bitmaps in video mem - 3 to be more exact. We could use this for dragging things. Yes, this is very limited and there are no hooks to allocate additional graphics memory.


There are several buffers:

- graphics memory buffer with final scene
- main memory buffer for drawing the solid background behind the overlays
- main memory buffer with the transparent overlays

:-) Ah, but you didn't mention the 3rd buffer. ;-) To be sure: the 2nd main memory buffer holds the final scene - a region copied from the first buffer composed with the transparent bitmaps above it.

Look what I have written above. No, only the buffer in the graphics memory holds the final scene. The first main memory buffer and the second main memory buffer are composed, and the result is written to the graphics buffer on the fly. The background and the transparent overlay stay apart in two different buffers. The client can draw to the background, while the transparency buffer is maintained in the app_server only (where order of drawing can be enforced).

:-) When I read your previous mail I thought in two ways. First is the one that I wrote in my previous mail, 2nd is the one you describe here. Did not wrote about it because you said: "Should not flicker the least".
In fact it will flicker. You first have to copy the image from the 1st main mem buffer (the one with opaque data) and then copy from the transparency buffer. It will flicker.


   Yes, it will not flicker.
   Sounds quite complicated... I don't know what do say...

Well. It is something we can try in the new prototype anyways. At least, after we completed it as far as the current requirements go. It would be fun to see Stubears designs possible with the Haiku architecture. Sometimes... In the future...

You really think decorator it would look so bad without AA corners?


Adi.

Other related posts: