updated peek action
initial widget rewrite