Make sure ripple is destroyed when overlay host widget is (segfault error)

This commit is contained in:
Johannes Hilden 2017-10-15 11:39:23 +03:00
parent 8a64b5a981
commit 80e9a5a4b8
1 changed files with 13 additions and 10 deletions

View File

@ -21,24 +21,27 @@ QtMaterialRippleOverlay::~QtMaterialRippleOverlay()
void QtMaterialRippleOverlay::addRipple(QtMaterialRipple *ripple) void QtMaterialRippleOverlay::addRipple(QtMaterialRipple *ripple)
{ {
//ripple->setOverlay(this); ripple->setOverlay(this);
//m_ripples.push_back(ripple); m_ripples.push_back(ripple);
//ripple->start(); ripple->start();
connect(this, SIGNAL(destroyed(QObject*)), ripple, SLOT(stop()));
connect(this, SIGNAL(destroyed(QObject*)), ripple, SLOT(deleteLater()));
} }
void QtMaterialRippleOverlay::addRipple(const QPoint &position, qreal radius) void QtMaterialRippleOverlay::addRipple(const QPoint &position, qreal radius)
{ {
//QtMaterialRipple *ripple = new QtMaterialRipple(position); QtMaterialRipple *ripple = new QtMaterialRipple(position);
//ripple->setRadiusEndValue(radius); ripple->setRadiusEndValue(radius);
//addRipple(ripple); addRipple(ripple);
} }
void QtMaterialRippleOverlay::removeRipple(QtMaterialRipple *ripple) void QtMaterialRippleOverlay::removeRipple(QtMaterialRipple *ripple)
{ {
//if (m_ripples.removeOne(ripple)) { if (m_ripples.removeOne(ripple)) {
// delete ripple; delete ripple;
// update(); update();
//} }
} }
/*! /*!