mirror of
https://github.com/permissionlesstech/bitchat-android.git
synced 2026-07-24 23:25:19 +00:00
no announce logging
This commit is contained in:
@@ -13,6 +13,7 @@ object DebugPreferenceManager {
|
||||
private const val KEY_GATT_SERVER = "gatt_server_enabled"
|
||||
private const val KEY_GATT_CLIENT = "gatt_client_enabled"
|
||||
private const val KEY_PACKET_RELAY = "packet_relay_enabled"
|
||||
private const val KEY_HIDE_ANNOUNCE = "hide_announce_logging"
|
||||
private const val KEY_MAX_CONN_OVERALL = "max_connections_overall"
|
||||
private const val KEY_MAX_CONN_SERVER = "max_connections_server"
|
||||
private const val KEY_MAX_CONN_CLIENT = "max_connections_client"
|
||||
@@ -35,6 +36,13 @@ object DebugPreferenceManager {
|
||||
fun getGattServerEnabled(default: Boolean = true): Boolean =
|
||||
if (ready()) prefs.getBoolean(KEY_GATT_SERVER, default) else default
|
||||
|
||||
fun getHideAnnounceLogging(default: Boolean = false): Boolean =
|
||||
if (ready()) prefs.getBoolean(KEY_HIDE_ANNOUNCE, default) else default
|
||||
|
||||
fun setHideAnnounceLogging(value: Boolean) {
|
||||
if (ready()) prefs.edit().putBoolean(KEY_HIDE_ANNOUNCE, value).apply()
|
||||
}
|
||||
|
||||
fun setGattServerEnabled(value: Boolean) {
|
||||
if (ready()) prefs.edit().putBoolean(KEY_GATT_SERVER, value).apply()
|
||||
}
|
||||
|
||||
@@ -41,6 +41,9 @@ class DebugSettingsManager private constructor() {
|
||||
val maxConnectionsOverall: StateFlow<Int> = _maxConnectionsOverall.asStateFlow()
|
||||
private val _maxServerConnections = MutableStateFlow(8)
|
||||
val maxServerConnections: StateFlow<Int> = _maxServerConnections.asStateFlow()
|
||||
private val _hideAnnounceLogging = MutableStateFlow(false)
|
||||
val hideAnnounceLogging: StateFlow<Boolean> = _hideAnnounceLogging.asStateFlow()
|
||||
|
||||
private val _maxClientConnections = MutableStateFlow(8)
|
||||
val maxClientConnections: StateFlow<Int> = _maxClientConnections.asStateFlow()
|
||||
|
||||
@@ -51,6 +54,7 @@ class DebugSettingsManager private constructor() {
|
||||
_gattServerEnabled.value = DebugPreferenceManager.getGattServerEnabled(true)
|
||||
_gattClientEnabled.value = DebugPreferenceManager.getGattClientEnabled(true)
|
||||
_packetRelayEnabled.value = DebugPreferenceManager.getPacketRelayEnabled(true)
|
||||
_hideAnnounceLogging.value = DebugPreferenceManager.getHideAnnounceLogging(false)
|
||||
_maxConnectionsOverall.value = DebugPreferenceManager.getMaxConnectionsOverall(8)
|
||||
_maxServerConnections.value = DebugPreferenceManager.getMaxConnectionsServer(8)
|
||||
_maxClientConnections.value = DebugPreferenceManager.getMaxConnectionsClient(8)
|
||||
@@ -115,6 +119,14 @@ class DebugSettingsManager private constructor() {
|
||||
addDebugMessage(DebugMessage.SystemMessage("🔇 Verbose logging disabled"))
|
||||
}
|
||||
}
|
||||
|
||||
fun setHideAnnounceLogging(enabled: Boolean) {
|
||||
DebugPreferenceManager.setHideAnnounceLogging(enabled)
|
||||
_hideAnnounceLogging.value = enabled
|
||||
addDebugMessage(DebugMessage.SystemMessage(
|
||||
if (enabled) "🙈 Hiding ANNOUNCE logs" else "👀 Showing ANNOUNCE logs"
|
||||
))
|
||||
}
|
||||
|
||||
fun setGattServerEnabled(enabled: Boolean) {
|
||||
DebugPreferenceManager.setGattServerEnabled(enabled)
|
||||
@@ -223,6 +235,10 @@ class DebugSettingsManager private constructor() {
|
||||
|
||||
fun logIncomingPacket(senderPeerID: String, senderNickname: String?, messageType: String, viaDeviceId: String?) {
|
||||
if (verboseLoggingEnabled.value) {
|
||||
// Optional filter: hide ANNOUNCE logs if enabled
|
||||
if (hideAnnounceLogging.value && messageType.equals("ANNOUNCE", ignoreCase = true)) {
|
||||
return
|
||||
}
|
||||
val who = if (!senderNickname.isNullOrBlank()) "$senderNickname ($senderPeerID)" else senderPeerID
|
||||
val routeInfo = if (!viaDeviceId.isNullOrBlank()) " via $viaDeviceId" else " (direct)"
|
||||
addDebugMessage(DebugMessage.PacketEvent(
|
||||
@@ -288,11 +304,16 @@ class DebugSettingsManager private constructor() {
|
||||
val ttlStr = ttl?.toString() ?: "?"
|
||||
|
||||
if (verboseLoggingEnabled.value) {
|
||||
addDebugMessage(
|
||||
DebugMessage.RelayEvent(
|
||||
"♻️ Relayed $packetType by $senderLabel from $fromName (${fromPeerID ?: "?"}, $fromAddr) to $toName (${toPeerID ?: "?"}, $toAddr) with TTL $ttlStr"
|
||||
// Optional filter: hide ANNOUNCE relay logs if enabled
|
||||
if (hideAnnounceLogging.value && packetType.equals("ANNOUNCE", ignoreCase = true)) {
|
||||
// Still update stats below, but do not emit a debug message
|
||||
} else {
|
||||
addDebugMessage(
|
||||
DebugMessage.RelayEvent(
|
||||
"♻️ Relayed $packetType by $senderLabel from $fromName (${fromPeerID ?: "?"}, $fromAddr) to $toName (${toPeerID ?: "?"}, $toAddr) with TTL $ttlStr"
|
||||
)
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
// Update rolling statistics
|
||||
|
||||
@@ -120,6 +120,21 @@ fun DebugSettingsSheet(
|
||||
fontSize = 11.sp,
|
||||
color = colorScheme.onSurface.copy(alpha = 0.7f)
|
||||
)
|
||||
// New: hide ANNOUNCE logs toggle
|
||||
Row(verticalAlignment = Alignment.CenterVertically) {
|
||||
Text("hide announce logs", fontFamily = FontFamily.Monospace, modifier = Modifier.weight(1f))
|
||||
val hideAnnounce by manager.hideAnnounceLogging.collectAsState()
|
||||
Switch(
|
||||
checked = hideAnnounce,
|
||||
onCheckedChange = { manager.setHideAnnounceLogging(it) }
|
||||
)
|
||||
}
|
||||
Text(
|
||||
"suppress debug log entries for received/relayed ANNOUNCE packets",
|
||||
fontFamily = FontFamily.Monospace,
|
||||
fontSize = 11.sp,
|
||||
color = colorScheme.onSurface.copy(alpha = 0.7f)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user