Prepare to release beta

This commit is contained in:
oupson 2019-05-25 15:01:27 +02:00
parent 5bb270132f
commit 2b41e938c1
6 changed files with 13 additions and 73 deletions

View File

@ -8,7 +8,7 @@ android {
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0.9"
versionName "1.0.9-beta"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

View File

@ -4,9 +4,7 @@ import android.graphics.Bitmap
import android.graphics.Canvas
import android.graphics.Color
import android.graphics.Paint
import androidx.annotation.ColorInt
import oupson.apng.utils.Utils
import java.util.*
// TODO Work on this class
class BitmapDiffCalculator(firstBitmap: Bitmap, secondBitmap : Bitmap) {
@ -67,52 +65,4 @@ class BitmapDiffCalculator(firstBitmap: Bitmap, secondBitmap : Bitmap) {
val btm = Bitmap.createBitmap(difBitmap, xOffset, yOffset, width - xOffset, height - yOffset)
res = btm
}
fun Bitmap.trim(@ColorInt color: Int = Color.TRANSPARENT): Bitmap {
var top = height
var bottom = 0
var right = width
var left = 0
var colored = IntArray(width, { color })
var buffer = IntArray(width)
for (y in bottom until top) {
getPixels(buffer, 0, width, 0, y, width, 1)
if (!Arrays.equals(colored, buffer)) {
bottom = y
break
}
}
for (y in top - 1 downTo bottom) {
getPixels(buffer, 0, width, 0, y, width, 1)
if (!Arrays.equals(colored, buffer)) {
top = y
break
}
}
val heightRemaining = top - bottom
colored = IntArray(heightRemaining, { color })
buffer = IntArray(heightRemaining)
for (x in left until right) {
getPixels(buffer, 0, 1, x, bottom, 1, heightRemaining)
if (!Arrays.equals(colored, buffer)) {
left = x
break
}
}
for (x in right - 1 downTo left) {
getPixels(buffer, 0, 1, x, bottom, 1, heightRemaining)
if (!Arrays.equals(colored, buffer)) {
right = x
break
}
}
return Bitmap.createBitmap(this, left, bottom, right - left, top - bottom)
}
}

View File

@ -20,7 +20,7 @@ class Utils {
try {
val acTL = byteArrayOf(0x61, 0x63, 0x54, 0x4c)
@Suppress("LocalVariableName") val IDAT = byteArrayOf(0x49, 0x44, 0x41, 0x54)
for (i in 0 until byteArray.size) {
for (i in 8 until byteArray.size) {
val it = byteArray.copyOfRange(i, i + 4)
// if byteArray contain acTL
if (it.contentEquals(acTL)) {

View File

@ -34,7 +34,8 @@
<data android:mimeType="image/png" />
</intent-filter>
</activity>
<activity android:name=".CreatorActivity"></activity>
<activity android:name=".CreatorActivity"
android:exported="true"/>
</application>
</manifest>

View File

@ -4,7 +4,6 @@ import android.graphics.Color
import android.graphics.drawable.GradientDrawable
import android.os.Bundle
import android.text.Html
import android.util.Log
import android.view.View
import android.widget.Toolbar
import androidx.appcompat.app.AppCompatActivity
@ -22,16 +21,12 @@ import org.jetbrains.anko.sdk27.coroutines.onSeekBarChangeListener
import oupson.apng.ApngAnimator
import oupson.apng.loadApng
class MainActivity : AppCompatActivity() {
lateinit var animator: ApngAnimator
lateinit var tool : Toolbar
private lateinit var animator: ApngAnimator
private lateinit var tool : Toolbar
// val imageUrl = "http://oupson.oupsman.fr/apng/bigApng.png"
// val imageUrl = "https://metagif.files.wordpress.com/2015/01/bugbuckbunny.png"
val imageUrl = "http://orig06.deviantart.net/7812/f/2012/233/7/5/twilight_rapidash_shaded_and_animated_by_tamalesyatole-d5bz7hd.png"
private val imageUrl = "https://metagif.files.wordpress.com/2015/01/bugbuckbunny.png"
// val imageUrl = "http://orig06.deviantart.net/7812/f/2012/233/7/5/twilight_rapidash_shaded_and_animated_by_tamalesyatole-d5bz7hd.png"
// val imageUrl = "https://raw.githubusercontent.com/tinify/iMessage-Panda-sticker/master/StickerPackExtension/Stickers.xcstickers/Sticker%20Pack.stickerpack/panda.sticker/panda.png"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -48,18 +43,14 @@ class MainActivity : AppCompatActivity() {
backgroundColor = Color.BLACK
tool = toolbar {
id = View.generateViewId()
title = Html.fromHtml("<font color='#ffffff'>MainActivity</font>")
title = Html.fromHtml("<font color='#ffffff'>MainActivity</font>", Html.FROM_HTML_MODE_LEGACY)
inflateMenu(R.menu.main_menu)
onMenuItemClick { item ->
Log.e("lll", "Click")
when (item!!.itemId) {
R.id.action_open_create_activity -> {
Log.e("lll", "Click")
startActivity<CreatorActivity>()
finish()
true
}
else -> false
}
}
}.lparams {
@ -76,7 +67,6 @@ class MainActivity : AppCompatActivity() {
height = wrapContent
}
constraintLayout {
val pauseButton = button("pause") {
id = View.generateViewId()
@ -103,11 +93,10 @@ class MainActivity : AppCompatActivity() {
max = 200
progress = 10
onSeekBarChangeListener {
onProgressChanged { seekBar, progressValue, fromUser -> }
onStartTrackingTouch { seekBar -> }
onProgressChanged { _, _, _ -> }
onStartTrackingTouch { }
onStopTrackingTouch { seekBar ->
Log.e("TAG", (seekBar!!.progress.toFloat() / 100f).toString())
animator.speed = (seekBar!!.progress.toFloat() / 100f)
animator.speed = (seekBar?.progress?.toFloat() ?: 100f / 100f)
}
}
}.lparams(
@ -123,7 +112,7 @@ class MainActivity : AppCompatActivity() {
)
val imageView = imageView {
id = View.generateViewId()
animator = this.loadApng(R.raw.bugbuckbunny).apply {
animator = this.loadApng(imageUrl).apply {
onLoaded {
setOnAnimationLoopListener {
// Log.e("app-test", "onLoop")