Log Android gallery selections and finish image gestures safely
This commit is contained in:
1 parent
cdc5474279
commit
17dd06221a
2 files changed
+7
No files matched your search
@@ -72,7 +72,9 @@ fun ZoomableImage(bitmap: Bitmap, modifier: Modifier = Modifier, contentScale: C
|
||||
var swipe=0f; var swiped=false; var canSwipe=zoomScale==1f
|
||||
do {
|
||||
val event=awaitPointerEvent()
|
||||
if (event.changes.none { it.pressed }) break
|
||||
val centroid=event.calculateCentroid(useCurrent=false)
|
||||
if (!centroid.x.isFinite() || !centroid.y.isFinite()) continue
|
||||
val pan=event.calculatePan(); val zoom=event.calculateZoom()
|
||||
if (event.changes.count { it.pressed }!=1 || zoom!=1f) canSwipe=false
|
||||
if (canSwipe && !swiped && navigate!=null && kotlin.math.abs(pan.x)>kotlin.math.abs(pan.y)) {
|
||||
|
||||
@@ -31,6 +31,10 @@ fun AvatarViewerScreen(group: String?, owner: Long, name: String, onClose: () ->
|
||||
val members by repository.members.collectAsState()
|
||||
val revision by repository.revision.collectAsState()
|
||||
val account=repository.accountId
|
||||
DisposableEffect(group,owner,account) {
|
||||
LogManager.addLog("INFO","Avatar","Viewer opened group=$group owner=$owner account=$account")
|
||||
onDispose { LogManager.addLog("INFO","Avatar","Viewer closed group=$group owner=$owner") }
|
||||
}
|
||||
val source=remember(members,group,owner) { repository.gallerySource(group,owner) }
|
||||
var files by remember(group,owner,account) { mutableStateOf(emptyList<String>()) }
|
||||
var selected by rememberSaveable(group,owner,account) { mutableStateOf("") }
|
||||
@@ -59,6 +63,7 @@ fun AvatarViewerScreen(group: String?, owner: Long, name: String, onClose: () ->
|
||||
original=null; failed=false
|
||||
val (channel,member)=source ?: return@LaunchedEffect
|
||||
if (selected.isEmpty()) return@LaunchedEffect
|
||||
LogManager.addLog("INFO","Avatar","Viewer selected group=$channel owner=$owner server=${member.avatarServer} file=$selected")
|
||||
coroutineScope {
|
||||
launch {
|
||||
try { previews=previews+(selected to repository.loadAvatar(channel,member.copy(avatarFile=selected),false)) }
|
||||
|
||||
Reference in new issue
Block a user