diff options
Diffstat (limited to 'gui')
-rw-r--r-- | gui/gui.cpp | 6 | ||||
-rw-r--r-- | gui/pages.cpp | 4 | ||||
-rw-r--r-- | gui/pages.hpp | 1 |
3 files changed, 9 insertions, 2 deletions
diff --git a/gui/gui.cpp b/gui/gui.cpp index 08178fc17..d99764aea 100644 --- a/gui/gui.cpp +++ b/gui/gui.cpp @@ -613,8 +613,10 @@ static int runPages(const char *page_name, const int stop_on_page_done) DataManager::SetValue("tw_page_done", 0); DataManager::SetValue("tw_gui_done", 0); - if (page_name) + if (page_name) { + PageManager::SetStartPage(page_name); gui_changePage(page_name); + } // Raise the curtain if (gCurtain != NULL) @@ -945,7 +947,7 @@ error: extern "C" int gui_start(void) { - return gui_startPage(NULL, 1, 0); + return gui_startPage("main", 1, 0); } extern "C" int gui_startPage(const char *page_name, const int allow_commands, int stop_on_page_done) diff --git a/gui/pages.cpp b/gui/pages.cpp index ddf53a92c..def262998 100644 --- a/gui/pages.cpp +++ b/gui/pages.cpp @@ -1565,6 +1565,10 @@ void PageManager::RequestReload() { mReloadTheme = true; } +void PageManager::SetStartPage(const std::string& page_name) { + mStartPage = page_name; +} + int PageManager::ChangePage(std::string name) { DataManager::SetValue("tw_operation_state", 0); diff --git a/gui/pages.hpp b/gui/pages.hpp index b2f25801f..bb521c1d2 100644 --- a/gui/pages.hpp +++ b/gui/pages.hpp @@ -140,6 +140,7 @@ public: static void ReleasePackage(std::string name); static int RunReload(); static void RequestReload(); + static void SetStartPage(const std::string& page_name); // Used for actions and pages static int ChangePage(std::string name); |