[x] When we do rectangular select, arrowheads are not considered. This is essentially a bug in Collision.coffee, but also in the bounding-box heuristic used for culling collisions:
[x] When we export to SVG, the arrowheads can be clipped because they're not considered in the bounding box computation. Currently we use svgBBox for this computation. Perhaps we could tweak svgBBox to add in computed vertices of the arrowhead if it's detected, like we already do for stroke width.
[x] It occurs to me that the fast mode for updating bbox for pen append will become broken, because the head moves with the pen stroke, so it's not so easy to update... Maybe we can do this simple update with the new arrowhead considered too. Having a bigger bounding box isn't terrible because it's just used as a filter for whether we need to look closer. If we wanted to keep it accurate, use a throttled delay to recompute the whole bounding box from scratch, but this probably isn't necessary.
Arrowheads have bounding box issues:
svgBBox
for this computation. Perhaps we could tweaksvgBBox
to add in computed vertices of the arrowhead if it's detected, like we already do for stroke width.