Alright, still needs conversion to signed ints though. Like in:
232 + virtual geometry::Point surface_to_screen(std::shared_ptr<frontend::Surface> surface,
233 + uint32_t x, uint32_t y) = 0;
Even local coordinates can go negative -- Consider what happens when you drag something like a scroll bar or image. The scrolling keeps responding even when the pointer itself is out of the window (so could be in negative coordinates).
Alright, still needs conversion to signed ints though. Like in: to_screen( std::shared_ ptr<frontend: :Surface> surface,
232 + virtual geometry::Point surface_
233 + uint32_t x, uint32_t y) = 0;
Even local coordinates can go negative -- Consider what happens when you drag something like a scroll bar or image. The scrolling keeps responding even when the pointer itself is out of the window (so could be in negative coordinates).