The `CanvasBox.positionChanged` signal expects to receive `x` and `y` as `int`s, but they were being passed as `float`s, which mangled them on the receiving signal handler. This manifested as huge `x` and `y` values for canvas boxes, and when saving and loading projects all boxes would hit the edge of the canvas and get placed at the extreme edge.pull/1554/head