diff options
Diffstat (limited to 'src/plugins/platforms/ios/qioswindow.h')
-rw-r--r-- | src/plugins/platforms/ios/qioswindow.h | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/plugins/platforms/ios/qioswindow.h b/src/plugins/platforms/ios/qioswindow.h index 20f0aa59b6..a5e122bda1 100644 --- a/src/plugins/platforms/ios/qioswindow.h +++ b/src/plugins/platforms/ios/qioswindow.h @@ -52,12 +52,17 @@ class QIOSWindow; @interface UIView (QIOS) @property(readonly) QWindow *qwindow; +@property(readonly) UIViewController *viewController; @end QT_BEGIN_NAMESPACE -class QIOSWindow : public QPlatformWindow +@class QUIView; + +class QIOSWindow : public QObject, public QPlatformWindow { + Q_OBJECT + public: explicit QIOSWindow(QWindow *window); ~QIOSWindow(); @@ -74,20 +79,21 @@ public: void requestActivateWindow(); qreal devicePixelRatio() const; - int effectiveWidth() const; - int effectiveHeight() const; bool setMouseGrabEnabled(bool grab) { return grab; } bool setKeyboardGrabEnabled(bool grab) { return grab; } WId winId() const { return WId(m_view); }; + QIOSWindow *topLevelWindow() const; + private: - UIView *m_view; + void applyGeometry(const QRect &rect); - QRect m_requestedGeometry; + QUIView *m_view; + + QRect m_normalGeometry; int m_windowLevel; - qreal m_devicePixelRatio; void raiseOrLower(bool raise); void updateWindowLevel(); @@ -95,6 +101,8 @@ private: inline Qt::WindowType windowType() { return static_cast<Qt::WindowType>(int(window()->flags() & Qt::WindowType_Mask)); } inline bool windowIsPopup() { return windowType() & Qt::Popup & ~Qt::Window; } + + friend class QIOSScreen; }; QT_END_NAMESPACE |