mirror of
https://github.com/cookiengineer/audacity
synced 2025-07-03 22:19:07 +02:00
Bug 1248: Tab does not navigate out of ASlider if clicked
Problem: If an ASlider in the main window is clicked, then you can't TAB away from the control. Fix: Keyboard shortcuts are handled using key down events. However, ASlider was handling char events for reasons unknown. I'm unsure why this was causing a problem, but changing ASlider to handle key down events fixes the bug.
This commit is contained in:
parent
ecdb6d0a07
commit
95e2264d24
@ -1239,7 +1239,7 @@ void LWSlider::OnMouseEvent(wxMouseEvent & event)
|
||||
SendUpdate( mCurrentValue );
|
||||
}
|
||||
|
||||
void LWSlider::OnKeyEvent(wxKeyEvent & event)
|
||||
void LWSlider::OnKeyDown(wxKeyEvent & event)
|
||||
{
|
||||
if (mEnabled)
|
||||
{
|
||||
@ -1508,7 +1508,7 @@ void LWSlider::SetEnabled(bool enabled)
|
||||
//
|
||||
|
||||
BEGIN_EVENT_TABLE(ASlider, wxWindow)
|
||||
EVT_CHAR(ASlider::OnKeyEvent)
|
||||
EVT_KEY_DOWN(ASlider::OnKeyDown)
|
||||
EVT_MOUSE_EVENTS(ASlider::OnMouseEvent)
|
||||
EVT_MOUSE_CAPTURE_LOST(ASlider::OnCaptureLost)
|
||||
EVT_PAINT(ASlider::OnPaint)
|
||||
@ -1628,9 +1628,9 @@ void ASlider::OnCaptureLost(wxMouseCaptureLostEvent & WXUNUSED(event))
|
||||
mLWSlider->OnMouseEvent(e);
|
||||
}
|
||||
|
||||
void ASlider::OnKeyEvent(wxKeyEvent &event)
|
||||
void ASlider::OnKeyDown(wxKeyEvent &event)
|
||||
{
|
||||
mLWSlider->OnKeyEvent(event);
|
||||
mLWSlider->OnKeyDown(event);
|
||||
}
|
||||
|
||||
void ASlider::OnSetFocus(wxFocusEvent & WXUNUSED(event))
|
||||
|
@ -136,7 +136,7 @@ class LWSlider
|
||||
void OnPaint(wxDC &dc, bool highlighted);
|
||||
void OnSize(wxSizeEvent & event);
|
||||
void OnMouseEvent(wxMouseEvent & event);
|
||||
void OnKeyEvent(wxKeyEvent & event);
|
||||
void OnKeyDown(wxKeyEvent & event);
|
||||
void Refresh();
|
||||
|
||||
bool ShowDialog();
|
||||
@ -290,7 +290,7 @@ class ASlider /* not final */ : public wxPanel
|
||||
void OnSize(wxSizeEvent & event);
|
||||
void OnMouseEvent(wxMouseEvent & event);
|
||||
void OnCaptureLost(wxMouseCaptureLostEvent & event);
|
||||
void OnKeyEvent(wxKeyEvent &event);
|
||||
void OnKeyDown(wxKeyEvent &event);
|
||||
void OnSlider(wxCommandEvent &event);
|
||||
void OnSetFocus(wxFocusEvent & event);
|
||||
void OnKillFocus(wxFocusEvent & event);
|
||||
|
Loading…
x
Reference in New Issue
Block a user