1376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen/* 2376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * Copyright (C) 2015 The Android Open Source Project 3376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * 4376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * Licensed under the Apache License, Version 2.0 (the "License"); 5376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * you may not use this file except in compliance with the License. 6376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * You may obtain a copy of the License at 7376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * 8376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * http://www.apache.org/licenses/LICENSE-2.0 9376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * 10376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * Unless required by applicable law or agreed to in writing, software 11376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * distributed under the License is distributed on an "AS IS" BASIS, 12376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * See the License for the specific language governing permissions and 14376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * limitations under the License. 15376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen */ 16376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 17376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenpackage android.support.v4.view.animation; 18376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 19376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenimport android.graphics.Path; 20376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenimport android.view.animation.Interpolator; 21376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenimport android.view.animation.PathInterpolator; 22376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 23376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen/** 24376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * API 21+ implementation for path interpolator compatibility. 25376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen */ 26376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenclass PathInterpolatorCompatApi21 { 27376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 28376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen private PathInterpolatorCompatApi21() { 29376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen // prevent instantiation 30376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen } 31376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 32376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen public static Interpolator create(Path path) { 33376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen return new PathInterpolator(path); 34376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen } 35376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 36376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen public static Interpolator create(float controlX, float controlY) { 37376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen return new PathInterpolator(controlX, controlY); 38376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen } 39376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen 40376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen public static Interpolator create(float controlX1, float controlY1, 41376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen float controlX2, float controlY2) { 42376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen return new PathInterpolator(controlX1, controlY1, controlX2, controlY2); 43376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen } 44376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen} 45