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

Popping QML StackView Item makes a11y unusable

    XMLWordPrintable

    Details

    • Platform/s:
      Android
    • Commits:
      d48ebb02fb (qt/qtbase/dev) d48ebb02fb (qt/tqtc-qtbase/dev) ce89c4a3d5 (qt/qtbase/6.3) ce89c4a3d5 (qt/tqtc-qtbase/6.3) 68158a8ae9 (qt/qtbase/6.4) 68158a8ae9 (qt/tqtc-qtbase/6.4) 680a33e241 (qt/tqtc-qtbase/6.2) 37d593b935 (qt/tqtc-qtbase/5.15)
    • Sprint:
      2022wk26FOQtforAndroid

      Description

      Popping even a relatively simple Item from a StackView on Android messes up the a11y hierarchy, making the app basically unusable in the process.

      After pushing and popping an Item in the example below, the "Push"-Button stops appearing in the hierarchy and while sometimes filling the whole screen. Additionally the log is filled with the warning "W Qt A11Y : Accessibility: populateNode for Invalid ID".

      The problem gets worse, the more complex the Views are, even freezing TalkBack for the whole device, so the user can't interact with the SystemUi itself. So it might be related to QTBUG-102594

       

      ApplicationWindow {
          title: qsTr("Hello World")
          width: 640
          height: 480
          visible: true
      
          StackView {
              id: stack
              initialItem: mainView
              anchors.fill: parent
          }
      
          Component {
              id: mainView
      
              Row {
                  spacing: 10
      
                  Button {
                      text: "Push"
                      onClicked: stack.push(mainView)
                      Accessible.onPressAction: clicked()
                      Accessible.description: "Push an Item"
                  }
                  Button {
                      text: "Pop"
                      enabled: stack.depth > 1
                      onClicked: stack.pop()
                      Accessible.onPressAction: clicked()
                      Accessible.description: "Pop an Item"
                  }
                  Button {
                      text: "Dummy"
                      Accessible.description: "Dummy"
                  }
                  Text {
                      text: stack.depth
                  }
              }
          }
      }
      

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              qtandroidteam Qt Android Team
              Reporter:
              mike.achtelik Mike Achtelik
              Votes:
              2 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: