diff --git a/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt b/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt
index 77ce492..c058b55 100644
--- a/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt
+++ b/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt
@@ -58,6 +58,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener {
private var iconsPerX = 0
private var iconSize = 0
private var insensitiveSort = false
+ private var isPngFallback = true
// Constants
private lateinit var internalDir: File
@@ -127,6 +128,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener {
this.scroll = this.backupSharedPreferences.getBoolean("scroll", false)
this.vibrate = this.backupSharedPreferences.getBoolean("vibrate", true)
this.insensitiveSort = this.backupSharedPreferences.getBoolean("insensitiveSort", false)
+ this.isPngFallback = this.backupSharedPreferences.getBoolean("isPngFallback", true)
this.iconsPerX = this.backupSharedPreferences.getInt("iconsPerX", 3)
this.totalIconPadding =
@@ -228,6 +230,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener {
this.currentInputEditorInfo,
this.compatCache,
this.imageLoader,
+ this.isPngFallback,
)
}
diff --git a/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt b/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt
index e6457a8..e0bd3b5 100644
--- a/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt
+++ b/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt
@@ -91,6 +91,7 @@ class MainActivity : AppCompatActivity() {
toggle(findViewById(R.id.restoreOnClose), "restoreOnClose", false) {}
toggle(findViewById(R.id.scroll), "scroll", false) {}
toggle(findViewById(R.id.insensitive_sort), "insensitiveSort", false) {}
+ toggle(findViewById(R.id.pngFallback), "isPngFallback", true) {}
val versionText: TextView = findViewById(R.id.versionText)
var version = getString(R.string.version_text)
diff --git a/app/src/main/java/com/fredhappyface/ewesticker/utilities/StickerSender.kt b/app/src/main/java/com/fredhappyface/ewesticker/utilities/StickerSender.kt
index e5558db..37d4f57 100644
--- a/app/src/main/java/com/fredhappyface/ewesticker/utilities/StickerSender.kt
+++ b/app/src/main/java/com/fredhappyface/ewesticker/utilities/StickerSender.kt
@@ -36,6 +36,7 @@ import java.io.IOException
* @property compatCache: used to track previous x converted compat stickers
* @property imageLoader: coil imageLoader object used to convert a sticker file to a drawable ready
* for writing to a compat sticker
+ * @property isPngFallback: is a png fallback enabled
*/
class StickerSender(
private val context: Context,
@@ -45,6 +46,7 @@ class StickerSender(
private val currentInputEditorInfo: EditorInfo?,
private val compatCache: Cache,
private val imageLoader: ImageLoader,
+ private val isPngFallback: Boolean,
) {
private val supportedMimes = this.currentInputEditorInfo?.contentMimeTypes ?: emptyArray()
@@ -175,7 +177,7 @@ class StickerSender(
*/
private suspend fun doFallbackCommitContent(mimeType: String, file: File) {
- if ("image/png" in supportedMimes || "image/*" in supportedMimes) {
+ if (isPngFallback && ("image/png" in supportedMimes || "image/*" in supportedMimes)) {
val compatSticker = createCompatSticker(file)
if (compatSticker != null) {
if (!doCommitContent("image/png", compatSticker)) {
@@ -209,6 +211,7 @@ class StickerSender(
}
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
+ shareIntent.setPackage(packageName)
val chooserIntent = Intent.createChooser(shareIntent, "Share Sticker")
chooserIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 9136748..b1bc780 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -259,6 +259,20 @@
android:text="@string/options_insensitive_sort" />
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 17fbb3c..7e9fafb 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -26,6 +26,7 @@
Restore previous keyboard on keyboard close
Enable swipe between packs (perpendicular to scroll direction)
Enable case-insensitive pack sorting
+ Enable PNG sticker fallback if sticker format isn\'t supported
"Number of Rows: "
"Icon size: "