From kde-commits Tue Feb 24 20:28:29 2009 From: Ambroz Bizjak Date: Tue, 24 Feb 2009 20:28:29 +0000 To: kde-commits Subject: KDE/kdelibs/plasma Message-Id: <1235507309.750809.13463.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=123550733920493 SVN commit 931126 by abizjak: Fix bug 184930. The containment's screen can change after it is initially created, so make sure it is changed in the view as well. M +8 -0 view.cpp M +1 -0 view.h --- trunk/KDE/kdelibs/plasma/view.cpp #931125:931126 @@ -95,6 +95,12 @@ containment = 0; } + void containmentScreenChanged(int wasScreen, int newScreen, Plasma::Containment *containment) + { + lastScreen = newScreen; + lastDesktop = this->containment->desktop(); + } + void initGraphicsView() { q->setFrameShape(QFrame::NoFrame); @@ -210,6 +216,7 @@ if (d->containment) { disconnect(d->containment, SIGNAL(destroyed(QObject*)), this, SLOT(containmentDestroyed())); disconnect(d->containment, SIGNAL(geometryChanged()), this, SLOT(updateSceneRect())); + disconnect(d->containment, SIGNAL(screenChanged(int, int, Plasma::Containment *)), this, SLOT(containmentScreenChanged(int, int, Plasma::Containment *))); d->containment->removeAssociatedWidget(this); } @@ -261,6 +268,7 @@ d->updateSceneRect(); connect(containment, SIGNAL(destroyed(QObject*)), this, SLOT(containmentDestroyed())); connect(containment, SIGNAL(geometryChanged()), this, SLOT(updateSceneRect())); + connect(containment, SIGNAL(screenChanged(int, int, Plasma::Containment *)), this, SLOT(containmentScreenChanged(int, int, Plasma::Containment *))); } Containment *View::containment() const --- trunk/KDE/kdelibs/plasma/view.h #931125:931126 @@ -197,6 +197,7 @@ Q_PRIVATE_SLOT(d, void updateSceneRect()) Q_PRIVATE_SLOT(d, void containmentDestroyed()) + Q_PRIVATE_SLOT(d, void containmentScreenChanged(int, int, Plasma::Containment *)) Q_PRIVATE_SLOT(d, void privateInit()) friend class ViewPrivate;