Multi-Line highlights don't go off right edge

Involved a ton of refactoring of how I was detecting which elements
should be shown. Still needs cleaning up for readability and repetitive
code, but it's much cleaner than it was.