use YieldFor() in wxTopLevelWindowGTK::RequestUserAttention; comment on the use of YieldFor() in wxProgressDialog; add some TODOs near wxYieldIfNeeded()/wxSafeYield() calls in wxListCtrl, wxDataViewCtrl, wxTreeCtrl (closes #10320)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1247,10 +1247,11 @@ void wxTopLevelWindowGTK::RequestUserAttention(int flags)
|
||||
bool new_hint_value = false;
|
||||
|
||||
// FIXME: This is a workaround to focus handling problem
|
||||
// If RequestUserAttention is called for example right after a wxSleep, OnInternalIdle hasn't
|
||||
// yet been processed, and the internal focus system is not up to date yet.
|
||||
// wxYieldIfNeeded ensures the processing of it, but can have unwanted side effects - MR
|
||||
::wxYieldIfNeeded();
|
||||
// If RequestUserAttention is called for example right after a wxSleep, OnInternalIdle
|
||||
// hasn't yet been processed, and the internal focus system is not up to date yet.
|
||||
// YieldFor(wxEVT_CATEGORY_UI) ensures the processing of it (hopefully it
|
||||
// won't have side effects) - MR
|
||||
wxEventLoopBase::GetActive()->YieldFor(wxEVT_CATEGORY_UI);
|
||||
|
||||
if(m_urgency_hint >= 0)
|
||||
g_source_remove(m_urgency_hint);
|
||||
|
Reference in New Issue
Block a user