Phil Endecott schrieb: > Dear All, > > As I understand it, there is no facility in DirectFB for controlling > the hardware cursor except what's provided by the window stack code. Is > this true? I'm using fullscreen, single-application mode. Does anyone > have any plans to make it possible to control the hardware cursor in > fullscreen mode?
There's no hardware cursor support in DirectFB, at least in no window manager module that I know about. The cursor has been a window itself for a long time, but a few months ago it became just a surface and the window manager had to implement everything. At the moment it uses a backing store surface as big as the cursor surface to backup the data before putting the cursor onto the screen. To hide the cursor or before moving it, the region is restored. If the window stack got repainted and the region intersects with the cursor region, the new data is copied to the backing store surface and the affected part of the cursor is restored. > If no-one is working on this, on planning on working on it, I may be > able to write a patch. I need this facility quite badly. But I am only > vaguely familiar with the DirectFB codebase and I'll need some help. > Would anyone be prepared to assist? With the new light weight software cursor implementation the functionality could be easily provided to applications running in fullscreen mode. What we need is just a single new method in IDirectFBDisplayLayer which will instruct the window manager module to render the cursor. The application could render all its content into the back buffer, call the window manager to render the cursor and then flip the layer surface. For the non-double buffered case, or for partial screen updates it would be better to expose more of the cursor implementation. I'll check. Hmm, we also need to think about the CreateSurface(PRIMARY) case, not just explicit layer usage. In the former case we don't have a layer interface ourself (application). > I'm not even sure where the best place is in the API for it. One option > is to make it a layer, since layers have the (x,y) positioning that is > required. Any ideas? Layers are hardware or emulated by the driver. -- Best regards, Denis Oliver Kropp .------------------------------------------. | DirectFB - Hardware accelerated graphics | | http://www.directfb.org/ | "------------------------------------------" _______________________________________________ directfb-dev mailing list [email protected] http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
