package com.googlecode.mgwt.ui.client.util.impl;
import com.google.gwt.dom.client.Element;
public class CssUtilIE9Impl implements CssUtilImpl {
@Override
public void translate(Element el, int x, int y) {
// IE9 sucks really hard
// as soon as we get an whitespace into the translate it does not work
// anymore:
// translate(1px,2px) -> working
// translate(1px,2px ) -> NOT working
// please ms stop making browsers
el.getStyle().setProperty("msTransform", "translate(" + x + "px," + y + "px)");
}
@Override
public native void setDelay(Element el, int milliseconds) /*-{
el.style.msTransitionDelay = milliseconds + "ms";
}-*/;
@Override
public native void setOpacity(Element el, double opacity) /*-{
el.style.opacity = opacity;
}-*/;
@Override
public native void setDuration(Element el, int time) /*-{
el.style.msTransitionDuration = time + "ms";
}-*/;
@Override
public void rotate(Element el, int degree) {
el.getStyle().setProperty("MsTransform", "rotate(" + degree + "deg)");
}
@Override
public boolean hasTransform() {
// TODO this is okay for IE9 review this for IE10
return false;
}
@Override
public boolean hasTransistionEndEvent() {
// TODO IE9 no support IE10 should be okay!
return false;
}
@Override
public boolean has3d() {
return false;
}
@Override
public String getTransformProperty() {
// TODO Auto-generated method stub
return null;
}
@Override
public int[] getPositionFromTransForm(Element element) {
throw new RuntimeException("no ie support!");
}
@Override
public native int getTopPositionFromCssPosition(Element element) /*-{
return getComputedStyle(element.scroller, null).top
.replace(/[^0-9-]/g, '') * 1;
}-*/;
@Override
public native int getLeftPositionFromCssPosition(Element element)/*-{
return getComputedStyle(that.scroller, null).left.replace(/[^0-9-]/g,
'') * 1;
}-*/;
@Override
public void resetTransform(Element element) {
element.getStyle().setProperty("msTransform", "");
}
@Override
public void setTransistionProperty(Element element, String string) {
// TODO Auto-generated method stub
}
@Override
public void setTransFormOrigin(Element element, int x, int y) {
// TODO Auto-generated method stub
}
@Override
public void setTransistionTimingFunction(Element element, String string) {
// TODO Auto-generated method stub
}
@Override
public void setTranslateAndZoom(Element element, int x, int y, double scale) {
// TODO Auto-generated method stub
}
@Override
public void translatePercent(Element el, double x, double y) {
el.getStyle().setProperty("msTransform", "translate(" + x + "%," + y + "%)");
}
}