private void ShipListForm_FormClosing(object sender, FormClosingEventArgs e)\r
{\r
e.Cancel = true;\r
- if (!Visible)\r
- return;\r
var config = _config.ShipList;\r
StoreShipGroupToConfig();\r
var bounds = WindowState == FormWindowState.Normal ? Bounds : RestoreBounds;\r
config.Location = bounds.Location;\r
config.Size = bounds.Size;\r
config.Mode = (string)comboBoxGroup.SelectedItem;\r
- if (e.CloseReason != CloseReason.FormOwnerClosing)\r
- {\r
- Hide();\r
- _config.Save();\r
- }\r
+ config.Visible = Visible && WindowState == FormWindowState.Normal;\r
+ Hide();\r
}\r
\r
private void StoreShipGroupToConfig()\r
_mainLabels.CreateNDockLabels(panelDock, labelNDock_Click);\r
panelRepairList.CreateLabels(panelRepairList_Click);\r
labelPresetAkashiTimer.BackColor = ShipLabel.ColumnColors[1];\r
- _listForm = new ListForm(_sniffer, _config) {Owner = this};\r
+ _listForm = new ListForm(_sniffer, _config);\r
_notificationManager = new NotificationManager(Alarm);\r
_config.Load();\r
_proxyManager = new ProxyManager(_config, this);\r
}\r
}\r
}\r
- e.Cancel = false;\r
+ _listForm.Close();\r
_sniffer.FlashLog();\r
_config.Location = (WindowState == FormWindowState.Normal ? Bounds : RestoreBounds).Location;\r
_config.ShowHpInPercent = _mainLabels.ShowHpInPercent;\r
- _config.ShipList.Visible = _listForm.Visible && _listForm.WindowState == FormWindowState.Normal;\r
_config.Save();\r
_sniffer.SaveState();\r
_proxyManager.Shutdown();\r
\r
private void MainForm_Resize(object sender, EventArgs e)\r
{\r
- ShowInTaskbar = !(_config.HideOnMinimized && WindowState == FormWindowState.Minimized);\r
+ _listForm.WindowState = WindowState;\r
+ _listForm.ShowInTaskbar = ShowInTaskbar = !(_config.HideOnMinimized && WindowState == FormWindowState.Minimized);\r
}\r
\r
private void notifyIconMain_MouseDoubleClick(object sender, MouseEventArgs e)\r