|
void | forwardEventToParentMenuOrMenuBar (QEvent *event) |
|
| QQuickWindowQmlImplPrivate () |
|
| QQuickWindowPrivate () |
|
| ~QQuickWindowPrivate () override |
|
void | setPalette (QQuickPalette *p) override |
|
void | updateWindowPalette () |
|
void | updateChildrenPalettes (const QPalette &parentPalette) override |
|
void | init (QQuickWindow *, QQuickRenderControl *control=nullptr) |
|
QQmlListProperty< QObject > | data () |
|
QQuickDeliveryAgentPrivate * | deliveryAgentPrivate () const |
|
void | clearFocusObject () override |
|
void | setFocusToTarget (FocusTarget, Qt::FocusReason) override |
|
void | dirtyItem (QQuickItem *) |
|
void | cleanup (QSGNode *) |
|
void | ensureCustomRenderTarget () |
|
void | setCustomCommandBuffer (QRhiCommandBuffer *cb) |
|
void | polishItems () |
|
void | forcePolish () |
| Schedules polish events on all items in the scene.
|
|
void | invalidateFontData (QQuickItem *item) |
|
void | syncSceneGraph () |
|
void | renderSceneGraph () |
|
bool | isRenderable () const |
|
bool | emitError (QQuickWindow::SceneGraphError error, const QString &msg) |
|
QSGTexture * | createTextureFromNativeTexture (quint64 nativeObjectHandle, int nativeLayoutOrState, uint nativeFormat, const QSize &size, QQuickWindow::CreateTextureOptions options, TextureFromNativeTextureFlags flags={}) const |
|
QSGTexture * | createTextureFromNativeTexture (quint64 nativeObjectHandle, int nativeLayoutOrState, const QSize &size, QQuickWindow::CreateTextureOptions options, TextureFromNativeTextureFlags flags={}) const |
|
void | updateDirtyNodes () |
|
void | cleanupNodes () |
|
void | cleanupNodesOnShutdown () |
|
bool | updateEffectiveOpacity (QQuickItem *) |
|
void | updateEffectiveOpacityRoot (QQuickItem *, qreal) |
|
void | updateDirtyNode (QQuickItem *) |
|
void | fireFrameSwapped () |
|
void | fireAboutToStop () |
|
void | clearGrabbers (QPointerEvent *event) |
|
void | updateChildWindowStackingOrder (QQuickItem *item=nullptr) |
|
int | multiViewCount () |
|
QRhiRenderTarget * | activeCustomRhiRenderTarget () |
|
void | clearFocusInScope (QQuickItem *scope, QQuickItem *item, Qt::FocusReason reason) |
|
void | runAndClearJobs (QList< QRunnable * > *jobs) |
|
QOpenGLContext * | openglContext () |
|
| QWindowPrivate () |
|
| ~QWindowPrivate () override |
|
void | init (QWindow *parent, QScreen *targetScreen=nullptr) |
|
void | setCursor (const QCursor *c=nullptr) |
|
bool | applyCursor () |
|
QPoint | globalPosition () const |
|
QWindow * | topLevelWindow (QWindow::AncestorMode mode=QWindow::IncludeTransients) const |
|
virtual QWindow * | eventReceiver () |
|
virtual QPalette | windowPalette () const |
|
virtual void | setVisible (bool visible) |
|
void | updateVisibility () |
|
void | _q_clearAlert () |
|
void | updateSiblingPosition (SiblingPosition) |
|
bool | windowRecreationRequired (QScreen *newScreen) const |
|
void | create (bool recursive) |
|
void | destroy () |
|
void | setTopLevelScreen (QScreen *newScreen, bool recreate) |
|
void | connectToScreen (QScreen *topLevelScreen) |
|
void | disconnectFromScreen () |
|
void | emitScreenChangedRecursion (QScreen *newScreen) |
|
QScreen * | screenForGeometry (const QRect &rect) const |
|
void | setTransientParent (QWindow *parent) |
|
virtual QRectF | closestAcceptableGeometry (const QRectF &rect) const |
|
void | setMinOrMaxSize (QSize *oldSizeMember, const QSize &size, qxp::function_ref< void()> funcWidthChanged, qxp::function_ref< void()> funcHeightChanged) |
|
virtual void | processSafeAreaMarginsChanged () |
|
virtual bool | participatesInLastWindowClosed () const |
|
virtual bool | treatAsVisible () const |
|
const QWindow * | forwardToPopup (QEvent *event, const QWindow *activePopupOnPress) |
|
bool | isPopup () const |
|
void | setAutomaticPositionAndResizeEnabled (bool a) |
|
bool | updateDevicePixelRatio () |
|
void | ensureExtraData () |
|
| QObjectPrivate (int version=QObjectPrivateVersion) |
|
virtual | ~QObjectPrivate () |
|
void | deleteChildren () |
|
void | clearBindingStorage () |
|
void | checkForIncompatibleLibraryVersion (int version) const |
|
void | setParent_helper (QObject *) |
|
void | moveToThread_helper () |
|
void | setThreadData_helper (QThreadData *currentData, QThreadData *targetData, QBindingStatus *status) |
|
QObjectList | receiverList (const char *signal) const |
|
void | ensureConnectionData () |
|
void | addConnection (int signal, Connection *c) |
|
int | signalIndex (const char *signalName, const QMetaObject **meta=nullptr) const |
|
bool | isSignalConnected (uint signalIdx, bool checkDeclarative=true) const |
|
bool | maybeSignalConnected (uint signalIndex) const |
|
bool | isDeclarativeSignalConnected (uint signalIdx) const |
|
void | connectNotify (const QMetaMethod &signal) |
|
void | disconnectNotify (const QMetaMethod &signal) |
|
void | reinitBindingStorageAfterThreadMove () |
|
virtual std::string | flagsForDumping () const |
|
virtual void | writeToDebugStream (QDebug &) const |
|
QtPrivate::QPropertyAdaptorSlotObject * | getPropertyAdaptorSlotObject (const QMetaProperty &property) |
|
| QObjectData ()=default |
|
virtual | ~QObjectData ()=0 |
|
QMetaObject * | dynamicMetaObject () const |
|
virtual | ~QQuickPaletteProviderPrivateBase ()=default |
|
virtual QQuickPalette * | palette () const |
|
virtual void | resetPalette () |
|
virtual bool | providesPalette () const |
|
QPalette | defaultPalette () const override |
|
QPalette | parentPalette (const QPalette &fallbackPalette) const override |
|
void | inheritPalette (const QPalette &parentPalette) |
|
virtual | ~QQuickAbstractPaletteProvider ()=default |
|
|
enum | CustomEvents { FullUpdateRequest = QEvent::User + 1
, TriggerContextCreationFailure = QEvent::User + 2
} |
|
enum | TextureFromNativeTextureFlag { NativeTextureIsExternalOES = 0x01
} |
|
enum | PositionPolicy { WindowFrameInclusive
, WindowFrameExclusive
} |
|
enum | SiblingPosition { PositionTop
, PositionBottom
} |
|
enum class | FocusTarget {
First
, Last
, Current
, Next
,
Prev
} |
|
typedef void(* | StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **) |
|
using | ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData> |
|
static QQuickWindowPrivate * | get (QQuickWindow *c) |
|
static const QQuickWindowPrivate * | get (const QQuickWindow *c) |
|
static bool | dragOverThreshold (qreal d, Qt::Axis axis, const QEventPoint *tp, int startDragThreshold=-1) |
|
static bool | dragOverThreshold (qreal d, Qt::Axis axis, QMouseEvent *event, int startDragThreshold=-1) |
|
static void | data_append (QQmlListProperty< QObject > *, QObject *) |
| \qmlproperty list<QtObject> Window::data \qmldefault
|
|
static qsizetype | data_count (QQmlListProperty< QObject > *) |
|
static QObject * | data_at (QQmlListProperty< QObject > *, qsizetype) |
|
static void | data_clear (QQmlListProperty< QObject > *) |
|
static void | data_replace (QQmlListProperty< QObject > *, qsizetype, QObject *) |
|
static void | data_removeLast (QQmlListProperty< QObject > *) |
|
static void | rhiCreationFailureMessage (const QString &backendName, QString *translatedMessage, QString *untranslatedMessage) |
|
static void | emitBeforeRenderPassRecording (void *ud) |
|
static void | emitAfterRenderPassRecording (void *ud) |
|
static QWindowPrivate * | get (QWindow *window) |
|
static Qt::WindowState | effectiveState (Qt::WindowStates) |
|
static bool | removeConnection (Connection *c) |
|
static QObjectPrivate * | get (QObject *o) |
|
static const QObjectPrivate * | get (const QObject *o) |
|
template<typename Func1 , typename Func2 > |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection) |
|
template<typename Func1 , typename Func2 > |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot) |
|
static QMetaObject::Connection | connectImpl (const QObject *sender, int signal_index, const QObject *receiver, void **slot, QtPrivate::QSlotObjectBase *slotObj, int type, const int *types, const QMetaObject *senderMetaObject) |
|
static QMetaObject::Connection | connect (const QObject *sender, int signal_index, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type) |
|
static QMetaObject::Connection | connect (const QObject *sender, int signal_index, const QObject *receiver, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type) |
|
static bool | disconnect (const QObject *sender, int signal_index, void **slot) |
|
static bool | disconnect (const QObject *sender, int signal_index, const QObject *receiver, void **slot) |
|
static bool | defaultAlphaBuffer = false |
|
static QQuickWindow::TextRenderType | textRenderType = QQuickWindow::QtTextRendering |
|
void | setCurrentColorGroup () |
|
Definition at line 24 of file qquickpopupwindow.cpp.
void QQuickPopupWindowPrivate::forwardEventToParentMenuOrMenuBar |
( |
QEvent * | event | ) |
|
We want to handle menus specially, compared to other popups. For menus, we want all open parent menus and sub menus that belong together to almost act as a single popup WRT hover event delivery. This will allow the user to hover and highlight MenuItems inside all of them, not just the leaf menu. This function will therefore find the menu, or menu bar, under the event's position, and forward the event to it. But note that this forwarding will happen in parallel with normal event delivery (we don't eat the events), as we don't want to break the delivery to e.g grabbers.
Definition at line 116 of file qquickpopupwindow.cpp.
References QGuiApplicationPrivate::closeAllPopups(), QQuickWindow::contentItem, QQuickMenuPrivate::get(), QQuickPopupPrivate::get(), QQuickWindowPrivate::get(), QWidget::mapFromGlobal(), menu, menuBar, QObject::parent(), QQuickPopupWindow::popup(), qCDebug, and QWidget::window().