Lines Matching defs:pDRIDrawablePriv
222 DRIUpdateSurface(DRIDrawablePrivPtr pDRIDrawablePriv, DrawablePtr pDraw)
227 if (pDRIDrawablePriv->sid == 0)
263 xp_configure_surface(pDRIDrawablePriv->sid, flags, &wc);
269 DRIDrawablePrivPtr pDRIDrawablePriv;
274 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
276 if (pDRIDrawablePriv == NULL) {
281 if (!(pDRIDrawablePriv = malloc(sizeof(*pDRIDrawablePriv)))) {
285 pDRIDrawablePriv->pDraw = (DrawablePtr)pWin;
286 pDRIDrawablePriv->pScreen = pScreen;
287 pDRIDrawablePriv->refCount = 0;
288 pDRIDrawablePriv->drawableIndex = -1;
289 pDRIDrawablePriv->notifiers = NULL;
295 free(pDRIDrawablePriv);
300 err = xp_create_surface(wid, &pDRIDrawablePriv->sid);
303 free(pDRIDrawablePriv);
310 err = xp_configure_surface(pDRIDrawablePriv->sid, XP_STACKING, &wc);
313 xp_destroy_surface(pDRIDrawablePriv->sid);
314 free(pDRIDrawablePriv);
320 pDRIDrawablePriv);
325 return pDRIDrawablePriv;
331 DRIDrawablePrivPtr pDRIDrawablePriv;
333 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_PIXMAP(pPix);
335 if (pDRIDrawablePriv == NULL) {
339 if (!(pDRIDrawablePriv = calloc(1, sizeof(*pDRIDrawablePriv)))) {
343 pDRIDrawablePriv->pDraw = (DrawablePtr)pPix;
344 pDRIDrawablePriv->pScreen = pScreen;
345 pDRIDrawablePriv->refCount = 0;
346 pDRIDrawablePriv->drawableIndex = -1;
347 pDRIDrawablePriv->notifiers = NULL;
352 err = xp_create_surface(0, &pDRIDrawablePriv->sid);
354 free(pDRIDrawablePriv);
365 pDRIDrawablePriv);
368 return pDRIDrawablePriv;
380 DRIDrawablePrivPtr pDRIDrawablePriv;
383 pDRIDrawablePriv = CreateSurfaceForWindow(pScreen,
386 if(NULL == pDRIDrawablePriv)
391 pDRIDrawablePriv = CreateSurfaceForPixmap(pScreen,
394 if(NULL == pDRIDrawablePriv)
405 if (pDRIDrawablePriv->refCount == 0) {
415 err = xp_export_surface(wid, pDRIDrawablePriv->sid,
418 xp_destroy_surface(pDRIDrawablePriv->sid);
419 free(pDRIDrawablePriv);
439 pDRIDrawablePriv->key[0] = key[0];
440 pDRIDrawablePriv->key[1] = key[1];
448 x_cvt_uint_to_vptr(pDRIDrawablePriv->sid), pDRIDrawablePriv);
454 DRIUpdateSurface(pDRIDrawablePriv, pDrawable);
457 pDRIDrawablePriv->refCount++;
459 *surface_id = pDRIDrawablePriv->sid;
462 ret_key[0] = pDRIDrawablePriv->key[0];
463 ret_key[1] = pDRIDrawablePriv->key[1];
467 pDRIDrawablePriv->notifiers = x_hook_add(pDRIDrawablePriv->notifiers,
478 DRIDrawablePrivPtr pDRIDrawablePriv;
481 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW((WindowPtr)pDrawable);
483 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_PIXMAP((PixmapPtr)pDrawable);
488 if (pDRIDrawablePriv != NULL) {
494 pDRIDrawablePriv->notifiers = x_hook_remove(pDRIDrawablePriv->notifiers,
498 --pDRIDrawablePriv->refCount;
505 if (pDRIDrawablePriv->refCount <= 0) {
526 DRIDrawablePrivPtr pDRIDrawablePriv = NULL;
532 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
535 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_PIXMAP(pPix);
538 if (pDRIDrawablePriv == NULL) {
547 if (pDRIDrawablePriv->drawableIndex != -1) {
549 pDRIPriv->DRIDrawables[pDRIDrawablePriv->drawableIndex] = NULL;
552 if (pDRIDrawablePriv->sid != 0) {
553 DRISurfaceNotify(pDRIDrawablePriv->sid, AppleDRISurfaceNotifyDestroyed);
557 if (pDRIDrawablePriv->notifiers != NULL)
558 x_hook_free(pDRIDrawablePriv->notifiers);
560 free(pDRIDrawablePriv);
578 DRIDrawablePrivPtr pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
580 if (pDRIDrawablePriv) {
597 DRIDrawablePrivPtr pDRIDrawablePriv;
600 pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin);
601 if (pDRIDrawablePriv != NULL) {
602 DRIUpdateSurface(pDRIDrawablePriv, &pWin->drawable);
668 DRIDrawablePrivPtr pDRIDrawablePriv;
670 if ((pDRIDrawablePriv = DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin))) {
671 DRIUpdateSurface(pDRIDrawablePriv, &pWin->drawable);
712 DRIDrawablePrivPtr pDRIDrawablePriv = NULL;
720 pDRIDrawablePriv = x_hash_table_lookup(surface_hash,
724 if (pDRIDrawablePriv == NULL)
732 x_hook_run(pDRIDrawablePriv->notifiers, &arg);
738 error = xp_destroy_surface(pDRIDrawablePriv->sid);
744 pDRIDrawablePriv->sid = 0;
746 FreeResourceByType(pDRIDrawablePriv->pDraw->id,