From 366e5e8900679167055ba656418122712aefd2cb Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Thu, 10 Dec 2020 10:49:54 +0100 Subject: [PATCH 1/3] do not skip all actions discover only skip apps if project not set --- pype/tools/launcher/models.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pype/tools/launcher/models.py b/pype/tools/launcher/models.py index 3e869f3e4a..ad5dc3bccd 100644 --- a/pype/tools/launcher/models.py +++ b/pype/tools/launcher/models.py @@ -129,10 +129,6 @@ class ActionModel(QtGui.QStandardItemModel): def discover(self): """Set up Actions cache. Run this for each new project.""" - if not self.dbcon.Session.get("AVALON_PROJECT"): - self._registered_actions = list() - return - # Discover all registered actions actions = api.discover(api.Action) @@ -144,6 +140,9 @@ class ActionModel(QtGui.QStandardItemModel): def get_application_actions(self): actions = [] + if not self.dbcon.Session.get("AVALON_PROJECT"): + return actions + project_doc = self.dbcon.find_one({"type": "project"}) if not project_doc: return actions From 7da2e7568e289a43fcece8eb236a245247740598 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Thu, 10 Dec 2020 10:50:04 +0100 Subject: [PATCH 2/3] triggere discover on refresh --- pype/tools/launcher/models.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pype/tools/launcher/models.py b/pype/tools/launcher/models.py index ad5dc3bccd..c38e809c74 100644 --- a/pype/tools/launcher/models.py +++ b/pype/tools/launcher/models.py @@ -184,6 +184,8 @@ class ActionModel(QtGui.QStandardItemModel): self._groups.clear() + self.discover() + actions = self.filter_compatible_actions(self._registered_actions) self.beginResetModel() From 102f8bcf59552df21a61b739f770af4cbe614fee Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Thu, 10 Dec 2020 10:50:35 +0100 Subject: [PATCH 3/3] moved refreshed signal connection to initialization --- pype/tools/launcher/window.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pype/tools/launcher/window.py b/pype/tools/launcher/window.py index 55635e2139..ac4558df8b 100644 --- a/pype/tools/launcher/window.py +++ b/pype/tools/launcher/window.py @@ -186,6 +186,7 @@ class AssetsPanel(QtWidgets.QWidget): # signals project_bar.project_changed.connect(self.on_project_changed) assets_widget.selection_changed.connect(self.on_asset_changed) + assets_widget.refreshed.connect(self.on_asset_changed) btn_back.clicked.connect(self.back_clicked) # Force initial refresh for the assets since we might not be @@ -206,9 +207,6 @@ class AssetsPanel(QtWidgets.QWidget): self.dbcon.Session["AVALON_PROJECT"] = project_name self.assets_widget.refresh() - # Force asset change callback to ensure tasks are correctly reset - self.assets_widget.refreshed.connect(self.on_asset_changed) - def on_asset_changed(self): """Callback on asset selection changed