I'd try the following:
0. Remove the moving code from the constructor.
1. Create the dialog hidden.
2. Call setGeometry() on it from the parent.
3. show it.