From 9bd598b00efc0d66958c794d060c6d42c8f7e855 Mon Sep 17 00:00:00 2001 From: ShaopengLin Date: Sun, 16 Jun 2024 17:13:06 -0400 Subject: [PATCH] Saves settings tab for reopen Settings tab is saved to be reopened on startup. --- src/kiwixapp.cpp | 4 +++- src/tabbar.cpp | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/kiwixapp.cpp b/src/kiwixapp.cpp index 83dbab4..f50e262 100644 --- a/src/kiwixapp.cpp +++ b/src/kiwixapp.cpp @@ -207,7 +207,9 @@ void KiwixApp::restoreTabs() { for (const auto &zimUrl : tabsToOpen) { - if (zimUrl.isEmpty()) + if (zimUrl == "SettingsTab") + getTabWidget()->openOrSwitchToSettingsTab(); + else if (zimUrl.isEmpty()) getTabWidget()->createNewTab(true, true); else openUrl(QUrl(zimUrl)); diff --git a/src/tabbar.cpp b/src/tabbar.cpp index 0fe83d6..25f9c6f 100644 --- a/src/tabbar.cpp +++ b/src/tabbar.cpp @@ -81,6 +81,7 @@ void TabBar::openOrSwitchToSettingsTab() insertTab(index,QIcon(":/icons/settings.svg"), gt("settings")); setCloseTabButton(index); setCurrentIndex(index); + KiwixApp::instance()->saveListOfOpenTabs(); } void TabBar::setStackedWidget(QStackedWidget *widget) { @@ -275,6 +276,8 @@ QStringList TabBar::getTabUrls() const { { if (ZimView* zv = qobject_cast(mp_stackedWidget->widget(index))) idList.push_back(zv->getWebView()->url().url()); + else if (qobject_cast(mp_stackedWidget->widget(index))) + idList.push_back("SettingsTab"); } return idList; }