diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 889e442eaa5..64d88d13dc1 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -495,41 +495,45 @@ def __setLatestResouceVersionsForVersionUpgrade(self): def startSplashWindowPhase(self) -> None: """Runs preparations that needs to be done before the starting process.""" - super().startSplashWindowPhase() - - if not self.getIsHeadLess(): - try: - self.setWindowIcon(QIcon(Resources.getPath(Resources.Images, "cura-icon.png" if not ApplicationMetadata.IsAlternateVersion else "cura-icon_wip.png"))) - except FileNotFoundError: - Logger.log("w", "Unable to find the window icon.") - self.setRequiredPlugins([ # Misc.: - "ConsoleLogger", #You want to be able to read the log if something goes wrong. - "CuraEngineBackend", #Cura is useless without this one since you can't slice. - "FileLogger", #You want to be able to read the log if something goes wrong. - "XmlMaterialProfile", #Cura crashes without this one. - "Marketplace", #This contains the interface to enable/disable plug-ins, so if you disable it you can't enable it back. - "PrepareStage", #Cura is useless without this one since you can't load models. - "PreviewStage", #This shows the list of the plugin views that are installed in Cura. - "MonitorStage", #Major part of Cura's functionality. - "LocalFileOutputDevice", #Major part of Cura's functionality. - "LocalContainerProvider", #Cura is useless without any profiles or setting definitions. + "ConsoleLogger", # You want to be able to read the log if something goes wrong. + "CuraEngineBackend", # Cura is useless without this one since you can't slice. + "FileLogger", # You want to be able to read the log if something goes wrong. + "XmlMaterialProfile", # Cura crashes without this one. + "Marketplace", + # This contains the interface to enable/disable plug-ins, so if you disable it you can't enable it back. + "PrepareStage", # Cura is useless without this one since you can't load models. + "PreviewStage", # This shows the list of the plugin views that are installed in Cura. + "MonitorStage", # Major part of Cura's functionality. + "LocalFileOutputDevice", # Major part of Cura's functionality. + "LocalContainerProvider", # Cura is useless without any profiles or setting definitions. # Views: - "SimpleView", #Dependency of SolidView. - "SolidView", #Displays models. Cura is useless without it. + "SimpleView", # Dependency of SolidView. + "SolidView", # Displays models. Cura is useless without it. # Readers & Writers: - "GCodeWriter", #Cura is useless if it can't write its output. - "STLReader", #Most common model format, so disabling this makes Cura 90% useless. - "3MFWriter", #Required for writing project files. + "GCodeWriter", # Cura is useless if it can't write its output. + "STLReader", # Most common model format, so disabling this makes Cura 90% useless. + "3MFWriter", # Required for writing project files. # Tools: - "CameraTool", #Needed to see the scene. Cura is useless without it. - "SelectionTool", #Dependency of the rest of the tools. - "TranslateTool", #You'll need this for almost every print. + "CameraTool", # Needed to see the scene. Cura is useless without it. + "SelectionTool", # Dependency of the rest of the tools. + "TranslateTool", # You'll need this for almost every print. ]) + # Plugins need to be set here, since in the super the check is done if they are actually loaded. + + super().startSplashWindowPhase() + + if not self.getIsHeadLess(): + try: + self.setWindowIcon(QIcon(Resources.getPath(Resources.Images, "cura-icon.png" if not ApplicationMetadata.IsAlternateVersion else "cura-icon_wip.png"))) + except FileNotFoundError: + Logger.log("w", "Unable to find the window icon.") + + self._i18n_catalog = i18nCatalog("cura") self._update_platform_activity_timer = QTimer()