{ "id": "152046", "key": "TIMOB-19725", "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": "16997", "name": "Release 5.2.0", "archived": false, "released": true, "releaseDate": "2016-02-23" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2016-02-06T00:49:11.000+0000", "created": "2015-10-14T17:40:49.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "qe-5.1.0", "qe-5.2.0" ], "versions": [ { "id": "14826", "description": "Release 5.1.0-remaining iOS9 features, Android M features", "name": "Release 5.1.0", "archived": false, "released": true, "releaseDate": "2015-11-20" } ], "issuelinks": [ { "id": "49349", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "149418", "key": "TIMOB-19150", "fields": { "summary": "iOS: Add ability to turn off auto-complete and auto-suggest on Keyboard", "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": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2016-02-06T00:50:23.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": "When all the action buttons are removed from above the keyboard and a keyboard button is pushed, the bar for the action buttons is hidden. If the action buttons are then toggled back on, they display on top of the keyboard. See attached gif:\r\n\r\n!toggleoverlay.gif|thumbnail!\r\n\r\nExample code:\r\n{code}\r\nvar showUndoRedoActionsField = true;\r\n\r\nvar win = Ti.UI.createWindow({backgroundColor: \"#fff\",layout: \"vertical\"});\r\nvar field = Ti.UI.createTextArea({width: 300,height: 50,top: 100,backgroundColor: \"#f0f0f0\",value: \"Hello\" ,showUndoRedoActions:true});\r\nvar btn1 = Ti.UI.createButton({title: \"Toggle field\"});\r\n\r\nfield.autocorrect = false;\r\n//field.showUndoRedoActions = showUndoRedoActionsField;\r\n\r\nbtn1.addEventListener(\"click\", function() {\r\n showUndoRedoActionsField = !showUndoRedoActionsField;\r\n field.showUndoRedoActions = showUndoRedoActionsField;\r\n});\r\n\r\nwin.add(field);\r\nwin.add(btn1);\r\nwin.open();\r\n{code}\r\n\r\n*Steps to reproduce issue*\r\n1. Launch an app using the above code on an iPad\r\n2. Click on the textfield\r\n3. Click the 'Toggle Field' button\r\n4. Click any key on the keyboard\r\n5. Click the 'Toggle Field' button\r\n\r\n*Actual Results*\r\nThe action buttons are shown on top of the keyboard\r\n\r\n*Expected Results*\r\nThe action button bar appears and contains the action buttons\r\n\r\n*Notes*\r\nThis could be an iOS issue", "attachment": [ { "id": "57018", "filename": "toggleoverlay.gif", "author": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-10-14T17:39:10.000+0000", "size": 132487, "mimeType": "image/gif" } ], "flagged": false, "summary": "iOS: Toggled action buttons display over keyboard", "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": "MacOS 10.11 (15A284)\r\nStudio 4.4.0.201510092420\r\nTi SDK 5.1.0.v20151013151603\r\nAppc NPM 4.2.1-1\r\nAppc CLI 5.1.0-38\r\nTi CLI 5.0.5\r\nAlloy 1.7.16\r\nArrow 1.3.13\r\nXcode 7.0.1 (7A1001)\r\nNode v4.1.0\r\nJava 1.7.0_80\r\nproduction", "closedSprints": [ { "id": 529, "state": "closed", "name": "2015 Sprint 24 SDK", "startDate": "2015-11-21T01:30:12.670Z", "endDate": "2015-12-05T01:30:00.000Z", "completeDate": "2015-12-07T03:57:17.094Z", "originBoardId": 114 }, { "id": 580, "state": "closed", "name": "2016 Sprint 3 SDK", "startDate": "2016-01-30T01:31:48.991Z", "endDate": "2016-02-13T01:31:00.000Z", "completeDate": "2016-02-15T05:32:40.725Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "371495", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR pending https://github.com/appcelerator/titanium_mobile/pull/7499/files. ", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-11-26T00:00:06.000+0000", "updated": "2015-11-26T00:00:06.000+0000" }, { "id": "371566", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "CR and FT passed. PR Merged.\r\n\r\nNew sample code to test:\r\n{code}\r\nvar win = Ti.UI.createWindow({backgroundColor: \"#fff\",layout: \"vertical\"});\r\nvar field = Ti.UI.createTextArea({width: 300,height: 50,top: 100,backgroundColor: \"#f0f0f0\",showUndoRedoActions: true,value: \"Hello\"});\r\nfield.autocorrect = false;\r\n \r\nwin.add(field);\r\nwin.open();\r\n{code}\r\nh4. Steps to test\r\ntest with field property (During creation) `showUndoRedoActions` set to true, false, and not setting this property.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-11-27T03:40:05.000+0000", "updated": "2015-11-27T03:40:05.000+0000" }, { "id": "375192", "author": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "body": "Upon testing this issue with the latest components, it was found that the demo code can no longer produce the {{UndoRedo}} actions. A resolution is currently in working progress.\r\n\r\nTested on:\r\n\r\niPhone 6s Plus Device (9.2) & iPhone 6 Plus Device (8.4) \r\nMac OSX El Capitan 10.11 (15A284)\r\nTi SDK: 5.2.0.v20160114021251\r\nAppc NPM: 4.2.3-1\r\nApp CLI: 5.2.0-231\r\nXcode 7.2\r\nNode v4.2.3\r\n\r\n*Reopening Ticket.*\r\n", "updateAuthor": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "created": "2016-01-22T23:20:29.000+0000", "updated": "2016-01-22T23:20:29.000+0000" }, { "id": "375247", "author": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "body": "Update: Upon initial testing, i did not realise that this feature was an iPad only feature. However, after testing with an iPad pro, receive the following error:\r\n{code:java}\r\n[ERROR] Script Error {\r\n[ERROR] column = 126;\r\n[ERROR] line = 1;\r\n[ERROR] message = \"Only run on the main thread!\";\r\n[ERROR] sourceURL = \"file:///var/mobile/Containers/Bundle/Application/E82A7218-111A-4E64-A18B-EFEADF946E88/undoRedo.app/app.js\";\r\n[ERROR] stack = \"[native code]\\nglobal code@file:///var/mobile/Containers/Bundle/Application/E82A7218-111A-4E64-A18B-EFEADF946E88/undoRedo.app/app.js:1:126\";\r\n[ERROR] } \r\n{code}\r\n\r\nThe resolution to this fix is to include the tag in the tiapp.xml: {{true}} under . The fix for this issue should be that new projects created with the latest SDK should automatically generate this code in the tiapp.xml.\r\n\r\n", "updateAuthor": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "created": "2016-01-25T20:08:34.000+0000", "updated": "2016-01-25T20:08:34.000+0000" }, { "id": "375803", "author": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Reopening this ticket.\r\nAs of 5.2.0, {{true}} is not present by default, so this error persists. Tested using:\r\n\r\nMacOS 10.11.3 (15D21)\r\nStudio 4.5.0.201601262138\r\nTi SDK 5.2.0.v20160202103508\r\nAppc NPM 4.2.3-1\r\nAppc CLI 5.2.0-239\r\nAlloy 1.7.33\r\nXcode 7.2 (7C68)", "updateAuthor": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-03T00:09:13.000+0000", "updated": "2016-02-03T00:09:13.000+0000" }, { "id": "375836", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR pending : https://github.com/appcelerator/titanium_mobile/pull/7674.", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-02-03T07:05:34.000+0000", "updated": "2016-02-03T07:05:34.000+0000" }, { "id": "375973", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "CR and FT passed. Need a 5_2_X back port please.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-04T02:54:30.000+0000", "updated": "2016-02-04T02:54:30.000+0000" }, { "id": "375975", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR(5_2_X) : https://github.com/appcelerator/titanium_mobile/pull/7678", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-02-04T03:25:14.000+0000", "updated": "2016-02-04T03:25:36.000+0000" }, { "id": "375981", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "PRs merged!", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-04T03:47:48.000+0000", "updated": "2016-02-04T03:47:48.000+0000" }, { "id": "376157", "author": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Reopening.\r\nI no longer encounter the \"Only run on main thread\" error on iPads. However, like [~htbryant] stated before, the UndoButtons can no longer be toggled. Use the code provided in the ticket body, in a classic app, and try to toggle the buttons. This technically does solve the main issue as you can not toggle the buttons, but is this the intended solution?\r\n\r\nMacOS 10.11.3 (15D21)\r\nStudio 4.5.0.201602050824\r\nTi SDK 5.2.0.v20160205071936\r\nAppc NPM 4.2.3-1\r\nAppc CLI 5.2.0-247\r\nAlloy 1.7.33\r\nXcode 7.2 (7C68)\r\niOS 9.2, iPad Pro simulator, iPad Air 2 simulator", "updateAuthor": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-05T21:49:37.000+0000", "updated": "2016-02-05T22:12:27.000+0000" }, { "id": "376182", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Hi, This property can only be set during creation. Please see apidocs.\r\n{code}\r\n - name: showUndoRedoActions\r\n summary: Determinates if the undo and redo buttons on the left side of the keyboard should be displayed or not. Only valid on iOS9 and above. This property can only be set upon creation.\r\n type: Boolean\r\n default: true\r\n platforms: [ipad]\r\n osver: {ios: {min: \"9.0\"}}\r\n since: 5.0.0\r\n{code}", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-06T00:31:56.000+0000", "updated": "2016-02-06T00:31:56.000+0000" }, { "id": "376185", "author": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Thanks [~cng]. In light of that, closing as fixed.\r\nVerified with above environment and sample code(s) provided.", "updateAuthor": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-06T00:50:23.000+0000", "updated": "2016-02-06T00:50:23.000+0000" } ], "maxResults": 12, "total": 12, "startAt": 0 } } }