*Hi!
I'm working with cairo-directfb and I’m making an application for a TI
AM3505 board. I've got some problems with the double buffered surfaces. All
the objects the application draws are displayed inside a "bounding box". It
seems they’re not flipped in the correct way because they’re clipped inside
a rectangle which is filled with the background color of the other buffer.

My application is very simple: a DFBSurface is created, a cairo surface is
created on it, then something is drawn. The buffers are flipped every 100
ms.

Everything works fine on my computer but I’ve got some problems with the
board I’m using. Can it be a problem of the omapfb driver? It seems it
doesn't flip the whole surface but only the drawn area.

Here's my code:

         DirectFBInit (&argc, &argv);
         DirectFBCreate (&dfb);
        dfb->SetCooperativeLevel(dfb,DFSCL_FULLSCREEN); //Applicazione
FullScreen, gestione automatica layer
        dsc.flags=DSDESC_CAPS | DSDESC_PIXELFORMAT; //Campi definiti dalla
mia applicazione
        dsc.caps=DSCAPS_PRIMARY | DSCAPS_DOUBLE; //Superficie primaria e
double - buffered
        dsc.pixelformat=DSPF_ARGB;

          dfb->CreateSurface(dfb,&dsc,&primary);
   primary->GetSize(primary, &screen_width,&screen_height);

   surface = cairo_directfb_surface_create (dfb, primary);
           cr = cairo_create (surface);
     while(1)
          {
                     //DRAW SOMETHING WITH CAIRO
                     usleep(100000);
                     cairo_surface_flush(surface);
                     primary->Flip(primary,NULL,0);
            }

Thank you in advance for help

Carlo Ferraresi


*
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to