diff --git a/app/src/main/java/org/dslul/openboard/inputmethod/latin/settings/UserDictionaryAddWordFragment.java b/app/src/main/java/org/dslul/openboard/inputmethod/latin/settings/UserDictionaryAddWordFragment.java index 4d46152ca..ba3d3b221 100644 --- a/app/src/main/java/org/dslul/openboard/inputmethod/latin/settings/UserDictionaryAddWordFragment.java +++ b/app/src/main/java/org/dslul/openboard/inputmethod/latin/settings/UserDictionaryAddWordFragment.java @@ -7,8 +7,6 @@ package org.dslul.openboard.inputmethod.latin.settings; import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.Canvas; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.Bundle; @@ -30,6 +28,7 @@ import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import androidx.core.content.ContextCompat; +import androidx.core.graphics.drawable.DrawableKt; import androidx.core.widget.TextViewKt; import org.dslul.openboard.inputmethod.latin.R; @@ -135,13 +134,8 @@ public class UserDictionaryAddWordFragment extends SubScreenFragment { private BitmapDrawable toScaledBitmapDrawable(int drawableResId, float scale) { final Drawable drawable = ContextCompat.getDrawable(requireContext(), drawableResId); if (drawable == null) return null; - final int height = (int) (scale * drawable.getIntrinsicHeight()); - final int width = (int) (scale * drawable.getIntrinsicWidth()); - drawable.setBounds(0, 0, width, height); - final Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); - final Canvas canvas = new Canvas(bitmap); - drawable.draw(canvas); - return new BitmapDrawable(getResources(), bitmap); + return new BitmapDrawable(getResources(), DrawableKt.toBitmap(drawable, + (int) (scale * drawable.getIntrinsicHeight()), (int) (scale * drawable.getIntrinsicWidth()), null)); } private void addWord() {