Optimize widget refresh strategy