summaryrefslogtreecommitdiff
path: root/internal/client/ui/core/state
diff options
context:
space:
mode:
authorKyren223 <Kyren223@proton.me>2025-07-21 13:46:40 +0300
committerKyren223 <Kyren223@proton.me>2025-07-21 13:46:40 +0300
commit5f6845c3997bd5478a1f51a8f108b71afa427a72 (patch)
tree1a713c28657f15715f337286cc770e93d2739fd6 /internal/client/ui/core/state
parent3fcaf100334897e314a86a53576639410055989b (diff)
Added the ability to delete users
Diffstat (limited to 'internal/client/ui/core/state')
-rw-r--r--internal/client/ui/core/state/state.go25
1 files changed, 24 insertions, 1 deletions
diff --git a/internal/client/ui/core/state/state.go b/internal/client/ui/core/state/state.go
index 16b92a9..97a6de8 100644
--- a/internal/client/ui/core/state/state.go
+++ b/internal/client/ui/core/state/state.go
@@ -84,6 +84,29 @@ var Data UserData = UserData{
var UserID *snowflake.ID = nil
+func Reset() {
+ UserID = nil
+ Data = UserData{
+ Networks: []snowflake.ID{},
+ Signals: []snowflake.ID{},
+ }
+ State = state{
+ ChatState: map[snowflake.ID]ChatState{},
+ LastFrequency: map[snowflake.ID]snowflake.ID{},
+ Messages: map[snowflake.ID]*btree.BTreeG[data.Message]{},
+ Networks: map[snowflake.ID]data.Network{},
+ Frequencies: map[snowflake.ID][]data.Frequency{},
+ Members: map[snowflake.ID]map[snowflake.ID]data.Member{},
+ Users: map[snowflake.ID]data.User{},
+ TrustedUsers: map[snowflake.ID]ed25519.PublicKey{},
+ BlockedUsers: map[snowflake.ID]struct{}{},
+ BlockingUsers: map[snowflake.ID]struct{}{},
+ LastReadMessages: map[snowflake.ID]*snowflake.ID{},
+ RemoteNotifications: map[snowflake.ID]int{},
+ LocalNotifications: map[snowflake.ID]int{},
+ }
+}
+
func UpdateNetworks(info *packet.NetworksInfo) {
networks := State.Networks
@@ -382,7 +405,7 @@ func SendFinalData() {
// HACK: Give a small grace period for the writes to be processed
// Tweak this value as needed
- time.Sleep(20 * time.Millisecond)
+ // time.Sleep(20 * time.Millisecond)
// TODO:
// I think the issue is that it's random which of these 2 requests goes