add conditionally widget loading feature.