Skip to content

Commit

Permalink
Fix crash when toggling an account very fast (dino#1505)
Browse files Browse the repository at this point in the history
            - The switch widget in the account managment
            dialog is now not accepting input while the account
            being enabled is connecting.
  • Loading branch information
eerielili authored and mxlgv committed Aug 5, 2024
1 parent e55207c commit c029948
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions main/src/ui/manage_accounts/dialog.vala
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,7 @@ public class Dialog : Gtk.Dialog {
}

private void populate_grid_data(Account account) {
active_switch.sensitive = false;
active_switch.state_set.disconnect(change_account_state);

picture.model = new ViewModel.CompatAvatarPictureModel(stream_interactor).add_participant(new Conversation(account.bare_jid, account, Conversation.Type.CHAT), account.bare_jid);
Expand Down Expand Up @@ -227,11 +228,14 @@ public class Dialog : Gtk.Dialog {
ConnectionManager.ConnectionState state = stream_interactor.connection_manager.get_state(account);
switch (state) {
case ConnectionManager.ConnectionState.CONNECTING:
active_switch.sensitive = false;
state_label.label = _("Connecting…"); break;
case ConnectionManager.ConnectionState.CONNECTED:
active_switch.sensitive = true;
password_change_btn.sensitive = true;
state_label.label = _("Connected"); break;
case ConnectionManager.ConnectionState.DISCONNECTED:
active_switch.sensitive = true;
password_change_btn.sensitive = false;
state_label.label = _("Disconnected"); break;
}
Expand Down

0 comments on commit c029948

Please sign in to comment.