106void tst_QGraphicsWebView::microFocusCoordinates()
107{
108 QWebPage* page = new QWebPage;
109 QGraphicsWebView* webView = new QGraphicsWebView;
110 webView->setPage( page );
111 QGraphicsView* view = new QGraphicsView;
112 QGraphicsScene* scene = new QGraphicsScene(view);
113 view->setScene(scene);
114 scene->addItem(webView);
115 view->setGeometry(QRect(0,0,500,500));
116
117 page->mainFrame()->setHtml("<html><body>" \
118 "<input type='text' id='input1' style='font--family: serif' value='' maxlength='20'/><br>" \
119 "<canvas id='canvas1' width='500' height='500'/>" \
120 "<input type='password'/><br>" \
121 "<canvas id='canvas2' width='500' height='500'/>" \
122 "</body></html>");
123
124 page->mainFrame()->setFocus();
125
126 QVariant initialMicroFocus = page->inputMethodQuery(Qt::ImMicroFocus);
127 QVERIFY(initialMicroFocus.isValid());
128
129 page->mainFrame()->scroll(0,300);
130
131 QVariant currentMicroFocus = page->inputMethodQuery(Qt::ImMicroFocus);
132 QVERIFY(currentMicroFocus.isValid());
133
134 QCOMPARE(initialMicroFocus.toRect().translated(QPoint(0,-300)), currentMicroFocus.toRect());
135
136 delete view;
137}
138
139