{ "id": "83074", "key": "TIMOB-6745", "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": "15107", "description": "2013 Sprint 09", "name": "2013 Sprint 09", "archived": true, "released": true, "releaseDate": "2013-05-06" } ], "resolution": { "id": "5", "description": "All attempts at reproducing this issue failed, or not enough information was available to reproduce the issue. Reading the code produces no clues as to why this behavior would occur. If more information appears later, please reopen the issue.", "name": "Cannot Reproduce" }, "resolutiondate": "2013-04-26T07:55:58.000+0000", "created": "2011-11-24T05:07:00.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "api" ], "versions": [ { "id": "12570", "name": "Release 1.7.5", "archived": true, "released": true, "releaseDate": "2011-11-02" } ], "issuelinks": [ { "id": "53463", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "inwardIssue": { "id": "164491", "key": "TIMOB-24138", "fields": { "summary": "Android: TextField/TextArea should not receive focus by default when a window is opened", "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": "jithinv@exalture.com", "key": "jithinv@exalture.com", "displayName": "jithinpv", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2016-11-11T05:36:05.000+0000", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "h2. Behavior\r\n\r\nIt seems that \"focus\" event doesn't work well on Android and this behavior cause awful user experience. To see the issue, run the test case below.\r\n\r\nScroll to the bottom, but don't touch text fields. You'll see in the console output that text field fired \"focus\" event and that keyboard has shown on the screen.\r\n\r\nAlso, scroll to the bottom, click \"Click me!\" button to open new window. Then, click \"Close me!\" button. ScrollView should be scrolled up to the text field that has \"focus\" (gained by a bug described above!), which creates awful user experience because user needs to scroll back to where he was before opening new window (ScrollView should not scroll after returning from newly created window).\r\n\r\nh2. Test case\r\n\r\n{code:lang=javascript|title=app.js}\r\nvar win = Ti.UI.createWindow({\r\n\tbackgroundColor: '#000',\r\n\tmodal: true,\r\n\tnavBarHidden: true,\r\n\tlayout: 'vertical'\r\n});\r\n\r\nfunction createItem() {\r\n\tvar view = Ti.UI.createView({\r\n\t\theight: 100,\r\n\t\twidth: '100%',\r\n\t\tlayout: 'horizontal'\r\n\t});\r\n\t\r\n\tvar label = Ti.UI.createLabel({\r\n\t\ttext: 'Testing ...',\r\n\t\twidth: '50%'\r\n\t});\r\n\t\r\n\tvar checkbox = Ti.UI.createSwitch({\r\n\t\tstyle: Ti.UI.Android.SWITCH_STYLE_CHECKBOX\r\n\t});\r\n\t\r\n\tview.add(label);\r\n\tview.add(checkbox);\r\n\t\r\n\treturn view;\r\n}\r\n\r\nfunction createTextField() {\r\n\t\r\n\tvar view = Ti.UI.createView({\r\n\t\theight: 100,\r\n\t\twidth: '100%',\r\n\t\tbackgroundColor: '#0ff',\r\n\t\tlayout: 'horizontal'\r\n\t});\r\n\t\r\n\tvar label = Ti.UI.createLabel({\r\n\t\ttext: 'Text field ...',\r\n\t\twidth: '50%'\r\n\t});\r\n\t\r\n\tvar textField = Ti.UI.createTextField({\r\n\t\twidth: '30%'\r\n\t});\r\n\t\r\n\ttextField.addEventListener('focus', function() {\r\n\t\tTi.API.info('Focus fired');\r\n\t});\r\n\t\r\n\tview.add(label);\r\n\tview.add(textField);\r\n\t\r\n\treturn view;\r\n}\r\n\r\nvar scrollView = Ti.UI.createScrollView({\r\n\tlayout: 'vertical',\r\n\tbackgroundColor: '#f00',\r\n\tshowVerticalScrollIndicator: true,\r\n\theight: '100%',\r\n\twidth: '100%',\r\n\tcontentHeight: 'auto',\r\n\tcontentWidth: 'auto',\r\n\ttop: 0\r\n});\r\n\r\nfor (var m = 0; m < 3; ++m) {\r\n\tfor (var i = 0; i < 20; ++i) {\r\n\t\tscrollView.add(createItem());\r\n\t}\r\n\tvar view = createTextField();\r\n\tscrollView.add(view);\r\n}\r\n\r\nfor (var j = 0; j < 20; ++j) {\r\n\tscrollView.add(createItem());\r\n}\r\n\r\nvar button = Ti.UI.createButton({ title: 'Click me!' });\r\n\r\nbutton.addEventListener('click', function() {\r\n\tvar context = Ti.UI.createWindow({\r\n\t\tbackgroundColor: '#000',\r\n\t\tmodal: true,\r\n\t\tnavBarHidden: true,\r\n\t\tlayout: 'vertical'\r\n\t});\r\n\t\r\n\tvar closeButton = Ti.UI.createButton({ title: 'Close me!' });\r\n\t\r\n\tcloseButton.addEventListener('click', function() {\r\n\t\tcontext.close();\r\n\t});\r\n\t\r\n\tcontext.add(closeButton);\r\n\t\r\n\tcontext.open();\r\n});\r\n\r\nscrollView.add(button);\r\n\r\nwin.add(scrollView);\r\n\r\nTi.API.info('App runnning ...');\r\n\r\nwin.open();\r\n{code}\r\n\r\n", "attachment": [], "flagged": false, "summary": "Android: UI - TextField's \"focus\" event is fired without user interaction", "creator": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "subtasks": [], "reporter": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "environment": "* Titanium SDK version: 1.7.6 (11/22/11 14:11 194e8e6...)\r\n* Android 3.1\r\n* Lenovo Thinkpad Tablet\r\n* Windows XP SP3", "comment": { "comments": [ { "id": "174406", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "I have more info about this issue.\r\n\r\n\r\nIt seems that this problem does not exist if user press-hold-and-scroll through scroll view component very slowly. So, to **not** see the issue, you have to press scroll view area, hold it and slowly scroll down and release your finger.\r\n\r\nThe issue can be seen only if user tap-and-scroll.\r\n\r\n\r\nI hope you understand what I mean, it's hard to explain. If you need more explanation, please let me know.", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2011-12-01T05:15:57.000+0000", "updated": "2011-12-01T05:15:57.000+0000" }, { "id": "185926", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "I would really appreciate if this issue could be scheduled because there is no workaround. Thanks.", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-03-12T00:32:42.000+0000", "updated": "2012-03-12T00:32:42.000+0000" }, { "id": "198097", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This is native Android behavior. Android will try to switch focus to the first visible focusable view. Here's a couple articles that talk about it:\r\nhttp://stackoverflow.com/questions/5375838/scrollview-disable-focus-move\r\nhttp://stackoverflow.com/questions/8100831/stop-scrollview-from-setting-focus-on-edittext\r\n\r\nI'm sure its annoying but I'm not sure whether its a good idea to diverge from native behavior. ", "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-11T16:29:31.000+0000", "updated": "2012-06-11T16:30:13.000+0000" }, { "id": "198117", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Marking it invalid since the Titanium behavior matches with the native behavior.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-11T18:52:11.000+0000", "updated": "2012-06-11T18:52:11.000+0000" }, { "id": "198125", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "If native behavior creates awful UX, then I don't see a reason why Titanium should blindly stick to native behavior (if some native functionality has a bug, would you leave that bug in Titanium?). I doubt that Titanium developers want to have buggy native behavior. Instead, I think that they want something that works as it should. Users don't care about native-like behavior, they want to have nice UX. With this bug, that is not possible to achieve.\r\n\r\n\r\n\r\n\r\n\r\nAnyway, is there any workaround?\r\n\r\n\r\n\r\nI tried to set \"focusable\" to \"false\" and then on \"click\" event change \"focusable\" event, but that didn't work:\r\n\r\n\r\n{code}\r\n var textField = Ti.UI.createTextField({\r\n \ttop: 150,\r\n \tleft: 50,\r\n \twidth: '150dp',\r\n \tfocusable: false,\r\n \theight: '75dp',\r\n });\r\n \r\n textField.addEventListener('click', function() {\r\n \ttextField.setFocusable(true);\r\n });\r\n{code}\r\n\r\n\r\nIt seems that \"focusable\" property cannot be changed after TextField is rendered. Is there any other way? :(\r\n\r\n\r\n\r\nThanks.", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-06-12T00:20:39.000+0000", "updated": "2012-06-12T00:20:39.000+0000" }, { "id": "198127", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-06-12T01:15:14.000+0000", "updated": "2012-06-12T01:15:14.000+0000" }, { "id": "198134", "author": { "name": "bitshftr", "key": "bitshftr", "displayName": "Shawn Lipscomb", "active": true, "timeZone": "America/New_York" }, "body": "Ivan, would setting the windowSoftInputMode property of the window have any effect on this?", "updateAuthor": { "name": "bitshftr", "key": "bitshftr", "displayName": "Shawn Lipscomb", "active": true, "timeZone": "America/New_York" }, "created": "2012-06-12T05:29:58.000+0000", "updated": "2012-06-12T05:29:58.000+0000" }, { "id": "198136", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Thanks Shawn, but unfortunately that has no effect.", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-06-12T06:32:54.000+0000", "updated": "2012-06-12T06:33:04.000+0000" }, { "id": "198140", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "I found a workaround (Shawn suggestion pushed me in right direction :) ).\r\n\r\n\r\nThe solution is this:\r\n\r\n{code}\r\nvar textField = Ti.UI.createTextField({\r\n softKeyboardOnFocus : Ti.UI.Android.SOFT_KEYBOARD_HIDE_ON_FOCUS,\r\n width: '30%'\r\n});\r\n{code}\r\n\r\n\r\nSo, I prevent keyboard from showing (by setting \"softKeyboardOnFocus\" to \"Ti.UI.Android.SOFT_KEYBOARD_HIDE_ON_FOCUS\" when text field is created). That makes scrolling normal experience, that is, user is not annoyed by constant keyboard pop-ups. Still, \"focus\" event is fired without user interaction.\r\n\r\n{code}\r\ntextField.addEventListener('click', function() {\r\n textField.softKeyboardOnFocus = Ti.UI.Android.SOFT_KEYBOARD_SHOW_ON_FOCUS;\r\n textField.focus();\r\n});\r\n{code}\r\n\r\nNow, since user want to write to text field, a keyboard needs to be shown. I cannot use \"focus\" event because it is being fired randomly (even firing \"focus\" is not reliable when user scrolls) and I cannot prevent that by setting \"focusable\" property because it cannot be changed when text field is rendered. So I need to use \"click\" event. Inside \"click\" event listener I reset \"softKeyboardOnFocus\" property and call \"focus\" so that keyboard shows. This is not perfect because, as I said, \"focus\" is being fired randomly and sometimes user needs to click once more on text field. That's another Android crap, text field needs to be \"focused\" so it can be \"click\"ed ... that is, user need to click twice to get \"click\" event fired (first for \"focus\").\r\n\r\n\r\nOne more thing that needs to be done is to set \"softKeyboardOnFocus\" back to initial value (\"SOFT_KEYBOARD_HIDE_ON_FOCUS\") when text field looses focus.\r\n\r\n{code}\r\ntextField.addEventListener('blur', function() {\r\n textField.softKeyboardOnFocus = Ti.UI.Android.SOFT_KEYBOARD_HIDE_ON_FOCUS;\r\n});\r\n{code}\r\n\r\n\r\nTo make all this more user friendly, I added \"click\" event on window:\r\n\r\n{code}\r\nwin.addEventListener('click', function(e) {\r\n if (!/(TextField|TextArea)/.test(e.source.toString())) {\r\n Ti.UI.Android.hideSoftKeyboard();\r\n }\r\n \r\n});\r\n{code}\r\n\r\n\r\nthat hides keyboard when user clicks outside text field.\r\n\r\n\r\nNow, UX is better, but it is not perfect. Since \"focus\" event is being fired randomly, user will sometimes have to click one time, and sometimes two times to get keyboard shown. \r\n\r\n\r\n\r\nHope this helps. :)", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-06-12T07:47:12.000+0000", "updated": "2012-06-12T07:47:12.000+0000" }, { "id": "198148", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@Ivan - We will reevaluate this issue based on your feedback.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-12T08:26:42.000+0000", "updated": "2012-06-12T08:26:42.000+0000" }, { "id": "198298", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Thanks Neeraj.", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-06-12T23:24:31.000+0000", "updated": "2012-06-12T23:24:31.000+0000" }, { "id": "198852", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "We should reevaluate if we can workaround the native platform behavior without an ugly hack.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-17T17:00:33.000+0000", "updated": "2012-06-17T17:00:33.000+0000" }, { "id": "199321", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "It seems that this workaround that I suggested has one issue, if keyboard type property is set, it is being reset to initial value. That can be fixed by resetting that value to initial value.\r\n\r\nHere is full example:\r\n\r\n{code}\r\n var win = Ti.UI.createWindow({\r\n\t backgroundColor: '#000',\r\n\t modal: true,\r\n\t navBarHidden: true,\r\n\t layout: 'vertical'\r\n\t});\r\n\t \r\n\tfunction createItem() {\r\n\t var view = Ti.UI.createView({\r\n\t height: 100,\r\n\t width: '100%',\r\n\t layout: 'horizontal'\r\n\t });\r\n\t \r\n\t var label = Ti.UI.createLabel({\r\n\t text: 'Testing ...',\r\n\t width: '50%'\r\n\t });\r\n\t \r\n\t var checkbox = Ti.UI.createSwitch({\r\n\t style: Ti.UI.Android.SWITCH_STYLE_CHECKBOX\r\n\t });\r\n\t \r\n\t view.add(label);\r\n\t view.add(checkbox);\r\n\t \r\n\t return view;\r\n\t}\r\n\t \r\n\tfunction createTextField() {\r\n\t \r\n\t var view = Ti.UI.createView({\r\n\t height: 100,\r\n\t width: '100%',\r\n\t backgroundColor: '#0ff',\r\n\t layout: 'horizontal'\r\n\t });\r\n\t \r\n\t var label = Ti.UI.createLabel({\r\n\t text: 'Text field ...',\r\n\t width: '50%'\r\n\t });\r\n\t \r\n\t var textField = Ti.UI.createTextField({\r\n\t \tkeyboardType: Ti.UI.KEYBOARD_NUMBER_PAD,\r\n\t \tsoftKeyboardOnFocus : Ti.UI.Android.SOFT_KEYBOARD_HIDE_ON_FOCUS,\r\n\t width: '30%'\r\n\t });\r\n\t \r\n\t textField.addEventListener('click', function() {\r\n\t textField.softKeyboardOnFocus = Ti.UI.Android.SOFT_KEYBOARD_SHOW_ON_FOCUS;\r\n textField.keyboardType = Ti.UI.KEYBOARD_NUMBER_PAD;\r\n \t\ttextField.focus();\r\n\t });\r\n\t \r\n\t textField.addEventListener('blur', function() {\r\n\t\t textField.softKeyboardOnFocus = Ti.UI.Android.SOFT_KEYBOARD_HIDE_ON_FOCUS;\r\n\t\t});\r\n\t \r\n\t view.add(label);\r\n\t view.add(textField);\r\n\t \r\n\t return view;\r\n\t}\r\n\t \r\n\tvar scrollView = Ti.UI.createScrollView({\r\n\t layout: 'vertical',\r\n\t backgroundColor: '#f00',\r\n\t showVerticalScrollIndicator: true,\r\n\t height: '100%',\r\n\t width: '100%',\r\n\t contentHeight: 'auto',\r\n\t contentWidth: 'auto',\r\n\t top: 0\r\n\t});\r\n\t \r\n\tfor (var m = 0; m < 3; ++m) {\r\n\t for (var i = 0; i < 20; ++i) {\r\n\t scrollView.add(createItem());\r\n\t }\r\n\t var view = createTextField();\r\n\t scrollView.add(view);\r\n\t}\r\n\t \r\n\tfor (var j = 0; j < 20; ++j) {\r\n\t scrollView.add(createItem());\r\n\t}\r\n\t \r\n\tvar button = Ti.UI.createButton({ title: 'Click me!' });\r\n\t \r\n\tbutton.addEventListener('click', function() {\r\n\t var context = Ti.UI.createWindow({\r\n\t backgroundColor: '#000',\r\n\t modal: true,\r\n\t navBarHidden: true,\r\n\t layout: 'vertical'\r\n\t });\r\n\t \r\n\t var closeButton = Ti.UI.createButton({ title: 'Close me!' });\r\n\t \r\n\t closeButton.addEventListener('click', function() {\r\n\t context.close();\r\n\t });\r\n\t \r\n\t context.add(closeButton);\r\n\t \r\n\t context.open();\r\n\t});\r\n\t \r\n\tscrollView.add(button);\r\n\t \r\n\twin.add(scrollView);\r\n\t \r\n\tTi.API.info('App runnning ...');\r\n\t \r\n\twin.open();\r\n{code}", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2012-06-20T07:00:35.000+0000", "updated": "2012-06-20T07:00:35.000+0000" }, { "id": "249100", "author": { "name": "jithinv@exalture.com", "key": "jithinv@exalture.com", "displayName": "jithinpv", "active": true, "timeZone": "America/Los_Angeles" }, "body": "cannot reproduce\r\n\r\nTested with\r\nTitanium Studio, build: 3.0.1.201212181159\r\nTitanium SDK version: 3.1.0\r\nAndroid Emulator: Android SDK version: 2.2 ", "updateAuthor": { "name": "jithinv@exalture.com", "key": "jithinv@exalture.com", "displayName": "jithinpv", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-04-26T07:55:58.000+0000", "updated": "2013-04-26T07:55:58.000+0000" }, { "id": "288087", "author": { "name": "a.marcone", "key": "a.marcone", "displayName": "Alberto Marcone", "active": true, "timeZone": "Europe/Berlin" }, "body": "this is still happening:\r\n\r\nTitanium SDK version: 3.1.3\r\nAndroid Emulator: any\r\n\r\nWhen you open a page, and there is a textfield, it will automatically be focused.", "updateAuthor": { "name": "a.marcone", "key": "a.marcone", "displayName": "Alberto Marcone", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-01-14T09:34:18.000+0000", "updated": "2014-01-14T09:34:18.000+0000" }, { "id": "288089", "author": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Hi Alberto. Try to set \"windowSoftInputMode\" to \"Ti.UI.SOFT_INPUT_STATE_HIDDEN\", check out Window docs [http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.UI.Window] ", "updateAuthor": { "name": "ivan.skugor", "key": "ivan.skugor", "displayName": "Ivan Skugor", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2014-01-14T12:27:43.000+0000", "updated": "2014-01-14T12:27:43.000+0000" }, { "id": "292243", "author": { "name": "pedrobrasileiro", "key": "pedrobrasileiro", "displayName": "Pedro Brasileiro Cardoso Junior", "active": true, "timeZone": "America/Argentina/Buenos_Aires" }, "body": "Don't work with windowSoftInputMode setted to Ti.UI.SOFT_INPUT_STATE_HIDDEN", "updateAuthor": { "name": "pedrobrasileiro", "key": "pedrobrasileiro", "displayName": "Pedro Brasileiro Cardoso Junior", "active": true, "timeZone": "America/Argentina/Buenos_Aires" }, "created": "2014-02-10T21:50:32.000+0000", "updated": "2014-02-10T21:50:32.000+0000" }, { "id": "400760", "author": { "name": "goyalpankaj054@gmail.com", "key": "goyalpankaj054@gmail.com", "displayName": "Pankaj Goyal", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hi,\r\n\r\nWe are also facing this issue on Appc SDK 5.5.1 . Its very frustrating. Please look into this.\r\n\r\nThanks\r\nPankaj Goyal", "updateAuthor": { "name": "goyalpankaj054@gmail.com", "key": "goyalpankaj054@gmail.com", "displayName": "Pankaj Goyal", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-11-11T05:35:46.000+0000", "updated": "2016-11-11T05:35:46.000+0000" } ], "maxResults": 18, "total": 18, "startAt": 0 } } }