Files
Lawnchair/src/com/android/launcher3/pageindicators/PageIndicator.java
T
Sunny Goyal a5ead45967 Simplifying some page indicator dots attributes so that it can
be easily modularized

> Moving the color configuration to xml
> Moving auto-hide logic to a subclass as it doesn't
  need to be in the main library

Bug: 274011949
Test: Verified on device
Change-Id: Icf7bd5d1cbde3daa9441f2af51f98a931bcd6ee2
2023-03-16 15:57:06 -07:00

62 lines
1.7 KiB
Java

/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.launcher3.pageindicators;
import android.animation.TimeInterpolator;
import android.view.View;
import com.android.launcher3.anim.PropertySetter;
/**
* Base class for a page indicator.
*/
public interface PageIndicator {
void setScroll(int currentScroll, int totalScroll);
void setActiveMarker(int activePage);
void setMarkersCount(int numMarkers);
/**
* Sets the flag if the Page Indicator should autohide.
*/
default void setShouldAutoHide(boolean shouldAutoHide) {
// No-op by default
}
/**
* Pauses all currently running animations.
*/
default void pauseAnimations() {
// No-op by default
}
/**
* Force-ends all currently running or paused animations.
*/
default void skipAnimationsToEnd() {
// No-op by default
}
/**
* Sets the provided alpha on the pageIndicator
*/
default void setAlpha(PropertySetter setter, float alpha, TimeInterpolator interpolator) {
setter.setViewAlpha((View) this, alpha, interpolator);
}
}