rect_for_text_range
This was causing IME input to be drawn in the wrong place when there were splits or panels in the window.
impl_internal_actions
cx
CallbackCollection