widget updates via widget_params