diff --git a/soitool/main_window.py b/soitool/main_window.py
index 4e91d646e2cf037d45ee9fe8375d24e48b427551..6fc00c8408a6012e388ff2ace479f185353387d8 100644
--- a/soitool/main_window.py
+++ b/soitool/main_window.py
@@ -144,9 +144,9 @@ class SOIWorkspaceWidget(QWidget):
         self.button_setup.clicked.connect(self.open_setup)
 
     def open_setup(self):
-        self.popup = Setup()
+        """Open setup-settings."""
         self.popup.setGeometry(150, 150, 200, 200)
-        self.popup.open()
+        self.popup.exec()  # exec = modal dialog, show = modeless dialog
 
     def setup_list_modules(self):
         """Prepare module list.
@@ -253,7 +253,8 @@ class Setup(QDialog):
 
         self.setLayout(layout_setup)
 
-        self.button_cancel.clicked.connect(self.close)
+        self.button_cancel.clicked.connect(self.reject)  # esc-key (default)
+        self.button_save.clicked.connect(self.accept)  # enter-key (default)
 
 
 if __name__ == "__main__":