{ "id": "108985", "key": "TIMOB-12618", "fields": { "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "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": "15703", "description": "2013 Sprint 22", "name": "2013 Sprint 22", "archived": true, "released": true, "releaseDate": "2013-11-01" }, { "id": "15704", "description": "2013 Sprint 22 API", "name": "2013 Sprint 22 API", "archived": true, "released": true, "releaseDate": "2013-11-01" }, { "id": "14982", "description": "Release 3.2.0", "name": "Release 3.2.0", "archived": false, "released": true, "releaseDate": "2013-12-19" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-10-22T20:00:22.000+0000", "created": "2013-01-31T23:48:36.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "UIRefreshControl", "module_listview", "module_tableview", "qe-closed-3.2.0", "qe-testadded" ], "versions": [ { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" } ], "issuelinks": [ { "id": "31899", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "119320", "key": "TIMOB-15010", "fields": { "summary": "iOS7: Table pull to refresh does not behave as iOS6 when using a search bar in the table", "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" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2013-10-31T00:19:20.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": "UIRefreshControl is a new API in iOS 6.0 to implement \"pull to refresh\" in the same way the native Apple Mail app does it. This is a feature request to add UIRefreshControl functionality to Titanium's TableView so pull to refresh can easily be implemented in the standard Apple way.", "attachment": [], "flagged": false, "summary": "iOS: Expose New iOS 6 API UIRefreshControl for TableView 'Pull to Refresh'", "creator": { "name": "slim.mckins", "key": "slim.mckins", "displayName": "Slim McKinsley", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "slim.mckins", "key": "slim.mckins", "displayName": "Slim McKinsley", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "iOS6", "comment": { "comments": [ { "id": "264650", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "A Titanium implementation can be found at:\r\nhttps://github.com/k0sukey/TiExtendView/blob/master/Classes/TiUITableView%2BExtend.m", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2013-08-02T06:20:22.000+0000", "updated": "2013-08-02T06:20:22.000+0000" }, { "id": "265343", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~fokke] Thanks. We'll look at including this in an upcoming release.", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-08-07T16:14:18.000+0000", "updated": "2013-08-07T16:14:18.000+0000" }, { "id": "273832", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "All, in the context of the new iOS 7 refresh control, is there still a strong rationale to pursue this ticket?", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-10-04T18:37:20.000+0000", "updated": "2013-10-04T18:37:20.000+0000" }, { "id": "273925", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Yes, because in iOS7 it's the exact same control, just different style. So any implementation would work for both iOS6 and iOS7.", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2013-10-05T07:09:54.000+0000", "updated": "2013-10-05T07:09:54.000+0000" }, { "id": "273927", "author": { "name": "vince", "key": "vince", "displayName": "Vincent ", "active": true, "timeZone": "Europe/Paris" }, "body": "I agree. Besides, it's too early to give up IOS 6. There is a lot of Iphone 3GS et Ipad 1 in the market et this users can't upgrade to IOS 7.\r\nIt would be nice to have a consistent native UX between IOS 6 and 7\r\n\r\n", "updateAuthor": { "name": "vince", "key": "vince", "displayName": "Vincent ", "active": true, "timeZone": "Europe/Paris" }, "created": "2013-10-05T08:59:41.000+0000", "updated": "2013-10-05T09:02:18.000+0000" }, { "id": "276052", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Test Case For List View\r\n{code}\r\nvar win = Ti.UI.createWindow({\r\n fullscreen:true\r\n});\r\n\r\nvar counter = 0;\r\n\r\nfunction genData()\r\n{\r\n var data = [];\r\n var i=1;\r\n for (i=1;i<=3;i++) {\r\n data.push({properties:{title:'ROW '+(counter+i)}})\r\n }\r\n counter += 3;\r\n return data;\r\n}\r\n\r\nvar section = Ti.UI.createListSection();\r\nsection.setItems(genData());\r\n\r\nvar listView = Ti.UI.createListView({\r\n sections:[section]\r\n});\r\n\r\nvar control = Ti.UI.createRefreshControl({\r\n tintColor:'red'\r\n})\r\n\r\nlistView.setRefreshControl(control);\r\n\r\ncontrol.addEventListener('refreshstart',function(e){\r\n Ti.API.info('refreshStart');\r\n setTimeout(function(){\r\n Ti.API.debug('Timeout');\r\n section.appendItems(genData());\r\n control.endRefreshing();\r\n }, 2000);\r\n})\r\n\r\nwin.add(listView);\r\n\r\nwin.open();\r\n{code}\r\n\r\nTest Case for TableView\r\n{code}\r\nvar win = Ti.UI.createWindow({\r\n fullscreen:true\r\n});\r\n\r\nvar counter = 0;\r\n\r\nfunction genData()\r\n{\r\n var section = Ti.UI.createTableViewSection({ headerTitle: 'Section '+counter });\r\n section.add(Ti.UI.createTableViewRow({ title: 'Row 1' }));\r\n section.add(Ti.UI.createTableViewRow({ title: 'Row 2' }));\r\n counter = counter + 1;\r\n return section;\r\n\r\n}\r\n\r\nvar tableView = Ti.UI.createTableView({\r\n data:[genData()]\r\n});\r\n\r\nvar control = Ti.UI.createRefreshControl({\r\n tintColor:'red'\r\n})\r\n\r\ntableView.setRefreshControl(control);\r\n\r\ncontrol.addEventListener('refreshstart',function(e){\r\n Ti.API.info('refreshStart');\r\n setTimeout(function(){\r\n Ti.API.debug('Timeout');\r\n tableView.appendSection(genData())\r\n control.endRefreshing();\r\n }, 2000);\r\n})\r\n\r\nwin.add(tableView);\r\n\r\nwin.open();\r\n{code}", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-10-21T23:22:57.000+0000", "updated": "2013-10-22T17:26:32.000+0000" }, { "id": "276054", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Pull pending against master\r\nhttps://github.com/appcelerator/titanium_mobile/pull/4818", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-10-21T23:24:45.000+0000", "updated": "2013-10-21T23:24:45.000+0000" }, { "id": "277439", "author": { "name": "oromero", "key": "oromero", "displayName": "Olga Romero", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Tested and verified \"Pull to Refresh\" with:\nTitanium Studio, build: 3.2.0.201310300119\nTitanium SDK, build 3.2.0.v20131029150357\nCLI 3.2.0\nXcode 5.0\niOs 6.0 simulator\niPhone5s 7.0.2", "updateAuthor": { "name": "oromero", "key": "oromero", "displayName": "Olga Romero", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-10-31T00:03:40.000+0000", "updated": "2013-10-31T00:03:40.000+0000" } ], "maxResults": 11, "total": 11, "startAt": 0 } } }