Cool idea, got stuck on the second level though (nothing seemed to happen when I got the blue block on the button after the buttons moved the first time).
Thanks! You're supposed to push the red block onto the button after the swap.