callback only if item position or size changed