{ "id": "160175", "key": "TIMOB-23358", "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": "2016-05-10T23:47:29.000+0000", "epic": { "id": 151897, "key": "TIMOB-19699", "name": "Android: Hyperloop for Android module", "summary": "Bring Hyperloop to Android", "color": { "key": "color_4" }, "done": false }, "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [ { "id": "51653", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "outwardIssue": { "id": "153128", "key": "TIMOB-19994", "fields": { "summary": "Android: Fix memory leaks in UI proxies", "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": "Critical", "id": "1" }, "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false } } } } ], "assignee": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2017-09-22T15:14:46.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": "10202", "name": "Android", "description": "Android Platform" }, { "id": "13715", "name": "Hyperloop", "description": "Hyperloop project" } ], "description": "Some methods in Android use \"reference\" parameters where the method is expected to modify the arguments explicitly rather than return a return value.\r\n\r\nSpecifically, methods like:\r\n- http://developer.android.com/reference/android/view/View.html#getLocationOnScreen(int[])\r\n- http://developer.android.com/reference/android/view/View.html#getLocationInWindow(int[])\r\n- http://developer.android.com/reference/android/view/View.html#dispatchNestedPreScroll(int,%20int,%20int[],%20int[])\r\n- http://developer.android.com/reference/android/view/View.html#dispatchNestedScroll(int,%20int,%20int,%20int,%20int[])\r\n\r\nRight now, I don't believe we properly support this sort of method. We'll need to find some way to be able to transform the passed in JS array's contents from the modifications made on the Java converted array. We may just have to special case these methods to return the modified contents rather than void and then hack the JS side.\r\n\r\nNote that this isn't possible for typical Java primitives, but _is_ possible for arrays.", "attachment": [], "flagged": false, "summary": "Hyperloop Android: Support method calls that use reference parameters/explicitly assign to args", "creator": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "environment": null, "comment": { "comments": [ { "id": "385347", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "A note that getLocationOnScreen actually has a hidden no-arg version that returns the int[] in source and Hans did report being able to use that. So we sort of have a workaround for that.\r\n\r\nThere is no such hidden variant of getLocationInWindow.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-05-11T00:01:17.000+0000", "updated": "2016-05-11T00:02:22.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }