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

Flickable no longer works on iOS10. It used to, but now it doesn't. But it works on iOS11.

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Cannot Reproduce
    • Affects Version/s: 5.7, 5.9.4
    • Fix Version/s: None
    • Labels:
      None
    • Environment:

      Description

      Building a Qt5.7 app (but I've since confirmed the issue also exists with Qt5.9.4) making use of Flickable for iOS, I was surprised to find Flickable seemed to have suddenly stopped working on my older iPad (which cannot be upgraded beyond iOS10).  It displays the content... but it just cannot be flicked... the Flickable just doesn't seem to respond to touch at all.  On my newer iPad which had upgraded to iOS11 Flickable seemed to be working just fine.  (And on the older iPad, all the apps' other MouseAreas work just fine as they've always done... AFAIK any issue is confined to Flickable).

      This was an app with quite a long history which made extensive use of Flickable and its always worked well in the past.  I was initially slightly suspicious that the start of the problem seemed to coincide with xcode (was on 8 when this issue first came up, but the problem persists after updating to 9) briefly flashing up an "xcode is updating" dialog... however see update below which observes even already released previously working apps seem to have had their Flickables regress to "stuck" on iOS10).

      Anyway my original first thought was that maybe the issue was related to some race condition in my QML wiring in my fairly complex app which was being triggered by performance differences between the two devices (I have had a few such issues in the past)... so I created a minimal reproducing example.... and that shows the problem too.  The demonstration can be found at https://bitbucket.org/timday/qtissue001/overview (snapshot of repo state also attached as timday-qtissue001-ce7e9e2fe2e8.zip).  There's not much more to it than the main.cpp (QQuickView) and the main.qml and some build-scripts.  Building and deploying it to iOS10 shows an un-flickable Flickable, on iOS11 it can be flicked just fine (at least that's assuming the OS version is the issue rather than the HW).

      Not sure how to investigate further.  I did put some logging on various Flickable properties and on iOS10 they're just not changing.  Flickable doesn't have any "pressed"-like events to snoop.  Not yet looked at sources.

      Not sure what Qt's policy is on support for old iOS versions.  My collaborators are certainly not happy about the prospect of future releases of the app only supporting iOS11+ (apparently there's quite a lot of iOS10 users still out there).

      Update: new data point: just tried downloading the old already released Flickable-using app from the appstore (so that'd be Qt5.7 built with xcode8 and put up there quite a while ago) and that's exhibiting "stuck" Flickables on the iOS10 device, while they work as expected on iOS11.  But this has definitely worked in the past pre iOS11 or we'd never have released it.  Seems to imply the recent "xcode is updating" dialog I suspected was a factor actually isn't.

        Attachments

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

          Activity

            People

            • Assignee:
              srutledg Shawn Rutledge
              Reporter:
              timday Tim Day
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes