Loading tests/SilkFX/res/layout/activity_glass.xml +37 −2 Original line number Diff line number Diff line Loading @@ -67,6 +67,21 @@ app:layout_constraintHorizontal_bias="1.0" app:layout_constraintStart_toStartOf="parent" /> <SeekBar android:id="@+id/zoom" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginBottom="16dp" android:layout_marginEnd="12dp" android:layout_marginStart="12dp" android:min="-100" android:max="100" android:progress="-15" app:layout_constraintBottom_toTopOf="@+id/blurRadiusTitle" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="1.0" app:layout_constraintStart_toStartOf="parent" /> <SeekBar android:id="@+id/blurRadius" android:layout_width="0dp" Loading @@ -75,7 +90,7 @@ android:layout_marginEnd="12dp" android:layout_marginStart="12dp" android:max="150" android:progress="50" android:progress="20" app:layout_constraintBottom_toTopOf="@+id/materialOpacityTitle" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="1.0" Loading Loading @@ -131,6 +146,17 @@ app:layout_constraintBottom_toTopOf="@+id/materialOpacity" app:layout_constraintStart_toStartOf="parent" /> <TextView android:id="@+id/zoomTitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="24dp" android:layout_marginBottom="8dp" android:text="Zoom" android:textColor="@android:color/white" app:layout_constraintBottom_toTopOf="@+id/zoom" app:layout_constraintStart_toStartOf="parent" /> <TextView android:id="@+id/blurRadiusTitle" android:layout_width="wrap_content" Loading Loading @@ -200,7 +226,7 @@ android:layout_marginStart="24dp" android:layout_marginBottom="8dp" android:text="Light Material" app:layout_constraintBottom_toTopOf="@+id/blurRadiusTitle" app:layout_constraintBottom_toTopOf="@+id/zoomTitle" app:layout_constraintStart_toStartOf="parent" /> <TextView Loading @@ -212,6 +238,15 @@ app:layout_constraintBottom_toBottomOf="@+id/blurRadiusTitle" app:layout_constraintStart_toEndOf="@+id/blurRadiusTitle" /> <TextView android:id="@+id/zoomValue" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" android:layout_marginLeft="8dp" app:layout_constraintBottom_toBottomOf="@+id/zoomTitle" app:layout_constraintStart_toEndOf="@+id/zoomTitle" /> <TextView android:id="@+id/materialOpacityValue" android:layout_width="wrap_content" Loading tests/SilkFX/src/com/android/test/silkfx/materials/GlassActivity.kt +9 −1 Original line number Diff line number Diff line Loading @@ -39,11 +39,13 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { lateinit var noiseOpacitySeekBar: SeekBar lateinit var materialOpacitySeekBar: SeekBar lateinit var scrimOpacitySeekBar: SeekBar lateinit var zoomSeekBar: SeekBar lateinit var blurRadiusSeekBar: SeekBar lateinit var noiseOpacityValue: TextView lateinit var materialOpacityValue: TextView lateinit var scrimOpacityValue: TextView lateinit var blurRadiusValue: TextView lateinit var zoomValue: TextView lateinit var background: Bitmap Loading @@ -58,12 +60,14 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { materialView = requireViewById(R.id.materialView) materialOpacitySeekBar = requireViewById(R.id.materialOpacity) blurRadiusSeekBar = requireViewById(R.id.blurRadius) zoomSeekBar = requireViewById(R.id.zoom) noiseOpacitySeekBar = requireViewById(R.id.noiseOpacity) scrimOpacitySeekBar = requireViewById(R.id.scrimOpacity) noiseOpacityValue = requireViewById(R.id.noiseOpacityValue) materialOpacityValue = requireViewById(R.id.materialOpacityValue) scrimOpacityValue = requireViewById(R.id.scrimOpacityValue) blurRadiusValue = requireViewById(R.id.blurRadiusValue) zoomValue = requireViewById(R.id.zoomValue) background = BitmapFactory.decodeResource(resources, R.drawable.background1) backgroundView.setImageBitmap(background) Loading @@ -75,7 +79,7 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { scrimOpacitySeekBar.setOnSeekBarChangeListener(this) arrayOf(blurRadiusSeekBar, materialOpacitySeekBar, noiseOpacitySeekBar, scrimOpacitySeekBar).forEach { scrimOpacitySeekBar, zoomSeekBar).forEach { it.setOnSeekBarChangeListener(this) onProgressChanged(it, it.progress, fromUser = false) } Loading Loading @@ -104,6 +108,10 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { materialView.scrimOpacity = progress / seekBar.max.toFloat() scrimOpacityValue.text = progress.toString() } zoomSeekBar -> { materialView.zoom = progress / seekBar.max.toFloat() zoomValue.text = progress.toString() } else -> throw IllegalArgumentException("Unknown seek bar") } } Loading tests/SilkFX/src/com/android/test/silkfx/materials/GlassView.kt +12 −1 Original line number Diff line number Diff line Loading @@ -70,6 +70,12 @@ class GlassView(context: Context, attributeSet: AttributeSet) : View(context, at invalidate() } var zoom = 0.0f set(value) { field = value invalidate() } var color = Color.BLACK set(value) { field = value Loading Loading @@ -107,7 +113,12 @@ class GlassView(context: Context, attributeSet: AttributeSet) : View(context, at } override fun onDraw(canvas: Canvas?) { src.set(left, top, right, bottom) src.set(-width/2, -height/2, width/2, height/2) src.scale(1.0f + zoom) val centerX = left + width / 2 val centerY = top + height / 2 src.set(src.left + centerX, src.top + centerY, src.right + centerX, src.bottom + centerY) dst.set(0, 0, width, height) canvas?.drawBitmap(backgroundBitmap, src, dst, blurPaint) canvas?.drawRect(dst, materialPaint) Loading Loading
tests/SilkFX/res/layout/activity_glass.xml +37 −2 Original line number Diff line number Diff line Loading @@ -67,6 +67,21 @@ app:layout_constraintHorizontal_bias="1.0" app:layout_constraintStart_toStartOf="parent" /> <SeekBar android:id="@+id/zoom" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginBottom="16dp" android:layout_marginEnd="12dp" android:layout_marginStart="12dp" android:min="-100" android:max="100" android:progress="-15" app:layout_constraintBottom_toTopOf="@+id/blurRadiusTitle" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="1.0" app:layout_constraintStart_toStartOf="parent" /> <SeekBar android:id="@+id/blurRadius" android:layout_width="0dp" Loading @@ -75,7 +90,7 @@ android:layout_marginEnd="12dp" android:layout_marginStart="12dp" android:max="150" android:progress="50" android:progress="20" app:layout_constraintBottom_toTopOf="@+id/materialOpacityTitle" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="1.0" Loading Loading @@ -131,6 +146,17 @@ app:layout_constraintBottom_toTopOf="@+id/materialOpacity" app:layout_constraintStart_toStartOf="parent" /> <TextView android:id="@+id/zoomTitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="24dp" android:layout_marginBottom="8dp" android:text="Zoom" android:textColor="@android:color/white" app:layout_constraintBottom_toTopOf="@+id/zoom" app:layout_constraintStart_toStartOf="parent" /> <TextView android:id="@+id/blurRadiusTitle" android:layout_width="wrap_content" Loading Loading @@ -200,7 +226,7 @@ android:layout_marginStart="24dp" android:layout_marginBottom="8dp" android:text="Light Material" app:layout_constraintBottom_toTopOf="@+id/blurRadiusTitle" app:layout_constraintBottom_toTopOf="@+id/zoomTitle" app:layout_constraintStart_toStartOf="parent" /> <TextView Loading @@ -212,6 +238,15 @@ app:layout_constraintBottom_toBottomOf="@+id/blurRadiusTitle" app:layout_constraintStart_toEndOf="@+id/blurRadiusTitle" /> <TextView android:id="@+id/zoomValue" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" android:layout_marginLeft="8dp" app:layout_constraintBottom_toBottomOf="@+id/zoomTitle" app:layout_constraintStart_toEndOf="@+id/zoomTitle" /> <TextView android:id="@+id/materialOpacityValue" android:layout_width="wrap_content" Loading
tests/SilkFX/src/com/android/test/silkfx/materials/GlassActivity.kt +9 −1 Original line number Diff line number Diff line Loading @@ -39,11 +39,13 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { lateinit var noiseOpacitySeekBar: SeekBar lateinit var materialOpacitySeekBar: SeekBar lateinit var scrimOpacitySeekBar: SeekBar lateinit var zoomSeekBar: SeekBar lateinit var blurRadiusSeekBar: SeekBar lateinit var noiseOpacityValue: TextView lateinit var materialOpacityValue: TextView lateinit var scrimOpacityValue: TextView lateinit var blurRadiusValue: TextView lateinit var zoomValue: TextView lateinit var background: Bitmap Loading @@ -58,12 +60,14 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { materialView = requireViewById(R.id.materialView) materialOpacitySeekBar = requireViewById(R.id.materialOpacity) blurRadiusSeekBar = requireViewById(R.id.blurRadius) zoomSeekBar = requireViewById(R.id.zoom) noiseOpacitySeekBar = requireViewById(R.id.noiseOpacity) scrimOpacitySeekBar = requireViewById(R.id.scrimOpacity) noiseOpacityValue = requireViewById(R.id.noiseOpacityValue) materialOpacityValue = requireViewById(R.id.materialOpacityValue) scrimOpacityValue = requireViewById(R.id.scrimOpacityValue) blurRadiusValue = requireViewById(R.id.blurRadiusValue) zoomValue = requireViewById(R.id.zoomValue) background = BitmapFactory.decodeResource(resources, R.drawable.background1) backgroundView.setImageBitmap(background) Loading @@ -75,7 +79,7 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { scrimOpacitySeekBar.setOnSeekBarChangeListener(this) arrayOf(blurRadiusSeekBar, materialOpacitySeekBar, noiseOpacitySeekBar, scrimOpacitySeekBar).forEach { scrimOpacitySeekBar, zoomSeekBar).forEach { it.setOnSeekBarChangeListener(this) onProgressChanged(it, it.progress, fromUser = false) } Loading Loading @@ -104,6 +108,10 @@ class GlassActivity : Activity(), SeekBar.OnSeekBarChangeListener { materialView.scrimOpacity = progress / seekBar.max.toFloat() scrimOpacityValue.text = progress.toString() } zoomSeekBar -> { materialView.zoom = progress / seekBar.max.toFloat() zoomValue.text = progress.toString() } else -> throw IllegalArgumentException("Unknown seek bar") } } Loading
tests/SilkFX/src/com/android/test/silkfx/materials/GlassView.kt +12 −1 Original line number Diff line number Diff line Loading @@ -70,6 +70,12 @@ class GlassView(context: Context, attributeSet: AttributeSet) : View(context, at invalidate() } var zoom = 0.0f set(value) { field = value invalidate() } var color = Color.BLACK set(value) { field = value Loading Loading @@ -107,7 +113,12 @@ class GlassView(context: Context, attributeSet: AttributeSet) : View(context, at } override fun onDraw(canvas: Canvas?) { src.set(left, top, right, bottom) src.set(-width/2, -height/2, width/2, height/2) src.scale(1.0f + zoom) val centerX = left + width / 2 val centerY = top + height / 2 src.set(src.left + centerX, src.top + centerY, src.right + centerX, src.bottom + centerY) dst.set(0, 0, width, height) canvas?.drawBitmap(backgroundBitmap, src, dst, blurPaint) canvas?.drawRect(dst, materialPaint) Loading