Allow injectable typefaces in image text editor.

Co-authored-by: Rashad Sookram <rashad@signal.org>
This commit is contained in:
Alex Hart
2022-03-11 14:27:07 -04:00
committed by Cody Henthorne
parent eed45b57a1
commit 732b67d8cb
13 changed files with 103 additions and 41 deletions

View File

@@ -15,8 +15,8 @@ import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
import androidx.lifecycle.LiveData;
import org.thoughtcrime.securesms.R;
import org.signal.imageeditor.core.model.EditorModel;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.mediasend.v2.gallery.MediaGalleryFragment;
import org.thoughtcrime.securesms.mms.MediaConstraints;
import org.thoughtcrime.securesms.profiles.AvatarHelper;

View File

@@ -12,6 +12,7 @@ import androidx.annotation.WorkerThread;
import org.signal.core.util.StreamUtil;
import org.signal.core.util.logging.Log;
import org.signal.imageeditor.core.model.EditorModel;
import org.thoughtcrime.securesms.fonts.FontTypefaceProvider;
import org.thoughtcrime.securesms.providers.BlobProvider;
import org.thoughtcrime.securesms.util.MediaUtil;
import org.whispersystems.libsignal.util.guava.Optional;
@@ -40,7 +41,7 @@ public final class ImageEditorModelRenderMediaTransform implements MediaTransfor
public @NonNull Media transform(@NonNull Context context, @NonNull Media media) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
Bitmap bitmap = modelToRender.render(context, size);
Bitmap bitmap = modelToRender.render(context, size, FontTypefaceProvider.INSTANCE);
try {
bitmap.compress(Bitmap.CompressFormat.JPEG, 80, outputStream);

View File

@@ -5,6 +5,8 @@ import android.content.Context;
import androidx.annotation.NonNull;
import androidx.annotation.WorkerThread;
import org.signal.imageeditor.core.RendererContext;
public interface MediaTransform {
@WorkerThread

View File

@@ -278,7 +278,7 @@ class MediaSelectionViewModel(
}
fun send(
selectedContacts: List<RecipientSearchKey> = emptyList(),
selectedContacts: List<RecipientSearchKey> = emptyList()
): Maybe<MediaSendActivityResult> {
return repository.send(
store.state.selectedMedia,