diff -urN kdeplasma-addons-4.9.3/applets/webslice.orig/kgraphicswebslice.cpp kdeplasma-addons-4.9.3/applets/webslice/kgraphicswebslice.cpp --- kdeplasma-addons-4.9.3/applets/webslice.orig/kgraphicswebslice.cpp 2012-08-13 11:33:13.000000000 +0200 +++ kdeplasma-addons-4.9.3/applets/webslice/kgraphicswebslice.cpp 2012-12-01 19:21:29.108289128 +0100 @@ -196,9 +196,14 @@ void KGraphicsWebSlice::showSlice(const QString &selector) { QRectF r = sliceGeometry(selector); + // qDebug() << "area=" << d->documentGeometry << ", viewportSize=" << page()->viewportSize() << ", contentsRect=" << contentsRect().size(); if (!selector.isEmpty() && r.isValid()) { zoom(r); - } else { + } else if (d->documentGeometry.width() != contentsRect().size().width()) { + // Change zoom level only if the current one isn't appropriate + // but reset to 1.0 first + setZoomFactor(1.0); + updateElementCache(); zoom(d->documentGeometry); } }