{ "id": "103511", "key": "TIMOB-11509", "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": [ { "id": "14161", "description": "Release 3.0.1", "name": "Release 3.0.1", "archived": true, "released": true, "releaseDate": "2013-02-19" }, { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" }, { "id": "14787", "description": "2012 Sprint 26 API", "name": "2012 Sprint 26 API", "archived": true, "released": true, "releaseDate": "2012-12-31" }, { "id": "14786", "description": "2012 Sprint 26", "name": "2012 Sprint 26", "archived": true, "released": true, "releaseDate": "2012-12-31" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-12-18T20:49:38.000+0000", "created": "2012-10-16T22:26:46.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "module_tableviewrow", "qe-review", "qe-testadded" ], "versions": [ { "id": "14096", "description": "Release 2.1.2", "name": "Release 2.1.2", "archived": true, "released": true, "releaseDate": "2012-08-31" }, { "id": "14137", "description": "Release 2.1.3", "name": "Release 2.1.3", "archived": true, "released": true, "releaseDate": "2012-10-03" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "issuelinks": [], "assignee": { "name": "srahim", "key": "srahim", "displayName": "Sabil Rahim", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2014-06-19T12:44:02.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "*Expected behavior*\r\ntouchstart event should fire outside of sub view in table view row.\r\n*Actual behavior*\r\ntouchstart event is NOT fired outside of sub view in table view row.\r\n*Note*\r\nSee comment about bubbleParent.\r\n*Code*\r\n\r\n{code}var win = Ti.UI.createWindow();\r\n\r\nvar tableview = Titanium.UI.createTableView();\r\n\r\nvar data = [];\r\nvar row = Ti.UI.createTableViewRow();\r\nvar subview = Ti.UI.createView({\r\n\tbackgroundColor:\"#FF0000\",\r\n\twidth : \"46dp\",\r\n\theight: \"46dp\"\r\n});\r\nrow.add(subview); // Comment out to start receiving touch events for the entire row\r\ndata.push(row);\r\n\r\ntableview.setData(data);\r\n\r\ntableview.addEventListener('touchstart', function(e) {\r\n\t// Not fired\r\n\tTi.API.info(\"TouchStart\");\r\n});\r\ntableview.addEventListener('touchend', function(e) {\r\n\t// Not fired\r\n\tTi.API.info(\"TouchEnd\");\r\n});\r\n\r\nwin.add(tableview);\r\nwin.open();{code}", "attachment": [], "flagged": false, "summary": "iOS: Touch events not fired outside sub view in table view row", "creator": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "iOS 5.1, 6\r\nTiSDK 2.1.2 GA, 2.1.3 GA, 3.0.0", "comment": { "comments": [ { "id": "223911", "author": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "body": "So apparently the bubbleParent property was intended to solve this: https://github.com/appcelerator/titanium_mobile/blob/master/apidoc/Titanium/Proxy.yml However, bubbleParent is true by default, which means that touch events SHOULD BE fired outside sub view in table view row by DEFAULT, which they are not. Furthermore, if bubbleParent is set to false on the sub view, the sub view should continue to receive touch events, but it does not.", "updateAuthor": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-10-16T23:14:26.000+0000", "updated": "2012-10-16T23:14:26.000+0000" }, { "id": "231904", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Fixed by PR https://github.com/appcelerator/titanium_mobile/pull/3560", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2012-12-18T20:49:38.000+0000", "updated": "2012-12-18T20:49:38.000+0000" }, { "id": "233770", "author": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Environment used for verification -\r\nTitanium SDK: 3.1.0.v20130108153753\r\nTitanium SDK:3.0.1.v20130109180643\r\nTitanium  Studio:3.0.1.201212181159\r\nDevice: Simulator iOS 6.0", "updateAuthor": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-01-10T01:47:02.000+0000", "updated": "2013-01-10T01:47:02.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }