{ "id": "172127", "key": "TIMOB-26338", "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": "20220", "name": "Release 7.3.1", "archived": false, "released": true, "releaseDate": "2018-08-30" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2018-08-29T10:01:08.000+0000", "created": "2018-08-24T11:40:18.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "ios" ], "versions": [ { "id": "20115", "name": "Release 7.3.0", "archived": false, "released": true, "releaseDate": "2018-08-17" } ], "issuelinks": [], "assignee": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2018-08-29T10:48:31.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": "Createlabel bug\r\n\r\nThe algorithm below works properly on 7.2.1GA however on 7.3.0GA does not. The label is not created as it should be.\r\n\r\nCheck the algorithm below with the setting “run on main thread” turned off.\r\n\r\n\r\n{code:java}\r\nvar windowA = Ti.UI.createWindow();\r\nvar windowB = Ti.UI.createWindow();\r\n \r\nvar tabA = Ti.UI.createTab({\r\n\twindow:windowA,\r\n\ttitle:'Tab A'\r\n});\r\n \r\nvar tabB = Ti.UI.createTab({\r\n\twindow:windowB,\r\n\ttitle:'Tab B'\r\n});\r\n\t\r\nvar tabGroup = Titanium.UI.createTabGroup({\r\n\ttabs:[tabA, tabB]\r\n});\r\n \r\ntabGroup.open();\r\n\r\nwindowA.addEventListener('click', function() {\r\n\t\r\n\tvar win = Titanium.UI.createWindow();\r\n\t\t\t\r\n\twin.add(Ti.UI.createLabel({\r\n\t\ttext:'TEST',\r\n\t\tcolor:'#000'\r\n\t}));\r\n\t\t\t\r\n\ttabA.open(win);\r\n\t\r\n});\r\n{code}\r\n", "attachment": [], "flagged": false, "summary": "iOS: Label not shown when opened in window from tab-group in 7.3.0 (kroll-thread only)", "creator": { "name": "andreas.pingas", "key": "andreas.pingas", "displayName": "Andreas Pingas", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "andreas.pingas", "key": "andreas.pingas", "displayName": "Andreas Pingas", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "441068", "author": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "body": "Hello, I have tested your issue on our end and I was able to reproduce the issue. There seems to be an issue with running on the main thread turned off for SDK 7.3.0.GA. With the main thread set to true, there is no issue. For 7.2.x.GA there is no issue. I will forward this to our engineering. Thanks.", "updateAuthor": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "created": "2018-08-26T18:15:55.000+0000", "updated": "2018-08-26T18:15:55.000+0000" }, { "id": "441070", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "This is a valid issue and regression from TIMOB-17235. Assigning to [~vijaysingh] for further investigation.\r\n\r\n[~andreas.pingas] Out of interest: What blocks you from migrating to main-thread? The deprecated kroll-thread will be removed later this year, so if there are any issues with it, we should know those to fix them.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2018-08-26T21:10:26.000+0000", "updated": "2018-08-26T21:10:26.000+0000" }, { "id": "441073", "author": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This problem is happening only on kroll-thread. I'll look in this.\r\n[~andreas.pingas] You should migrate to main-thread as [~hknoechel] has suggested.", "updateAuthor": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-08-27T08:36:52.000+0000", "updated": "2018-08-27T08:36:52.000+0000" }, { "id": "441170", "author": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master) - https://github.com/appcelerator/titanium_mobile/pull/10294\r\nPR (7_4_X) - https://github.com/appcelerator/titanium_mobile/pull/10295\r\nPR (7_3_X) - https://github.com/appcelerator/titanium_mobile/pull/10293\r\n\r\nNote - Please verify test cases using Kroll-thread and main-thread both.\r\n\r\nTest Case 1 (From this ticket) -\r\n\r\n{code:java}\r\nvar windowA = Ti.UI.createWindow();\r\nvar windowB = Ti.UI.createWindow();\r\n \r\nvar tabA = Ti.UI.createTab({\r\n\twindow:windowA,\r\n\ttitle:'Tab A'\r\n});\r\n \r\nvar tabB = Ti.UI.createTab({\r\n\twindow:windowB,\r\n\ttitle:'Tab B'\r\n});\r\n\t\r\nvar tabGroup = Titanium.UI.createTabGroup({\r\n\ttabs:[tabA, tabB]\r\n});\r\n \r\ntabGroup.open();\r\n \r\nwindowA.addEventListener('click', function() {\r\n\t\r\n\tvar win = Titanium.UI.createWindow({\r\n\t\tbackgroundColor: 'white'\r\n\t});\r\n\tvar label = Ti.UI.createLabel({\r\n\t\ttext:'TEST',\r\n\t\tcolor:'red',\r\n\t})\t\t\r\n\twin.add(label);\r\n\t\t\t\r\n\ttabA.open(win);\r\n});\r\n{code}\r\n\r\n\r\nTest case 2 (From TIMOB-17235) - \r\n\r\n{code:java}\r\nTitanium.UI.setBackgroundColor('#000');\r\n \r\n// create tab group\r\nvar tabGroup = Titanium.UI.createTabGroup();\r\n \r\n \r\nvar win1 = Titanium.UI.createWindow({ \r\n title:'Tab 1',\r\n backgroundColor:'#fff'\r\n});\r\nvar tab1 = Titanium.UI.createTab({ \r\n icon:'KS_nav_views.png',\r\n title:'Tab 1',\r\n window:win1\r\n});\r\n \r\nvar label1 = Titanium.UI.createLabel({\r\n\tcolor:'#999',\r\n\ttext:'I am Window 1',\r\n\tfont:{fontSize:20,fontFamily:'Helvetica Neue'},\r\n\ttextAlign:'center',\r\n\tbottom:10\r\n});\r\n \r\nwin1.add(label1);\r\n \r\n// create base UI tab and root window\r\n\r\nvar win2 = Titanium.UI.createWindow({ \r\n title:'Tab 1',\r\n backgroundColor:'#fff'\r\n});\r\nvar tab2 = Titanium.UI.createTab({ \r\n icon:'KS_nav_views.png',\r\n title:'Tab 2',\r\n window:win2\r\n});\r\n \r\nvar label2 = Titanium.UI.createLabel({\r\n\tcolor:'#999',\r\n\ttext:'I am Window 2',\r\n\tfont:{fontSize:20,fontFamily:'Helvetica Neue'},\r\n\ttextAlign:'center',\r\n\tbottom:10\r\n});\r\n \r\nwin2.add(label2);\r\n \r\nvar win3 = Titanium.UI.createWindow({ \r\n title:'Tab 1',\r\n backgroundColor:'#fff'\r\n});\r\nvar tab3 = Titanium.UI.createTab({ \r\n icon:'KS_nav_views.png',\r\n title:'Tab 1',\r\n window:win3\r\n});\r\n \r\nvar label3 = Titanium.UI.createLabel({\r\n\tcolor:'#999',\r\n\ttext:'I am Window 1',\r\n\tfont:{fontSize:20,fontFamily:'Helvetica Neue'},\r\n\ttextAlign:'center',\r\n\twidth:'auto'\r\n});\r\n \r\nwin3.add(label3);\r\n \r\n// create base UI tab and root window\r\n\r\nvar win4 = Titanium.UI.createWindow({ \r\n title:'Tab 1',\r\n backgroundColor:'#fff'\r\n});\r\nvar tab4 = Titanium.UI.createTab({ \r\n icon:'KS_nav_views.png',\r\n title:'Tab 1',\r\n window:win4\r\n});\r\n \r\nvar label4 = Titanium.UI.createLabel({\r\n\tcolor:'#999',\r\n\ttext:'I am Window 1',\r\n\tfont:{fontSize:20,fontFamily:'Helvetica Neue'},\r\n\ttextAlign:'center',\r\n\twidth:'auto'\r\n});\r\n \r\nwin4.add(label4);\r\n \r\n// add tabs\r\ntabGroup.addTab(tab1); \r\ntabGroup.addTab(tab2); \r\ntabGroup.addTab(tab3);\r\ntabGroup.addTab(tab4);\r\n \r\ntabGroup.open();\r\n{code}", "updateAuthor": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-08-29T07:09:23.000+0000", "updated": "2018-08-29T07:40:49.000+0000" }, { "id": "441177", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified fix in SDK version {{7.3.1.v20180829001917}} and {{7.4.0.v20180829013317}}\r\n\r\n*Test Steps (FR Passed):*\r\n# Created a new Titanium application \r\n# Added the first test case in to the app\r\n# Ran the app with “run on main thread” turned off.\r\n# Clicked in to Tab A\r\n# Able to see the label\r\n# Ran the app again but this time with “run on main thread” turned on.\r\n# Clicked in to Tab A\r\n# Still able to see the label \r\n# Created an application with the second test case \r\n# Ran the program\r\n# Able to see no flickering\r\n\r\n*Test environment*\r\n{code:java}\r\nAPPC Studio: 5.1.0.201808080937\r\nAPPC CLI: 7.0.6-Master.5\r\niphone 6 simulator (11.2)\r\nOperating System Name: Mac OS High Sierra\r\nOperating System Version: 10.13.6\r\nNode.js Version: 8.9.1\r\nXcode 10.0 beta 6\r\n{code}\r\n\r\n*Note:* Waiting for build on Master.", "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-08-29T09:28:26.000+0000", "updated": "2018-08-29T09:28:26.000+0000" }, { "id": "441181", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "body": "*Closing ticket.* Verified fix in SDK version {{7.5.0.v20180829030547}} using the test steps above. ", "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-08-29T10:48:20.000+0000", "updated": "2018-08-29T10:48:20.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }