diff --git a/source/gui/addonStoreGui/__init__.py b/source/gui/addonStoreGui/__init__.py index 7a6ce947cef..3a16080b210 100644 --- a/source/gui/addonStoreGui/__init__.py +++ b/source/gui/addonStoreGui/__init__.py @@ -17,5 +17,5 @@ def initialize(): scheduleThread.scheduleDailyJobAtStartUp( UpdatableAddonsDialog._checkForUpdatableAddons, - queueToThread=ThreadTarget.GUI, + queueToThread=ThreadTarget.DAEMON, ) diff --git a/source/gui/addonStoreGui/controls/messageDialogs.py b/source/gui/addonStoreGui/controls/messageDialogs.py index 4bc8fa48e4f..fc21ff9d995 100644 --- a/source/gui/addonStoreGui/controls/messageDialogs.py +++ b/source/gui/addonStoreGui/controls/messageDialogs.py @@ -563,4 +563,8 @@ def _checkForUpdatableAddons(cls): addonsPendingUpdate = addonDataManager._addonsPendingUpdate() if addonsPendingUpdate: log.debug("updatable add-ons found") - displayDialogAsModal(cls(gui.mainFrame, addonsPendingUpdate)) + + def delayCreateDialog(): + displayDialogAsModal(cls(gui.mainFrame, addonsPendingUpdate)) + + wx.CallAfter(delayCreateDialog) diff --git a/source/utils/schedule.py b/source/utils/schedule.py index ae290e2678b..c7b46111c0f 100644 --- a/source/utils/schedule.py +++ b/source/utils/schedule.py @@ -193,7 +193,7 @@ def callJobOnThread(*args, **kwargs): # noqa F811: lint bug with flake8 4.0.1 n name=f"{task.__name__}", ) log.debug(f"Starting thread for job: {task.__name__} on thread {t.ident}") - t.run() + t.start() case ThreadTarget.CUSTOM: def callJobOnThread(*args, **kwargs): # noqa F811: lint bug with flake8 4.0.1 not recognizing case statement diff --git a/user_docs/en/changes.md b/user_docs/en/changes.md index 85d67370224..c424cbc5f85 100644 --- a/user_docs/en/changes.md +++ b/user_docs/en/changes.md @@ -88,6 +88,14 @@ Please refer to [the developer guide](https://www.nvaccess.org/files/nvda/docume * These keys are currently synchronized until 2025.1. * `NVDAObjects.UIA.InaccurateTextChangeEventEmittingEditableText` is deprecated with no replacement. (#16817, @LeonarddeR) +## 2024.3.1 + +This is a patch release to fix a bug with the automatic add-on update notification. + +### Bug Fixes + +* When automatically checking for add-on updates, NVDA no longer freezes on poor connections. (#17036) + ## 2024.3 The Add-on Store will now notify you if any add-on updates are available on NVDA startup.