currently, the LineCursor manually calls workspace.scrollBoundsIntoView whenever the focused node is specifically a block, field, or workspace comments. it makes instanceof checks for these. this is clunky and not extensible.
should these components do this automatically in their "onNodeFocus" methods? is there a time when a node is focused that we wouldn't want to scroll them into view?
if there is and we can't do it in the onNodeFocus method, do we need an interface for "is-scroll-into-bounds-able" so that the linecursor can do it without making instanceof checks?
Originally posted by @maribethb in #9211 (review)