From 99e5516ee21f6d69086dc41a6b0ea65f7bf37b72 Mon Sep 17 00:00:00 2001 From: Steve Daulton Date: Sun, 21 May 2017 16:55:31 +0100 Subject: [PATCH] Save built-in browser size --- src/widgets/LinkingHtmlWindow.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/widgets/LinkingHtmlWindow.cpp b/src/widgets/LinkingHtmlWindow.cpp index 49b0d5906..3f0c1c2b8 100644 --- a/src/widgets/LinkingHtmlWindow.cpp +++ b/src/widgets/LinkingHtmlWindow.cpp @@ -21,10 +21,13 @@ #include #include #include +#include +#include #include "LinkingHtmlWindow.h" #include "../HelpText.h" #include "../FileNames.h" +#include "../Prefs.h" #include "ErrorDialog.h" #include "HelpSystem.h" @@ -39,7 +42,20 @@ END_EVENT_TABLE() BrowserDialog::BrowserDialog(wxWindow *pParent, const wxString &title) : wxDialogWrapper{ pParent, ID, title, wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER /*| wxMAXIMIZE_BOX */ } { + int width, height; + const int minWidth = 400; + const int minHeight = 250; + gPrefs->Read(wxT("/GUI/BrowserWidth"), &width, minWidth); + gPrefs->Read(wxT("/GUI/BrowserHeight"), &height, minHeight); + + if (width < minWidth || width > wxSystemSettings::GetMetric(wxSYS_SCREEN_X)) + width = minWidth; + if (height < minHeight || height > wxSystemSettings::GetMetric(wxSYS_SCREEN_Y)) + height = minHeight; + + SetMinSize(wxSize(minWidth, minHeight)); + SetSize(wxDefaultPosition.x, wxDefaultPosition.y, width, height, wxSIZE_AUTO); } void BrowserDialog::OnForward(wxCommandEvent & WXUNUSED(event)) @@ -63,6 +79,10 @@ void BrowserDialog::OnClose(wxCommandEvent & WXUNUSED(event)) } auto parent = GetParent(); + gPrefs->Write(wxT("/GUI/BrowserWidth"), GetSize().GetX()); + gPrefs->Write(wxT("/GUI/BrowserHeight"), GetSize().GetY()); + gPrefs->Flush(); + #ifdef __WXMAC__ auto grandparent = GetParent()->GetParent(); #endif