{ "id": "166332", "key": "TIMOB-24434", "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": [], "resolution": null, "resolutiondate": null, "created": "2017-02-27T15:25:51.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [], "versions": [ { "id": "16980", "description": "New V8", "name": "Release 6.0.0", "archived": false, "released": true, "releaseDate": "2016-11-15" }, { "id": "18154", "name": "Release 6.0.1", "archived": false, "released": true, "releaseDate": "2016-12-21" } ], "issuelinks": [ { "id": "54477", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "outwardIssue": { "id": "166051", "key": "TIMOB-24406", "fields": { "summary": "Android: Unable to modify key of an Object property", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2018-10-03T11:06:44.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "- Properties which are writable Objects such as {{Point}} and {{Font}} cannot have their keys directly changed.\r\n\r\n*TEST CASE #1*\r\n{code:js}\r\nvar win = Ti.UI.createWindow({\r\n title: 'TIMOB-24406',\r\n backgroundColor: 'gray'\r\n }),\r\n lbl = Ti.UI.createLabel({\r\n text: 'click me',\r\n font: {\r\n fontSize: 24\r\n }\r\n });\r\n\r\nwin.addEventListener('click', function(e) {\r\n // direct access to fontSize\r\n lbl.font.fontSize = lbl.font.fontSize + 4;\r\n});\r\n\r\nwin.add(lbl);\r\nwin.open();\r\n{code}\r\n\r\n*TEST CASE #2*\r\n{code:js}\r\nvar win = Ti.UI.createWindow({\r\n title: 'TIMOB-24406',\r\n backgroundColor: 'gray'\r\n }),\r\n iv = Ti.UI.createView({\r\n backgroundColor: 'red',\r\n width: '320',\r\n height: '480',\r\n center: {\r\n x: 1,\r\n y: 1\r\n }\r\n });\r\n\r\nwin.addEventListener('click', function(e) {\r\n iv.center.x = e.x;\r\n iv.center.y = e.y;\r\n //iv.center = {x: e.x, y: e.y}; // workaround\r\n Ti.API.info('center.x: ' + iv.center.x);\r\n Ti.API.info('center.y: ' + iv.center.y);\r\n});\r\n\r\nwin.add(iv);\r\nwin.open();\r\n{code}", "attachment": [], "flagged": false, "summary": "iOS: Unable to modify key of an Object property", "creator": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "Yellowcube", "key": "yellowcube", "displayName": "Yellowcube", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Operating System\r\n Name = Mac OS X\r\n Version = 10.12.3\r\n Architecture = 64bit\r\n # CPUs = 4\r\n Memory = 16.0GB\r\n\r\nNode.js\r\n Node.js Version = 4.6.2\r\n npm Version = 4.0.5\r\n\r\nAppcelerator CLI\r\n Installer = 4.2.8\r\n Core Package = 6.1.0\r\n\r\nTitanium CLI\r\n CLI Version = 5.0.11\r\n node-appc Version = 0.2.39\r\n\r\nTitanium SDKs\r\n 6.0.1.GA\r\n Version = 6.0.1\r\n Install Location = /Users/dinghengduan/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA\r\n Platforms = iphone, android, mobileweb\r\n git Hash = 265db0d\r\n git Timestamp = 12/20/2016 00:55\r\n node-appc Version = 0.2.39\r\n 6.0.0.GA\r\n Version = 6.0.0\r\n Install Location = /Users/dinghengduan/Library/Application Support/Titanium/mobilesdk/osx/6.0.0.GA\r\n Platforms = iphone, android, mobileweb\r\n git Hash = 1aa3df8\r\n git Timestamp = 11/13/2016 09:27\r\n node-appc Version = 0.2.39\r\n 5.5.1.GA\r\n Version = 5.5.1\r\n Install Location = /Users/dinghengduan/Library/Application Support/Titanium/mobilesdk/osx/5.5.1.GA\r\n Platforms = android, mobileweb, iphone\r\n git Hash = b18727f\r\n git Timestamp = 09/27/16 05:38\r\n node-appc Version = 0.2.36\r\n 5.3.1.GA\r\n Version = 5.3.1\r\n Install Location = /Users/dinghengduan/Library/Application Support/Titanium/mobilesdk/osx/5.3.1.GA\r\n Platforms = android, mobileweb, iphone\r\n git Hash = ee11b10\r\n git Timestamp = 06/09/16 01:33\r\n node-appc Version = 0.2.33", "closedSprints": [ { "id": 1028, "state": "closed", "name": "2018 Sprint 09 SDK", "startDate": "2018-04-22T22:53:08.928Z", "endDate": "2018-05-06T22:53:00.000Z", "completeDate": "2018-05-07T00:02:15.883Z", "originBoardId": 114 }, { "id": 1045, "state": "closed", "name": "2018 Sprint 13 SDK", "startDate": "2018-06-17T20:47:13.621Z", "endDate": "2018-07-01T20:47:00.000Z", "completeDate": "2018-07-02T18:40:05.029Z", "originBoardId": 114 }, { "id": 1018, "state": "closed", "name": "2018 Sprint 07 SDK", "startDate": "2018-03-25T21:59:36.637Z", "endDate": "2018-04-08T21:59:00.000Z", "completeDate": "2018-04-08T17:55:14.467Z", "originBoardId": 114 }, { "id": 1034, "state": "closed", "name": "2018 Sprint 10 SDK", "startDate": "2018-05-07T00:03:21.636Z", "endDate": "2018-05-21T00:03:00.000Z", "completeDate": "2018-05-20T20:54:58.928Z", "originBoardId": 114 }, { "id": 1050, "state": "closed", "name": "2018 Sprint 14 SDK", "startDate": "2018-07-01T18:40:57.193Z", "endDate": "2018-07-15T18:40:00.000Z", "completeDate": "2018-07-16T03:27:08.720Z", "originBoardId": 114 }, { "id": 1035, "state": "closed", "name": "2018 Sprint 11 SDK", "startDate": "2018-05-20T20:57:43.542Z", "endDate": "2018-06-03T20:57:00.000Z", "completeDate": "2018-06-04T15:13:14.425Z", "originBoardId": 114 }, { "id": 1021, "state": "closed", "name": "2018 Sprint 08 SDK", "startDate": "2018-04-08T17:57:36.122Z", "endDate": "2018-04-22T17:57:00.000Z", "completeDate": "2018-04-22T22:51:19.120Z", "originBoardId": 114 }, { "id": 1053, "state": "closed", "name": "2018 Sprint 15 SDK", "startDate": "2018-07-15T21:52:05.453Z", "endDate": "2018-07-29T21:52:00.000Z", "completeDate": "2018-07-29T22:25:11.723Z", "originBoardId": 114 }, { "id": 1039, "state": "closed", "name": "2018 Sprint 12 SDK", "startDate": "2018-06-03T15:22:23.401Z", "endDate": "2018-06-17T15:22:00.000Z", "completeDate": "2018-06-18T20:45:36.363Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "408199", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Can we determine the affected properties before? I can think of {{font}} and {{center}}, what else?", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-03-01T11:09:53.000+0000", "updated": "2017-03-01T11:09:53.000+0000" }, { "id": "436158", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "I've checked this and it's an issue with the {{JSClassDefinition}} implementation in JavaScriptCore which does not handle object changes as part of the {{setProperty}} callback. I don't see much that we can do since thats the earliest point where we are able to receive back from JSCore.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2018-04-01T15:50:58.000+0000", "updated": "2018-04-01T15:50:58.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }