]> git.proxmox.com Git - extjs.git/blame - extjs/packages/core/src/fx/layout/card/ScrollCover.js
add extjs 6.0.1 sources
[extjs.git] / extjs / packages / core / src / fx / layout / card / ScrollCover.js
CommitLineData
6527f429
DM
1/**\r
2 * @private\r
3 */\r
4Ext.define('Ext.fx.layout.card.ScrollCover', {\r
5 extend: 'Ext.fx.layout.card.Scroll',\r
6\r
7 alias: 'fx.layout.card.scrollcover',\r
8\r
9 onActiveItemChange: function(cardLayout, inItem, outItem, controller) {\r
10 var containerElement, containerSize, xy, animConfig,\r
11 inTranslate, outTranslate;\r
12\r
13 this.currentEventController = controller;\r
14 this.inItem = inItem;\r
15\r
16 if (inItem && outItem) {\r
17 containerElement = this.getLayout().container.innerElement;\r
18\r
19 containerSize = containerElement.getSize();\r
20 xy = this.calculateXY(containerSize);\r
21 animConfig = {\r
22 easing: this.getEasing(),\r
23 duration: this.getDuration()\r
24 };\r
25\r
26 inItem.renderElement.dom.style.setProperty('visibility', 'hidden', 'important');\r
27 inTranslate = inItem.setTranslatable(true).getTranslatable();\r
28 outTranslate = outItem.setTranslatable(true).getTranslatable();\r
29\r
30 outTranslate.translate({ x: 0, y: 0});\r
31 inTranslate.translate({ x: xy.left, y: xy.top});\r
32 inTranslate.getWrapper().dom.style.setProperty('z-index', '100', 'important');\r
33 inItem.show();\r
34\r
35 inTranslate.on({\r
36 animationstart: 'onInAnimationStart',\r
37 animationend: 'onInAnimationEnd',\r
38 scope: this\r
39 });\r
40 inTranslate.translateAnimated({ x: 0, y: 0}, animConfig);\r
41\r
42 controller.pause();\r
43 }\r
44 },\r
45\r
46 onInAnimationStart: function() {\r
47 this.inItem.renderElement.dom.style.removeProperty('visibility');\r
48 },\r
49\r
50 onInAnimationEnd: function() {\r
51 this.inItem.getTranslatable().getWrapper().dom.style.removeProperty('z-index'); // Remove this when we can remove translatable\r
52 this.currentEventController.resume();\r
53 }\r
54});\r