search widget implementation