Skip to content

Commit 5b1d8e9

Browse files
committed
alpha-slider tracker: contrast fixed.
1 parent 3919111 commit 5b1d8e9

File tree

4 files changed

+23
-7
lines changed

4 files changed

+23
-7
lines changed

library/src/main/java/io/syslogic/colorpicker/compose/AlphaPainter.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,26 @@ class AlphaPainter(intrinsicSize: Size) : BasePainter(intrinsicSize) {
4545

4646
/* Horizontal Tracker */
4747
val p: Point = alphaToPoint(value)
48+
49+
/* Outer rectangle (dark) */
4850
drawRoundRect(
49-
color = Color(trackerStrokeColor),
51+
color = Color(trackerStrokeColorOuter),
5052
size = Size(alphaTrackerWidth, rect.height()),
5153
topLeft = Offset(p.x - (alphaTrackerWidth / 2), rect.top),
5254
style = Stroke(width = trackerStrokeWidth,
5355
pathEffect = PathEffect.cornerPathEffect(trackerCornerRadius)
5456
)
5557
)
58+
59+
/* Inner rectangle (light) */
60+
drawRoundRect(
61+
color = Color(trackerStrokeColorInner),
62+
size = Size(alphaTrackerWidth - 2, rect.height() - 2),
63+
topLeft = Offset(p.x - (alphaTrackerWidth / 2) + 1, rect.top + 1),
64+
style = Stroke(width = trackerStrokeWidth,
65+
pathEffect = PathEffect.cornerPathEffect(trackerCornerRadius)
66+
)
67+
)
5668
}
5769
}
5870

library/src/main/java/io/syslogic/colorpicker/compose/BasePainter.kt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,11 @@ abstract class BasePainter(override val intrinsicSize: Size) : Painter() {
4545
/** Tracker Style: Stroke Width */
4646
var trackerStrokeWidth by Delegates.notNull<Float>()
4747

48-
/** Tracker Style: Stroke Color */
49-
var trackerStrokeColor by Delegates.notNull<Int>()
48+
/** Tracker Style: Outer Stroke Color */
49+
var trackerStrokeColorOuter by Delegates.notNull<Int>()
50+
51+
/** Tracker Style: Inner Stroke Color */
52+
var trackerStrokeColorInner by Delegates.notNull<Int>()
5053

5154
/** Native Canvas */
5255
protected lateinit var canvas: NativeCanvas
@@ -67,7 +70,8 @@ abstract class BasePainter(override val intrinsicSize: Size) : Painter() {
6770
/* Tracker Styles */
6871
trackerCornerRadius = 2F * density
6972
trackerStrokeWidth = 1F * density
70-
trackerStrokeColor = Color.Black.hashCode()
73+
trackerStrokeColorOuter = Color.Black.hashCode()
74+
trackerStrokeColorInner = Color.White.hashCode()
7175

7276
/* Border Styles */
7377
borderCornerRadius = 2F

library/src/main/java/io/syslogic/colorpicker/compose/HuePainter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class HuePainter(intrinsicSize: Size) : BasePainter(intrinsicSize) {
4747
val p: Point = hueToPoint(value)
4848
val offset = Offset(rect.left, p.y - (hueTrackerHeight / 2))
4949
drawRoundRect(
50-
color = Color(trackerStrokeColor),
50+
color = Color(trackerStrokeColorOuter),
5151
size = Size(rect.width(), hueTrackerHeight),
5252
topLeft = offset,
5353
style = Stroke(width = trackerStrokeWidth,

library/src/main/java/io/syslogic/colorpicker/compose/SatValPainter.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,11 @@ class SatValPainter(intrinsicSize: Size) : BasePainter(intrinsicSize) {
6767
tracker.isAntiAlias = true
6868

6969
/* Outer circle (dark) */
70-
tracker.color = trackerStrokeColor
70+
tracker.color = trackerStrokeColorOuter
7171
canvas.drawCircle(p.x.toFloat(), p.y.toFloat(), satValTrackerRadius1, tracker)
7272

7373
/* Inner circle (light) */
74-
tracker.color = Color.White.hashCode()
74+
tracker.color = trackerStrokeColorInner
7575
canvas.drawCircle(p.x.toFloat(), p.y.toFloat(), satValTrackerRadius2, tracker)
7676
}
7777

0 commit comments

Comments
 (0)