Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

95 lines
5.9 KiB
Plaintext

// Signature format: 4.0
package me.saket.telephoto.zoomable {
@androidx.compose.runtime.Immutable @dev.drewhamilton.poko.Poko public final class ZoomSpec {
ctor public ZoomSpec(optional float maxZoomFactor, optional boolean preventOverOrUnderZoom);
method public float getMaxZoomFactor();
method public boolean getPreventOverOrUnderZoom();
property public final float maxZoomFactor;
property public final boolean preventOverOrUnderZoom;
}
public interface ZoomableContentLocation {
method public androidx.compose.ui.geometry.Rect location(long layoutSize, androidx.compose.ui.unit.LayoutDirection direction);
method public long size(long layoutSize);
field public static final me.saket.telephoto.zoomable.ZoomableContentLocation.Companion Companion;
}
public static final class ZoomableContentLocation.Companion {
method @androidx.compose.runtime.Stable public me.saket.telephoto.zoomable.ZoomableContentLocation scaledInsideAndCenterAligned(androidx.compose.ui.geometry.Size? size);
method @androidx.compose.runtime.Stable public me.saket.telephoto.zoomable.ZoomableContentLocation scaledToFitAndCenterAligned(androidx.compose.ui.geometry.Size? size);
method @androidx.compose.runtime.Stable public me.saket.telephoto.zoomable.ZoomableContentLocation unscaledAndTopLeftAligned(androidx.compose.ui.geometry.Size? size);
method @Deprecated public me.saket.telephoto.zoomable.ZoomableContentLocation unscaledAndTopStartAligned(androidx.compose.ui.geometry.Size? size);
}
public static final class ZoomableContentLocation.SameAsLayoutBounds implements me.saket.telephoto.zoomable.ZoomableContentLocation {
method public androidx.compose.ui.geometry.Rect location(long layoutSize, androidx.compose.ui.unit.LayoutDirection direction);
method public long size(long layoutSize);
field public static final me.saket.telephoto.zoomable.ZoomableContentLocation.SameAsLayoutBounds INSTANCE;
}
public static final class ZoomableContentLocation.Unspecified implements me.saket.telephoto.zoomable.ZoomableContentLocation {
method public Void location(long layoutSize, androidx.compose.ui.unit.LayoutDirection direction);
method public long size(long layoutSize);
field public static final me.saket.telephoto.zoomable.ZoomableContentLocation.Unspecified INSTANCE;
}
@androidx.compose.runtime.Immutable public interface ZoomableContentTransformation {
method public androidx.compose.ui.geometry.Offset? getCentroid();
method public long getContentSize();
method public long getOffset();
method public float getRotationZ();
method public long getScale();
method public me.saket.telephoto.zoomable.ZoomableContentTransformation.ScaleMetadata getScaleMetadata();
method public default long getTransformOrigin();
method public boolean isSpecified();
method public default boolean isUnspecified();
property public abstract androidx.compose.ui.geometry.Offset? centroid;
property public abstract long contentSize;
property public abstract boolean isSpecified;
property public default boolean isUnspecified;
property public abstract long offset;
property public abstract float rotationZ;
property public abstract long scale;
property public abstract me.saket.telephoto.zoomable.ZoomableContentTransformation.ScaleMetadata scaleMetadata;
property public default long transformOrigin;
}
public static interface ZoomableContentTransformation.ScaleMetadata {
method public long getInitialScale();
method public float getUserZoom();
property public abstract long initialScale;
property public abstract float userZoom;
}
public final class ZoomableKt {
method public static androidx.compose.ui.Modifier zoomable(androidx.compose.ui.Modifier, me.saket.telephoto.zoomable.ZoomableState state, optional boolean enabled, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Offset,kotlin.Unit>? onClick, optional kotlin.jvm.functions.Function1<? super androidx.compose.ui.geometry.Offset,kotlin.Unit>? onLongClick, optional boolean clipToBounds);
}
@androidx.compose.runtime.Stable public sealed interface ZoomableState {
method public boolean getAutoApplyTransformations();
method public androidx.compose.ui.Alignment getContentAlignment();
method public androidx.compose.ui.layout.ContentScale getContentScale();
method public me.saket.telephoto.zoomable.ZoomableContentTransformation getContentTransformation();
method public androidx.compose.ui.geometry.Rect getTransformedContentBounds();
method @FloatRange(from=0.0, to=1.0) public Float? getZoomFraction();
method public suspend Object? resetZoom(optional boolean withAnimation, optional kotlin.coroutines.Continuation<? super kotlin.Unit>);
method public void setAutoApplyTransformations(boolean);
method public void setContentAlignment(androidx.compose.ui.Alignment);
method public suspend Object? setContentLocation(me.saket.telephoto.zoomable.ZoomableContentLocation location, kotlin.coroutines.Continuation<? super kotlin.Unit>);
method public void setContentScale(androidx.compose.ui.layout.ContentScale);
property public abstract boolean autoApplyTransformations;
property public abstract androidx.compose.ui.Alignment contentAlignment;
property public abstract androidx.compose.ui.layout.ContentScale contentScale;
property public abstract me.saket.telephoto.zoomable.ZoomableContentTransformation contentTransformation;
property public abstract androidx.compose.ui.geometry.Rect transformedContentBounds;
property @FloatRange(from=0.0, to=1.0) public abstract Float? zoomFraction;
}
public final class ZoomableStateKt {
method @androidx.compose.runtime.Composable public static me.saket.telephoto.zoomable.ZoomableState rememberZoomableState(optional me.saket.telephoto.zoomable.ZoomSpec zoomSpec, optional boolean autoApplyTransformations);
}
}