summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2016-10-19 13:56:14 (GMT)
committerTobias Markmann <tm@ayena.de>2016-10-19 13:56:14 (GMT)
commitbcd3660a3527327117b46e104d16204a64fe0b9f (patch)
tree79136e46ff58f5a83bc268642f455283591bfb0e
parent02e7140ee68229dcd439f7e333cd3858265cab08 (diff)
downloadswift-bcd3660a3527327117b46e104d16204a64fe0b9f.zip
swift-bcd3660a3527327117b46e104d16204a64fe0b9f.tar.bz2
Scale QWebView DPI resolution to match desktop DPI resolution
Test-Information: Tested that at 1em scaling, the default, the main text in the chat style has the same height as the nicknames in the roster. Tested with Qt 5.4.2 on macOS 10.12 on a retina system, with Qt 5.4.2 on macOS 10.12 on a non-retina system, and Windows 8 with Qt 5.7.0 with QtWebKit Technology Preview 4. Change-Id: I10701c411d9f787bf497eb6aab208a0f3fda621c
-rw-r--r--Swift/QtUI/QtWebKitChatView.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/Swift/QtUI/QtWebKitChatView.cpp b/Swift/QtUI/QtWebKitChatView.cpp
index c3320d8..414f098 100644
--- a/Swift/QtUI/QtWebKitChatView.cpp
+++ b/Swift/QtUI/QtWebKitChatView.cpp
@@ -8,6 +8,7 @@
#include <QApplication>
#include <QDesktopServices>
+#include <QDesktopWidget>
#include <QEventLoop>
#include <QFile>
#include <QFileDialog>
@@ -347,7 +348,11 @@ void QtWebKitChatView::resetView() {
assert(!body.isNull());
body.setAttribute("onscroll", "chatwindow.verticalScrollBarPositionChanged(document.body.scrollTop / (document.body.scrollHeight - window.innerHeight))");
- webView_->settings()->setFontSize(QWebSettings::DefaultFontSize, QApplication::font().pointSize());
+ // Adjust web view default 96 DPI setting to screen DPI.
+ // For more information see https://webkit.org/blog/57/css-units/
+ webView_->setZoomFactor(QApplication::desktop()->screen()->logicalDpiX() / 96.0);
+
+ body.setStyleProperty("font-size", QString("%1pt").arg(QApplication::font().pointSize()));
}
static QWebElement findElementWithID(QWebElement document, QString elementName, QString id) {