Fix macOS pixel ratio detection

This commit is contained in:
James Rowe 2019-09-18 10:14:35 -06:00
parent 045eec282a
commit 5d97e44279
2 changed files with 3 additions and 2 deletions

View file

@ -144,8 +144,8 @@ QByteArray GRenderWindow::saveGeometry() {
}
qreal GRenderWindow::windowPixelRatio() const {
// windowHandle() might not be accessible until the window is displayed to screen.
return windowHandle() ? windowHandle()->screen()->devicePixelRatio() : 1.0f;
// QOpenGLWidget isn't backed by a native window, so we need to use the top level window instead
return QApplication::activeWindow()->devicePixelRatio();
}
std::pair<u32, u32> GRenderWindow::ScaleTouch(const QPointF pos) const {

View file

@ -2062,6 +2062,7 @@ int main(int argc, char* argv[]) {
std::string bin_path = FileUtil::GetBundleDirectory() + DIR_SEP + "..";
chdir(bin_path.c_str());
#endif
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QCoreApplication::setAttribute(Qt::AA_DontCheckOpenGLContextThreadAffinity);
QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts);
QApplication app(argc, argv);