static DFBResult primaryUpdateRegion( CoreLayer *layer, void *driver_data, void *layer_data, void *region_data, CoreSurface *surface, const DFBRegion *left_update, CoreSurfaceBufferLock *left_lock, const DFBRegion *right_update, CoreSurfaceBufferLock *right_lock ) { DFBX11 *x11 = driver_data; DFBX11Shared *shared = x11->shared; X11LayerData *lds = layer_data; DFBRegion region = DFB_REGION_INIT_FROM_DIMENSION( &surface->config.size ); D_DEBUG_AT( X11_Layer, "%s()\n", __FUNCTION__ ); if (left_update && !dfb_region_region_intersect( ®ion, left_update )) return DFB_OK; lds->shown = true; return DisplaySurface( x11, layer_data, shared->vdp_queue, left_lock ); }
static DFBResult primaryFlipRegion( CoreLayer *layer, void *driver_data, void *layer_data, void *region_data, CoreSurface *surface, DFBSurfaceFlipFlags flags, CoreSurfaceBufferLock *lock ) { DFBX11 *x11 = driver_data; DFBRegion region = DFB_REGION_INIT_FROM_DIMENSION( &surface->config.size ); dfb_surface_flip( surface, false ); return dfb_x11_update_screen( x11, ®ion, lock ); }
static DFBResult primaryUpdateRegion( CoreLayer *layer, void *driver_data, void *layer_data, void *region_data, CoreSurface *surface, const DFBRegion *update, CoreSurfaceBufferLock *lock ) { DFBX11 *x11 = driver_data; DFBRegion region = DFB_REGION_INIT_FROM_DIMENSION( &surface->config.size ); if (update && !dfb_region_region_intersect( ®ion, update )) return DFB_OK; return dfb_x11_update_screen( x11, ®ion, lock ); }
static DFBResult primaryFlipRegion( CoreLayer *layer, void *driver_data, void *layer_data, void *region_data, CoreSurface *surface, DFBSurfaceFlipFlags flags, CoreSurfaceBufferLock *lock ) { DFBX11 *x11 = driver_data; X11LayerData *lds = layer_data; DFBRegion region = DFB_REGION_INIT_FROM_DIMENSION( &surface->config.size ); D_DEBUG_AT( X11_Layer, "%s()\n", __FUNCTION__ ); if (x11->shared->x_error) return DFB_FAILURE; dfb_surface_flip( surface, false ); return dfb_x11_update_screen( x11, lds, ®ion, lock ); }
static DFBResult primaryUpdateRegion( CoreLayer *layer, void *driver_data, void *layer_data, void *region_data, CoreSurface *surface, const DFBRegion *update, CoreSurfaceBufferLock *lock ) { DFBX11 *x11 = driver_data; X11LayerData *lds = layer_data; DFBRegion region = DFB_REGION_INIT_FROM_DIMENSION( &surface->config.size ); D_DEBUG_AT( X11_Layer, "%s()\n", __FUNCTION__ ); if (x11->shared->x_error) return DFB_FAILURE; if (update && !dfb_region_region_intersect( ®ion, update )) return DFB_OK; return dfb_x11_update_screen( x11, lds, ®ion, lock ); }