#[
discard xcb_grab_pointer( p.conn
, 0
, p.window
, uint16 XCB_EVENT_MASK_BUTTON_RELEASE or
XCB_EVENT_MASK_BUTTON_MOTION or
XCB_EVENT_MASK_POINTER_MOTION_HINT
, uint8 XCB_GRAB_MODE_ASYNC
, uint8 XCB_GRAB_MODE_ASYNC
, p.window
, XCB_NONE
, XCB_CURRENT_TIME
)
]#
# // Simple fix for 1:1 pixel aspect ratio.
# if (viewport.width > viewport.height)
# {
# viewport.x += 0.5f * (viewport.width - viewport.height);
# viewport.width = viewport.height;
# }
# else if (viewport.height > viewport.width)
# {
# viewport.y += 0.5f * (viewport.height - viewport.width);
# viewport.height = viewport.width;
# }
# for t in scene.shapes.mitems:
# if t.camera.updated: rec.vk_device.updateCamera(t, ( rec.swapchain.current_extent.width div
# rec.swapchain.current_extent.height
# ) )
# p.mouse = xcb_query_pointer_reply( p.conn
# , xcb_query_pointer(p.conn, p.window)
# , cast[ptr ptr xcb_generic_error_t](Z)
# )