{ "id": "134831", "key": "TIMOB-18183", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "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": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2015-10-28T22:20:47.000+0000", "created": "2014-08-16T00:40:48.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "TCSupportTriage", "ios", "navigationWindow", "tabgroup", "window" ], "versions": [], "issuelinks": [], "assignee": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2017-03-22T22:38:37.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": "With iOS 7, Apple introduced a new navigation gesture where you can swipe to the right from the left edge of the device to close a sub window within a navigation controller (NavigationWindow, TabGroup). This feature is enabled by default.\r\n\r\nCurrently, there is no way to disable this on Titanium except for a [workaround of using a custom leftNavButton|https://developer.appcelerator.com/question/158264/how-to-disable-back-swipe-gesture-on-ios-7]. While this works, it is not ideal for all situations, and a property to toggle this feature would be better.\r\n\r\nThere's a solution posted on stackoverflow that could potentially be used to expose a new property on the Ti Window control:\r\n\r\n[http://stackoverflow.com/questions/17209468/how-to-disable-back-swipe-gesture-in-uinavigationcontroller-on-ios-7]\r\n\r\nIn our particular case, we need to disable this gesture on some windows that have ScrollableViews within, as it can interfere with swiping for those views.\r\n", "attachment": [], "flagged": false, "summary": "iOS: Add property to disable \"swipe to go back\" gesture on navigation controller windows.", "creator": { "name": "bcproductions", "key": "bcproductions", "displayName": "Ed", "active": true, "timeZone": "America/Havana" }, "subtasks": [], "reporter": { "name": "bcproductions", "key": "bcproductions", "displayName": "Ed", "active": true, "timeZone": "America/Havana" }, "environment": "iOS 7.x, Ti SDK 3.3.0.", "comment": { "comments": [ { "id": "346217", "author": { "name": "benutzername", "key": "benutzername", "displayName": "Sebastian Klaus", "active": true, "timeZone": "Europe/Berlin" }, "body": "+1", "updateAuthor": { "name": "benutzername", "key": "benutzername", "displayName": "Sebastian Klaus", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-03-17T18:24:47.000+0000", "updated": "2015-03-17T18:24:47.000+0000" }, { "id": "353826", "author": { "name": "kosso", "key": "kosso", "displayName": "kosso", "active": true, "timeZone": "Europe/London" }, "body": "Interestingly, this behaviour has just broken when using Appcelerator Studio. \r\n\r\nSee this post in Q&A : [Swipe right from the edge to go back to the previous window doesn't work anymore in iOS (Using SDK 3.5.1.GA and 4.0.0.GA)|https://community.appcelerator.com/topic/581/swipe-right-from-the-edge-to-go-back-to-the-previous-window-doesn-t-work-anymore-in-ios-using-sdk-3-5-1-ga-and-4-0-0-ga/3]\r\n\r\nTest code works on all 3+ SDKs using Titanium Studio. Don't does not work when using Appc. Studio. \r\n\r\n\r\n", "updateAuthor": { "name": "kosso", "key": "kosso", "displayName": "kosso", "active": true, "timeZone": "Europe/London" }, "created": "2015-05-28T22:38:12.000+0000", "updated": "2015-05-28T22:38:12.000+0000" }, { "id": "364992", "author": { "name": "max87", "key": "max87", "displayName": "Marian Kucharcik", "active": true, "timeZone": "Europe/Prague" }, "body": "Is there any news about this? It would be nice to have ability to disable swipe-to-back gesture for specific window.\r\nThank you", "updateAuthor": { "name": "max87", "key": "max87", "displayName": "Marian Kucharcik", "active": true, "timeZone": "Europe/Prague" }, "created": "2015-09-25T11:56:35.000+0000", "updated": "2015-09-25T11:56:35.000+0000" }, { "id": "364993", "author": { "name": "kosso", "key": "kosso", "displayName": "kosso", "active": true, "timeZone": "Europe/London" }, "body": "Using a custom backButton on the window will disable it. ", "updateAuthor": { "name": "kosso", "key": "kosso", "displayName": "kosso", "active": true, "timeZone": "Europe/London" }, "created": "2015-09-25T11:58:18.000+0000", "updated": "2015-09-25T11:58:18.000+0000" }, { "id": "364994", "author": { "name": "max87", "key": "max87", "displayName": "Marian Kucharcik", "active": true, "timeZone": "Europe/Prague" }, "body": "Yes, I know, but it will be good to have this funcionality, if you want to use system back button. ", "updateAuthor": { "name": "max87", "key": "max87", "displayName": "Marian Kucharcik", "active": true, "timeZone": "Europe/Prague" }, "created": "2015-09-25T12:14:12.000+0000", "updated": "2015-09-25T12:14:12.000+0000" }, { "id": "368182", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "We introduce the new property {{swipeToClose}} in the {{Ti.UI.Window}} API to enable and disable the swipe-to-close gesture inside a {{Ti.UI.iOS.NavigationWindow}} and {{Ti.UI.Tab}}. This property is {{true}} by default.\r\n\r\nPR: https://github.com/appcelerator/titanium_mobile/pull/7368", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-10-28T21:41:20.000+0000", "updated": "2015-10-28T21:55:37.000+0000" }, { "id": "368188", "author": { "name": "penrique", "key": "penrique", "displayName": "Pedro Enrique", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Merged:\r\n{code}\r\nvar nav = Ti.UI.iOS.createNavigationWindow({});\r\n\r\nvar win = Ti.UI.createWindow({\r\n\tbackgroundColor: 'white',\r\n\ttitle: 'Swipe to close test'\r\n});\r\n\r\nnav.window = win;\r\n\r\nvar btn1 = Ti.UI.createButton({\r\n\ttitle: 'swipe enabled',\r\n\ttop: 50\r\n});\r\nvar btn2 = Ti.UI.createButton({\r\n\ttitle: 'swipe not enabled',\r\n\ttop: 150\r\n});\r\n\r\nbtn1.addEventListener('click', function(){\r\n\tnav.openWindow(Ti.UI.createWindow({\r\n\t\tbackgroundColor: '#ccc',\r\n\t\ttitle: 'swipe to close'\r\n\t}));\r\n});\r\n\r\nbtn2.addEventListener('click', function(){\r\n\tnav.openWindow(Ti.UI.createWindow({\r\n\t\tbackgroundColor: '#ccc',\r\n\t\ttitle: 'cannot swipe to close',\r\n\t\tswipeToClose: false\r\n\t}));\r\n});\r\nwin.add(btn1);\r\nwin.add(btn2);\r\nnav.open();\r\n{code}", "updateAuthor": { "name": "penrique", "key": "penrique", "displayName": "Pedro Enrique", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-10-28T22:20:33.000+0000", "updated": "2015-10-28T22:20:33.000+0000" }, { "id": "415145", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Closing ticket as fixed.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-03-22T22:38:37.000+0000", "updated": "2017-03-22T22:38:37.000+0000" } ], "maxResults": 11, "total": 11, "startAt": 0 } } }