[haiku-appserver] Re: update code.

  • From: "Rudolf" <drivers.be-hold@xxxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Thu, 31 Mar 2005 13:41:16 +0200 CEST

Adi,

> > Please remember that you cannot do this: the current driver arch 
> > does 
> > NOT support you blitting outside the screen's area (framebuffer or 
> > whatever). So you cannot blit in 'a part of free video memory'!
> 
>       A virtual screen like the one Allegro uses.
>       Why can't we use that?

In theory you could, but I'd consider that a tweak(!).
The is a problem: You would need to make sure you find a way to 
distinguish between 'user virtual screens', and 'offlimits 
virtualscreens.

Picture this:
->1. my monitor is set to 640x480 resolution.
->2. I set a virtual screen to 1024x768 resolution. 
(Note that THIS is the intended use of virtualscreens. If I move the 
mouse beyond the part visible on my monitor, the driver automatically 
takes care of moving my 'viewport' to keep the mouse visible. The 
driver also automatically blocks the move to go outside this 
virtualscreen. Actual use of this is for instance on laptops (I use it 
in the Neomagic driver). I also use this a lot when testing stuff. BTW, 
I don't understand why the ScreenPrefs app does not allow you to set 
such a workspace!. I created my own app accessing BScreen to set these 
for me.)

OK, now for completing what I want you to picture:
->3. Now on top of 1. and 2. you create an even larger virtual space 
for your 'backbuffering' schemes (or whatever you'd like to call it). 
You now need to prevent the moving mouse to scroll/pan to this part of 
the virtualscreen. THIS is the problem. There's no way to do that 
without altering the way an accelerant works, and creating an  
interface for that to the app_server someway.

->Or, we would need to establish now that we want virtualscreens to be 
used ONLY for your backbuffering: hence the 'intended' use of 
virtualscreens, is now a HACK. In other words: we redefine what's 
normal and what not.
We _could_ do that I guess: this requires no chance in the driver. IT 
would even work as normal on R5 and such (doing old 'intended' 
virtualscreens), and on Haiku (doing new 'intended' virtualscreens).

You'd better modify BSCreen however: user access to create 
virtualscreens should be blocked now. 

My thoughts:
I'd say doing this is offlimits for R1.


Rudolf.


Other related posts: