Use -Xjvm-default=all instead of -Xjvm-default=enable or @JvmDefault
The @JvmDefault annotation and -Xjvm-default=enable argument are both removed from kotlinc 1.9.0 in favor of -Xjvm-default=all. Bug: 291335478 Test: builds Change-Id: I473e578b92482fbd6c8812c4d32acc1a4c27a84a
This commit is contained in:
@@ -166,7 +166,7 @@ android_library {
|
||||
// *.kt sources are inside a filegroup.
|
||||
"kotlin-annotations",
|
||||
],
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
manifest: "AndroidManifest.xml",
|
||||
plugins: ["dagger2-compiler"],
|
||||
}
|
||||
|
||||
@@ -94,7 +94,6 @@ class FloatingContentCoordinator constructor() {
|
||||
* non-overlapping.
|
||||
* @return The new bounds for this content.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun calculateNewBoundsOnOverlap(
|
||||
overlappingContentBounds: Rect,
|
||||
otherContentBounds: List<Rect>
|
||||
|
||||
@@ -368,7 +368,6 @@ class DesktopModeTaskRepository {
|
||||
/**
|
||||
* Called when the active tasks change in desktop mode.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onActiveTasksChanged(displayId: Int) {}
|
||||
}
|
||||
|
||||
@@ -379,17 +378,15 @@ class DesktopModeTaskRepository {
|
||||
/**
|
||||
* Called when the desktop starts or stops showing freeform tasks.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onVisibilityChanged(displayId: Int, hasVisibleFreeformTasks: Boolean) {}
|
||||
|
||||
/**
|
||||
* Called when the desktop stashed status changes.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onStashedChanged(displayId: Int, stashed: Boolean) {}
|
||||
}
|
||||
}
|
||||
|
||||
private fun <T> Iterable<T>.toDumpString(): String {
|
||||
return joinToString(separator = ", ", prefix = "[", postfix = "]")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -61,7 +61,7 @@ android_test {
|
||||
"libstaticjvmtiagent",
|
||||
],
|
||||
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
|
||||
plugins: ["dagger2-compiler"],
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ android_app {
|
||||
platform_apis: true,
|
||||
privileged: true,
|
||||
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
|
||||
optimize: {
|
||||
proguard_compatibility: false,
|
||||
|
||||
@@ -70,5 +70,5 @@ android_app {
|
||||
|
||||
manifest: "AndroidManifest.xml",
|
||||
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
}
|
||||
|
||||
@@ -203,7 +203,7 @@ android_library {
|
||||
manifest: "AndroidManifest.xml",
|
||||
|
||||
javacflags: ["-Adagger.fastInit=enabled"],
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
|
||||
plugins: ["dagger2-compiler"],
|
||||
|
||||
@@ -394,7 +394,7 @@ android_library {
|
||||
"android.test.base",
|
||||
"android.test.mock",
|
||||
],
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
aaptflags: [
|
||||
"--extra-packages",
|
||||
"com.android.systemui",
|
||||
@@ -516,7 +516,7 @@ android_app {
|
||||
certificate: "platform",
|
||||
privileged: true,
|
||||
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
|
||||
dxflags: ["--multi-dex"],
|
||||
optimize: {
|
||||
|
||||
@@ -302,10 +302,9 @@ class ActivityLaunchAnimator(
|
||||
|
||||
interface Callback {
|
||||
/** Whether we are currently on the keyguard or not. */
|
||||
@JvmDefault fun isOnKeyguard(): Boolean = false
|
||||
fun isOnKeyguard(): Boolean = false
|
||||
|
||||
/** Hide the keyguard and animate using [runner]. */
|
||||
@JvmDefault
|
||||
fun hideKeyguardWithAnimation(runner: IRemoteAnimationRunner) {
|
||||
throw UnsupportedOperationException()
|
||||
}
|
||||
@@ -316,16 +315,16 @@ class ActivityLaunchAnimator(
|
||||
|
||||
interface Listener {
|
||||
/** Called when an activity launch animation started. */
|
||||
@JvmDefault fun onLaunchAnimationStart() {}
|
||||
fun onLaunchAnimationStart() {}
|
||||
|
||||
/**
|
||||
* Called when an activity launch animation is finished. This will be called if and only if
|
||||
* [onLaunchAnimationStart] was called earlier.
|
||||
*/
|
||||
@JvmDefault fun onLaunchAnimationEnd() {}
|
||||
fun onLaunchAnimationEnd() {}
|
||||
|
||||
/** Called when an activity launch animation made progress. */
|
||||
@JvmDefault fun onLaunchAnimationProgress(linearProgress: Float) {}
|
||||
fun onLaunchAnimationProgress(linearProgress: Float) {}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -44,5 +44,5 @@ android_test {
|
||||
"androidx.compose.ui_ui-test-manifest",
|
||||
],
|
||||
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
}
|
||||
|
||||
@@ -44,5 +44,5 @@ android_test {
|
||||
"androidx.compose.ui_ui-test-manifest",
|
||||
],
|
||||
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
}
|
||||
|
||||
@@ -48,5 +48,5 @@ android_library {
|
||||
],
|
||||
min_sdk_version: "current",
|
||||
plugins: ["dagger2-compiler"],
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ android_library {
|
||||
],
|
||||
min_sdk_version: "current",
|
||||
plugins: ["dagger2-compiler"],
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
}
|
||||
|
||||
java_library {
|
||||
|
||||
@@ -171,7 +171,6 @@ class KeyguardUnlockAnimationController @Inject constructor(
|
||||
* for the canned animation (if applicable) so interested parties can sync with it. If no
|
||||
* canned animation is playing, these are both 0.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onUnlockAnimationStarted(
|
||||
playingCannedAnimation: Boolean,
|
||||
isWakeAndUnlockNotFromDream: Boolean,
|
||||
@@ -184,7 +183,6 @@ class KeyguardUnlockAnimationController @Inject constructor(
|
||||
* The keyguard is no longer visible in this state and the app/launcher behind the keyguard
|
||||
* is now completely visible.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onUnlockAnimationFinished() {}
|
||||
}
|
||||
|
||||
|
||||
@@ -145,13 +145,10 @@ class PrivacyConfig @Inject constructor(
|
||||
}
|
||||
|
||||
interface Callback {
|
||||
@JvmDefault
|
||||
fun onFlagMicCameraChanged(flag: Boolean) {}
|
||||
|
||||
@JvmDefault
|
||||
fun onFlagLocationChanged(flag: Boolean) {}
|
||||
|
||||
@JvmDefault
|
||||
fun onFlagMediaProjectionChanged(flag: Boolean) {}
|
||||
}
|
||||
}
|
||||
@@ -216,7 +216,6 @@ class PrivacyItemController @Inject constructor(
|
||||
interface Callback : PrivacyConfig.Callback {
|
||||
fun onPrivacyItemsChanged(privacyItems: List<PrivacyItem>)
|
||||
|
||||
@JvmDefault
|
||||
fun onFlagAllChanged(flag: Boolean) {}
|
||||
}
|
||||
|
||||
|
||||
@@ -52,12 +52,12 @@ interface DisplayTracker {
|
||||
interface Callback {
|
||||
|
||||
/** Notifies that a display has been added. */
|
||||
@JvmDefault fun onDisplayAdded(displayId: Int) {}
|
||||
fun onDisplayAdded(displayId: Int) {}
|
||||
|
||||
/** Notifies that a display has been removed. */
|
||||
@JvmDefault fun onDisplayRemoved(displayId: Int) {}
|
||||
fun onDisplayRemoved(displayId: Int) {}
|
||||
|
||||
/** Notifies a display has been changed */
|
||||
@JvmDefault fun onDisplayChanged(displayId: Int) {}
|
||||
fun onDisplayChanged(displayId: Int) {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,7 +71,6 @@ interface UserTracker : UserContentResolverProvider, UserContextProvider {
|
||||
* Same as {@link onUserChanging(Int, Context, CountDownLatch)} but the latch will be
|
||||
* auto-decremented after the completion of this method.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onUserChanging(newUser: Int, userContext: Context) {}
|
||||
|
||||
/**
|
||||
@@ -82,7 +81,6 @@ interface UserTracker : UserContentResolverProvider, UserContextProvider {
|
||||
* user switch duration. When overriding this method, countDown() MUST be called on the
|
||||
* latch once execution is complete.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onUserChanging(newUser: Int, userContext: Context, latch: CountDownLatch) {
|
||||
onUserChanging(newUser, userContext)
|
||||
latch.countDown()
|
||||
@@ -93,13 +91,11 @@ interface UserTracker : UserContentResolverProvider, UserContextProvider {
|
||||
* Override this method to run things after the screen is unfrozen for the user switch.
|
||||
* Please see {@link #onUserChanging} if you need to hide jank.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onUserChanged(newUser: Int, userContext: Context) {}
|
||||
|
||||
/**
|
||||
* Notifies that the current user's profiles have changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onProfilesChanged(profiles: List<@JvmSuppressWildcards UserInfo>) {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,12 +29,12 @@ interface ShadeStateEvents {
|
||||
interface ShadeStateEventsListener {
|
||||
|
||||
/** Invoked when the notification panel starts or stops collapsing. */
|
||||
@JvmDefault fun onPanelCollapsingChanged(isCollapsing: Boolean) {}
|
||||
fun onPanelCollapsingChanged(isCollapsing: Boolean) {}
|
||||
|
||||
/**
|
||||
* Invoked when the notification panel starts or stops launching an [android.app.Activity].
|
||||
*/
|
||||
@JvmDefault fun onLaunchingActivityChanged(isLaunchingActivity: Boolean) {}
|
||||
fun onLaunchingActivityChanged(isLaunchingActivity: Boolean) {}
|
||||
|
||||
/**
|
||||
* Invoked when the "expand immediate" attribute changes.
|
||||
@@ -45,6 +45,6 @@ interface ShadeStateEvents {
|
||||
* Another example is when full QS is showing, and we swipe up from the bottom. Instead of
|
||||
* going to QQS, the panel fully collapses.
|
||||
*/
|
||||
@JvmDefault fun onExpandImmediateChanged(isExpandImmediateEnabled: Boolean) {}
|
||||
fun onExpandImmediateChanged(isExpandImmediateEnabled: Boolean) {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -553,7 +553,6 @@ class NotificationShadeDepthController @Inject constructor(
|
||||
*/
|
||||
fun onWallpaperZoomOutChanged(zoomOut: Float)
|
||||
|
||||
@JvmDefault
|
||||
fun onBlurRadiusChanged(blurRadius: Int) {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,6 @@ interface SignalCallback {
|
||||
*
|
||||
* @param wifiIndicators a box type containing enough information to properly draw a Wi-Fi icon
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setWifiIndicators(wifiIndicators: WifiIndicators) {}
|
||||
|
||||
/**
|
||||
@@ -42,7 +41,6 @@ interface SignalCallback {
|
||||
* NOTE: phones can have multiple subscriptions, so this [mobileDataIndicators] object should be
|
||||
* indexed based on its [subId][MobileDataIndicators.subId]
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setMobileDataIndicators(mobileDataIndicators: MobileDataIndicators) {}
|
||||
|
||||
/**
|
||||
@@ -51,7 +49,6 @@ interface SignalCallback {
|
||||
*
|
||||
* @param subs a [SubscriptionInfo] for each subscription that we know about
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setSubs(subs: List<@JvmSuppressWildcards SubscriptionInfo>) {}
|
||||
|
||||
/**
|
||||
@@ -63,7 +60,6 @@ interface SignalCallback {
|
||||
* @param show whether or not to show a "no sim" view
|
||||
* @param simDetected whether any SIM is detected or not
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setNoSims(show: Boolean, simDetected: Boolean) {}
|
||||
|
||||
/**
|
||||
@@ -72,7 +68,6 @@ interface SignalCallback {
|
||||
*
|
||||
* @param icon an [IconState] for the current ethernet status
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setEthernetIndicators(icon: IconState) {}
|
||||
|
||||
/**
|
||||
@@ -80,7 +75,6 @@ interface SignalCallback {
|
||||
*
|
||||
* @param icon an [IconState] for the current airplane mode status
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setIsAirplaneMode(icon: IconState) {}
|
||||
|
||||
/**
|
||||
@@ -88,7 +82,6 @@ interface SignalCallback {
|
||||
*
|
||||
* @param enabled the current mobile data feature ennabled state
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setMobileDataEnabled(enabled: Boolean) {}
|
||||
|
||||
/**
|
||||
@@ -97,7 +90,6 @@ interface SignalCallback {
|
||||
* @param noValidatedNetwork whether there is any validated network.
|
||||
* @param noNetworksAvailable whether there is any WiFi networks available.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setConnectivityStatus(
|
||||
noDefaultNetwork: Boolean,
|
||||
noValidatedNetwork: Boolean,
|
||||
@@ -109,7 +101,6 @@ interface SignalCallback {
|
||||
* @param statusIcon the icon for the call indicator
|
||||
* @param subId subscription ID for which to update the UI
|
||||
*/
|
||||
@JvmDefault
|
||||
fun setCallIndicator(statusIcon: IconState, subId: Int) {}
|
||||
}
|
||||
|
||||
|
||||
@@ -49,11 +49,10 @@ interface SystemStatusAnimationCallback {
|
||||
fun onSystemEventAnimationFinish(hasPersistentDot: Boolean): Animator? { return null }
|
||||
|
||||
// Best method name, change my mind
|
||||
@JvmDefault
|
||||
fun onSystemStatusAnimationTransitionToPersistentDot(contentDescription: String?): Animator? {
|
||||
return null
|
||||
}
|
||||
@JvmDefault fun onHidePersistentDot(): Animator? { return null }
|
||||
fun onHidePersistentDot(): Animator? { return null }
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -613,20 +613,20 @@ constructor(
|
||||
|
||||
interface WakeUpListener {
|
||||
/** Called whenever the notifications are fully hidden or shown */
|
||||
@JvmDefault fun onFullyHiddenChanged(isFullyHidden: Boolean) {}
|
||||
fun onFullyHiddenChanged(isFullyHidden: Boolean) {}
|
||||
|
||||
/**
|
||||
* Called whenever the pulseExpansion changes
|
||||
*
|
||||
* @param expandingChanged if the user has started or stopped expanding
|
||||
*/
|
||||
@JvmDefault fun onPulseExpansionChanged(expandingChanged: Boolean) {}
|
||||
fun onPulseExpansionChanged(expandingChanged: Boolean) {}
|
||||
|
||||
/**
|
||||
* Called when the animator started by [scheduleDelayedDozeAmountAnimation] begins running
|
||||
* after the start delay, or after it ends/is cancelled.
|
||||
*/
|
||||
@JvmDefault fun onDelayedDozeAmountAnimationRunning(running: Boolean) {}
|
||||
fun onDelayedDozeAmountAnimationRunning(running: Boolean) {}
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -27,37 +27,31 @@ interface Roundable {
|
||||
|
||||
/** Current top roundness */
|
||||
@get:FloatRange(from = 0.0, to = 1.0)
|
||||
@JvmDefault
|
||||
val topRoundness: Float
|
||||
get() = roundableState.topRoundness
|
||||
|
||||
/** Current bottom roundness */
|
||||
@get:FloatRange(from = 0.0, to = 1.0)
|
||||
@JvmDefault
|
||||
val bottomRoundness: Float
|
||||
get() = roundableState.bottomRoundness
|
||||
|
||||
/** Max radius in pixel */
|
||||
@JvmDefault
|
||||
val maxRadius: Float
|
||||
get() = roundableState.maxRadius
|
||||
|
||||
/** Current top corner in pixel, based on [topRoundness] and [maxRadius] */
|
||||
@JvmDefault
|
||||
val topCornerRadius: Float
|
||||
get() =
|
||||
if (roundableState.newHeadsUpAnimFlagEnabled) roundableState.topCornerRadius
|
||||
else topRoundness * maxRadius
|
||||
|
||||
/** Current bottom corner in pixel, based on [bottomRoundness] and [maxRadius] */
|
||||
@JvmDefault
|
||||
val bottomCornerRadius: Float
|
||||
get() =
|
||||
if (roundableState.newHeadsUpAnimFlagEnabled) roundableState.bottomCornerRadius
|
||||
else bottomRoundness * maxRadius
|
||||
|
||||
/** Get and update the current radii */
|
||||
@JvmDefault
|
||||
val updatedRadii: FloatArray
|
||||
get() =
|
||||
roundableState.radiiBuffer.also { radii ->
|
||||
@@ -80,7 +74,6 @@ interface Roundable {
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
* @return Whether the roundness was changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestTopRoundness(
|
||||
@FloatRange(from = 0.0, to = 1.0) value: Float,
|
||||
sourceType: SourceType,
|
||||
@@ -125,7 +118,6 @@ interface Roundable {
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
* @return Whether the roundness was changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestTopRoundness(
|
||||
@FloatRange(from = 0.0, to = 1.0) value: Float,
|
||||
sourceType: SourceType,
|
||||
@@ -149,7 +141,6 @@ interface Roundable {
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
* @return Whether the roundness was changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestBottomRoundness(
|
||||
@FloatRange(from = 0.0, to = 1.0) value: Float,
|
||||
sourceType: SourceType,
|
||||
@@ -194,7 +185,6 @@ interface Roundable {
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
* @return Whether the roundness was changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestBottomRoundness(
|
||||
@FloatRange(from = 0.0, to = 1.0) value: Float,
|
||||
sourceType: SourceType,
|
||||
@@ -219,7 +209,6 @@ interface Roundable {
|
||||
* @param animate true if it should animate to that value.
|
||||
* @return Whether the roundness was changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestRoundness(
|
||||
@FloatRange(from = 0.0, to = 1.0) top: Float,
|
||||
@FloatRange(from = 0.0, to = 1.0) bottom: Float,
|
||||
@@ -246,7 +235,6 @@ interface Roundable {
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
* @return Whether the roundness was changed.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestRoundness(
|
||||
@FloatRange(from = 0.0, to = 1.0) top: Float,
|
||||
@FloatRange(from = 0.0, to = 1.0) bottom: Float,
|
||||
@@ -270,7 +258,6 @@ interface Roundable {
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
* @param animate true if it should animate to that value.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestRoundnessReset(sourceType: SourceType, animate: Boolean) {
|
||||
requestRoundness(top = 0f, bottom = 0f, sourceType = sourceType, animate = animate)
|
||||
}
|
||||
@@ -284,19 +271,16 @@ interface Roundable {
|
||||
*
|
||||
* @param sourceType the source from which the request for roundness comes.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun requestRoundnessReset(sourceType: SourceType) {
|
||||
requestRoundnessReset(sourceType = sourceType, animate = roundableState.targetView.isShown)
|
||||
}
|
||||
|
||||
/** Apply the roundness changes, usually means invalidate the [RoundableState.targetView]. */
|
||||
@JvmDefault
|
||||
fun applyRoundnessAndInvalidate() {
|
||||
roundableState.targetView.invalidate()
|
||||
}
|
||||
|
||||
/** @return true if top or bottom roundness is not zero. */
|
||||
@JvmDefault
|
||||
fun hasRoundedCorner(): Boolean {
|
||||
return topRoundness != 0f || bottomRoundness != 0f
|
||||
}
|
||||
@@ -307,7 +291,6 @@ interface Roundable {
|
||||
*
|
||||
* This method reuses the previous [radii] for performance reasons.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun updateRadii(
|
||||
topCornerRadius: Float,
|
||||
bottomCornerRadius: Float,
|
||||
|
||||
@@ -23,7 +23,6 @@ import android.os.UserHandle
|
||||
* changes.
|
||||
*/
|
||||
interface UserAwareController {
|
||||
@JvmDefault
|
||||
fun changeUser(newUser: UserHandle) {}
|
||||
|
||||
val currentUserId: Int
|
||||
|
||||
@@ -33,7 +33,7 @@ android_library {
|
||||
"dagger2",
|
||||
"jsr330",
|
||||
],
|
||||
kotlincflags: ["-Xjvm-default=enable"],
|
||||
kotlincflags: ["-Xjvm-default=all"],
|
||||
java_version: "1.8",
|
||||
sdk_version: "current",
|
||||
min_sdk_version: "current",
|
||||
|
||||
@@ -35,14 +35,12 @@ interface UnfoldTransitionProgressProvider : CallbackController<TransitionProgre
|
||||
|
||||
interface TransitionProgressListener {
|
||||
/** Called when transition is started */
|
||||
@JvmDefault
|
||||
fun onTransitionStarted() {}
|
||||
|
||||
/**
|
||||
* Called whenever transition progress is updated, [progress] is a value of the animation
|
||||
* where 0 is fully folded, 1 is fully unfolded
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onTransitionProgress(@FloatRange(from = 0.0, to = 1.0) progress: Float) {}
|
||||
|
||||
/**
|
||||
@@ -51,11 +49,9 @@ interface UnfoldTransitionProgressProvider : CallbackController<TransitionProgre
|
||||
* For example, in [PhysicsBasedUnfoldTransitionProgressProvider] this could happen when the
|
||||
* animation is not tied to the hinge angle anymore and it is about to run fixed animation.
|
||||
*/
|
||||
@JvmDefault
|
||||
fun onTransitionFinishing() {}
|
||||
|
||||
/** Called when transition is completely finished */
|
||||
@JvmDefault
|
||||
fun onTransitionFinished() {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,9 +31,9 @@ interface FoldStateProvider : CallbackController<FoldUpdatesListener> {
|
||||
val isFinishedOpening: Boolean
|
||||
|
||||
interface FoldUpdatesListener {
|
||||
@JvmDefault fun onHingeAngleUpdate(@FloatRange(from = 0.0, to = 180.0) angle: Float) {}
|
||||
@JvmDefault fun onFoldUpdate(@FoldUpdate update: Int) {}
|
||||
@JvmDefault fun onUnfoldedScreenAvailable() {}
|
||||
fun onHingeAngleUpdate(@FloatRange(from = 0.0, to = 180.0) angle: Float) {}
|
||||
fun onFoldUpdate(@FoldUpdate update: Int) {}
|
||||
fun onUnfoldedScreenAvailable() {}
|
||||
}
|
||||
|
||||
@IntDef(
|
||||
|
||||
Reference in New Issue
Block a user