Quoting Denis Oliver Kropp ([EMAIL PROTECTED]):
> Quoting Ville Syrj?l? ([EMAIL PROTECTED]):
> > On Wed, Feb 12, 2003 at 11:39:53AM -0500, 
>[EMAIL PROTECTED] wrote:
> > > As one can start multiple XFree86 instances on a single machine, each
> > > using a separate VT (switching between them with ALT-CTRL-Fn), I am
> > > wondering if the same can be done with XDirectFB.
> > 
> > >From the TODO:
> > Rework VT handling. Readd VT switching and Suspend/Resume.
> > 
> > So it's not possible currently. Apparently it was working at some point in
> > the past.
> 
> It did work for single app long time ago.
> 
> Readding it even for multi app isn't impossible.
> 
> There are these steps to be taken by the master to switch away:
> - Call CloseDevice() on all input devices.
> - Lock all layers switching to exclusive coop. level (dfb_layer_purchase()).
> - Kick out all auto video buffers (possibly updating the sysmem instance).
> - Safe contents of all video only buffers.
> - Reject locks on video memory instances and redirect locks on video only
>   buffers to their system memory backup.

The final step I forgot:
- Lock the accelerator (dfb_gfxcard_lock()).


I forgot to elaborate the counter part, too:
- Unlock the accelerator invalidating it's state (dfb_gfxcard_unlock()).
- Restore video only buffers.
- Unlock all layers switching to shared coop. level (dfb_layer_cede()).
- Call OpenDevice() on all input devices.


Also it's unclear which layers have to be made invisible (e.g. BES).

-- 
Best regards,
  Denis Oliver Kropp

.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/                 |
"------------------------------------------"

                            Convergence GmbH


-- 
Info:  To unsubscribe send a mail to [EMAIL PROTECTED] with 
"unsubscribe directfb-dev" as subject.

Reply via email to