/**
* @private
*
* CSS Transform implementation
*/
Ext.define('Ext.util.translatable.CssTransform', {
extend: 'Ext.util.translatable.Dom',
alias: 'translatable.csstransform', // also configures Factoryable
isCssTransform: true,
posRegex: /(\d+)px[^\d]*(\d+)px/,
doTranslate: function(x, y) {
this.getElement().translate(x, y);
},
syncPosition: function() {
var pos = this.posRegex.exec(this.getElement().dom.style.tranform);
if (pos) {
this.x = parseFloat(pos[1]);
this.y = parseFloat(pos[2]);
}
return [this.x, this.y];
},
destroy: function() {
var element = this.getElement();
if (element && !element.destroyed) {
element.dom.style.webkitTransform = null;
}
this.callParent();
}
});