diff --git a/qrenderdoc/Widgets/CustomPaintWidget.cpp b/qrenderdoc/Widgets/CustomPaintWidget.cpp index e543bba9e..8a98935dd 100644 --- a/qrenderdoc/Widgets/CustomPaintWidget.cpp +++ b/qrenderdoc/Widgets/CustomPaintWidget.cpp @@ -115,3 +115,12 @@ void CustomPaintWidget::paintEvent(QPaintEvent *e) } } } + +#if defined(RENDERDOC_PLATFORM_APPLE) +bool CustomPaintWidget::event(QEvent *e) +{ + if(m_Ctx && e->type() == QEvent::UpdateRequest) + paintEvent(NULL); + return QWidget::event(e); +} +#endif \ No newline at end of file diff --git a/qrenderdoc/Widgets/CustomPaintWidget.h b/qrenderdoc/Widgets/CustomPaintWidget.h index 9bfcda35b..618e064ce 100644 --- a/qrenderdoc/Widgets/CustomPaintWidget.h +++ b/qrenderdoc/Widgets/CustomPaintWidget.h @@ -72,6 +72,10 @@ private: public slots: protected: +#if defined(RENDERDOC_PLATFORM_APPLE) + bool event(QEvent *event) override; +#endif + void paintEvent(QPaintEvent *e) override; QPaintEngine *paintEngine() const override { return m_Ctx ? NULL : QWidget::paintEngine(); } ICaptureContext *m_Ctx;