improve board snap functionality