mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-21 22:12:58 +02:00
Grid accessibility: incorrect focus can be read
Problem: this affects NVDA and Narrator, but not Jaws. If a user moves to the Delete button and presses it to delete a label, a label is incorrectly read as the new focus - the focus remains on the Delete button. GridAx::SetCurrentCell() can be called when the Grid is not the focus, and send a focus event. Fix: In GridAx::SetCurrentCell() only send an focus event if the Grid is the focus.
This commit is contained in:
@@ -739,10 +739,12 @@ void GridAx::SetCurrentCell(int row, int col)
|
|||||||
mLastId);
|
mLastId);
|
||||||
}
|
}
|
||||||
|
|
||||||
NotifyEvent(wxACC_EVENT_OBJECT_FOCUS,
|
if (mGrid == wxWindow::FindFocus()) {
|
||||||
mGrid->GetGridWindow(),
|
NotifyEvent(wxACC_EVENT_OBJECT_FOCUS,
|
||||||
wxOBJID_CLIENT,
|
mGrid->GetGridWindow(),
|
||||||
id);
|
wxOBJID_CLIENT,
|
||||||
|
id);
|
||||||
|
}
|
||||||
|
|
||||||
NotifyEvent(wxACC_EVENT_OBJECT_SELECTION,
|
NotifyEvent(wxACC_EVENT_OBJECT_SELECTION,
|
||||||
mGrid->GetGridWindow(),
|
mGrid->GetGridWindow(),
|
||||||
|
Reference in New Issue
Block a user