fix bugs ; add update method for widgets ; add specs