[haiku-appserver] Re: Refactoring

  • From: Stefano Ceccherini <burton666@xxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: 28 Jun 2005 09:03:50 -0000

>       "Every Workspace may have a different resolution"
>       Not a screen configuration.
>       Workspace should have a pointer to a VirtualScreen(n >Screens) object. 
>This lets you have 1,2,3,..,32 VirtualScreens attached to a >RootLayer 
>object, and every Workspace have that pointer to one of >them(as set by a 
>configuration (tool)).
>       ( it would be nice (IMO) to have these classes: >Screen(virtual), 
>PhysicalScreen(mapped to a monitor), VirtualScreen(a spread >screen 
>composed from n PhysicalScreens) )

That sounds a bit too mcuh complex :)
I think we should aim, currently, to a single head solution without trying to 
resolve too many problems at once. Maybe we could have a "clone" dual-head 
without much hassle, even.

As Axel said in the other mail, the current api doesn't even support the fact 
that there could be different screens. For example, let's say you have a window 
in one screen (physical). You want to move it to another screen (physical). You 
start dragging the window with the mouse. What happens when the window is half 
contained in one screen and half in the other ?
You would have to draw half the window with one displaydriver/hwinterface and 
the other with another. And you would have different resolutions/colorspaces, 
And how would you know (from client side) where the window is ?
Even BScreen's api isn't suited for that.

I think that Axel's proposal is what we should follow. It sounds simple enough, 
feasible, and it would let us have some sort of dual head without much problems.

>       Um... I think it always did. Don't have BeOS at hand, >but I'm pretty 
>sure move or resize operations are "mirrored" in other >workspaces.

Try the Workspace application, you'll be surprised :P

>       It seems we have different understanding of what >RootLayer is. I 
>understand RL as a virtual surface onto which WinBorders are >drawn. This 
>surface can be made from lots of small surfaces which are >exactly the 
>physical screens.

But this is only one kind of dual head. You can have different kind of 
configurations with > 1 monitors: you can have the same image cloned on both 
screens, you can have one "virtual" screen which spans over both screens (and 
this is the one you're aiming for, I guess), you can have the second screen be 
a "zoomed" view of the other screen.

Stefano Ceccherini aka Jack Burton
Scegli il tuo dominio preferito e attiva la tua email! Da oggi
l'eMail di superEva e' ancora piu' veloce e ricca di funzioni!

Other related posts: