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

@@ -11,11 +11,12 @@ import androidx.recyclerview.widget.ItemTouchHelper;
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.conversation.mutiselect.forward.MultiselectForwardFragment;
import org.thoughtcrime.securesms.conversation.mutiselect.forward.MultiselectForwardFragmentArgs;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.sharing.MultiShareArgs;
import org.thoughtcrime.securesms.util.DeviceProperties;
import org.thoughtcrime.securesms.util.DynamicTheme;
@@ -110,7 +111,7 @@ public final class StickerManagementActivity extends PassphraseRequiredActivity
private void initView() {
this.list = findViewById(R.id.sticker_management_list);
this.adapter = new StickerManagementAdapter(GlideApp.with(this), this, DeviceProperties.shouldAllowApngStickerAnimation(this));
this.adapter = new StickerManagementAdapter(Glide.with(this), this, DeviceProperties.shouldAllowApngStickerAnimation(this));
list.setLayoutManager(new LinearLayoutManager(this));
list.setAdapter(adapter);

View File

@@ -17,6 +17,7 @@ import androidx.annotation.StringRes;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.RequestManager;
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
import org.thoughtcrime.securesms.R;
@@ -24,7 +25,6 @@ import org.thoughtcrime.securesms.components.emoji.EmojiTextView;
import org.thoughtcrime.securesms.database.model.StickerPackRecord;
import org.thoughtcrime.securesms.glide.cache.ApngOptions;
import org.thoughtcrime.securesms.mms.DecryptableStreamUriLoader.DecryptableUri;
import org.thoughtcrime.securesms.mms.GlideRequests;
import org.thoughtcrime.securesms.util.DrawableUtil;
import org.thoughtcrime.securesms.util.ViewUtil;
import org.thoughtcrime.securesms.util.adapter.SectionedRecyclerViewAdapter;
@@ -40,7 +40,7 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
private static final String TAG_MESSAGE_STICKERS = "MessageStickers";
private static final String TAG_BLESSED_STICKERS = "BlessedStickers";
private final GlideRequests glideRequests;
private final RequestManager requestManager;
private final EventListener eventListener;
private final boolean allowApngAnimation;
@@ -60,8 +60,8 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
add(messageStickers);
}};
StickerManagementAdapter(@NonNull GlideRequests glideRequests, @NonNull EventListener eventListener, boolean allowApngAnimation) {
this.glideRequests = glideRequests;
StickerManagementAdapter(@NonNull RequestManager requestManager, @NonNull EventListener eventListener, boolean allowApngAnimation) {
this.requestManager = requestManager;
this.eventListener = eventListener;
this.allowApngAnimation = allowApngAnimation;
}
@@ -88,7 +88,7 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
@Override
public void bindViewHolder(@NonNull RecyclerView.ViewHolder viewHolder, @NonNull StickerSection section, int localPosition) {
section.bindViewHolder(viewHolder, localPosition, glideRequests, eventListener, allowApngAnimation);
section.bindViewHolder(viewHolder, localPosition, requestManager, eventListener, allowApngAnimation);
}
@Override
@@ -203,7 +203,7 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
void bindViewHolder(@NonNull RecyclerView.ViewHolder viewHolder,
int localPosition,
@NonNull GlideRequests glideRequests,
@NonNull RequestManager requestManager,
@NonNull EventListener eventListener,
boolean allowApngAnimation)
{
@@ -212,7 +212,7 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
} else if (records.isEmpty()) {
((EmptyViewHolder) viewHolder).bind(emptyResId);
} else {
((StickerViewHolder) viewHolder).bind(glideRequests, eventListener, records.get(localPosition - 1), localPosition == records.size(), allowApngAnimation);
((StickerViewHolder) viewHolder).bind(requestManager, eventListener, records.get(localPosition - 1), localPosition == records.size(), allowApngAnimation);
}
}
@@ -258,7 +258,7 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
this.blessedBadge = buildBlessedBadge(itemView.getContext());
}
void bind(@NonNull GlideRequests glideRequests,
void bind(@NonNull RequestManager requestManager,
@NonNull EventListener eventListener,
@NonNull StickerPackRecord stickerPack,
boolean lastInList,
@@ -273,7 +273,7 @@ final class StickerManagementAdapter extends SectionedRecyclerViewAdapter<String
author.setText(stickerPack.getAuthor().orElse(itemView.getResources().getString(R.string.StickerManagementAdapter_unknown)));
divider.setVisibility(lastInList ? View.GONE : View.VISIBLE);
glideRequests.load(new DecryptableUri(stickerPack.getCover().getUri()))
requestManager.load(new DecryptableUri(stickerPack.getCover().getUri()))
.transition(DrawableTransitionOptions.withCrossFade())
.fitCenter()
.set(ApngOptions.ANIMATE, allowApngAnimation)

View File

@@ -16,6 +16,7 @@ import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
import org.signal.core.util.logging.Log;
@@ -26,7 +27,6 @@ import org.thoughtcrime.securesms.conversation.mutiselect.forward.MultiselectFor
import org.thoughtcrime.securesms.conversation.mutiselect.forward.MultiselectForwardFragmentArgs;
import org.thoughtcrime.securesms.glide.cache.ApngOptions;
import org.thoughtcrime.securesms.mms.DecryptableStreamUriLoader;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.sharing.MultiShareArgs;
import org.thoughtcrime.securesms.stickers.StickerManifest.Sticker;
import org.thoughtcrime.securesms.util.DeviceProperties;
@@ -154,9 +154,9 @@ public final class StickerPackPreviewActivity extends PassphraseRequiredActivity
this.shareButton = findViewById(R.id.sticker_install_share_button);
this.shareButtonImage = findViewById(R.id.sticker_install_share_button_image);
this.adapter = new StickerPackPreviewAdapter(GlideApp.with(this), this, DeviceProperties.shouldAllowApngStickerAnimation(this));
this.adapter = new StickerPackPreviewAdapter(Glide.with(this), this, DeviceProperties.shouldAllowApngStickerAnimation(this));
this.layoutManager = new GridLayoutManager(this, 2);
this.touchListener = new StickerRolloverTouchListener(this, GlideApp.with(this), this, this);
this.touchListener = new StickerRolloverTouchListener(this, Glide.with(this), this, this);
onScreenWidthChanged(getScreenWidth());
stickerList.setLayoutManager(layoutManager);
@@ -204,7 +204,7 @@ public final class StickerPackPreviewActivity extends PassphraseRequiredActivity
if (cover != null) {
Object model = cover.getUri().isPresent() ? new DecryptableStreamUriLoader.DecryptableUri(cover.getUri().get())
: new StickerRemoteUri(cover.getPackId(), cover.getPackKey(), cover.getId());
GlideApp.with(this).load(model)
Glide.with(this).load(model)
.transition(DrawableTransitionOptions.withCrossFade())
.fitCenter()
.set(ApngOptions.ANIMATE, DeviceProperties.shouldAllowApngStickerAnimation(this))

View File

@@ -9,25 +9,25 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.RequestManager;
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.glide.cache.ApngOptions;
import org.thoughtcrime.securesms.mms.DecryptableStreamUriLoader;
import org.thoughtcrime.securesms.mms.GlideRequests;
import java.util.ArrayList;
import java.util.List;
public final class StickerPackPreviewAdapter extends RecyclerView.Adapter<StickerPackPreviewAdapter.StickerViewHolder> {
private final GlideRequests glideRequests;
private final RequestManager requestManager;
private final EventListener eventListener;
private final List<StickerManifest.Sticker> list;
private final boolean allowApngAnimation;
public StickerPackPreviewAdapter(@NonNull GlideRequests glideRequests, @NonNull EventListener eventListener, boolean allowApngAnimation) {
this.glideRequests = glideRequests;
public StickerPackPreviewAdapter(@NonNull RequestManager requestManager, @NonNull EventListener eventListener, boolean allowApngAnimation) {
this.requestManager = requestManager;
this.eventListener = eventListener;
this.allowApngAnimation = allowApngAnimation;
this.list = new ArrayList<>();
@@ -40,7 +40,7 @@ public final class StickerPackPreviewAdapter extends RecyclerView.Adapter<Sticke
@Override
public void onBindViewHolder(@NonNull StickerViewHolder stickerViewHolder, int i) {
stickerViewHolder.bind(glideRequests, list.get(i), eventListener, allowApngAnimation);
stickerViewHolder.bind(requestManager, list.get(i), eventListener, allowApngAnimation);
}
@Override
@@ -71,7 +71,7 @@ public final class StickerPackPreviewAdapter extends RecyclerView.Adapter<Sticke
this.image = itemView.findViewById(R.id.sticker_install_item_image);
}
void bind(@NonNull GlideRequests glideRequests,
void bind(@NonNull RequestManager requestManager,
@NonNull StickerManifest.Sticker sticker,
@NonNull EventListener eventListener,
boolean allowApngAnimation)
@@ -79,7 +79,7 @@ public final class StickerPackPreviewAdapter extends RecyclerView.Adapter<Sticke
currentEmoji = sticker.getEmoji();
currentGlideModel = sticker.getUri().isPresent() ? new DecryptableStreamUriLoader.DecryptableUri(sticker.getUri().get())
: new StickerRemoteUri(sticker.getPackId(), sticker.getPackKey(), sticker.getId());
glideRequests.load(currentGlideModel)
requestManager.load(currentGlideModel)
.transition(DrawableTransitionOptions.withCrossFade())
.set(ApngOptions.ANIMATE, allowApngAnimation)
.centerInside()

View File

@@ -10,10 +10,10 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.bumptech.glide.RequestManager;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.mms.GlideRequests;
/**
@@ -21,24 +21,24 @@ import org.thoughtcrime.securesms.mms.GlideRequests;
*/
final class StickerPreviewPopup extends PopupWindow {
private final GlideRequests glideRequests;
private final ImageView image;
private final TextView emojiText;
private final RequestManager requestManager;
private final ImageView image;
private final TextView emojiText;
StickerPreviewPopup(@NonNull Context context, @NonNull GlideRequests glideRequests) {
StickerPreviewPopup(@NonNull Context context, @NonNull RequestManager requestManager) {
super(LayoutInflater.from(context).inflate(R.layout.sticker_preview_popup, null),
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
this.glideRequests = glideRequests;
this.image = getContentView().findViewById(R.id.sticker_popup_image);
this.emojiText = getContentView().findViewById(R.id.sticker_popup_emoji);
this.requestManager = requestManager;
this.image = getContentView().findViewById(R.id.sticker_popup_image);
this.emojiText = getContentView().findViewById(R.id.sticker_popup_emoji);
setTouchable(false);
}
void presentSticker(@NonNull Object stickerGlideModel, @Nullable String emoji) {
emojiText.setText(emoji);
glideRequests.load(stickerGlideModel)
requestManager.load(stickerGlideModel)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.fitCenter()
.into(image);

View File

@@ -9,10 +9,11 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.RequestManager;
import org.signal.libsignal.protocol.util.Pair;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.keyboard.sticker.KeyboardStickerListAdapter;
import org.thoughtcrime.securesms.mms.GlideRequests;
import org.thoughtcrime.securesms.util.ViewUtil;
import java.lang.ref.WeakReference;
@@ -26,13 +27,13 @@ public class StickerRolloverTouchListener implements RecyclerView.OnItemTouchLis
private boolean hoverMode;
public StickerRolloverTouchListener(@NonNull Context context,
@NonNull GlideRequests glideRequests,
@NonNull RequestManager requestManager,
@NonNull RolloverEventListener eventListener,
@NonNull RolloverStickerRetriever stickerRetriever)
{
this.eventListener = eventListener;
this.stickerRetriever = stickerRetriever;
this.popup = new StickerPreviewPopup(context, glideRequests);
this.popup = new StickerPreviewPopup(context, requestManager);
this.currentView = new WeakReference<>(null);
popup.setAnimationStyle(R.style.StickerPopupAnimation);