discord-jadx/app/src/main/java/androidx/core/view/ContentInfoCompat.java

206 lines
6.3 KiB
Java

package androidx.core.view;
import android.content.ClipData;
import android.content.ClipDescription;
import android.net.Uri;
import android.os.Bundle;
import android.util.Pair;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RestrictTo;
import androidx.core.util.Preconditions;
import androidx.core.util.Predicate;
import b.d.b.a.a;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.List;
/* loaded from: classes.dex */
public final class ContentInfoCompat {
public static final int FLAG_CONVERT_TO_PLAIN_TEXT = 1;
public static final int SOURCE_APP = 0;
public static final int SOURCE_CLIPBOARD = 1;
public static final int SOURCE_DRAG_AND_DROP = 3;
public static final int SOURCE_INPUT_METHOD = 2;
@NonNull
public final ClipData mClip;
@Nullable
public final Bundle mExtras;
public final int mFlags;
@Nullable
public final Uri mLinkUri;
public final int mSource;
/* loaded from: classes.dex */
public static final class Builder {
@NonNull
public ClipData mClip;
@Nullable
public Bundle mExtras;
public int mFlags;
@Nullable
public Uri mLinkUri;
public int mSource;
public Builder(@NonNull ClipData clipData, int i) {
this.mClip = clipData;
this.mSource = i;
}
public Builder(@NonNull ContentInfoCompat contentInfoCompat) {
this.mClip = contentInfoCompat.mClip;
this.mSource = contentInfoCompat.mSource;
this.mFlags = contentInfoCompat.mFlags;
this.mLinkUri = contentInfoCompat.mLinkUri;
this.mExtras = contentInfoCompat.mExtras;
}
@NonNull
public ContentInfoCompat build() {
return new ContentInfoCompat(this);
}
@NonNull
public Builder setClip(@NonNull ClipData clipData) {
this.mClip = clipData;
return this;
}
@NonNull
public Builder setExtras(@Nullable Bundle bundle) {
this.mExtras = bundle;
return this;
}
@NonNull
public Builder setFlags(int i) {
this.mFlags = i;
return this;
}
@NonNull
public Builder setLinkUri(@Nullable Uri uri) {
this.mLinkUri = uri;
return this;
}
@NonNull
public Builder setSource(int i) {
this.mSource = i;
return this;
}
}
@Retention(RetentionPolicy.SOURCE)
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
/* loaded from: classes.dex */
public @interface Flags {
}
@Retention(RetentionPolicy.SOURCE)
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
/* loaded from: classes.dex */
public @interface Source {
}
public ContentInfoCompat(Builder builder) {
this.mClip = (ClipData) Preconditions.checkNotNull(builder.mClip);
this.mSource = Preconditions.checkArgumentInRange(builder.mSource, 0, 3, "source");
this.mFlags = Preconditions.checkFlagsArgument(builder.mFlags, 1);
this.mLinkUri = builder.mLinkUri;
this.mExtras = builder.mExtras;
}
private static ClipData buildClipData(ClipDescription clipDescription, List<ClipData.Item> list) {
ClipData clipData = new ClipData(new ClipDescription(clipDescription), list.get(0));
for (int i = 1; i < list.size(); i++) {
clipData.addItem(list.get(i));
}
return clipData;
}
@NonNull
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
public static String flagsToString(int i) {
return (i & 1) != 0 ? "FLAG_CONVERT_TO_PLAIN_TEXT" : String.valueOf(i);
}
@NonNull
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
public static String sourceToString(int i) {
return i != 0 ? i != 1 ? i != 2 ? i != 3 ? String.valueOf(i) : "SOURCE_DRAG_AND_DROP" : "SOURCE_INPUT_METHOD" : "SOURCE_CLIPBOARD" : "SOURCE_APP";
}
@NonNull
public ClipData getClip() {
return this.mClip;
}
@Nullable
public Bundle getExtras() {
return this.mExtras;
}
public int getFlags() {
return this.mFlags;
}
@Nullable
public Uri getLinkUri() {
return this.mLinkUri;
}
public int getSource() {
return this.mSource;
}
@NonNull
public Pair<ContentInfoCompat, ContentInfoCompat> partition(@NonNull Predicate<ClipData.Item> predicate) {
ContentInfoCompat contentInfoCompat = null;
if (this.mClip.getItemCount() == 1) {
boolean test = predicate.test(this.mClip.getItemAt(0));
ContentInfoCompat contentInfoCompat2 = test ? this : null;
if (!test) {
contentInfoCompat = this;
}
return Pair.create(contentInfoCompat2, contentInfoCompat);
}
ArrayList arrayList = new ArrayList();
ArrayList arrayList2 = new ArrayList();
for (int i = 0; i < this.mClip.getItemCount(); i++) {
ClipData.Item itemAt = this.mClip.getItemAt(i);
if (predicate.test(itemAt)) {
arrayList.add(itemAt);
} else {
arrayList2.add(itemAt);
}
}
return arrayList.isEmpty() ? Pair.create(null, this) : arrayList2.isEmpty() ? Pair.create(this, null) : Pair.create(new Builder(this).setClip(buildClipData(this.mClip.getDescription(), arrayList)).build(), new Builder(this).setClip(buildClipData(this.mClip.getDescription(), arrayList2)).build());
}
@NonNull
public String toString() {
String str;
StringBuilder R = a.R("ContentInfoCompat{clip=");
R.append(this.mClip.getDescription());
R.append(", source=");
R.append(sourceToString(this.mSource));
R.append(", flags=");
R.append(flagsToString(this.mFlags));
String str2 = "";
if (this.mLinkUri == null) {
str = str2;
} else {
StringBuilder R2 = a.R(", hasLinkUri(");
R2.append(this.mLinkUri.toString().length());
R2.append(")");
str = R2.toString();
}
R.append(str);
if (this.mExtras != null) {
str2 = ", hasExtras";
}
return a.H(R, str2, "}");
}
}