Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: added padding bottom customization #1

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,19 @@ class CoordinatorLayoutAct : AppCompatActivity() {
}
})

binding.content.sbPaddingBottom.setOnSeekBarChangeListener(object :
SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) {
binding.content.tvPaddingBottomIndicator.text = p0?.progress.toString()
}

override fun onStartTrackingTouch(p0: SeekBar?) {
}

override fun onStopTrackingTouch(p0: SeekBar?) {
}
})

binding.content.sbCornerRadius.setOnSeekBarChangeListener(object :
SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) {
Expand Down Expand Up @@ -162,7 +175,8 @@ class CoordinatorLayoutAct : AppCompatActivity() {
textColor(textColor)
backgroundColor(bgColor)
border(binding.content.sbBorderWidth.progress, borderColor)
padding(binding.content.sbPadding.progress)
paddingHorizontal(binding.content.sbPadding.progress)
paddingBottom(binding.content.sbPaddingBottom.progress)
cornerRadius(binding.content.sbCornerRadius.progress.toFloat())
duration(timeDuration)
actionTextColor(actionTxtColor)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ class CustomViewAct : AppCompatActivity() {

snackbar = CustomSnackbar(this).show {
customView(R.layout.snack_layout)
padding(binding.sbPadding.progress)
paddingHorizontal(binding.sbPadding.progress)
duration(timeDuration)
withCustomView {
it.findViewById<View>(R.id.btnUndo).setOnClickListener {
Expand Down
16 changes: 15 additions & 1 deletion app/src/main/java/com/example/custom_snackbar/ui/DrawableAct.kt
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,19 @@ class DrawableAct : AppCompatActivity() {
}
})

binding.sbPaddingBottom.setOnSeekBarChangeListener(object :
SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) {
binding.tvPaddingBottomIndicator.text = p0?.progress.toString()
}

override fun onStartTrackingTouch(p0: SeekBar?) {
}

override fun onStopTrackingTouch(p0: SeekBar?) {
}
})

var snackbar: CustomSnackbar? = null

binding.btnShow.setOnClickListener {
Expand All @@ -96,7 +109,8 @@ class DrawableAct : AppCompatActivity() {
actionTextColor(actionTxtColor)
textTypeface(typeface)
actionTypeface(typeface)
padding(binding.sbPadding.progress)
paddingHorizontal(binding.sbPadding.progress)
paddingBottom(binding.sbPaddingBottom.progress)
duration(timeDuration)
message("Testing Message...")
if (binding.rbWithAction.isChecked) {
Expand Down
16 changes: 15 additions & 1 deletion app/src/main/java/com/example/custom_snackbar/ui/SimpleAct.kt
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,19 @@ class SimpleAct : AppCompatActivity() {
}
})

binding.content.sbPaddingBottom.setOnSeekBarChangeListener(object :
SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) {
binding.content.tvPaddingBottomIndicator.text = p0?.progress.toString()
}

override fun onStartTrackingTouch(p0: SeekBar?) {
}

override fun onStopTrackingTouch(p0: SeekBar?) {
}
})

binding.content.sbCornerRadius.setOnSeekBarChangeListener(object :
SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) {
Expand Down Expand Up @@ -150,7 +163,8 @@ class SimpleAct : AppCompatActivity() {
textColor(textColor)
backgroundColor(bgColor)
border(binding.content.sbBorderWidth.progress, borderColor)
padding(binding.content.sbPadding.progress)
paddingHorizontal(binding.content.sbPadding.progress)
paddingBottom(binding.content.sbPaddingBottom.progress)
cornerRadius(binding.content.sbCornerRadius.progress.toFloat())
duration(timeDuration)
actionTextColor(actionTxtColor)
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/layout/activity_custom_view.xml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_padding" />
android:text="@string/lbl_padding_horizontal" />

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
Expand Down
42 changes: 41 additions & 1 deletion app/src/main/res/layout/activity_drawable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_padding" />
android:text="@string/lbl_padding_horizontal" />

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
Expand All @@ -114,6 +114,46 @@

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="5dp">

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_padding_bottom" />

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_dash" />

<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tvPaddingBottomIndicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_zero" />

</LinearLayout>

<androidx.appcompat.widget.AppCompatSeekBar
android:id="@+id/sbPaddingBottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:max="25" />

</LinearLayout>


<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
Expand Down
41 changes: 40 additions & 1 deletion app/src/main/res/layout/content_app.xml
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_padding" />
android:text="@string/lbl_padding_horizontal" />

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
Expand All @@ -129,6 +129,45 @@

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="5dp">

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_padding_bottom" />

<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_dash" />

<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tvPaddingBottomIndicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_zero" />

</LinearLayout>

<androidx.appcompat.widget.AppCompatSeekBar
android:id="@+id/sbPaddingBottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:max="25" />

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@
<string name="lbl_with_custom_view">With Custom View</string>
<string name="lbl_action_button_text_color">Action Button Text Color</string>
<string name="lbl_with_drawable">With Drawable</string>
<string name="lbl_padding">Padding</string>
<string name="lbl_padding_horizontal">Padding Horizontal</string>
<string name="lbl_padding_bottom">Padding Bottom</string>
<string name="lbl_undo">UNDO</string>
<string name="custom_msg">Are you sure? do you want to undo this operation?</string>
</resources>
21 changes: 15 additions & 6 deletions csbx/src/main/java/com/kishandonga/csbx/CustomSnackbar.kt
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ class CustomSnackbar(private val context: Context) {
private var duration: Int = Snackbar.LENGTH_SHORT
private var drawable = GradientDrawable()
private var message: String = ""
private var padding: Int = 0.toPx(context).toInt()
private var paddingHorizontal: Int = 0.toPx(context).toInt()
private var paddingBottom: Int = 0.toPx(context).toInt()
private var customView: View? = null
private var action: ((Snackbar) -> Unit)? = null
private var customViewAction: ((View) -> Unit)? = null
Expand Down Expand Up @@ -83,11 +84,15 @@ class CustomSnackbar(private val context: Context) {
}

fun paddingRes(@DimenRes dimenId: Int) {
padding(context.resources.getDimension(dimenId).toInt())
paddingHorizontal(context.resources.getDimension(dimenId).toInt())
}

fun padding(padding: Int) {
this.padding = padding
fun paddingHorizontal(padding: Int) {
this.paddingHorizontal = padding
}

fun paddingBottom(padding: Int) {
this.paddingBottom = padding
}

fun duration(duration: Int) {
Expand Down Expand Up @@ -195,8 +200,12 @@ class CustomSnackbar(private val context: Context) {
snackContentLayout.setPadding(pLeft, 0, pRight, 0)
snackContentLayout.background = drawable

if (padding > 0) {
snackbarLayout.setPadding(padding, 0, padding, padding)
if (paddingHorizontal > 0) {
snackbarLayout.setPadding(paddingHorizontal, 0, paddingHorizontal, 0)
}

if (paddingBottom > 0) {
snackbarLayout.setPadding(snackbarLayout.paddingLeft, 0, snackbarLayout.paddingRight, paddingBottom)
}

if (customView == null) {
Expand Down