|
|
|
@ -113,6 +113,7 @@ void UBGraphicsWidgetItem::initialize() |
|
|
|
|
connect(page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), this, SLOT(javaScriptWindowObjectCleared())); |
|
|
|
|
connect(page(), SIGNAL(geometryChangeRequested(const QRect&)), this, SLOT(geometryChangeRequested(const QRect&))); |
|
|
|
|
connect(this, SIGNAL(loadFinished(bool)), this, SLOT(mainFrameLoadFinished (bool))); |
|
|
|
|
connect(page()->mainFrame(), SIGNAL(initialLayoutCompleted()), this, SLOT(initialLayoutCompleted())); |
|
|
|
|
connect(page(), SIGNAL(linkClicked(const QUrl&)), this, SLOT(onLinkClicked(const QUrl&))); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -121,6 +122,11 @@ void UBGraphicsWidgetItem::onLinkClicked(const QUrl& url) |
|
|
|
|
UBApplication::webController->loadUrl(url); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void UBGraphicsWidgetItem::initialLayoutCompleted() |
|
|
|
|
{ |
|
|
|
|
mInitialLoadDone = true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
QUrl UBGraphicsWidgetItem::mainHtml() |
|
|
|
|
{ |
|
|
|
|
return mMainHtmlUrl; |
|
|
|
@ -564,19 +570,16 @@ void UBGraphicsWidgetItem::injectInlineJavaScript() |
|
|
|
|
void UBGraphicsWidgetItem::paint( QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) |
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|
if (scene() && scene()->renderingContext() != UBGraphicsScene::Screen) |
|
|
|
|
{ |
|
|
|
|
if (scene() && scene()->renderingContext() != UBGraphicsScene::Screen) { |
|
|
|
|
painter->drawPixmap(0, 0, snapshot()); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
if (!mInitialLoadDone || mLoadIsErronous)
|
|
|
|
|
{ |
|
|
|
|
else { |
|
|
|
|
QGraphicsWebView::paint(painter, option, widget); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (!mInitialLoadDone) { |
|
|
|
|
QString message; |
|
|
|
|
|
|
|
|
|
if (mInitialLoadDone && mLoadIsErronous) |
|
|
|
|
message = tr("Cannot load content"); |
|
|
|
|
else |
|
|
|
|
message = tr("Loading ..."); |
|
|
|
|
|
|
|
|
|
painter->setFont(QFont("Arial", 12)); |
|
|
|
@ -594,10 +597,6 @@ void UBGraphicsWidgetItem::paint( QPainter *painter, const QStyleOptionGraphicsI |
|
|
|
|
painter->setPen(Qt::white); |
|
|
|
|
painter->drawText(rect(), Qt::AlignCenter, message); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
QGraphicsWebView::paint(painter, option, widget); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void UBGraphicsWidgetItem::geometryChangeRequested(const QRect& geom) |
|
|
|
@ -618,7 +617,6 @@ void UBGraphicsWidgetItem::javaScriptWindowObjectCleared() |
|
|
|
|
|
|
|
|
|
void UBGraphicsWidgetItem::mainFrameLoadFinished (bool ok) |
|
|
|
|
{ |
|
|
|
|
mInitialLoadDone = true; |
|
|
|
|
mLoadIsErronous = !ok; |
|
|
|
|
update(boundingRect()); |
|
|
|
|
takeSnapshot(); |
|
|
|
|