diff options
-rw-r--r-- | Source/WebKit/qt/WidgetSupport/PageClientQt.cpp | 2 | ||||
-rw-r--r-- | Source/WebKit/qt/tests/qwebview/tst_qwebview.cpp | 23 |
2 files changed, 24 insertions, 1 deletions
diff --git a/Source/WebKit/qt/WidgetSupport/PageClientQt.cpp b/Source/WebKit/qt/WidgetSupport/PageClientQt.cpp index 858290f6e..2dd14afc6 100644 --- a/Source/WebKit/qt/WidgetSupport/PageClientQt.cpp +++ b/Source/WebKit/qt/WidgetSupport/PageClientQt.cpp @@ -146,7 +146,7 @@ QStyle* PageClientQWidget::style() const QRectF PageClientQWidget::windowRect() const { - return QRectF(view->window()->geometry()); + return QRectF(view->window()->frameGeometry()); } void PageClientQWidget::setWidgetVisible(Widget* widget, bool visible) diff --git a/Source/WebKit/qt/tests/qwebview/tst_qwebview.cpp b/Source/WebKit/qt/tests/qwebview/tst_qwebview.cpp index a990ad0f2..dcea15912 100644 --- a/Source/WebKit/qt/tests/qwebview/tst_qwebview.cpp +++ b/Source/WebKit/qt/tests/qwebview/tst_qwebview.cpp @@ -59,6 +59,7 @@ private Q_SLOTS: void setPalette_data(); void setPalette(); #endif + void innerOuterRect(); }; // This will be called before the first test function is executed. @@ -518,6 +519,28 @@ void tst_QWebView::renderingAfterMaxAndBack() QCOMPARE(image3, reference3); } +void tst_QWebView::innerOuterRect() +{ + QUrl url = QUrl("data:text/html,<html><head></head>" + "<body bgcolor=red>" + "</body>" + "</html>"); + QWebView view; + view.page()->mainFrame()->load(url); + QVERIFY(waitForSignal(&view, SIGNAL(loadFinished(bool)))); + view.showMaximized(); + const QRect frameGeometry = view.frameGeometry(); + const QRect geometry = view.geometry(); + QVariant outerWidth = view.page()->mainFrame()->evaluateJavaScript("window.outerWidth;"); + QCOMPARE(outerWidth.toInt(), frameGeometry.width()); + QVariant innerWidth = view.page()->mainFrame()->evaluateJavaScript("window.innerWidth;"); + QCOMPARE(innerWidth.toInt(), geometry.width()); + QVariant outerHeight = view.page()->mainFrame()->evaluateJavaScript("window.outerHeight;"); + QCOMPARE(outerHeight.toInt(), frameGeometry.height()); + QVariant innerHeight = view.page()->mainFrame()->evaluateJavaScript("window.innerHeight;"); + QCOMPARE(innerHeight.toInt(), geometry.height()); +} + QTEST_MAIN(tst_QWebView) #include "tst_qwebview.moc" |