fixes for keyboard navigation and tab panels

The geometry used for keyboard navigation and tab-panel% instances
was wrong. That problem, in turn, exposed a potential infinite
loop in the function that computes the next tab position (when
geometries overlap). Fix both.

Closes PR 14255

Merge to v6.0