mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-03 12:37:31 +01:00
Add some optional ViewPager debugging
Change-Id: I30332b57779e1093d06d2d7a07bca0ca5342de15
This commit is contained in:
parent
45613792bf
commit
1287770b16
@ -10,6 +10,7 @@ object DbgUtil {
|
||||
const val DBG_SHOW_READ_TRACKING = "DBG_SHOW_READ_TRACKING"
|
||||
const val DBG_TIMELINE_CHUNKS = "DBG_TIMELINE_CHUNKS"
|
||||
const val DBG_SHOW_DISPLAY_INDEX = "DBG_SHOW_DISPLAY_INDEX"
|
||||
const val DBG_VIEW_PAGER = "DBG_VIEW_PAGER"
|
||||
|
||||
private val prefs = HashMap<String, Boolean>()
|
||||
|
||||
@ -18,6 +19,7 @@ object DbgUtil {
|
||||
DBG_SHOW_READ_TRACKING,
|
||||
DBG_TIMELINE_CHUNKS,
|
||||
DBG_SHOW_DISPLAY_INDEX,
|
||||
DBG_VIEW_PAGER,
|
||||
)
|
||||
|
||||
fun load(context: Context) {
|
||||
|
@ -38,6 +38,7 @@ import com.airbnb.mvrx.fragmentViewModel
|
||||
import com.airbnb.mvrx.withState
|
||||
import im.vector.app.AppStateHandler
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import de.spiritcroc.matrixsdk.util.DbgUtil
|
||||
import im.vector.app.R
|
||||
import im.vector.app.core.epoxy.LayoutManagerStateRestorer
|
||||
import im.vector.app.core.extensions.cleanup
|
||||
@ -166,6 +167,8 @@ class RoomListFragment @Inject constructor(
|
||||
val spaceId = it.invoke()?.space()?.roomId
|
||||
onSwitchSpace(spaceId)
|
||||
}
|
||||
|
||||
updateDebugView()
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
@ -174,6 +177,18 @@ class RoomListFragment @Inject constructor(
|
||||
persistExpandStatus()
|
||||
}
|
||||
|
||||
private fun updateDebugView() {
|
||||
if (DbgUtil.isDbgEnabled(DbgUtil.DBG_VIEW_PAGER)) {
|
||||
views.scRoomListDebugView.isVisible = true
|
||||
withState(roomListViewModel) {
|
||||
val currentSpace = it.currentRoomGrouping.invoke()?.space()
|
||||
views.scRoomListDebugView.text = "explicit: ${roomListParams.explicitSpaceId}\nexpanded: $expandStatusSpaceId\ngrouping: ${currentSpace?.roomId} | ${currentSpace?.displayName}"
|
||||
}
|
||||
} else {
|
||||
views.scRoomListDebugView.isVisible = false
|
||||
}
|
||||
}
|
||||
|
||||
private fun refreshCollapseStates() {
|
||||
val sectionsCount = adapterInfosList.count { !it.sectionHeaderAdapter.roomsSectionData.isHidden }
|
||||
roomListViewModel.sections.forEachIndexed { index, roomsSection ->
|
||||
@ -631,6 +646,7 @@ class RoomListFragment @Inject constructor(
|
||||
expandStatusSpaceId = spaceId
|
||||
loadExpandStatus()
|
||||
}
|
||||
updateDebugView()
|
||||
}
|
||||
|
||||
private fun persistExpandStatus() {
|
||||
|
@ -20,6 +20,7 @@ class VectorSettingsScDebuggingFragment @Inject constructor(
|
||||
DbgPref(DbgUtil.DBG_SHOW_DISPLAY_INDEX, R.string.settings_sc_dbg_show_display_index),
|
||||
DbgPref(DbgUtil.DBG_READ_MARKER, R.string.settings_sc_dbg_read_marker),
|
||||
DbgPref(DbgUtil.DBG_SHOW_READ_TRACKING, R.string.settings_sc_dbg_show_read_tracking),
|
||||
DbgPref(DbgUtil.DBG_VIEW_PAGER, R.string.settings_sc_dbg_view_pager),
|
||||
)
|
||||
|
||||
override fun bindPref() {
|
||||
|
@ -7,13 +7,29 @@
|
||||
android:layout_height="match_parent"
|
||||
android:background="?android:colorBackground">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/roomListView"
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:overScrollMode="always"
|
||||
tools:itemCount="5"
|
||||
tools:listitem="@layout/item_room" />
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/scRoomListDebugView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/Widget.Vector.TextView.Caption"
|
||||
android:fontFamily="monospace"
|
||||
android:padding="2dp"
|
||||
android:visibility="gone"
|
||||
tools:text="SC-dbg" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/roomListView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:overScrollMode="always"
|
||||
tools:itemCount="5"
|
||||
tools:listitem="@layout/item_room" />
|
||||
</LinearLayout>
|
||||
|
||||
<im.vector.app.features.home.room.list.widget.NotifsFabMenuView
|
||||
android:id="@+id/createChatFabMenu"
|
||||
|
@ -174,10 +174,11 @@
|
||||
<!-- SC debugging -->
|
||||
<string name="settings_sc_debugging">Schildi-debugging</string>
|
||||
<string name="settings_sc_debugging_summary">Enable additional logs or debugging features</string>
|
||||
<string name="settings_sc_dbg_read_marker">Debug read markers</string>
|
||||
<string name="settings_sc_dbg_timeline_chunks">Debug timeline consistency</string>
|
||||
<string name="settings_sc_dbg_read_marker">Read marker debugging</string>
|
||||
<string name="settings_sc_dbg_timeline_chunks">Timeline consistency debugging</string>
|
||||
<string name="settings_sc_dbg_show_display_index">Show displayIndex in timeline</string>
|
||||
<string name="settings_sc_dbg_show_read_tracking">Show read tracking</string>
|
||||
<string name="settings_sc_dbg_view_pager">ViewPager debugging</string>
|
||||
|
||||
<!-- SC labs -->
|
||||
<string name="settings_upstream_labs">Element features</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user