summaryrefslogtreecommitdiffstats
path: root/src/widgets/kernel
Commit message (Collapse)AuthorAgeFilesLines
* QGestureManager: fix expensive iteration over QHash::keys()Marc Mutz2015-06-211-3/+4
| | | | | | | | | | | | | ... with iteration over the hash itself. gesturesByType is a local variable, so there's no way functions called in the loop can modify it. This dividing operation would greatly benefit from a splice operation in QHash... Change-Id: Ifd241d2da9c6998c2ad0b08294fca84d5b188d0f Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QGestureManager: fix expensive iteration over QHash::keys()Marc Mutz2015-06-211-3/+3
| | | | | | | | | | ... with iteration over the hash itself. gesturesByType is a local variable, so there's no way functions called in the loop can modify it. Change-Id: I5971c404f4ae8473d4926b68eb7a9c60801f208d Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Mark unused parameters with Q_UNUSEDUlf Hermann2015-06-121-0/+2
| | | | | | | | This prevents compiler warnings on less common branches of certain ifdefs. Change-Id: I89bae68491151b21cf6887a854cc4c9f68838cf9 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Add qHash(QSizePolicy)Marc Mutz2015-06-122-0/+15
| | | | | | | | | | | Size policies can be compared for equality, so qHash should be overloaded, too. [ChangeLog][QtWidgets][QSizePolicy] Added qHash(QSizePolicy). Change-Id: Id219f47ac6cb236efdd73cad7b892c8efd034d5c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-06-0311-148/+189
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qnamespace.qdoc src/corelib/io/qwindowspipereader.cpp src/corelib/io/qwindowspipereader_p.h src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/plugins/platforms/xcb/qxcbconnection.h tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp tests/auto/tools/qmake/tst_qmake.cpp tests/manual/touch/main.cpp Change-Id: I917d694890e79ee3da7d65134b5b085e23e0dd62
| * Avoid QWidget dependency in QtGuiLaszlo Agocs2015-06-011-1/+1
| | | | | | | | | | | | | | | | It's not a real dependency as all we need is to store a pointer, but better not to use the name QWidget at all. Change-Id: I30ef1dd44ac7e42c1b9c84675f94088b8c516076 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * Clip QOpenGLWidget and QQuickWidget correctlyLaszlo Agocs2015-06-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Introduce support for the widgets' clipRect(). Right now render-to-texture widgets in scroll areas placed close to each other result in broken (non-existent) clipping. Similarly, stack-on-top widgets fail to clip when placed inside a scroll area. This is now corrected and the qopenglwidget example is enhanced to utilize a scroll area. Task-number: QTBUG-45860 Change-Id: I859a63d61a50d64ba9e87244f83c5969dce12337 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * Emphasize the need for calling setDefaultFormat early on OS XLaszlo Agocs2015-05-291-0/+6
| | | | | | | | | | | | Task-number: QTBUG-46067 Change-Id: I0fe6e7ba309306a8fc471424b30eed4491bd39e7 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| * Fix a crash in tst_QTouchEvent::deleteInRawEventTranslation().Friedemann Kleint2015-05-221-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | The test deletes a widget in QEvent::TouchBegin. This is part of a series of patches to revive the test; it is currently not run since tests/auto/gui/kernel/qtouchevent/qtouchevent.pro is missing CONFIG += testcase. Task-number: QTBUG-46266 Change-Id: I65c0a431ff1807133438764dd8b3c16bb9cb6743 Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
| * Don't propagate single touch events only from touchpads on OS XAlexander Volkov2015-05-211-2/+4
| | | | | | | | | | | | | | | | | | | | This way the tests that send fake touchscreen events can work. Change-Id: I997ef015d0096249c4549dbd21b99d0248e0c987 Task-number: QTBUG-46111 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Unclutter debug operators of gestures.Friedemann Kleint2015-05-201-17/+33
| | | | | | | | | | | | | | Use the helpers in qdebug_p.h to suppress class and enum names. Change-Id: Ib71f0a1e5b3c22f44d68a7930fef38384f037204 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Fix typo and formatting in QWidget font documentation.Mitch Curtis2015-05-181-2/+2
| | | | | | | | | | Change-Id: I6dea7f1aa2827dbc4c4068184690c80a36ef2be6 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
| * Fix division by zero crash when restoring screen settingsKati Kankaanpaa2015-05-131-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | The restoredScreenNumber was used before it's existence was checked, which caused 'division by zero' if the screen has been removed after storing the screen number. The check if restoredScreenNumber exists was moved to happen before restoredScreenNumber is used for the first time. Change-Id: Iada0e8c5cbb6d8ca88df171dbee045be249f50cd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * Create contexts and pbuffers with the correct screen in QOpenGLWidgetLaszlo Agocs2015-05-122-0/+3
| | | | | | | | | | | | | | | | It won't be functional otherwise with GLX when the QOpenGLWidget is targeting a separate X screen. Change-Id: Ibe5b89023f833039bb67d94b78b173de2e021ac9 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * Merge remote-tracking branch 'origin/5.4' into merge5.5Allan Sandfeld Jensen2015-05-082-4/+5
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/corelib/io/qnoncontiguousbytedevice_p.h src/gui/image/qjpeghandler.cpp src/network/access/qhttpthreaddelegate_p.h tests/auto/corelib/io/qlockfile/tst_qlockfile.cpp tests/auto/widgets/widgets/qmenubar/BLACKLIST Change-Id: I01de8c1c28efcedfd7953d05025f54802dc08ab3
| | * Fix finding the closest active touch point for the pressed touch pointAlexander Volkov2015-04-162-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently pressed touch point is added to the list of active touch points in Gui module. It must be excluded from consideration when we traverse the list. Task-number: QTBUG-43255 Change-Id: Idddab093b1f6a79122cf18fad7f43bfc93ce7eea Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | QSizePolicy: improve docs of retainSizeWhenHiddenMarc Mutz2015-05-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | Fixed markup and grammar. Change-Id: Ie2427965f905135572fd1f81e4a6d7514dea7022 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * | Give QSizePolicy its own .cppMarc Mutz2015-05-075-113/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, implementation was spread between qlayout.cpp and qlayoutitem.cpp and the docs between those two files and qsizepolicy.qdoc. Move everything into a new qsizepolicy.cpp. Change-Id: Id15c2c13572b7b8863be596603100f388eafea07 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | | QWidgetWindow: Avoid using global static non-trivial type.Sérgio Martins2015-05-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Don't initialize it before main, instead, do it whenever QWidgetWindow::handleTabletEvent() is called, which is seldomly. Change-Id: I16935e223d4f9879257e7be026fee0215b9dde22 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | | QMouseEvent: add constructor which takes the source as a parameterAlexander Volkov2015-05-122-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Simplify the code by passing the source of a mouse event directly to the constructor instead of setting it by QGuiApplicationPrivate::setMouseEventSource(). Change-Id: I1774cf39a211d36d3adf0ff30f3bd2fb7c5fb429 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | | Merge remote-tracking branch 'origin/5.5' into HEADSimon Hausmann2015-05-041-1/+1
|\| | | | | | | | | | | Change-Id: I487a4b7c05687a10c498ac219c31367d4db6fbc0
| * | Minor optimization to QWidgetPrivate::setFont_helper()Konstantin Ritt2015-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | There is no sense in comparing fonts with different resolve_mask-s. Change-Id: Icfdaf494fce8a59b7138d96fdf7354cc0514ca6a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-271-1/+4
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/tools/qdoc/tree.cpp tests/auto/gui/painting/qcolor/tst_qcolor.cpp Change-Id: Iaa78f601a63191fa643aabf853520f913f2f0fdc
| * | Fix FPE in QApplicationPrivate::dispatchEnterLeave() due to invalid cursor ↵Friedemann Kleint2015-04-231-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | position. QGuiApplicationPrivate::lastCursorPosition is initialized to qInf(), qIn(). Under some circumstances, this is passed to dispatchEnterLeave() which causes an FPE in QPointF::toPoint(). Move the invocation of QPointF::toPoint() to the if-branch handling the enter list, which already fixes the FPE. To be extra sure, clamp to QWIDGETSIZE_MAX. Task-number: QTBUG-45501 Change-Id: I2d1407415e6360196730d23ee319d1ee6981d1f5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-223-0/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/gui/painting/qdrawhelper.cpp src/plugins/platforms/xcb/qxcbnativeinterface.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/plugins/platforms/xcb/qxcbwindow.h src/testlib/qtestblacklist.cpp src/tools/qdoc/node.cpp src/tools/qdoc/node.h tests/auto/gui/painting/qcolor/tst_qcolor.cpp Change-Id: I6c78b7b162001712d5774293f501b06b4ff32684
| * | Enable checking for whether the system palette was explicitly setHarald Hvaal2015-04-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to obey a palette set globally on QApplication, an application attribute for checking if it's set at all is added. Task-number: QTBUG-39800 Change-Id: I26b965e6e18e0e1ca4df03cf343b3527df3636b2 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * | Guard QWidget::setStyleSheet() against invocation from destructor.Friedemann Kleint2015-04-091-0/+2
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-45178 Change-Id: I3670d9cd9645155318b595d1324a3b3caf2352f6 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * | Avoid leaking the QPlatformTextureListLaszlo Agocs2015-04-081-0/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-45395 Change-Id: I8fbdc5136d7d15b9c131d6b91186a1bf2645e4d4 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | | Remove <qhash.h> where it's not usedMarc Mutz2015-04-203-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | To avoid source-incompatibilites, wrap in QT_DEPRECATED_SINCE(5, 5) in public headers. Change-Id: I6117e8a6b11200d2f1a0a94a0e87d5c27538218e Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-062-17/+3
|\| | | | | | | | | | | Change-Id: If9fd98525b6b4ca07e5e006fc98bf372a73b8a21
| * | Fix debug stream operators.Friedemann Kleint2015-04-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Use QDebugStateSaver to restore space setting in stream operators instead of returning dbg.space() which breaks formatting on streams that already have nospace() set. - Fix some single character string constants. Change-Id: I0fe86bb1adbdd4a76ab6d2f8c19e063b45ddcf3b Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * | Merge remote-tracking branch 'origin/5.4' into 5.5Liang Qi2015-03-311-16/+1
| |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/android-g++/qmake.conf qmake/generators/unix/unixmake2.cpp src/gui/image/qimage_conversions.cpp Change-Id: Ib76264b8c2d29a0228438ec02bd97d4b97545be0
| | * Fix use of the window geometry specificationAlexander Volkov2015-03-271-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until now we applied the geometry in QWidget::setVisible() by calling QWidget::move() and QWidget::resize(). But these methods are unreliable when the window is created but not visible yet. For example, specifying the window position by "-geometry +0+0" will take no effect. Apply the geometry directly to QWindow in QWindow::setVisible(). QWidget will update its geometry after the response of the window system. Besides it allows to specify the geometry for QML applications. Task-number: QTBUG-44713 Change-Id: I9a0e110e81e569c81da802729707fec104fef887 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-013-6/+29
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/testlib/qtestblacklist.cpp src/widgets/accessible/qaccessiblewidgets.cpp Change-Id: If032adb9296428f62384ed835dbf41ee7a0b886c
| * | Fix incorrect FBO bindings with QOpenGLWidgetLaszlo Agocs2015-03-301-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QOpenGLContext::defaultFramebufferObject() knows nothing about QOpenGLWidget and QQuickWidget. The problem is that this function (and others that rely on it) is expected to give the widget's backing FBO in paintGL() and friends. To overcome this, we have to provide a way for such widgets that indicate what is the expected "default fbo". Task-number: QTBUG-43269 Change-Id: I43f439f8609382b9f7004707ab0ef9f091952b4f Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * | Remove compression of posted input method events.Friedemann Kleint2015-03-301-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | Input method events contain attributes, etc. and cannot be compressed. Change-Id: Ib9a2a80f1efec53f9d843684f8227e1f2e245853 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| * | Add a section about QOpenGLWidget alternativesLaszlo Agocs2015-03-251-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | QOpenGLWindow with createWindowContainer() can be an option for desktop-only apps in some special cases. Document this. Task-number: QTBUG-45192 Change-Id: I7c59b7d04d6c0fe58ffe93ac72b204103bef2f4c Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * | Don't replay mouse press event which closes a popup on X11Alexander Volkov2015-03-251-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new style hint to QPlatformIntegration: ReplayMousePressOutsidePopup. Return false for it in the xcb plugin. This commit restores the behavior which was in Qt 4. Task-number: QTBUG-34814 Change-Id: I19fee762395a51475cc67b52b368c70679ca736b Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | | QWidgetWindow: use sendEvent to forward events to the wrapped QWidgetGiuseppe D'Angelo2015-03-262-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fallback code for unhandled event types in QWidgetWindow::event directly called event() on the underlying QWidget (i.e. m_widget->event(e)). The problem with that approach is that it does not activate any event filters that can have been installed on the top level widget. Instead, let's use sendEvent to forward the event to the widget. An extra modification becomes necessary: the events received when creating/showing/etc. a widget change, hence the corresponding test needs to be tuned. On the other hand, apparently this fixes a long time XFAIL in that test. Task-number: QTBUG-42281 Task-number: QTBUG-26424 Change-Id: I237bbbc301e3e9e10f071589629c71343a600ef9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Fixed bug in QLayout::replaceWidget()Jan Arve Saether2015-03-261-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the \a to widget was already part of a layout it would be removed from the layout. This happened because the function that was supposed to perform this removal was called after we had done the replacement. QLayout::addChildWidget() should therefore be called first. This is also documented in QLayout::addChildWidget() Change-Id: Ie718935a14ebad81827fad962920e930263c05b8 Task-number: QTBUG-37724 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* | | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-03-246-9/+14
|\| | | | | | | | | | | Change-Id: If5d2e621c2fa5476c3ab687a3f4620c54fc3b32e
| * | Use glFinish() in QOpenGLWidget unless glFlush() is known to be enoughLaszlo Agocs2015-03-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The driver used on the Odroid-XU3 does not like doing just glFlush() before accessing the texture in another context. There is no guarantee that glFlush() is enough to sync access to resources between contexts, so start using glFinish() as the default, except on common desktop hw + iOS where flush is enough and presumably more efficient. To unify the code pathes, remove the separate flushes and do it only once, before the backingstore compositor indicates that it is about to access the textures. This should improve performance a bit, esp. when doing multisampling since we flush only once then. A helper function is added to the internal QOpenGLExtensions because it is highly likely that QQuickWidget will need the same. Task-number: QTBUG-45106 Change-Id: Ifb405c5723f29f2f6c04df8e15fb70280681755e Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * | QWidget: render() in correct resolution on retinaTimur Pocheptsov2015-03-231-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Factor in the target devicePixelRatio when setting the size (and devicePixelRatio) on the target pixmap. Task-number: QTBUG-41682 Change-Id: I16a85cf7ba0adb6d6c05e9de4fd44ff5533b5f60 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
| * | QtWidgets: Fix const correctness in old style castsThiago Macieira2015-03-174-5/+5
| | | | | | | | | | | | | | | | | | | | | Found with GCC's -Wcast-qual. Change-Id: Ia0aac2f09e9245339951ffff13c94684f8498f21 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * | Add missing \since 5.5 for QSpacerItem::sizePolicy()Jan Arve Saether2015-03-161-0/+2
| | | | | | | | | | | | | | | | | | Change-Id: I2091a22e08bc010c3c69f12b8f5c242a2d5fb8f2 Task-number: QTBUG-38518 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | | Merge "Merge remote-tracking branch 'origin/5.5' into dev" into refs/staging/devSimon Hausmann2015-03-184-12/+21
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-03-164-12/+21
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/xcb/qxcbnativeinterface.cpp src/plugins/platforms/xcb/qxcbnativeinterface.h Change-Id: I31b38ba439b9341d51a01c0fd54bea33f7410076
| | * | QtWidgets: don't set Qt::WA_OutsideWSRange for 0-sized non-windowsUlf Hermann2015-03-121-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a widget which is not a window has a width or height of 0 that doesn't mean we don't have to invalidate its backing store. On the contrary, the backing store must be invalidated in order to clear stale contents from previous paint events. A window, however, can be completely ignored if it shrinks to 0 as the window system will take care of it. We don't have to clear the attribute for non-windows, either. In Qt4 we use the Qt::WA_OutsideWSRange attribute only for widgets which are windows when determining what to do with a geometry change. See qwidget_x11.cpp or widget_win.cpp in Qt4. Task-number: QTBUG-42727 Change-Id: I3655737057b803ad4b92601a9851055a81bd4b6d Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
| | * | QWidgetWindow: Restrict context menu trigger to the widget's rectangle.Friedemann Kleint2015-03-121-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-44913 Change-Id: I0d9411b4bbd6a6affe85eb9856a1eb93d444d377 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * | QShortCut: Check whether the menu is QPA-disabledGabriel de Dietrich2015-03-111-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When climbing the menu hierarchy, it's sounder to check whether the actual QPA menu is enabled. This way we can trigger modifier-less shortcuts even in submenus. Task-number: QTBUG-38256 Task-number: QTBUG-42584 Change-Id: I13a27027306bce0f0732b05bf9469f3b77028f73 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>