Skip to content

Commit 458bcb4

Browse files
committed
Centralize self_email into RpcClient as single source of truth
1 parent 2871dd4 commit 458bcb4

5 files changed

Lines changed: 12 additions & 26 deletions

File tree

src/event_handler.vala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ namespace Dc {
99
private uint messages_reload_timer = 0;
1010

1111
public int active_chat_id { get; set; default = 0; }
12-
public string? self_email { get; set; default = null; }
1312

1413
public signal void chats_reload_fired ();
1514
public signal void messages_reload_fired ();
@@ -113,7 +112,7 @@ namespace Dc {
113112
try {
114113
var msg_obj = yield rpc.get_message (rpc.account_id, msg_id);
115114
if (msg_obj == null) return;
116-
var msg = RpcClient.parse_message (msg_obj, self_email);
115+
var msg = RpcClient.parse_message (msg_obj, rpc.self_email);
117116
if (msg.is_outgoing || msg.is_info) return;
118117

119118
string title = msg.sender_name ?? msg.sender_address ?? "New message";

src/message_actions.vala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ namespace Dc {
99
private unowned ComposeBar compose_bar;
1010
private unowned SettingsManager settings;
1111

12-
public string? self_email { get; set; default = null; }
1312

1413
public MessageActions (Window window, RpcClient rpc,
1514
GLib.ListStore message_store,
@@ -190,7 +189,7 @@ namespace Dc {
190189
try {
191190
var msg_obj = yield rpc.get_message (rpc.account_id, msg_id);
192191
if (msg_obj == null) return;
193-
var msg = RpcClient.parse_message (msg_obj, self_email);
192+
var msg = RpcClient.parse_message (msg_obj, rpc.self_email);
194193
int idx = find_message_index (message_store, msg_id);
195194
if (idx >= 0) {
196195
message_store.remove (idx);

src/pinned_messages_manager.vala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ namespace Dc {
1212
private unowned GLib.ListStore message_store;
1313
private unowned SettingsManager settings;
1414

15-
public string? self_email { get; set; default = null; }
1615

1716
public PinnedMessagesManager (GLib.ListStore message_store,
1817
SettingsManager settings) {
@@ -103,7 +102,7 @@ namespace Dc {
103102
try {
104103
var msg_obj = yield rpc.get_message (rpc.account_id, pin_id);
105104
if (msg_obj != null) {
106-
var fetched = RpcClient.parse_message (msg_obj, self_email);
105+
var fetched = RpcClient.parse_message (msg_obj, rpc.self_email);
107106
text = fetched.text;
108107
sender = fetched.is_outgoing ? "You" : (fetched.sender_name ?? "");
109108
}

src/rpc_client.vala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ namespace Dc {
1717

1818
public bool is_connected { get; private set; default = false; }
1919
public int account_id { get; set; default = 0; }
20+
public string? self_email { get; set; default = null; }
2021

2122
/* ---- Connection lifecycle ---- */
2223

src/window.vala

Lines changed: 8 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ namespace Dc {
4545
if (events != null) events.active_chat_id = value;
4646
}
4747
}
48-
private string? self_email = null;
4948
private bool stick_to_bottom = true;
5049
private Json.Array? all_msg_ids = null;
5150
private uint loaded_start_index = 0;
@@ -408,17 +407,11 @@ namespace Dc {
408407
chat_menu = new ChatContextMenu (this, rpc, chat_store);
409408
msg_actions = new MessageActions (this, rpc, message_store, pinned,
410409
compose_bar, settings);
411-
msg_actions.self_email = self_email;
412-
pinned.self_email = self_email;
413-
414410
if (rpc.account_id > 0) {
415411
try {
416-
self_email = yield rpc.get_config (rpc.account_id, "addr");
417-
msg_actions.self_email = self_email;
418-
pinned.self_email = self_email;
419-
events.self_email = self_email;
412+
rpc.self_email = yield rpc.get_config (rpc.account_id, "addr");
420413
} catch (Error ce) {
421-
self_email = null;
414+
rpc.self_email = null;
422415
}
423416
yield load_chats ();
424417
yield load_profile_avatar ();
@@ -611,7 +604,7 @@ namespace Dc {
611604
string k = mid.to_string ();
612605
if (map.has_member (k)) {
613606
result.add (RpcClient.parse_message (
614-
map.get_object_member (k), self_email));
607+
map.get_object_member (k), rpc.self_email));
615608
}
616609
}
617610
}
@@ -763,7 +756,7 @@ namespace Dc {
763756
if (msg_id > 0) {
764757
var msg_obj = yield rpc.get_message (rpc.account_id, msg_id);
765758
if (msg_obj != null) {
766-
var msg = RpcClient.parse_message (msg_obj, self_email);
759+
var msg = RpcClient.parse_message (msg_obj, rpc.self_email);
767760
insert_message_sorted (msg);
768761
scroll_to_bottom ();
769762
}
@@ -822,7 +815,7 @@ namespace Dc {
822815
try {
823816
var msg_obj = yield rpc.get_message (rpc.account_id, msg_id);
824817
if (msg_obj != null) {
825-
var msg = RpcClient.parse_message (msg_obj, self_email);
818+
var msg = RpcClient.parse_message (msg_obj, rpc.self_email);
826819
msg.highlighted = true;
827820
insert_message_sorted (msg);
828821
}
@@ -1011,21 +1004,16 @@ namespace Dc {
10111004

10121005
public async void reload_active_account () {
10131006
if (rpc.account_id <= 0) {
1014-
self_email = null;
1015-
if (msg_actions != null) msg_actions.self_email = null;
1016-
pinned.self_email = null;
1007+
rpc.self_email = null;
10171008
content_stack.visible_child_name = "empty";
10181009
current_chat_id = 0;
10191010
return;
10201011
}
10211012
try {
1022-
self_email = yield rpc.get_config (rpc.account_id, "addr");
1013+
rpc.self_email = yield rpc.get_config (rpc.account_id, "addr");
10231014
} catch (Error e) {
1024-
self_email = null;
1015+
rpc.self_email = null;
10251016
}
1026-
if (msg_actions != null) msg_actions.self_email = self_email;
1027-
pinned.self_email = self_email;
1028-
if (events != null) events.self_email = self_email;
10291017
current_chat_id = 0;
10301018
content_stack.visible_child_name = "empty";
10311019
yield load_chats ();

0 commit comments

Comments
 (0)