diff --git a/checkin_notes b/checkin_notes index e52c708807..ec13444347 100644 --- a/checkin_notes +++ b/checkin_notes @@ -5418,4 +5418,10 @@ Charlie 22 Jul 2010 BOINCGUIApp.cpp, .h BOINCTaskBar.cpp DlgEventLog.cpp, .h - \ No newline at end of file + +Charlie 22 Jul 2010 + - MGR: Don't save bogus window dimensions when iconized. + + clientgui/ + AdvancedFrame.cpp + sg_DlgMessages.cpp diff --git a/clientgui/AdvancedFrame.cpp b/clientgui/AdvancedFrame.cpp index 5b97761381..f8e38a5f1f 100644 --- a/clientgui/AdvancedFrame.cpp +++ b/clientgui/AdvancedFrame.cpp @@ -997,13 +997,16 @@ void CAdvancedFrame::SaveWindowDimensions() { pConfig->SetPath(strBaseConfigLocation); - pConfig->Write(wxT("WindowIconized"), IsIconized()); + bool iconized = IsIconized(); + pConfig->Write(wxT("WindowIconized"), iconized); pConfig->Write(wxT("WindowMaximized"), IsMaximized()); - pConfig->Write(wxT("Width"), GetSize().GetWidth()); - pConfig->Write(wxT("Height"), GetSize().GetHeight()); - pConfig->Write(wxT("XPos"), GetPosition().x); - pConfig->Write(wxT("YPos"), GetPosition().y); - + if (!iconized) { + pConfig->Write(wxT("Width"), GetSize().GetWidth()); + pConfig->Write(wxT("Height"), GetSize().GetHeight()); + pConfig->Write(wxT("XPos"), GetPosition().x); + pConfig->Write(wxT("YPos"), GetPosition().y); + } + wxLogTrace(wxT("Function Start/End"), wxT("CAdvancedFrame::SaveWindowDimensions - Function End")); } diff --git a/clientgui/sg_DlgMessages.cpp b/clientgui/sg_DlgMessages.cpp index c3036bcfef..301973356c 100644 --- a/clientgui/sg_DlgMessages.cpp +++ b/clientgui/sg_DlgMessages.cpp @@ -509,15 +509,18 @@ void CDlgMessages::SaveWindowDimensions() { pConfig->SetPath(strBaseConfigLocation); - pConfig->Write(wxT("WindowIconized"), IsIconized()); + bool iconized = IsIconized(); + pConfig->Write(wxT("WindowIconized"), iconized); pConfig->Write(wxT("WindowMaximized"), IsMaximized()); - pConfig->Write(wxT("Width"), GetSize().GetWidth()); - pConfig->Write(wxT("Height"), GetSize().GetHeight()); + if (!iconized) { + pConfig->Write(wxT("Width"), GetSize().GetWidth()); + pConfig->Write(wxT("Height"), GetSize().GetHeight()); #ifdef __WXMAC__ - pConfig->Write(wxT("XPos"), GetPosition().x); - pConfig->Write(wxT("YPos"), GetPosition().y); + pConfig->Write(wxT("XPos"), GetPosition().x); + pConfig->Write(wxT("YPos"), GetPosition().y); #endif // ! __WXMAC__ + } }