{ "id": "102109", "key": "TIMOB-11181", "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": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" }, { "id": "14811", "description": "2013 Sprint 01 API", "name": "2013 Sprint 01 API", "archived": true, "released": true, "releaseDate": "2013-01-14" }, { "id": "14804", "description": "2013 Sprint 01", "name": "2013 Sprint 01", "archived": true, "released": true, "releaseDate": "2013-01-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-01-14T14:08:10.000+0000", "created": "2012-09-26T14:57:44.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "api" ], "versions": [ { "id": "14096", "description": "Release 2.1.2", "name": "Release 2.1.2", "archived": true, "released": true, "releaseDate": "2012-08-31" }, { "id": "14137", "description": "Release 2.1.3", "name": "Release 2.1.3", "archived": true, "released": true, "releaseDate": "2012-10-03" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "issuelinks": [], "assignee": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2014-06-19T12:44:05.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": "When running the sample below you can see when clicking on the view that the gradient layer is not animating smoothly with the view itself.\r\n\r\nI discovered that when making that pull request\r\nhttps://github.com/appcelerator/titanium_mobile/pull/2996\r\n\r\nI put the backgroundImage in a sublayer and i have the same behavior as with the gradient layer\r\n\r\nit might also be related to a fix i made:\r\nhttps://github.com/appcelerator/titanium_mobile/pull/2995\r\nI mean when fixing this i realised that the gradient sublayer had its own animation (instead of being resize upon each view animation step)\r\n{code}\r\nvar win = Ti.UI.createWindow({\r\nbackgroundColor:'white'\r\n});\r\n\r\nvar stringVal = 'This is a string that can occupy multiple lines'\r\nvar small = true;\r\nvar v1 = Ti.UI.createView({\r\n width:50,\r\n top:10,\r\n right:0,\r\n height:50,\r\n backgroundColor:'blue',\r\n backgroundGradient: {\r\n type: 'linear',\r\n startPoint: { x: '50%', y: 0 },\r\n endPoint: { x: '50%', y:\"100%\" },\r\n colors: [ { color: 'green', offset: 0.0}, { color: 'red', offset: 1.0 } ],\r\n backfillStart:true\r\n }\r\n});\r\n\r\n\r\n\r\nwin.add(v1);\r\n\r\nv1.addEventListener('click',function(){\r\nif (small)\r\n{\r\n small = false;\r\n v1.animate({\r\n width:300,\r\n height:300\r\n });\r\n}\r\nelse\r\n{\r\n small = true;\r\n v1.animate({\r\n width:50,\r\n height:50\r\n });\r\n}\r\n});\r\n\r\nwin.open();\r\n{code}", "attachment": [], "flagged": false, "summary": "iOS: View sublayer animations are not in sync", "creator": { "name": "farfromrefuge", "key": "farfromrefuge", "displayName": "Martin Guillon", "active": false, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "farfromrefuge", "key": "farfromrefuge", "displayName": "Martin Guillon", "active": false, "timeZone": "Europe/Berlin" }, "environment": "titanium 2.1.2 -> 3.0.0\r\nios 5.1 -> 6.0\r\ndevice / simulator", "comment": { "comments": [ { "id": "221132", "author": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Tested and confirmed with iOS 6, TiSDK 2.1.2 GA, 2.1.3 RC and 3.0.0.", "updateAuthor": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-26T22:53:29.000+0000", "updated": "2012-09-26T22:53:29.000+0000" }, { "id": "233051", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Expanded test case with autoreverse and repeat\n{code}\nvar win = Ti.UI.createWindow({\nbackgroundColor:'white'\n});\n \nvar stringVal = 'This is a string that can occupy multiple lines'\nvar smallv1 = true;\nvar smallv3 = true;\nvar v1 = Ti.UI.createView({\n width:50,\n top:10,\n left:0,\n height:50,\n backgroundColor:'blue',\n backgroundGradient: {\n type: 'linear',\n startPoint: { x: '50%', y: 0 },\n endPoint: { x: '50%', y:\"100%\" },\n colors: [ { color: 'green', offset: 0.0}, { color: 'red', offset: 1.0 } ],\n backfillStart:true\n }\n});\n \nvar v2 = Ti.UI.createView({\n width:50,\n bottom:10,\n left:0,\n height:50,\n backgroundColor:'blue',\n backgroundGradient: {\n type: 'linear',\n startPoint: { x: '50%', y: 0 },\n endPoint: { x: '50%', y:\"100%\" },\n colors: [ { color: 'green', offset: 0.0}, { color: 'red', offset: 1.0 } ],\n backfillStart:true\n }\n});\n\nvar v3 = Ti.UI.createView({\n width:50,\n top:10,\n right:0,\n height:50,\n backgroundColor:'blue',\n backgroundGradient: {\n type: 'linear',\n startPoint: { x: '50%', y: 0 },\n endPoint: { x: '50%', y:\"100%\" },\n colors: [ { color: 'green', offset: 0.0}, { color: 'red', offset: 1.0 } ],\n backfillStart:true\n }\n}); \n \nwin.add(v1);\nwin.add(v2);\nwin.add(v3);\n\n \nv1.addEventListener('click',function(){\n if (smallv1)\n {\n smallv1 = false;\n v1.animate({\n width:300,\n height:300,\n duration:500,\n });\n }\n else\n {\n smallv1 = true;\n v1.animate({\n width:50,\n height:50,\n duration:500\n });\n }\n});\n\nv2.addEventListener('click',function(){\n v2.animate({\n width:233,\n height:322,\n autoreverse:true,\n repeat:5,\n duration:500\n })\n})\n\nv3.addEventListener('click',function(){\n if (smallv3)\n {\n smallv3 = false;\n v3.animate({\n width:233,\n height:322,\n autoreverse:false,\n repeat:3,\n duration:500\n })\n }\n else {\n smallv3 = true;\n v3.animate({\n width:50,\n height:50,\n autoreverse:false,\n repeat:3,\n duration:500\n })\n }\n})\n\nwin.open();\n{code}", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-01-03T12:13:33.000+0000", "updated": "2013-01-03T12:13:33.000+0000" }, { "id": "233052", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Pull pending \r\nhttps://github.com/appcelerator/titanium_mobile/pull/3655", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-01-03T12:22:21.000+0000", "updated": "2013-01-03T12:22:21.000+0000" }, { "id": "234525", "author": { "name": "farfromrefuge", "key": "farfromrefuge", "displayName": "Martin Guillon", "active": false, "timeZone": "Europe/Berlin" }, "body": "thanks on this one", "updateAuthor": { "name": "farfromrefuge", "key": "farfromrefuge", "displayName": "Martin Guillon", "active": false, "timeZone": "Europe/Berlin" }, "created": "2013-01-16T00:44:35.000+0000", "updated": "2013-01-16T00:44:35.000+0000" }, { "id": "239636", "author": { "name": "pmishra", "key": "pmishra", "displayName": "Paras Mishra", "active": true, "timeZone": "Asia/Kolkata" }, "body": "View sublayer animations are in sync\r\n\r\nVerified on :\r\nDevice : iPhone 5,iOS : 6\r\nSDK version: 3.1.0.v20130223030327\r\nCLI version : 3.0.24\r\nOS : MAC OSX 10.7.5\r\nXCode : 4.5.1\r\nStudio : 3.0.2.201302041757\r\n", "updateAuthor": { "name": "pmishra", "key": "pmishra", "displayName": "Paras Mishra", "active": true, "timeZone": "Asia/Kolkata" }, "created": "2013-02-25T11:46:18.000+0000", "updated": "2013-02-25T11:46:18.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }