{ "id": "93974", "key": "TIMOB-9813", "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": "13574", "description": "Sprint 2012-15 Core", "name": "Sprint 2012-15 Core", "archived": true, "released": true, "releaseDate": "2012-07-30" }, { "id": "13572", "description": "Release 2.1.1", "name": "Release 2.1.1", "archived": true, "released": true, "releaseDate": "2012-07-31" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-07-18T11:38:51.000+0000", "created": "2012-06-27T03:28:56.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "core", "qe-and060112", "qe-testadded" ], "versions": [ { "id": "13273", "description": "Release 2.0.2", "name": "Release 2.0.2", "archived": false, "released": true, "releaseDate": "2012-05-31" }, { "id": "13271", "description": "Release 2.1.0", "name": "Release 2.1.0", "archived": false, "released": true, "releaseDate": "2012-06-29" }, { "id": "13272", "description": "Release 2.0.1", "name": "Release 2.0.1", "archived": true, "released": true, "releaseDate": "2012-04-16" }, { "id": "13270", "description": "Release 1.8 Service Pack 3 (CI for 1_8_X)", "name": "Release 1.8.3", "archived": true, "released": false } ], "issuelinks": [ { "id": "18749", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "94027", "key": "TIMOB-9827", "fields": { "summary": "Android: Translate animations of invisible views may be delayed", "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": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2013-07-11T09:41:22.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": "10202", "name": "Android", "description": "Android Platform" } ], "description": "This is not a regression. It exists as far as 1.8.2.\r\nIt works fine on android 3.2 and android 4.0.2.\r\nIt the object is clicked again while animation, it makes the parent window transparent in the span of the area of its animation.\r\n\r\nSteps to reproduce\r\n1) Use the code below\r\n{code}\r\nvar win = Ti.UI.createWindow({\r\n backgroundColor:'green'\r\n});\r\n \r\nvar box = Ti.UI.createView({\r\n backgroundColor : 'red',\r\n height : '150',\r\n width : '100'\r\n });\r\n \r\n box.addEventListener('click', function() {\r\n var matrix = Ti.UI.create2DMatrix()\r\n \r\n matrix = matrix.scale(2, 2);\r\n var a = Ti.UI.createAnimation({\r\n transform : matrix,\r\n duration : 2000,\r\n autoreverse : true,\r\n repeat : 3\r\n });\r\n box.animate(a);\r\n });\r\n win.add(box);\r\nwin.open();\r\n{code}\r\n2) Run the app\r\n3) Click the red box and again click it while it is animating\r\n\r\nActual result:\r\n2) After step 2,a green window with a red view is displayed.\r\n3) After step 3,the red box animates but makes the green window transparent and the splashscreen is partially visible (only in the area used by red box to animate).\r\n\r\nExpected result:\r\n2) After step 2,a green window with a red view is displayed.\r\n3) After step 3,the red box animates and the splashscreen should not be visible at all.", "attachment": [ { "id": "29831", "filename": "animate.zip", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-07-17T11:43:20.000+0000", "size": 3134433, "mimeType": "application/zip" } ], "flagged": false, "summary": "Android: Animation: An animated object,if clicked while animation,makes parent window transparent for the area of animation.", "creator": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Tested with Titanium SDK: 2.1.0.v20120625134154\r\nTested with Titanium  Studio: 2.1.0.201206251749\r\nDevice - Android 2.2.2 LG-P970,Motorola Milestone Android 2.2.1\r\nMachine OS - MAC 10.7.3", "comment": { "comments": [ { "id": "203070", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "This sudden transparency is particularly bad for **translate animations**, so the test case in TIMOB-9827 should also be used to validate any fix.", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-07-12T19:19:00.000+0000", "updated": "2012-07-12T19:19:00.000+0000" }, { "id": "207984", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "It almost seems the invalidation/redraw of the parent is getting blocked\r\nas the animation is restarted. I discovered [this|https://gist.github.com/134bbff296622dc92bc8] seems to \"fix\"\r\nthe issue. By scheduling an invalidation later, it seems to prevent that invalidated region from sticking around.\r\n\r\nThere is some \"flicker\" between the two animations, so maybe there's some tweaking still.\r\nFigured I'd share my findings and see if it gives some direction.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-17T00:37:04.000+0000", "updated": "2012-07-17T00:37:04.000+0000" }, { "id": "207985", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Another interesting tidbit is if you change postInvalidate() -> invalidate(). You will see\r\nwhat I mean by the redraw getting \"blocked\" until the animation completes. I am not sure if animations normally\r\nblock the main thread in this way or if there's a bug on our part.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-17T00:39:28.000+0000", "updated": "2012-07-17T00:39:28.000+0000" }, { "id": "208004", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "Eeks, I should have done my pull request last night to save you time looking at this. Indeed I'd switched to postInvalidate, and also to being much more picky about when to invalidate at all. Additionally, use of the looper queue's idle timer to kick off the animation seems to improve the experience in pre-honeycomb. \r\n\r\nI just pooped out before testing on every platform. Hopefully you didn't spent too much time on it. But definitely \"thank you\" as well!", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-07-17T04:15:00.000+0000", "updated": "2012-07-17T04:15:00.000+0000" }, { "id": "208091", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "No worries I only spent a little bit looking at it. Probably was good to dig into this code anyway and learn a bit.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-17T10:37:58.000+0000", "updated": "2012-07-17T10:37:58.000+0000" }, { "id": "208101", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "h3. Testing Notes\r\n\r\nUse the attached animate.zip test app, since several older fixed animation bugs need to be re-tested now for regressions after these changes.\r\n\r\nJust import and run the app. The tests timob-9813 and timob-9813_b, when tested with an **unfixed** branch, will show background anomalies (bleeding backgrounds) on devices < honeycomb. That's the failcase for this particular ticket.\r\n\r\nEach test in the app has a description of what should happen.\r\n\r\n*MUST BE TESTED ON 2.2/2.3 (not necessarily both IMO), 3.x and 4.x!!*", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-07-17T11:08:30.000+0000", "updated": "2012-07-17T11:46:16.000+0000" }, { "id": "208149", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "Pull request ready\r\n\r\nhttps://github.com/appcelerator/titanium_mobile/pull/2585", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-07-17T13:16:18.000+0000", "updated": "2012-07-17T13:16:18.000+0000" }, { "id": "209075", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified on:\r\nTitanium Studio: 2.1.1.201207171343\r\nTitanium SDK: 2.1.1.v20120723131610\r\nAndroid Device: LG P970 (v2.2), Samsung tab (v3.2)", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-24T03:26:52.000+0000", "updated": "2012-07-24T03:26:52.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }