split timeline widget into own file