Merge pull request #5079 from vector-im/feature/bma/konfetti2

WIP and low priority: upgrade konfetti to 2.0.2
This commit is contained in:
Benoit Marty 2022-04-06 10:00:09 +02:00 committed by GitHub
commit c849cc5c5d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 30 additions and 17 deletions

1
changelog.d/5079.misc Normal file
View file

@ -0,0 +1 @@
Upgrade konfetti lib from 1.3.2 to 2.0.2

View file

@ -446,7 +446,8 @@ dependencies {
implementation 'me.leolin:ShortcutBadger:1.1.22@aar'
// Chat effects
implementation 'nl.dionsegijn:konfetti:1.3.2'
implementation 'nl.dionsegijn:konfetti-xml:2.0.2'
implementation 'com.github.jetradarmobile:android-snowfall:1.2.1'
// DI
implementation libs.dagger.hilt

View file

@ -20,9 +20,14 @@ import android.content.Context
import androidx.annotation.ColorInt
import androidx.core.content.ContextCompat
import im.vector.app.R
import nl.dionsegijn.konfetti.KonfettiView
import nl.dionsegijn.konfetti.models.Shape
import nl.dionsegijn.konfetti.models.Size
import nl.dionsegijn.konfetti.core.Angle
import nl.dionsegijn.konfetti.core.Party
import nl.dionsegijn.konfetti.core.Position
import nl.dionsegijn.konfetti.core.Spread
import nl.dionsegijn.konfetti.core.emitter.Emitter
import nl.dionsegijn.konfetti.core.models.Shape
import nl.dionsegijn.konfetti.core.models.Size
import nl.dionsegijn.konfetti.xml.KonfettiView
fun KonfettiView.play() {
val confettiColors = listOf(
@ -35,16 +40,22 @@ fun KonfettiView.play() {
R.color.palette_prune,
R.color.palette_kiwi
)
build()
.addColors(confettiColors.toColorInt(context))
.setDirection(0.0, 359.0)
.setSpeed(2f, 5f)
.setFadeOutEnabled(true)
.setTimeToLive(2000L)
.addShapes(Shape.Square, Shape.Circle)
.addSizes(Size(12))
.setPosition(-50f, width + 50f, -50f, -50f)
.streamFor(150, 3000L)
val emitterConfig = Emitter(2000).perSecond(100)
val party = Party(
emitter = emitterConfig,
colors = confettiColors.toColorInt(context),
angle = Angle.Companion.BOTTOM,
spread = Spread.ROUND,
shapes = listOf(Shape.Square, Shape.Circle),
size = listOf(Size(12)),
speed = 2f,
maxSpeed = 5f,
fadeOutEnabled = true,
timeToLive = 2000L,
position = Position.Relative(0.0, 0.0).between(Position.Relative(1.0, 0.0)),
)
reset()
start(party)
}
@ColorInt

View file

@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:background="?colorSecondary">
<nl.dionsegijn.konfetti.KonfettiView
<nl.dionsegijn.konfetti.xml.KonfettiView
android:id="@+id/viewKonfetti"
android:layout_width="match_parent"
android:layout_height="match_parent"

View file

@ -4,7 +4,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<nl.dionsegijn.konfetti.KonfettiView
<nl.dionsegijn.konfetti.xml.KonfettiView
android:id="@+id/viewKonfetti"
android:layout_width="match_parent"
android:layout_height="match_parent"

View file

@ -188,7 +188,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:tint="@android:color/black" />
<nl.dionsegijn.konfetti.KonfettiView
<nl.dionsegijn.konfetti.xml.KonfettiView
android:id="@+id/viewKonfetti"
android:layout_width="match_parent"
android:layout_height="match_parent"