Replace property copy logic when add Keyframe to writing related neighborhood keyfram's css property when build css
Change-Id: Idbe6a392fea90aa818c9d13cb56a1398d91149af
Signed-off-by: seongwon.shim <seongwon.shim@samsung.com>
}
} else if (frameLink != null) {// set default value
if (isTransformRelatedProperties(key)) {
- transformRelatedProperties.put(key, widgetProperties.get(key));
+ String value = ((AnimatorKeyframe)getParent()).getPropertyInPreviousFrames(key, this);
+ if(value != null) {
+ transformRelatedProperties.put(key, value);
+ } else {
+ transformRelatedProperties.put(key, widgetProperties.get(key));
+ }
} else {
String value = widgetProperties.get(key);
if (value != null) {
frame.addFrameTime(calcTime);
}
}
+
+ public String getPropertyInPreviousFrames(String key,
+ AnimatorFrame animatorFrame) {
+
+ AnimatorFrame previousFrame = null;
+ if(animatorFrame != null)
+ previousFrame = (AnimatorFrame)getPrevChild(animatorFrame);
+ else {
+ previousFrame = getLastFrame();
+ }
+
+ while(previousFrame != null) {
+ if(previousFrame.containsKey(key))
+ return previousFrame.getProperty(key);
+ previousFrame = (AnimatorFrame)getPrevChild(previousFrame);
+ }
+
+ return ((AnimatorSelector)getParent()).getPropertyInPreviousFrames(key, this);
+ }
}
if (!selector.isExistKeyframe(keyframe)) {// case 1
selector.addChild(keyframe);
- copyPropertiesInLeftOrRightFrame(frame, keyframe);
+// copyPropertiesInLeftOrRightFrame(frame, keyframe);
} else {// case 2
findAnimatedPropertyAndSetInFrame(frame, keyframe);
}
* @param frame
* @param keyframe
*/
- private void copyPropertiesInLeftOrRightFrame(AnimatorFrame frame, AnimatorKeyframe keyframe) {
+ /*private void copyPropertiesInLeftOrRightFrame(AnimatorFrame frame, AnimatorKeyframe keyframe) {
AnimatorSelector selector = (AnimatorSelector) keyframe.getParent();
AnimatorKeyframe previousKeyframe = (AnimatorKeyframe) selector.getPrevChild(keyframe);
AnimatorKeyframe nextKeyframe = (AnimatorKeyframe) selector.getNextChild(keyframe);
for (String key : fromProperties.keySet()) {
toProperties.put(key, fromProperties.get(key));
}
- }
+ }*/
/**
* find animated properties
for (String key : animatedProperties) {
if (key.indexOf("color") >= 0) // TODO remove this after fixing color property
continue;
+ if(key.indexOf("timing-function") >=0) {
+// frame.addProperty(key, easingProperty);
+ continue;
+ }
String start = previousFrameProperties.get(key);
String end = nextFrameProperties.get(key);
String interpolatedValue =
return endTime;
}
+
+ public String getPropertyInPreviousFrames(String key, AnimatorKeyframe keyframe) {
+
+ AnimatorKeyframe previousKeyframeFrame = (AnimatorKeyframe)getPrevChild(keyframe);
+ while(previousKeyframeFrame != null) {
+ String value = previousKeyframeFrame.getPropertyInPreviousFrames(key, null);
+ if(value != null)
+ return value;
+ previousKeyframeFrame = (AnimatorKeyframe)getPrevChild(previousKeyframeFrame);
+ }
+
+ return null;
+ }
}
import org.tizen.webuibuilder.animator.model.AnimatorKeyframe;
import org.tizen.webuibuilder.animator.model.AnimatorModelEvent;
import org.tizen.webuibuilder.animator.model.AnimatorModelManager;
+import org.tizen.webuibuilder.animator.model.AnimatorSelector;
import org.tizen.webuibuilder.animator.utils.AnimatorUtils;
((AnimatorFrame) keyframe.getChild(0)).setFrameTime(0.0);
((AnimatorFrame) keyframe.getChild(size - 1)).setFrameTime(afterDuration);
+
+ ((AnimatorSelector)keyframe.getParent()).removeChild(keyframe);
+ ((AnimatorSelector)keyframe.getParent()).addChild(keyframe);
AnimatorModelManager animatorModelManager =
AnimatorModelManager.getInstance(AnimatorUtils.getAppManager());
((AnimatorFrame) keyframe.getChild(0)).setFrameTime(0.0);
((AnimatorFrame) keyframe.getChild(size - 1)).setFrameTime(beforeDuration);
+
+ ((AnimatorSelector)keyframe.getParent()).removeChild(keyframe);
+ ((AnimatorSelector)keyframe.getParent()).addChild(keyframe);
AnimatorModelManager animatorModelManager =
AnimatorModelManager.getInstance(AnimatorUtils.getAppManager());