FX: Fix cleanup with compositing enabled
This commit is contained in:
parent
726bb9ea13
commit
34d1de3984
|
@ -431,6 +431,19 @@ ECompMgrDamageAll(void)
|
||||||
ECompMgrDamageMerge(Mode_compmgr.rgn_screen);
|
ECompMgrDamageMerge(Mode_compmgr.rgn_screen);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ECompMgrDamageArea(int x, int y, int w, int h)
|
||||||
|
{
|
||||||
|
EX_SrvRegion rgn;
|
||||||
|
|
||||||
|
if (!Mode_compmgr.active)
|
||||||
|
return;
|
||||||
|
|
||||||
|
rgn = Mode_compmgr.rgn_tmp2;
|
||||||
|
ERegionSetRect(rgn, x, y, w, h);
|
||||||
|
ECompMgrDamageMerge(rgn);
|
||||||
|
}
|
||||||
|
|
||||||
#if ENABLE_SHADOWS
|
#if ENABLE_SHADOWS
|
||||||
|
|
||||||
#define M_2PI_F ((float)(2 * M_PI))
|
#define M_2PI_F ((float)(2 * M_PI))
|
||||||
|
|
|
@ -70,6 +70,8 @@ int ECompMgrRender(int dt);
|
||||||
|
|
||||||
EX_Window ECompMgrRootWin(void);
|
EX_Window ECompMgrRootWin(void);
|
||||||
|
|
||||||
|
void ECompMgrDamageArea(int x, int y, int w, int h);
|
||||||
|
|
||||||
EX_SrvRegion ECompMgrChildClipRegion(void);
|
EX_SrvRegion ECompMgrChildClipRegion(void);
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
3
src/fx.c
3
src/fx.c
|
@ -107,6 +107,9 @@ _FxCleanup(FXData * d, int h)
|
||||||
EXFreeGC(d->gc1);
|
EXFreeGC(d->gc1);
|
||||||
|
|
||||||
EClearArea(d->win, 0, WinGetH(VROOT) - h, WinGetW(VROOT), h);
|
EClearArea(d->win, 0, WinGetH(VROOT) - h, WinGetW(VROOT), h);
|
||||||
|
#if USE_COMPOSITE
|
||||||
|
ECompMgrDamageArea(0, WinGetH(VROOT) - h, WinGetW(VROOT), h);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue