on text change refresh