Dragging with multiple windows works. **NOT FINAL VERSON**. Code still needs a big cleanup