Skip to content

Commit

Permalink
Added enableSwipe
Browse files Browse the repository at this point in the history
  • Loading branch information
simonebortolin committed Jan 1, 2018
1 parent 0f19593 commit 88bfdc8
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 10 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Step 2: Add this to your module `build.gradle` file:

dependencies {
...
compile 'com.github.simonebortolin:Bubble-Picker:0.3.0'
compile 'com.github.simonebortolin:Bubble-Picker:0.3.1'
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,13 +57,16 @@ class BubblePicker @JvmOverloads constructor(context: Context?, attrs: Attribute
val selectedItems: List<PickerItem?>
get() = renderer.selectedItems

var centerImmediately = false
var centerImmediately = true
set(value) {
if (mode == SPACE_INFINITE) {
field = value
renderer.centerImmediately = value
} else throw UnSupportedActionPickerException()
}

var enableSwipe = true

private var renderer: PickerRenderer
private var startX = 0f
private var startY = 0f
Expand Down Expand Up @@ -108,17 +111,21 @@ class BubblePicker @JvmOverloads constructor(context: Context?, attrs: Attribute
previousY = event.y
}
MotionEvent.ACTION_UP -> {
if (mode == SPACE_INFINITE) {
if (isClick(event)) renderer.resize(event.x, event.y)
renderer.release()
} else if (mode == SPACE_FINITE) {
if (isClick(event) && !isTooFast()) renderer.resize(event.x, event.y)
previousUpTime = System.currentTimeMillis()
renderer.release()
when (mode) {
SPACE_INFINITE -> {
if (isClick(event)) renderer.resize(event.x, event.y)
renderer.release()
}
SPACE_FINITE -> {
if (isClick(event) && !isTooFast()) renderer.resize(event.x, event.y)
previousUpTime = System.currentTimeMillis()
renderer.release()
}
else -> release()
}
}
MotionEvent.ACTION_MOVE -> {
if ((isSwipe(event)) && (mode == SPACE_INFINITE)) {
if (mode == SPACE_INFINITE && isSwipe(event) && enableSwipe) {
renderer.swipe(previousX - event.x, previousY - event.y)
previousX = event.x
previousY = event.y
Expand Down Expand Up @@ -150,6 +157,14 @@ class BubblePicker @JvmOverloads constructor(context: Context?, attrs: Attribute
if (array.hasValue(R.styleable.BubblePicker_backgroundColor)) {
background = array.getColor(R.styleable.BubblePicker_backgroundColor, -1)
}

if (array.hasValue(R.styleable.BubblePicker_centerImmediately)) {
centerImmediately = array.getInt(R.styleable.BubblePicker_centerImmediately, -1) == 1
}

if (array.hasValue(R.styleable.BubblePicker_swipe)) {
enableSwipe = array.getInt(R.styleable.BubblePicker_swipe, -1) == 1
}
array.recycle()
}

Expand Down
8 changes: 8 additions & 0 deletions bubblepicker/src/main/res/values/attrs.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@
<enum name="spaceFinite" value="1" />
<enum name="spaceInfinite" value="2" />
</attr>
<attr name="swipe" format="enum">
<enum name="enable" value="1" />
<enum name="disable" value="0" />
</attr>
<attr name="centerImmediately" format="enum">
<enum name="enable" value="1" />
<enum name="disable" value="0" />
</attr>

</declare-styleable>
</resources>

0 comments on commit 88bfdc8

Please sign in to comment.