TaskViewTransform.java revision b5ddfc375616bf7dbe9f4ff85ad124f02cc5990f
1cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root/* 2cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * Copyright (C) 2014 The Android Open Source Project 3cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * 4cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * Licensed under the Apache License, Version 2.0 (the "License"); 5cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * you may not use this file except in compliance with the License. 6cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * You may obtain a copy of the License at 7cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * 8cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * http://www.apache.org/licenses/LICENSE-2.0 9cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * 10cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * Unless required by applicable law or agreed to in writing, software 11cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * distributed under the License is distributed on an "AS IS" BASIS, 12cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * See the License for the specific language governing permissions and 14cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root * limitations under the License. 15cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root */ 16cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 17cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Rootpackage com.android.systemui.recents.views; 18cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 19cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Rootimport android.graphics.Rect; 20cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 21cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 22cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root/* The transform state for a task view */ 23cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Rootpublic class TaskViewTransform { 24cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public int translationY = 0; 25cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public int translationZ = 0; 26cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public float scale = 1f; 27cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public float alpha = 1f; 28cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public float dismissAlpha = 1f; 29cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public boolean visible = false; 30cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public Rect rect = new Rect(); 31cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root float t; 32cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 33cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public TaskViewTransform() { 34cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root // Do nothing 35cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 36cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 37cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public TaskViewTransform(TaskViewTransform o) { 38cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root translationY = o.translationY; 39cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root translationZ = o.translationZ; 40cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root scale = o.scale; 41cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root alpha = o.alpha; 42cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root dismissAlpha = o.dismissAlpha; 43cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root visible = o.visible; 44cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root rect.set(o.rect); 45cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root t = o.t; 46cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 47cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 48cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root /** Convenience functions to compare against current property values */ 49cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public boolean hasAlphaChangedFrom(float v) { 50cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root return (Float.compare(alpha, v) != 0); 51cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 52cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public boolean hasDismissAlphaChangedFrom(float v) { 53cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root return (Float.compare(dismissAlpha, v) != 0); 54cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 55cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public boolean hasScaleChangedFrom(float v) { 56cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root return (Float.compare(scale, v) != 0); 57cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 58cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public boolean hasTranslationYChangedFrom(float v) { 59cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root return (Float.compare(translationY, v) != 0); 60cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 61cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public boolean hasTranslationZChangedFrom(float v) { 62cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root return (Float.compare(translationZ, v) != 0); 63cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 64cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root 65cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root @Override 66cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root public String toString() { 67cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root return "TaskViewTransform y: " + translationY + " z: " + translationZ + " scale: " + scale + 68cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root " alpha: " + alpha + " visible: " + visible + " rect: " + rect + 69cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root " dismissAlpha: " + dismissAlpha; 70cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root } 71cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root} 72cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96aKenny Root