diff --git a/src/plugins/help/qlitehtml/container_qpainter.cpp b/src/plugins/help/qlitehtml/container_qpainter.cpp
index 559fc0feded..bf98f3f08f9 100644
--- a/src/plugins/help/qlitehtml/container_qpainter.cpp
+++ b/src/plugins/help/qlitehtml/container_qpainter.cpp
@@ -998,8 +998,9 @@ QVector DocumentContainer::mouseMoveEvent(const QPoint &documentPos,
viewportPos,
m_selection.mode);
if (element.element) {
+ redrawRects.append(
+ m_selection.boundingRect() /*.adjusted(-1, -1, +1, +1)*/); // redraw old selection area
m_selection.endElem = element;
- redrawRects.append(m_selection.boundingRect()); // redraw old selection area
m_selection.update();
redrawRects.append(m_selection.boundingRect());
}
diff --git a/src/plugins/help/qlitehtml/qlitehtmlwidget.cpp b/src/plugins/help/qlitehtml/qlitehtmlwidget.cpp
index db8c16d5ac2..8f455413bc8 100644
--- a/src/plugins/help/qlitehtml/qlitehtmlwidget.cpp
+++ b/src/plugins/help/qlitehtml/qlitehtmlwidget.cpp
@@ -664,21 +664,11 @@ QPoint QLiteHtmlWidget::toVirtual(const QPoint &p) const
return {int(p.x() / d->zoomFactor), int(p.y() / d->zoomFactor)};
}
-QPoint QLiteHtmlWidget::fromVirtual(const QPoint &p) const
-{
- return {int(p.x() * d->zoomFactor), int(p.y() * d->zoomFactor)};
-}
-
QSize QLiteHtmlWidget::toVirtual(const QSize &s) const
{
return {int(s.width() / d->zoomFactor), int(s.height() / d->zoomFactor)};
}
-QSize QLiteHtmlWidget::fromVirtual(const QSize &s) const
-{
- return {int(s.width() * d->zoomFactor + 0.5), int(s.height() * d->zoomFactor + 0.5)};
-}
-
QRect QLiteHtmlWidget::toVirtual(const QRect &r) const
{
return {toVirtual(r.topLeft()), toVirtual(r.size())};
@@ -686,5 +676,9 @@ QRect QLiteHtmlWidget::toVirtual(const QRect &r) const
QRect QLiteHtmlWidget::fromVirtual(const QRect &r) const
{
- return {fromVirtual(r.topLeft()), fromVirtual(r.size())};
+ const QPoint tl{int(r.x() * d->zoomFactor), int(r.y() * d->zoomFactor)};
+ // round size up, and add one since the topleft point was rounded down
+ const QSize s{int(r.width() * d->zoomFactor + 0.5) + 1,
+ int(r.height() * d->zoomFactor + 0.5) + 1};
+ return {tl, s};
}
diff --git a/src/plugins/help/qlitehtml/qlitehtmlwidget.h b/src/plugins/help/qlitehtml/qlitehtmlwidget.h
index a79e5824b0c..1eed9b1f095 100644
--- a/src/plugins/help/qlitehtml/qlitehtmlwidget.h
+++ b/src/plugins/help/qlitehtml/qlitehtmlwidget.h
@@ -82,9 +82,7 @@ private:
QPoint scrollPosition() const;
void htmlPos(const QPoint &pos, QPoint *viewportPos, QPoint *htmlPos) const;
QPoint toVirtual(const QPoint &p) const;
- QPoint fromVirtual(const QPoint &p) const;
QSize toVirtual(const QSize &s) const;
- QSize fromVirtual(const QSize &s) const;
QRect toVirtual(const QRect &r) const;
QRect fromVirtual(const QRect &r) const;