Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qandroidplatformvulkanwindow.h>
Public Member Functions | |
QAndroidPlatformVulkanWindow (QWindow *window) | |
~QAndroidPlatformVulkanWindow () | |
void | setGeometry (const QRect &rect) override |
This function is called by Qt whenever a window is moved or resized using the QWindow API. | |
QSurfaceFormat | format () const override |
Returns the actual surface format of the window. | |
void | applicationStateChanged (Qt::ApplicationState) override |
VkSurfaceKHR * | vkSurface () |
Public Member Functions inherited from QAndroidPlatformWindow | |
QAndroidPlatformWindow (QWindow *window) | |
~QAndroidPlatformWindow () | |
void | lower () override |
Reimplement to be able to let Qt lower windows to the bottom of the desktop. | |
void | raise () override |
Reimplement to be able to let Qt raise windows to the top of the desktop. | |
void | setVisible (bool visible) override |
Reimplemented in subclasses to show the surface if visible is true , and hide it if visible is false . | |
void | setWindowState (Qt::WindowStates state) override |
Requests setting the window state of this surface to type. | |
void | setWindowFlags (Qt::WindowFlags flags) override |
Requests setting the window flags of this surface to flags. | |
Qt::WindowFlags | windowFlags () const |
void | setParent (const QPlatformWindow *window) override |
This function is called to enable native child window in QPA. | |
WId | winId () const override |
Reimplement in subclasses to return a handle to the native window. | |
bool | setMouseGrabEnabled (bool grab) override |
bool | setKeyboardGrabEnabled (bool grab) override |
QAndroidPlatformScreen * | platformScreen () const |
QMargins | safeAreaMargins () const override |
The safe area margins of a window represent the area that is safe to place content within, without intersecting areas of the screen where system UI is placed, or where a screen bezel may cover the content. | |
void | propagateSizeHints () override |
Reimplement to propagate the size hints of the QWindow. | |
void | requestActivateWindow () override |
Reimplement to let Qt be able to request activation/focus for a window. | |
void | updateSystemUiVisibility () |
bool | isRaster () const |
bool | isExposed () const override |
Returns if this window is exposed in the windowing system. | |
QtJniTypes::QtWindow | nativeWindow () const |
int | nativeViewId () const |
void | onSurfaceChanged (QtJniTypes::Surface surface) |
Public Member Functions inherited from QPlatformWindow | |
QPlatformWindow (QWindow *window) | |
Constructs a platform window with the given top level window. | |
~QPlatformWindow () override | |
Virtual destructor does not delete its top level window. | |
virtual void | initialize () |
Called as part of QWindow::create(), after constructing the window. | |
QWindow * | window () const |
Returns the window which belongs to the QPlatformWindow. | |
QPlatformWindow * | parent () const |
Returns the parent platform window (or \nullptr if orphan). | |
QPlatformScreen * | screen () const override |
Returns the platform screen handle corresponding to this platform window, or null if the window is not associated with a screen. | |
virtual QRect | geometry () const |
Returns the current geometry of a window. | |
virtual QRect | normalGeometry () const |
Returns the geometry of a window in 'normal' state (neither maximized, fullscreen nor minimized) for saving geometries to application settings. | |
virtual QMargins | frameMargins () const |
virtual void | setWindowTitle (const QString &title) |
Reimplement to set the window title to title. | |
virtual void | setWindowFilePath (const QString &title) |
Reimplement to set the window file path to filePath. | |
virtual void | setWindowIcon (const QIcon &icon) |
Reimplement to set the window icon to icon. | |
virtual bool | close () |
Reimplement to let the platform handle non-spontaneous window close. | |
virtual bool | isActive () const |
Returns true if the window should appear active from a style perspective. | |
virtual bool | isAncestorOf (const QPlatformWindow *child) const |
Returns true if the window is an ancestor of the given child. | |
virtual bool | isEmbedded () const |
Returns true if the window is a child of a non-Qt window. | |
virtual bool | isForeignWindow () const |
virtual QPoint | mapToGlobal (const QPoint &pos) const |
Translates the window coordinate pos to global screen coordinates using native methods. | |
QPointF | mapToGlobalF (const QPointF &pos) const |
virtual QPoint | mapFromGlobal (const QPoint &pos) const |
Translates the global screen coordinate pos to window coordinates using native methods. | |
QPointF | mapFromGlobalF (const QPointF &pos) const |
virtual void | setOpacity (qreal level) |
Reimplement to be able to let Qt set the opacity level of a window. | |
virtual void | setMask (const QRegion ®ion) |
Reimplement to be able to let Qt set the mask of a window. | |
virtual void | handleContentOrientationChange (Qt::ScreenOrientation orientation) |
Handle changes to the orientation of the platform window's contents. | |
virtual qreal | devicePixelRatio () const |
Reimplement this function in subclass to return the device pixel ratio for the window. | |
virtual bool | setWindowModified (bool modified) |
Reimplement to be able to let Qt indicate that the window has been modified. | |
virtual bool | windowEvent (QEvent *event) |
Reimplement this method to be able to do any platform specific event handling. | |
virtual bool | startSystemResize (Qt::Edges edges) |
Reimplement this method to start a system resize operation if the system supports it and return true to indicate success. | |
virtual bool | startSystemMove () |
Reimplement this method to start a system move operation if the system supports it and return true to indicate success. | |
virtual void | setFrameStrutEventsEnabled (bool enabled) |
Reimplement this method to set whether frame strut events should be sent to enabled. | |
virtual bool | frameStrutEventsEnabled () const |
Reimplement this method to return whether frame strut events are enabled. | |
virtual void | setAlertState (bool enabled) |
Reimplement this method to set whether the window demands attention (for example, by flashing the taskbar icon) depending on enabled. | |
virtual bool | isAlertState () const |
Reimplement this method return whether the window is in an alert state. | |
virtual void | invalidateSurface () |
Invalidates the window's surface by releasing its surface buffers. | |
virtual void | requestUpdate () |
Requests an QEvent::UpdateRequest event. | |
bool | hasPendingUpdateRequest () const |
Returns true if the window has a pending update request. | |
virtual void | deliverUpdateRequest () |
Delivers an QEvent::UpdateRequest event to the window. | |
QSize | windowMinimumSize () const |
Returns the QWindow minimum size. | |
QSize | windowMaximumSize () const |
Returns the QWindow maximum size. | |
QSize | windowBaseSize () const |
Returns the QWindow base size. | |
QSize | windowSizeIncrement () const |
Returns the QWindow size increment. | |
QRect | windowGeometry () const |
Returns the QWindow geometry. | |
QRect | windowFrameGeometry () const |
Returns the QWindow frame geometry. | |
QRectF | windowClosestAcceptableGeometry (const QRectF &nativeRect) const |
Public Member Functions inherited from QPlatformSurface | |
virtual | ~QPlatformSurface () |
QSurface * | surface () const |
Additional Inherited Members | |
Public Types inherited from QAndroidPlatformWindow | |
enum class | SurfaceContainer { SurfaceView , TextureView } |
Static Public Member Functions inherited from QAndroidPlatformWindow | |
static bool | registerNatives (QJniEnvironment &env) |
Static Public Member Functions inherited from QPlatformWindow | |
static QRect | initialGeometry (const QWindow *w, const QRect &initialGeometry, int defaultWidth, int defaultHeight, const QScreen **resultingScreenReturn=nullptr) |
Helper function to get initial geometry on windowing systems which do not do smart positioning and also do not provide a means of centering a transient window w.r.t. | |
static QRectF | closestAcceptableGeometry (const QWindow *w, const QRectF &nativeRect) |
Returns the closest acceptable geometry for a given geometry before a resize/move event for platforms that support it, for example to implement heightForWidth(). | |
Static Public Member Functions inherited from QPlatformSurface | |
static bool | isRasterSurface (QSurface *surface) |
Protected Member Functions inherited from QAndroidPlatformWindow | |
void | setGeometry (const QRect &rect) override |
This function is called by Qt whenever a window is moved or resized using the QWindow API. | |
void | lockSurface () |
void | unlockSurface () |
void | createSurface () |
void | destroySurface () |
void | setNativeGeometry (const QRect &geometry) |
void | sendExpose () const |
bool | blockedByModal () const |
bool | isEmbeddingContainer () const |
Protected Member Functions inherited from QPlatformWindow | |
QPlatformScreen * | screenForGeometry (const QRect &newGeometry) const |
Helper function for finding the new screen for newGeometry in response to a geometry changed event. | |
Static Protected Member Functions inherited from QPlatformWindow | |
static QString | formatWindowTitle (const QString &title, const QString &separator) |
Call this method to put together a window title composed of title separator the application display name. | |
static QSize | constrainWindowSize (const QSize &size) |
Returns a size with both dimensions bounded to [0, QWINDOWSIZE_MAX]. | |
Protected Attributes inherited from QAndroidPlatformWindow | |
Qt::WindowFlags | m_windowFlags |
Qt::WindowStates | m_windowState |
bool | m_isRaster |
int | m_nativeViewId = -1 |
QtJniTypes::QtWindow | m_nativeQtWindow |
SurfaceContainer | m_surfaceContainerType = SurfaceContainer::SurfaceView |
QtJniTypes::QtWindow | m_nativeParentQtWindow |
QtJniTypes::Surface | m_androidSurfaceObject |
QWaitCondition | m_surfaceWaitCondition |
bool | m_surfaceCreated = false |
QMutex | m_surfaceMutex |
Protected Attributes inherited from QPlatformWindow | |
QScopedPointer< QPlatformWindowPrivate > | d_ptr |
Definition at line 22 of file qandroidplatformvulkanwindow.h.
|
explicit |
Definition at line 19 of file qandroidplatformvulkanwindow.cpp.
QAndroidPlatformVulkanWindow::~QAndroidPlatformVulkanWindow | ( | ) |
Definition at line 28 of file qandroidplatformvulkanwindow.cpp.
References QAndroidPlatformWindow::m_surfaceWaitCondition, and QWaitCondition::wakeOne().
|
overridevirtual |
Reimplemented from QAndroidPlatformWindow.
Definition at line 54 of file qandroidplatformvulkanwindow.cpp.
References Qt::ApplicationHidden, QAndroidPlatformWindow::applicationStateChanged(), and state.
|
overridevirtual |
Returns the actual surface format of the window.
Reimplemented from QPlatformWindow.
Definition at line 62 of file qandroidplatformvulkanwindow.cpp.
References QPlatformWindow::window().
This function is called by Qt whenever a window is moved or resized using the QWindow API.
Unless you also override QPlatformWindow::geometry(), you need to call the baseclass implementation of this function in any override of QPlatformWindow::setGeometry(), as QWindow::geometry() is expected to report back the set geometry until a confirmation (or rejection) of the new geometry comes back from the window manager and is reported via QWindowSystemInterface::handleGeometryChange().
Window move/resizes can also be triggered spontaneously by the window manager, or as a response to an earlier requested move/resize via the Qt APIs. There is no need to call this function from the window manager callback, instead call QWindowSystemInterface::handleGeometryChange().
The position(x, y) part of the rect might be inclusive or exclusive of the window frame as returned by frameMargins(). You can detect this in the plugin by checking qt_window_private(window())->positionPolicy.
Reimplemented from QPlatformWindow.
Definition at line 34 of file qandroidplatformvulkanwindow.cpp.
References QPlatformScreen::availableGeometry(), QPlatformWindow::geometry(), QWindowSystemInterface::handleExposeEvent(), QRect::height(), QAndroidPlatformWindow::m_surfaceCreated, rect, QPlatformWindow::screen(), QAndroidPlatformWindow::setGeometry(), QAndroidPlatformWindow::setNativeGeometry(), QRect::width(), and QPlatformWindow::window().
VkSurfaceKHR * QAndroidPlatformVulkanWindow::vkSurface | ( | ) |
Definition at line 88 of file qandroidplatformvulkanwindow.cpp.
References QAndroidPlatformWindow::createSurface(), lock, QAndroidPlatformWindow::m_androidSurfaceObject, QAndroidPlatformWindow::m_surfaceCreated, QAndroidPlatformWindow::m_surfaceMutex, QAndroidPlatformWindow::m_surfaceWaitCondition, qWarning, QAndroidPlatformWindow::sendExpose(), QAndroidEventDispatcherStopper::stopped(), QWaitCondition::wait(), and QPlatformWindow::window().
Referenced by QAndroidPlatformNativeInterface::nativeResourceForWindow().