diff --git a/openpype/tools/settings/__init__.py b/openpype/tools/settings/__init__.py index 3f47d1c2c3..f56704def5 100644 --- a/openpype/tools/settings/__init__.py +++ b/openpype/tools/settings/__init__.py @@ -24,7 +24,6 @@ def main(user_role=None): widget = MainWidget(user_role) widget.show() - widget.reset() sys.exit(app.exec_()) diff --git a/openpype/tools/settings/settings/widgets/window.py b/openpype/tools/settings/settings/widgets/window.py index 96275facff..e632a1b2b6 100644 --- a/openpype/tools/settings/settings/widgets/window.py +++ b/openpype/tools/settings/settings/widgets/window.py @@ -14,6 +14,8 @@ class MainWidget(QtWidgets.QWidget): def __init__(self, user_role, parent=None): super(MainWidget, self).__init__(parent) + self._reset_on_show = True + self.setObjectName("MainWidget") self.setWindowTitle("OpenPype Settings") @@ -75,6 +77,14 @@ class MainWidget(QtWidgets.QWidget): if app: app.processEvents() + def showEvent(self, event): + super(MainWidget, self).showEvent(event) + if self._reset_on_show: + self.reset() + def reset(self): for tab_widget in self.tab_widgets: tab_widget.reset() + + if self._reset_on_show: + self._reset_on_show = False