Update Glide to use ksp, drop kapt.

Resolves #13381
This commit is contained in:
Jameson Williams
2024-01-24 02:54:09 -06:00
committed by Nicholas Tinsley
parent aa33fd44b8
commit ec96b4e3aa
132 changed files with 755 additions and 679 deletions

View File

@@ -15,11 +15,11 @@ import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import com.annimon.stream.Stream;
import com.bumptech.glide.RequestManager;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.contactshare.Contact.Phone;
import org.thoughtcrime.securesms.mms.GlideRequests;
import java.util.ArrayList;
import java.util.List;
@@ -31,16 +31,16 @@ import static org.thoughtcrime.securesms.contactshare.Contact.PostalAddress;
class ContactFieldAdapter extends RecyclerView.Adapter<ContactFieldAdapter.ContactFieldViewHolder> {
private final Locale locale;
private final boolean selectable;
private final List<Field> fields;
private final GlideRequests glideRequests;
private final Locale locale;
private final boolean selectable;
private final List<Field> fields;
private final RequestManager requestManager;
public ContactFieldAdapter(@NonNull Locale locale, @NonNull GlideRequests glideRequests, boolean selectable) {
this.locale = locale;
this.glideRequests = glideRequests;
this.selectable = selectable;
this.fields = new ArrayList<>();
public ContactFieldAdapter(@NonNull Locale locale, @NonNull RequestManager requestManager, boolean selectable) {
this.locale = locale;
this.requestManager = requestManager;
this.selectable = selectable;
this.fields = new ArrayList<>();
}
@Override
@@ -50,7 +50,7 @@ class ContactFieldAdapter extends RecyclerView.Adapter<ContactFieldAdapter.Conta
@Override
public void onBindViewHolder(@NonNull ContactFieldViewHolder holder, int position) {
holder.bind(fields.get(position), glideRequests, selectable);
holder.bind(fields.get(position), requestManager, selectable);
}
@Override
@@ -98,7 +98,7 @@ class ContactFieldAdapter extends RecyclerView.Adapter<ContactFieldAdapter.Conta
checkBox = itemView.findViewById(R.id.contact_field_checkbox);
}
void bind(@NonNull Field field, @NonNull GlideRequests glideRequests, boolean selectable) {
void bind(@NonNull Field field, @NonNull RequestManager requestManager, boolean selectable) {
value.setMaxLines(field.maxLines);
value.setText(field.value);
label.setText(field.label);
@@ -106,7 +106,7 @@ class ContactFieldAdapter extends RecyclerView.Adapter<ContactFieldAdapter.Conta
if (field.iconUri != null) {
avatar.setVisibility(View.VISIBLE);
glideRequests.load(field.iconUri)
requestManager.load(field.iconUri)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true)
.circleCrop()

View File

@@ -20,9 +20,10 @@ import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.Glide;
import org.thoughtcrime.securesms.PassphraseRequiredActivity;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.util.DynamicLanguage;
import org.thoughtcrime.securesms.util.DynamicNoActionBarTheme;
import org.thoughtcrime.securesms.util.DynamicTheme;
@@ -89,7 +90,7 @@ public class ContactShareEditActivity extends PassphraseRequiredActivity impleme
Material3OnScrollHelper onScrollHelper = new Material3OnScrollHelper(this, Collections.singletonList(toolbar), Collections.emptyList(), this);
onScrollHelper.attach(contactList);
ContactShareEditAdapter contactAdapter = new ContactShareEditAdapter(GlideApp.with(this), dynamicLanguage.getCurrentLocale(), this);
ContactShareEditAdapter contactAdapter = new ContactShareEditAdapter(Glide.with(this), dynamicLanguage.getCurrentLocale(), this);
contactList.setAdapter(contactAdapter);
SharedContactRepository contactRepository = new SharedContactRepository(this, AsyncTask.THREAD_POOL_EXECUTOR);

View File

@@ -11,8 +11,9 @@ import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.RequestManager;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.mms.GlideRequests;
import java.util.ArrayList;
import java.util.List;
@@ -22,23 +23,23 @@ import static org.thoughtcrime.securesms.contactshare.Contact.Name;
public class ContactShareEditAdapter extends RecyclerView.Adapter<ContactShareEditAdapter.ContactEditViewHolder> {
private final GlideRequests glideRequests;
private final Locale locale;
private final EventListener eventListener;
private final List<Contact> contacts;
private final RequestManager requestManager;
private final Locale locale;
private final EventListener eventListener;
private final List<Contact> contacts;
ContactShareEditAdapter(@NonNull GlideRequests glideRequests, @NonNull Locale locale, @NonNull EventListener eventListener) {
this.glideRequests = glideRequests;
this.locale = locale;
this.eventListener = eventListener;
this.contacts = new ArrayList<>();
ContactShareEditAdapter(@NonNull RequestManager requestManager, @NonNull Locale locale, @NonNull EventListener eventListener) {
this.requestManager = requestManager;
this.locale = locale;
this.eventListener = eventListener;
this.contacts = new ArrayList<>();
}
@Override
public @NonNull ContactEditViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new ContactEditViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_editable_contact, parent, false),
locale,
glideRequests);
requestManager);
}
@Override
@@ -67,12 +68,12 @@ public class ContactShareEditAdapter extends RecyclerView.Adapter<ContactShareEd
private final View nameEditButton;
private final ContactFieldAdapter fieldAdapter;
ContactEditViewHolder(View itemView, @NonNull Locale locale, @NonNull GlideRequests glideRequests) {
ContactEditViewHolder(View itemView, @NonNull Locale locale, @NonNull RequestManager requestManager) {
super(itemView);
this.name = itemView.findViewById(R.id.editable_contact_name);
this.nameEditButton = itemView.findViewById(R.id.editable_contact_name_edit_button);
this.fieldAdapter = new ContactFieldAdapter(locale, glideRequests, true);
this.fieldAdapter = new ContactFieldAdapter(locale, requestManager, true);
RecyclerView fields = itemView.findViewById(R.id.editable_contact_fields);
fields.setLayoutManager(new LinearLayoutManager(itemView.getContext()));

View File

@@ -18,6 +18,8 @@ import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.RequestManager;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import org.thoughtcrime.securesms.PassphraseRequiredActivity;
@@ -25,8 +27,6 @@ import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.database.RecipientTable;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.jobs.DirectoryRefreshJob;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.mms.GlideRequests;
import org.thoughtcrime.securesms.recipients.LiveRecipient;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.recipients.RecipientId;
@@ -59,7 +59,7 @@ public class SharedContactDetailsActivity extends PassphraseRequiredActivity {
private View messageButtonView;
private View callButtonView;
private GlideRequests glideRequests;
private RequestManager requestManager;
private Contact contact;
private final DynamicTheme dynamicTheme = new DynamicNoActionBarTheme();
@@ -132,13 +132,13 @@ public class SharedContactDetailsActivity extends PassphraseRequiredActivity {
messageButtonView = findViewById(R.id.contact_details_message_button);
callButtonView = findViewById(R.id.contact_details_call_button);
contactFieldAdapter = new ContactFieldAdapter(dynamicLanguage.getCurrentLocale(), glideRequests, false);
contactFieldAdapter = new ContactFieldAdapter(dynamicLanguage.getCurrentLocale(), requestManager, false);
RecyclerView list = findViewById(R.id.contact_details_fields);
list.setLayoutManager(new LinearLayoutManager(this));
list.setAdapter(contactFieldAdapter);
glideRequests = GlideApp.with(this);
requestManager = Glide.with(this);
}
@SuppressLint("StaticFieldLeak")
@@ -172,13 +172,15 @@ public class SharedContactDetailsActivity extends PassphraseRequiredActivity {
public void presentAvatar(@Nullable Uri uri) {
if (uri != null) {
glideRequests.load(new DecryptableUri(uri))
requestManager
.load(new DecryptableUri(uri))
.fallback(R.drawable.symbol_person_display_40)
.circleCrop()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(avatarView);
} else {
glideRequests.load(R.drawable.symbol_person_display_40)
requestManager
.load(R.drawable.symbol_person_display_40)
.circleCrop()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(avatarView);