rendered paste bodyanimWidth = (1 - animationProgress) * WIN_REAL_WIDTH(PREV_TOP_TAB(gw->group)) +
animationProgress * WIN_REAL_WIDTH(TOP_TAB(gw->group));
animHeight = (1 - animationProgress) * WIN_REAL_HEIGHT(PREV_TOP_TAB(gw->group)) +
animationProgress * WIN_REAL_HEIGHT(TOP_TAB(gw->group));
animScaleX = animWidth / WIN_REAL_WIDTH(w);
animScaleY = animHeight / WIN_REAL_HEIGHT(w);
matrixScale(&wTransform, animScaleX, animScaleY, 1.0f / w->screen->width);
matrixTranslate(&wTransform, animScaleX * (WIN_REAL_X(w) + WIN_REAL_WIDTH(w) / 2.0f), 0.0f, 0.0f);
matrixRotate(&wTransform, rotateAngle, 0.0f, 1.0f, 0.0f);
matrixTranslate(&wTransform, -animScaleX * (WIN_REAL_X(w) + WIN_REAL_WIDTH(w) / 2.0f), 0.0f, 0.0f);