Better solution for swapping while not visible