--- a/eric6/UI/PythonDisViewer.py Fri Oct 09 17:19:29 2020 +0200 +++ b/eric6/UI/PythonDisViewer.py Sat Oct 10 12:20:51 2020 +0200 @@ -15,12 +15,13 @@ from PyQt5.QtCore import pyqtSlot, Qt, QTimer -from PyQt5.QtGui import QCursor, QBrush +from PyQt5.QtGui import QBrush from PyQt5.QtWidgets import ( - QApplication, QTreeWidgetItem, QAbstractItemView, QWidget, QMenu + QTreeWidgetItem, QAbstractItemView, QWidget, QMenu ) from E5Gui.E5Application import e5App +from E5Gui.E5OverrideCursor import E5OverrideCursor import Preferences @@ -478,24 +479,22 @@ else: filename = "<dis>" - QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) - try: - codeObject = self.__tryCompile(source, filename) - except Exception as exc: - codeObject = None - self.__createErrorItem(str(exc)) - - if codeObject: - self.setUpdatesEnabled(False) - block = self.disWidget.blockSignals(True) + with E5OverrideCursor(): + try: + codeObject = self.__tryCompile(source, filename) + except Exception as exc: + codeObject = None + self.__createErrorItem(str(exc)) - self.__disassembleObject(codeObject, self.disWidget, filename) - QTimer.singleShot(0, self.__resizeDisColumns) - - self.disWidget.blockSignals(block) - self.setUpdatesEnabled(True) - - QApplication.restoreOverrideCursor() + if codeObject: + self.setUpdatesEnabled(False) + block = self.disWidget.blockSignals(True) + + self.__disassembleObject(codeObject, self.disWidget, filename) + QTimer.singleShot(0, self.__resizeDisColumns) + + self.disWidget.blockSignals(block) + self.setUpdatesEnabled(True) @pyqtSlot(dict) def showDisassembly(self, disassembly):