Refresh Everything When User Shows Main Window Again

Ensure Toolbar Icon Is Hidden When Main Window Closes
This commit is contained in:
Alan Moon 2025-11-28 12:46:39 -08:00
parent cadd32d9b1
commit ee2c059c77

View File

@ -202,7 +202,7 @@ namespace qtc_net_client_2
}
}
private void frmMain_Resize(object sender, EventArgs e)
private async void frmMain_Resize(object sender, EventArgs e)
{
if (WindowState == FormWindowState.Minimized && _config.MinimizeToTray)
{
@ -216,6 +216,13 @@ namespace qtc_net_client_2
ToolTipIcon.Info);
FirstMinimize = false;
}
} else if (WindowState == FormWindowState.Normal)
{
// refresh everything ig (TODO - find a more optimized way of doing this)
await RefreshUsers();
await RefreshContactsList();
await RefreshRoomsList();
await RefreshStore();
}
}
@ -229,10 +236,13 @@ namespace qtc_net_client_2
private async void frmMain_FormClosed(object sender, FormClosedEventArgs e)
{
DialogResult = DialogResult.OK;
niMain.Visible = false;
// ensure the gateway stops the connection and disposes properly
await _gatewayService.StopAsync();
await _gatewayService.DisposeAsync();
Environment.Exit(0);
}
private async void ctxmChangeStatus_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
@ -394,7 +404,7 @@ namespace qtc_net_client_2
ilStoreThumbnails.Images.Clear();
lvStoreItems.Items.Clear();
var items = await BuildListViewItemsAsync(storeItems);
var items = await BuildStoreListViewItemsAsync(storeItems);
lvStoreItems.BeginUpdate();
try
@ -407,7 +417,7 @@ namespace qtc_net_client_2
}
}
private async Task<List<ListViewItem>> BuildListViewItemsAsync(IEnumerable<StoreItem> storeItems)
private async Task<List<ListViewItem>> BuildStoreListViewItemsAsync(IEnumerable<StoreItem> storeItems)
{
var items = new List<ListViewItem>();