示例#1
0
文件: compinit.c 项目: mozyg/xorg
/* Fake backing store via automatic redirection */
static Bool
compChangeWindowAttributes(WindowPtr pWin, unsigned long mask)
{
    ScreenPtr pScreen = pWin->drawable.pScreen;
    CompScreenPtr cs = GetCompScreen (pScreen);
    Bool ret;

    pScreen->ChangeWindowAttributes = cs->ChangeWindowAttributes;
    ret = pScreen->ChangeWindowAttributes(pWin, mask);

    if (ret && (mask & CWBackingStore) &&
	    pScreen->backingStoreSupport != NotUseful) {
	if (pWin->backingStore != NotUseful) {
	    compRedirectWindow(serverClient, pWin, CompositeRedirectAutomatic);
	    pWin->backStorage = (pointer) (intptr_t) 1;
	} else {
	    compUnredirectWindow(serverClient, pWin,
				 CompositeRedirectAutomatic);
	    pWin->backStorage = NULL;
	}
    }

    pScreen->ChangeWindowAttributes = compChangeWindowAttributes;

    return ret;
}
示例#2
0
Bool
rdpChangeWindowAttributes(WindowPtr pWindow, unsigned long mask)
{
  ScreenPtr pScreen;
  rdpWindowRec* priv;
  Bool rv;

  ErrorF("rdpChangeWindowAttributes:\n");
  priv = GETWINPRIV(pWindow);
  pScreen = pWindow->drawable.pScreen;
  pScreen->ChangeWindowAttributes = g_rdpScreen.ChangeWindowAttributes;
  rv = pScreen->ChangeWindowAttributes(pWindow, mask);
  pScreen->ChangeWindowAttributes = rdpChangeWindowAttributes;
  return rv;
}
示例#3
0
/* Fake backing store via automatic redirection */
static Bool
compChangeWindowAttributes(WindowPtr pWin, unsigned long mask)
{
    ScreenPtr pScreen = pWin->drawable.pScreen;
    CompScreenPtr cs = GetCompScreen(pScreen);
    Bool ret;

    pScreen->ChangeWindowAttributes = cs->ChangeWindowAttributes;
    ret = pScreen->ChangeWindowAttributes(pWin, mask);

    if (ret && (mask & CWBackingStore) &&
        pScreen->backingStoreSupport != NotUseful)
        compCheckBackingStore(pWin);

    pScreen->ChangeWindowAttributes = compChangeWindowAttributes;

    return ret;
}
示例#4
0
文件: rdpdraw.c 项目: piccolo/xrdp
Bool
rdpChangeWindowAttributes(WindowPtr pWindow, unsigned long mask)
{
    ScreenPtr pScreen;
    rdpWindowRec *priv;
    Bool rv;

    LLOGLN(10, ("rdpChangeWindowAttributes:"));
    priv = GETWINPRIV(pWindow);
    pScreen = pWindow->drawable.pScreen;
    pScreen->ChangeWindowAttributes = g_rdpScreen.ChangeWindowAttributes;
    rv = pScreen->ChangeWindowAttributes(pWindow, mask);
    pScreen->ChangeWindowAttributes = rdpChangeWindowAttributes;

    if (g_use_rail)
    {
    }

    return rv;
}