diff --git a/src/visual/MeterCanvas.cpp b/src/visual/MeterCanvas.cpp index 3014f8f..bb3c20b 100644 --- a/src/visual/MeterCanvas.cpp +++ b/src/visual/MeterCanvas.cpp @@ -60,6 +60,9 @@ float MeterCanvas::getInputValue() { void MeterCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) { wxPaintDC dc(this); +#ifdef __APPLE__ // force half-rate? + glFinish(); +#endif const wxSize ClientSize = GetClientSize(); glContext->SetCurrent(*this); diff --git a/src/visual/ModeSelectorCanvas.cpp b/src/visual/ModeSelectorCanvas.cpp index f067d6d..52637ba 100644 --- a/src/visual/ModeSelectorCanvas.cpp +++ b/src/visual/ModeSelectorCanvas.cpp @@ -47,7 +47,10 @@ int ModeSelectorCanvas::getHoveredSelection() { void ModeSelectorCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) { wxPaintDC dc(this); - const wxSize ClientSize = GetClientSize(); +#ifdef __APPLE__ // force half-rate? + glFinish(); +#endif + const wxSize ClientSize = GetClientSize(); glContext->SetCurrent(*this); initGLExtensions(); diff --git a/src/visual/ScopeCanvas.cpp b/src/visual/ScopeCanvas.cpp index dc2a972..cc8c000 100644 --- a/src/visual/ScopeCanvas.cpp +++ b/src/visual/ScopeCanvas.cpp @@ -45,6 +45,9 @@ void ScopeCanvas::setDeviceName(std::string device_name) { void ScopeCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) { wxPaintDC dc(this); +#ifdef __APPLE__ // force half-rate? + glFinish(); +#endif const wxSize ClientSize = GetClientSize(); if (!wxGetApp().getAudioVisualQueue()->empty()) { diff --git a/src/visual/SpectrumCanvas.cpp b/src/visual/SpectrumCanvas.cpp index f894f0f..e88733a 100644 --- a/src/visual/SpectrumCanvas.cpp +++ b/src/visual/SpectrumCanvas.cpp @@ -67,6 +67,9 @@ SpectrumCanvas::~SpectrumCanvas() { void SpectrumCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) { wxPaintDC dc(this); +#ifdef __APPLE__ // force half-rate? + glFinish(); +#endif const wxSize ClientSize = GetClientSize(); glContext->SetCurrent(*this); diff --git a/src/visual/TuningCanvas.cpp b/src/visual/TuningCanvas.cpp index dab1aaf..8a2574f 100644 --- a/src/visual/TuningCanvas.cpp +++ b/src/visual/TuningCanvas.cpp @@ -36,6 +36,9 @@ TuningCanvas::~TuningCanvas() { void TuningCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) { wxPaintDC dc(this); +#ifdef __APPLE__ // force half-rate? + glFinish(); +#endif const wxSize ClientSize = GetClientSize(); glContext->SetCurrent(*this); diff --git a/src/visual/WaterfallCanvas.cpp b/src/visual/WaterfallCanvas.cpp index 10e0fcc..8669667 100644 --- a/src/visual/WaterfallCanvas.cpp +++ b/src/visual/WaterfallCanvas.cpp @@ -98,6 +98,10 @@ void WaterfallCanvas::attachSpectrumCanvas(SpectrumCanvas *canvas_in) { void WaterfallCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) { wxPaintDC dc(this); +#ifdef __APPLE__ // force half-rate? + glFinish(); +#endif + const wxSize ClientSize = GetClientSize();