QScreen::refreshRate would return 0 on Mac OS X
The function we use to get the actual vsync on cocoa is documented to return 0 if the monitor is not a CRT monitor. A refreshrate of 0 means we have vsync deltas of 1000/0 which cause problems elsewhere. It is better to use the "default" value in this case as it will be closer to correct than 0. Change-Id: Id08007e40a9af5e42f13a07628fcad5fd3a7d0dc Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
This commit is contained in:
parent
7c33ae6a7b
commit
ffecaf85e8
@ -105,7 +105,9 @@ void QCocoaScreen::updateGeometry()
|
||||
m_physicalSize = QSizeF(size.width, size.height);
|
||||
m_logicalDpi.first = 72;
|
||||
m_logicalDpi.second = 72;
|
||||
m_refreshRate = CGDisplayModeGetRefreshRate(CGDisplayCopyDisplayMode(dpy));
|
||||
float refresh = CGDisplayModeGetRefreshRate(CGDisplayCopyDisplayMode(dpy));
|
||||
if (refresh > 0)
|
||||
m_refreshRate = refresh;
|
||||
|
||||
// Get m_name (brand/model of the monitor)
|
||||
NSDictionary *deviceInfo = (NSDictionary *)IODisplayCreateInfoDictionary(CGDisplayIOServicePort(dpy), kIODisplayOnlyPreferredName);
|
||||
|
Loading…
Reference in New Issue
Block a user