mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-05-24 19:35:33 +00:00
android, desktop: open chat on first unread, "scroll" to quoted items that were not loaded (#5140)
* android, desktop: infinity scroll rework * group corrections * scroll to quote/unread/top/bottom * changes * changes * changes * changes * better * changes * fix chat closing on desktop * fix reading items counter, scrolling to newly appeared message, removed unneeded items loading, only partially visible items marked read * workaround of showing buttom with arrow down on new messages receiving * rename param * fix tests * comments and removed unused code * performance optimization * optimization for loading more items in small chat * fix loading prev items in loop * workaround to blinking button with counter * terminal scroll fix * different click events for floating buttons * refactor * change * WIP * refactor * refactor * renames * refactor * refactor * change * mark read problem fix * fix tests * fix auto scroll in some situations * fix scroll to quote when it's near the top loaded area * refactor * refactor * rename * rename * fix * alert when quoted message doesn't exist * refactor --------- Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
This commit is contained in:
committed by
GitHub
parent
d1ae3ba2d3
commit
2b155db57d
+2
-1
@@ -15,6 +15,7 @@ import androidx.compose.ui.platform.LocalDensity
|
||||
import androidx.compose.ui.platform.LocalView
|
||||
import chat.simplex.common.AppScreen
|
||||
import chat.simplex.common.model.clear
|
||||
import chat.simplex.common.model.clearAndNotify
|
||||
import chat.simplex.common.views.helpers.*
|
||||
import androidx.compose.ui.platform.LocalContext as LocalContext1
|
||||
import chat.simplex.res.MR
|
||||
@@ -75,7 +76,7 @@ actual class GlobalExceptionsHandler: Thread.UncaughtExceptionHandler {
|
||||
} else if (chatModel.chatId.value != null) {
|
||||
// Since no modals are open, the problem is probably in ChatView
|
||||
chatModel.chatId.value = null
|
||||
chatModel.chatItems.clear()
|
||||
chatModel.chatItems.clearAndNotify()
|
||||
} else {
|
||||
// ChatList, nothing to do. Maybe to show other view except ChatList
|
||||
}
|
||||
|
||||
+7
@@ -44,3 +44,10 @@ actual fun LocalWindowWidth(): Dp {
|
||||
(rect.width() / density).dp
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
actual fun LocalWindowHeight(): Dp {
|
||||
val view = LocalView.current
|
||||
val density = LocalDensity.current
|
||||
return with(density) { view.height.toDp() }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user