diff options
Diffstat (limited to 'src/plugins/platforms/ios/qiosscreen.mm')
-rw-r--r-- | src/plugins/platforms/ios/qiosscreen.mm | 35 |
1 files changed, 16 insertions, 19 deletions
diff --git a/src/plugins/platforms/ios/qiosscreen.mm b/src/plugins/platforms/ios/qiosscreen.mm index f367d1e75e..4f753be21a 100644 --- a/src/plugins/platforms/ios/qiosscreen.mm +++ b/src/plugins/platforms/ios/qiosscreen.mm @@ -132,16 +132,14 @@ static QIOSScreen* qtPlatformScreenFor(UIScreen *uiScreen) // ------------------------------------------------------------------------- -@interface QIOSOrientationListener : NSObject { - @public - QIOSScreen *m_screen; -} -- (id)initWithQIOSScreen:(QIOSScreen *)screen; +@interface QIOSOrientationListener : NSObject @end -@implementation QIOSOrientationListener +@implementation QIOSOrientationListener { + QIOSScreen *m_screen; +} -- (id)initWithQIOSScreen:(QIOSScreen *)screen +- (instancetype)initWithQIOSScreen:(QIOSScreen *)screen { self = [super init]; if (self) { @@ -195,7 +193,7 @@ static QIOSScreen* qtPlatformScreenFor(UIScreen *uiScreen) @implementation QUIWindow -- (id)initWithFrame:(CGRect)frame +- (instancetype)initWithFrame:(CGRect)frame { if ((self = [super initWithFrame:frame])) self->_sendingEvent = NO; @@ -399,17 +397,21 @@ void QIOSScreen::deliverUpdateRequests() const QList<QWindow*> windows = QGuiApplication::allWindows(); for (int i = 0; i < windows.size(); ++i) { - if (platformScreenForWindow(windows.at(i)) != this) + QWindow *window = windows.at(i); + if (platformScreenForWindow(window) != this) continue; - QWindowPrivate *wp = static_cast<QWindowPrivate *>(QObjectPrivate::get(windows.at(i))); - if (!wp->updateRequestPending) + QPlatformWindow *platformWindow = window->handle(); + if (!platformWindow) continue; - wp->deliverUpdateRequest(); + if (!platformWindow->hasPendingUpdateRequest()) + continue; + + platformWindow->deliverUpdateRequest(); // Another update request was triggered, keep the display link running - if (wp->updateRequestPending) + if (platformWindow->hasPendingUpdateRequest()) pauseUpdates = false; } @@ -454,12 +456,7 @@ qreal QIOSScreen::devicePixelRatio() const qreal QIOSScreen::refreshRate() const { -#if QT_DARWIN_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_NA, 100300, 110000, __WATCHOS_NA) - if (__builtin_available(iOS 10.3, tvOS 11, *)) - return m_uiScreen.maximumFramesPerSecond; -#endif - - return 60.0; + return m_uiScreen.maximumFramesPerSecond; } Qt::ScreenOrientation QIOSScreen::nativeOrientation() const |