In the current implementation, resizing the window results in laggy updates of the timeline components, probably due to the firing rate of the resize event. Maybe debouncing this update method and interpolating between oldWidth and newWidth in all the dependent components will result in a smoother transition.