it fixes wrong layouts if the browser supports smooth scrolling and the application is using it (scroll-behavior: smooth).
in the prev version we were updating the layouts after the focus was set, but if an element is scrolling the position was not updated (because of the animated scroll), with this change it updates the layouts when the smartNavigate function is called, so the layouts are updated at the moment they are used to calculate next focus key
it fixes wrong layouts if the browser supports smooth scrolling and the application is using it (scroll-behavior: smooth).
in the prev version we were updating the layouts after the focus was set, but if an element is scrolling the position was not updated (because of the animated scroll), with this change it updates the layouts when the smartNavigate function is called, so the layouts are updated at the moment they are used to calculate next focus key