ENH: Keep popup inside body, and support fixed positioning [DAT-2955]

- Old code wasn't handling outside-of-page detection in some scenarios
- Added position fixed option, particularly useful when input element is inside parent with `overflow: hidden`