Skip to content

Commit

Permalink
code clean up
Browse files Browse the repository at this point in the history
  • Loading branch information
AsynctaskCoffee committed Aug 26, 2020
1 parent f24ebdf commit dc7328d
Show file tree
Hide file tree
Showing 2 changed files with 77 additions and 50 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,21 +22,49 @@ class MainActivity : AppCompatActivity(), SeekBar.OnSeekBarChangeListener {
}

private fun exampleOfUsages() {

/**
* Blurred Images
* */

Blurr.get(this)
.applyRules(bS, bR)
.into(resources.getDrawable(R.drawable.test_image), imageViewTrial)
.into(resources.getDrawable(R.drawable.test_image), imageViewTrial) //async

Blurr.get(this)
.applyRules(bS, bR)
.into(view, imageViewTrial)
.into(view, imageViewTrial) //async

Blurr.get(this)
.applyRules(bS, bR)
.into(bitmap!!, imageViewTrial)
.into(bitmap!!, imageViewTrial) //async

val bitmap1 = Blurr
.get(this)
.applyRules(bS, bR)
.solution(view)

val bitmap2 = Blurr
.get(this)
.applyRules(bS, bR)
.solution(resources.getDrawable(R.drawable.test_image))

val bitmap3 = Blurr
.get(this)
.applyRules(bS, bR)
.solution(bitmap!!)

/**
* Inline tools
* */

val bitmap4 = Blurr
.getTools()
.bitmapFromCustomView(view)

val bitmap1 = Blurr.get(this).applyRules(bS, bR).solution(view)
val bitmap2 = Blurr.get(this).applyRules(bS, bR).solution(resources.getDrawable(R.drawable.test_image))
val bitmap3 = Blurr.get(this).applyRules(bS, bR).solution(bitmap!!)
val bitmap5 = Blurr
.getTools()
.bitmapFromDrawable(resources.getDrawable(R.drawable.test_image))
}

private fun setListeners() {
Expand Down
87 changes: 43 additions & 44 deletions blurmaker/src/main/java/com/asynctaskcoffee/blurmaker/Blurr.kt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ class Blurr(private var activity: Activity? = null) {

companion object {
fun get(activity: Activity): Blurr = Blurr(activity)
fun getTools(): Tools = Tools()
}

/**
Expand Down Expand Up @@ -96,55 +97,53 @@ class Blurr(private var activity: Activity? = null) {


class Tools {
companion object {
/**
* Creates bitmap from drawable
* */
fun bitmapFromDrawable(drawable: Drawable): Bitmap? {
if (drawable is BitmapDrawable) {
if (drawable.bitmap != null) {
return drawable.bitmap
}
/**
* Creates bitmap from drawable
* */
fun bitmapFromDrawable(drawable: Drawable): Bitmap? {
if (drawable is BitmapDrawable) {
if (drawable.bitmap != null) {
return drawable.bitmap
}
val bitmap: Bitmap? =
if (drawable.intrinsicWidth <= 0 || drawable.intrinsicHeight <= 0) {
Bitmap.createBitmap(
1,
1,
Bitmap.Config.ARGB_8888
)
} else {
Bitmap.createBitmap(
drawable.intrinsicWidth,
drawable.intrinsicHeight,
Bitmap.Config.ARGB_8888
)
}
val canvas = bitmap?.let { Canvas(it) }
if (canvas != null) {
drawable.setBounds(0, 0, canvas.width, canvas.height)
drawable.draw(canvas)
}
val bitmap: Bitmap? =
if (drawable.intrinsicWidth <= 0 || drawable.intrinsicHeight <= 0) {
Bitmap.createBitmap(
1,
1,
Bitmap.Config.ARGB_8888
)
} else {
Bitmap.createBitmap(
drawable.intrinsicWidth,
drawable.intrinsicHeight,
Bitmap.Config.ARGB_8888
)
}
return bitmap
val canvas = bitmap?.let { Canvas(it) }
if (canvas != null) {
drawable.setBounds(0, 0, canvas.width, canvas.height)
drawable.draw(canvas)
}
return bitmap
}


/**
* Creates bitmap from View
* */
fun bitmapFromCustomView(view: View): Bitmap? {
val spec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)
view.measure(spec, spec)
view.layout(0, 0, view.measuredWidth, view.measuredHeight)
val b = Bitmap.createBitmap(
view.measuredWidth, view.measuredWidth,
Bitmap.Config.ARGB_8888
)
val c = Canvas(b)
c.translate((-view.scrollX).toFloat(), (-view.scrollY).toFloat())
view.draw(c)
return b
}
/**
* Creates bitmap from View
* */
fun bitmapFromCustomView(view: View): Bitmap? {
val spec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)
view.measure(spec, spec)
view.layout(0, 0, view.measuredWidth, view.measuredHeight)
val b = Bitmap.createBitmap(
view.measuredWidth, view.measuredWidth,
Bitmap.Config.ARGB_8888
)
val c = Canvas(b)
c.translate((-view.scrollX).toFloat(), (-view.scrollY).toFloat())
view.draw(c)
return b
}
}
}

0 comments on commit dc7328d

Please sign in to comment.