diff --git a/examples/basic/viewport.c b/examples/basic/viewport.c index 724dba5..30be60c 100644 --- a/examples/basic/viewport.c +++ b/examples/basic/viewport.c @@ -35,7 +35,9 @@ int main() { // MwNpixmap, px, // NULL); MwViewportSetSize(vp, 1024, 1024); - MwCreateWidget(MwButtonClass, "btn", MwViewportGetViewport(vp), 256, 256, 128, 128); + MwWidget f = MwCreateWidget(MwFrameClass, "fr", MwViewportGetViewport(vp), 256, 256, 128, 128); + f = MwCreateWidget(MwFrameClass, "fr", f, 0, 0, 128, 128); + MwCreateWidget(MwButtonClass, "btn", f, 64, 64, 128, 128); MwAddUserHandler(w, MwNresizeHandler, resize, NULL); diff --git a/src/backend/wayland.c b/src/backend/wayland.c index f5f06bb..f677762 100644 --- a/src/backend/wayland.c +++ b/src/backend/wayland.c @@ -1747,10 +1747,9 @@ static void clip(MwLL handle) { x += ws[i]->wayland.x; y += ws[i]->wayland.y; - if(i > 0){ - cx = MAX(cx, ws[i]->wayland.x); - cy = MAX(cy, ws[i]->wayland.y); - } + cx = MAX(cx, ws[i]->wayland.x); + cy = MAX(cy, ws[i]->wayland.y); + mx = MIN(mx, x + ws[i]->wayland.ww); my = MIN(my, y + ws[i]->wayland.wh); }