A floating toolbar for the selected image: alignment, size presets, rotate,
crop, alt text, caption and delete.
It lives outside the editor surface and never takes focus, every control
cancels its own mousedown, because the selection it acts on is the thing
a click would otherwise destroy. Commands are dispatched against the path
the toolbar resolved when it last refreshed, so they stay correct even if
the browser moves the caret behind our back.
A floating toolbar for the selected image: alignment, size presets, rotate, crop, alt text, caption and delete.
It lives outside the editor surface and never takes focus, every control cancels its own
mousedown, because the selection it acts on is the thing a click would otherwise destroy. Commands are dispatched against the path the toolbar resolved when it last refreshed, so they stay correct even if the browser moves the caret behind our back.