call setContainment after ctor so that we get the virtual method version of it called
svn path=/trunk/KDE/kdelibs/; revision=917678
This commit is contained in:
parent
ef4b6c7187
commit
b0d610d38f
31
view.cpp
31
view.cpp
@ -19,6 +19,8 @@
|
||||
|
||||
#include "view.h"
|
||||
|
||||
#include <QTimer>
|
||||
|
||||
#include <kglobal.h>
|
||||
#include <kwindowsystem.h>
|
||||
#include <kactioncollection.h>
|
||||
@ -38,11 +40,12 @@ public:
|
||||
ViewPrivate(View *view, int uniqueId)
|
||||
: q(view),
|
||||
containment(0),
|
||||
drawWallpaper(true),
|
||||
trackChanges(true),
|
||||
viewId(0),
|
||||
lastScreen(-1),
|
||||
lastDesktop(-2)
|
||||
lastDesktop(-2),
|
||||
drawWallpaper(true),
|
||||
trackChanges(true),
|
||||
init(false)
|
||||
{
|
||||
if (uniqueId > s_maxViewId) {
|
||||
s_maxViewId = uniqueId;
|
||||
@ -60,6 +63,12 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
void privateInit()
|
||||
{
|
||||
q->setContainment(containment);
|
||||
init = true;
|
||||
}
|
||||
|
||||
void updateSceneRect()
|
||||
{
|
||||
if (!containment || !trackChanges) {
|
||||
@ -99,14 +108,16 @@ public:
|
||||
q->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
}
|
||||
|
||||
static int s_maxViewId;
|
||||
|
||||
Plasma::View *q;
|
||||
Plasma::Containment *containment;
|
||||
bool drawWallpaper;
|
||||
bool trackChanges;
|
||||
int viewId;
|
||||
int lastScreen;
|
||||
int lastDesktop;
|
||||
static int s_maxViewId;
|
||||
bool drawWallpaper : 1;
|
||||
bool trackChanges : 1;
|
||||
bool init : 1;
|
||||
};
|
||||
|
||||
int ViewPrivate::s_maxViewId(0);
|
||||
@ -119,7 +130,8 @@ View::View(Containment *containment, QWidget *parent)
|
||||
|
||||
if (containment) {
|
||||
setScene(containment->scene());
|
||||
setContainment(containment);
|
||||
d->containment = containment;
|
||||
QTimer::singleShot(0, this, SLOT(privateInit()));
|
||||
}
|
||||
}
|
||||
|
||||
@ -131,7 +143,8 @@ View::View(Containment *containment, int viewId, QWidget *parent)
|
||||
|
||||
if (containment) {
|
||||
setScene(containment->scene());
|
||||
setContainment(containment);
|
||||
d->containment = containment;
|
||||
QTimer::singleShot(0, this, SLOT(privateInit()));
|
||||
}
|
||||
}
|
||||
|
||||
@ -189,7 +202,7 @@ int View::effectiveDesktop() const
|
||||
|
||||
void View::setContainment(Plasma::Containment *containment)
|
||||
{
|
||||
if (containment == d->containment) {
|
||||
if (d->init && containment == d->containment) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user