### Reproduction example https://codesandbox.io/p/devbox/lgshc5 ### Prerequisites 1. Add an `onKeyDown` handler to a focusable node 2. Inside the handler, change the focused node to something else 3. Include a simulated tab keypress in a test (using `user.tab()` or a lower level method) ### Expected behavior [The `Tab` keydown behaviour handler](https://github.com/testing-library/user-event/blob/main/src/event/behavior/keydown.ts#L103-L117) should use the currently focused element as the source for determining the tab destination. ### Actual behavior The `Tab` keydown behaviour handler [uses the event target as the source](https://github.com/testing-library/user-event/blob/main/src/event/behavior/keydown.ts#L105-L108) for determining the tab destination. ### User-event version 14.5.2 ### Environment _No response_ ### Additional context This is niche behaviour, but is used to create focus traps, etc, to constrain tabbing. This may well be causing #820.