Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-64548

Shortcut doesn't work in QQuickWidget

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: 5.9.2, 5.10.0 Beta 4
    • Fix Version/s: 5.9.4, 5.10.1
    • Component/s: Quick: Widget
    • Labels:
      None
    • Commits:
      a79feeee451bcf28673292555795677a789e8513

      Description

      when a QML scene is embedded in a QQuickWidget and the Shortcut {} element is used, the shortcut won't actually work, because in qquickshortcut.cpp, the matcher does:

      static bool qQuickShortcutContextMatcher(QObject *obj, Qt::ShortcutContext context)
      {
      switch (context) {
      case Qt::ApplicationShortcut:
      return true;
      case Qt::WindowShortcut:
      while (obj && !obj->isWindowType()) {
      obj = obj->parent();
      if (QQuickItem *item = qobject_cast<QQuickItem *>(obj))
      obj = item->window();
      }
      return obj && obj == QGuiApplication::focusWindow();
      default:
      return false;
      }
      }

       

      so it will never match as the internal QWindow of a QQuickWidget will never be the qguiapplication's focusWindow

        Attachments

          Issue Links

          For Gerrit Dashboard: QTBUG-64548
          # Subject Branch Project Status CR V

            Activity

              People

              Assignee:
              tvete Paul Olav Tvete
              Reporter:
              notmart Marco Martin
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Gerrit Reviews

                  There are no open Gerrit changes