Index: /applications/editors/josm/plugins/wmsplugin/webkit-image.cpp
===================================================================
--- /applications/editors/josm/plugins/wmsplugin/webkit-image.cpp	(revision 12420)
+++ /applications/editors/josm/plugins/wmsplugin/webkit-image.cpp	(revision 12421)
@@ -8,7 +8,9 @@
 */
 #include <QtGui/QApplication>
+#include <QtGui/QPainter>
 #include <QtCore/QFile>
 #include <QtCore/QString>
-#include <QtWebKit/QWebView>
+#include <QtWebKit/QWebPage>
+#include <QtWebKit/QWebFrame>
 
 /* using mingw to set binary mode */
@@ -27,16 +29,15 @@
 Q_OBJECT
 public:
-  Save(QWebView *v) : view(v) {};
+  Save(QWebPage *p) : page(p) {};
 
 public slots:
-  void setGeometry(const QRect &r)
-  {
-    view->setGeometry(r);
-  }
   void loaded(bool ok)
   {
     if(ok)
     {
-      QImage im = QPixmap::grabWidget(view).toImage();
+      page->setViewportSize(page->mainFrame()->contentsSize());
+      QImage im(page->viewportSize(), QImage::Format_ARGB32);
+      QPainter painter(&im);
+      page->mainFrame()->render(&painter);
 
       QFile f;
@@ -56,5 +57,5 @@
 
 private:
-  QWebView *view;
+  QWebPage * page;
 };
 
@@ -67,13 +68,11 @@
   QString url = QString(argv[1]);
 
-  QApplication a( argc, argv );
-  QWebView *view = new QWebView();
-  Save *s = new Save(view);
-  view->resize(WIDTH,WIDTH);
+  QApplication a(argc, argv);
+  QWebPage * page = new QWebPage();
+  Save * s = new Save(page);
 
-  QObject::connect(view, SIGNAL(loadFinished(bool)), s, SLOT(loaded(bool)));
+  QObject::connect(page, SIGNAL(loadFinished(bool)), s, SLOT(loaded(bool)));
   QObject::connect(s, SIGNAL(finish(void)), &a, SLOT(quit()));
-  QObject::connect(view->page(), SIGNAL(geometryChangeRequested(const QRect &)), s, SLOT(setGeometry(const QRect &)));
-  view->load(QUrl(url));
+  page->mainFrame()->load (QUrl(url));
   return a.exec();
 }
