Treat non-text-field widgets as a whole when getting their extents

A number of non-text-field Gecko widgets implement the accessible text
interface. This was causing us to examine character extents rather than
widget extents during caret navigation by line.