7b4f2abb8ae7
fix: Smooth TOTP border drain and enlarge URL actions (v2.14.63)
- time
- 2026-08-15 01:36 UTC · 2 months ago
- machine
- koh2
- parent
- 8c6118342fb1
↓ peach-android-7b4f2abb.tar.gzatlas at this save
files changed3 files
VERSION+1 −1app/src/main/java/com/peachpasswords/ui/vault/AdditionalUrlsEditor.kt+4 −4app/src/main/java/com/peachpasswords/ui/vault/TotpInlineEdit.kt+27 −31app/src/main/java/com/peachpasswords/ui/vault/AdditionalUrlsEditor.kt+4 −4
@@ -70,22 +70,22 @@7070 "+ add",7171 color = accent,7272 fontFamily = PeachType.Mono,73- fontSize = 9.sp,73+ fontSize = 11.sp,7474 modifier = Modifier7575 .clip(RoundedCornerShape(6.dp))7676 .clickable(onClick = onAdd)77- .padding(horizontal = PeachSpacing.sm, vertical = 6.dp),77+ .padding(horizontal = PeachSpacing.sm, vertical = 8.dp),7878 )7979 }8080 Text(8181 "×",8282 color = peachColors.T2,8383 fontFamily = PeachType.Mono,84- fontSize = 16.sp,84+ fontSize = 20.sp,8585 modifier = Modifier8686 .clip(RoundedCornerShape(6.dp))8787 .clickable { onRemove(index) }88- .padding(start = PeachSpacing.sm, end = 2.dp, top = 6.dp, bottom = 6.dp),88+ .padding(start = PeachSpacing.sm, end = PeachSpacing.sm, top = 7.dp, bottom = 7.dp),8989 )9090 }9191 if (index < urls.lastIndex) {app/src/main/java/com/peachpasswords/ui/vault/TotpInlineEdit.kt+27 −31
@@ -61,17 +61,14 @@6161 import androidx.compose.ui.Modifier6262 import androidx.compose.ui.draw.clip6363 import androidx.compose.ui.draw.drawBehind64-import androidx.compose.ui.graphics.drawscope.drawIntoCanvas6564 import androidx.compose.ui.geometry.CornerRadius6665 import androidx.compose.ui.geometry.Offset6766 import androidx.compose.ui.geometry.Rect6867 import androidx.compose.ui.geometry.RoundRect6968 import androidx.compose.ui.graphics.Path70-import androidx.compose.ui.graphics.PathEffect71-import androidx.compose.ui.graphics.Paint72-import androidx.compose.ui.graphics.PaintingStyle69+import androidx.compose.ui.graphics.Brush70+import androidx.compose.ui.graphics.Color7371 import androidx.compose.ui.graphics.SolidColor74-import androidx.compose.ui.graphics.StrokeCap7572 import androidx.compose.ui.graphics.drawscope.Stroke7673 import androidx.compose.ui.graphics.graphicsLayer7774 import androidx.compose.ui.input.pointer.pointerInput@@ -170,13 +167,11 @@170167 .clip(shape)171168 .drawBehind {172169 val radius = 8.dp.toPx()173- val perimeter = 2f * (size.width - radius * 2f) +174- 2f * (size.height - radius * 2f) +175- (2f * Math.PI.toFloat() * radius)176170 val baseStroke = 1.dp.toPx()177171 val ringPath = Path().apply {178172 addRoundRect(RoundRect(Rect(Offset.Zero, size), radius, radius))179173 }174+ val accentWidth = (size.width * liquidFraction.value).coerceAtLeast(1f)180175 drawRoundRect(181176 color = surfaceCard,182177 cornerRadius = CornerRadius(radius),@@ -186,31 +181,32 @@186181 cornerRadius = CornerRadius(radius),187182 style = Stroke(width = baseStroke),188183 )189- drawIntoCanvas { canvas ->190- canvas.drawPath(184+ drawRoundRect(185+ color = accent.copy(alpha = 0.74f * liquidFraction.value + edgeFlash.value * 0.12f),186+ cornerRadius = CornerRadius(radius),187+ style = Stroke(width = 1.5.dp.toPx()),188+ )189+ drawPath(190+ ringPath,191+ brush = Brush.horizontalGradient(192+ colorStops = arrayOf(193+ 0f to accent.copy(alpha = 0.74f + edgeFlash.value * 0.12f),194+ 0.82f to accent.copy(alpha = 0.74f + edgeFlash.value * 0.12f),195+ 1f to Color.Transparent,196+ ),197+ startX = 0f,198+ endX = accentWidth,199+ ),200+ style = Stroke(201+ width = 1.5.dp.toPx(),202+ ),203+ )204+ if (edgeFlash.value > 0f) {205+ drawPath(191206 ringPath,192- Paint().apply {193- color = accent.copy(alpha = 0.74f + edgeFlash.value * 0.12f)194- style = PaintingStyle.Stroke195- strokeWidth = 1.5.dp.toPx()196- strokeCap = StrokeCap.Round197- pathEffect = PathEffect.dashPathEffect(198- floatArrayOf((perimeter * liquidFraction.value).coerceAtLeast(0.1f), perimeter),199- )200- },207+ color = accent.copy(alpha = edgeFlash.value * 0.16f),208+ style = Stroke(width = 4.dp.toPx()),201209 )202- }203- if (edgeFlash.value > 0f) {204- drawIntoCanvas { canvas ->205- canvas.drawPath(206- ringPath,207- Paint().apply {208- color = accent.copy(alpha = edgeFlash.value * 0.16f)209- style = PaintingStyle.Stroke210- strokeWidth = 4.dp.toPx()211- },212- )213- }214210 }215211 }216212 .padding(horizontal = 14.dp, vertical = 10.dp),