Work around for issue #12058: In wxPython >= 4.1, wx.CallAfter no longer executes callbacks while NVDA's main thread is within apopup menu or message box. (#12072)
Monkeypatch wx.CallAfter to post a WM_NULL message to our top-level window after calling the original CallAfter, which causes wx's event loop to wake up enough to execute the callback.