{ "id": "136676", "key": "TIMOB-17706", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2014-09-16T20:19:24.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "scroll", "tableView", "touchtestid" ], "versions": [], "issuelinks": [], "assignee": { "name": "penrique", "key": "penrique", "displayName": "Pedro Enrique", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2015-04-09T23:52:11.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "A customer is seeing incorrect TTIDs being detected on their tableview during a recording. The odd part is that the TTIDs are correctly defined when I look at the tableview before scrolling. After I scroll the table, the TTIDs seem to change. The table is defined as:\r\n\r\n{code}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n{code}\r\n\r\nAfter scrolling, I see that the last 3 rows in the second section have the TTIDs of the top rows in the first section. Is there an explanation for this?\r\n\r\nUnfortunately, the customer cannot share the source of the project, but they have given me an IPA that is able to be installed on one of our devices.\r\n\r\nSOASTA would like to discuss a solution for this with engineering. I will post their questions/requests in the comments.", "attachment": [ { "id": "52659", "filename": "iOS Simulator Screen Shot 18 Nov 2014 17.29.49.png", "author": { "name": "jbuckley", "key": "jbuckley", "displayName": "Jamie Buckley", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-11-18T17:33:23.000+0000", "size": 29367, "mimeType": "image/png" }, { "id": "52660", "filename": "iOS Simulator Screen Shot 18 Nov 2014 17.30.29.png", "author": { "name": "jbuckley", "key": "jbuckley", "displayName": "Jamie Buckley", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-11-18T17:33:23.000+0000", "size": 50813, "mimeType": "image/png" } ], "flagged": false, "summary": "iOS: TTIDs change on TableView scroll", "creator": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "environment": "Titanium SDK 3.3.0.GA\r\niOS 7.1.2\r\niPhone 5", "comment": { "comments": [ { "id": "324044", "author": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "body": "SOASTA's Comments:\r\n\r\n\"Part of the reason why the TTID's aren't being accurately recorded is because the payload of the view changes, not the view itself. Going off of what is happening now, it looks like appcelerator is only setting TTID's for what's currently being displayed + a few buffered views. When the user scrolls, the views themselves are not being destroyed. Instead, the view content is replaced with the new content.\r\nThis is a sort of an issue on our side as we tie the TTID's to the views. so if the view do not change, but the content changes, we currently rely on the developer to know when the payload content has changed.\r\nCan you let us know how they're setting the touch test ids for a scroll view elements? We are assuming right now they're only assigning the TTID's with what views they currently can see by asking what elements it has. Even if we did end up doing something gracefully on our end to implement this payload change detection feature, we would still need them to tell us the TTID's for the payloads that aren't currently displayed as it doesn't look like non-visible TTID's are ever given to our side of the code.\"\r\n\r\n\"Little change on my previous comment.\r\nWe would need info from developer from Appcelerator in how they are assigning the TTID's to the payloads\"\r\n\r\n\"Upon further investigation , we are the ones storing and assigning the touch test ids.\r\nHowever, we still need to know how your code is working to know how we can know when the content of the payload changes in the UiTableViewCell. This is not something we currently look for as we attach the TTID's onto the views.\r\nwe would still need to discuss with Your developer whether you have or can easily implement something like \"on content change, execute callback\"\"", "updateAuthor": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2014-09-16T20:21:04.000+0000", "updated": "2014-09-16T20:21:04.000+0000" }, { "id": "332729", "author": { "name": "jbuckley", "key": "jbuckley", "displayName": "Jamie Buckley", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Tested with latest Soasta version, when page is scrolled, unable to see IDs of any object that was not inside initial view. See attached screenshot. Ids of the elements that are possible to select are correct.", "updateAuthor": { "name": "jbuckley", "key": "jbuckley", "displayName": "Jamie Buckley", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-11-18T17:33:23.000+0000", "updated": "2014-11-18T17:33:23.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }