Lines Matching defs:pDRIDrawablePriv
209 DRIUpdateSurface(DRIDrawablePrivPtr pDRIDrawablePriv, DrawablePtr pDraw)
214 if (pDRIDrawablePriv->sid == 0)
249 xp_configure_surface(pDRIDrawablePriv->sid, flags, &wc);
257 DRIDrawablePrivPtr pDRIDrawablePriv;
262 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
264 if (pDRIDrawablePriv == NULL) {
269 if (!(pDRIDrawablePriv = malloc(sizeof(*pDRIDrawablePriv)))) {
273 pDRIDrawablePriv->pDraw = (DrawablePtr)pWin;
274 pDRIDrawablePriv->pScreen = pScreen;
275 pDRIDrawablePriv->refCount = 0;
276 pDRIDrawablePriv->drawableIndex = -1;
277 pDRIDrawablePriv->notifiers = NULL;
283 free(pDRIDrawablePriv);
288 err = xp_create_surface(wid, &pDRIDrawablePriv->sid);
291 free(pDRIDrawablePriv);
298 err = xp_configure_surface(pDRIDrawablePriv->sid, XP_STACKING, &wc);
301 xp_destroy_surface(pDRIDrawablePriv->sid);
302 free(pDRIDrawablePriv);
308 pDRIDrawablePriv);
313 return pDRIDrawablePriv;
320 DRIDrawablePrivPtr pDRIDrawablePriv;
322 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_PIXMAP(pPix);
324 if (pDRIDrawablePriv == NULL) {
328 if (!(pDRIDrawablePriv = calloc(1, sizeof(*pDRIDrawablePriv)))) {
332 pDRIDrawablePriv->pDraw = (DrawablePtr)pPix;
333 pDRIDrawablePriv->pScreen = pScreen;
334 pDRIDrawablePriv->refCount = 0;
335 pDRIDrawablePriv->drawableIndex = -1;
336 pDRIDrawablePriv->notifiers = NULL;
341 err = xp_create_surface(0, &pDRIDrawablePriv->sid);
343 free(pDRIDrawablePriv);
354 pDRIDrawablePriv);
357 return pDRIDrawablePriv;
368 DRIDrawablePrivPtr pDRIDrawablePriv;
376 pDRIDrawablePriv = CreateSurfaceForWindow(pScreen,
379 if (NULL == pDRIDrawablePriv)
382 pDRIDrawablePriv = CreateSurfaceForPixmap(pScreen,
385 if (NULL == pDRIDrawablePriv)
393 if (pDRIDrawablePriv->refCount == 0) {
403 err = xp_export_surface(wid, pDRIDrawablePriv->sid,
406 xp_destroy_surface(pDRIDrawablePriv->sid);
407 free(pDRIDrawablePriv);
428 pDRIDrawablePriv->key[0] = key[0];
429 pDRIDrawablePriv->key[1] = key[1];
438 pDRIDrawablePriv->sid), pDRIDrawablePriv);
444 DRIUpdateSurface(pDRIDrawablePriv, pDrawable);
447 pDRIDrawablePriv->refCount++;
449 *surface_id = pDRIDrawablePriv->sid;
452 ret_key[0] = pDRIDrawablePriv->key[0];
453 ret_key[1] = pDRIDrawablePriv->key[1];
457 pDRIDrawablePriv->notifiers = x_hook_add(pDRIDrawablePriv->notifiers,
468 DRIDrawablePrivPtr pDRIDrawablePriv;
471 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW((WindowPtr)pDrawable);
474 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_PIXMAP((PixmapPtr)pDrawable);
480 if (pDRIDrawablePriv != NULL) {
486 pDRIDrawablePriv->notifiers = x_hook_remove(
487 pDRIDrawablePriv->notifiers,
491 --pDRIDrawablePriv->refCount;
498 if (pDRIDrawablePriv->refCount <= 0) {
519 DRIDrawablePrivPtr pDRIDrawablePriv = NULL;
525 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
529 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_PIXMAP(pPix);
532 if (pDRIDrawablePriv == NULL) {
541 if (pDRIDrawablePriv->drawableIndex != -1) {
543 pDRIPriv->DRIDrawables[pDRIDrawablePriv->drawableIndex] = NULL;
546 if (pDRIDrawablePriv->sid != 0) {
547 DRISurfaceNotify(pDRIDrawablePriv->sid,
551 if (pDRIDrawablePriv->notifiers != NULL)
552 x_hook_free(pDRIDrawablePriv->notifiers);
554 free(pDRIDrawablePriv);
573 DRIDrawablePrivPtr pDRIDrawablePriv;
576 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
577 if (pDRIDrawablePriv != NULL) {
578 DRIUpdateSurface(pDRIDrawablePriv, &pWin->drawable);
597 DRIDrawablePrivPtr pDRIDrawablePriv;
599 if ((pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin))) {
600 DRIUpdateSurface(pDRIDrawablePriv, &pWin->drawable);
640 DRIDrawablePrivPtr pDRIDrawablePriv = NULL;
647 pDRIDrawablePriv = x_hash_table_lookup(surface_hash,
651 if (pDRIDrawablePriv == NULL)
658 x_hook_run(pDRIDrawablePriv->notifiers, &arg);
663 error = xp_destroy_surface(pDRIDrawablePriv->sid);
669 pDRIDrawablePriv->sid = 0;
671 FreeResourceByType(pDRIDrawablePriv->pDraw->id,