forked from qt-creator/qt-creator
Welcome: Do not save default value to settings
Task-number: QTCREATORBUG-24762 Change-Id: I9a587c76dfabee1cd707e6861de5bbc0e3e7583e Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
@@ -121,6 +121,7 @@ private:
|
|||||||
QList<IWelcomePage *> m_pluginList;
|
QList<IWelcomePage *> m_pluginList;
|
||||||
QList<WelcomePageButton *> m_pageButtons;
|
QList<WelcomePageButton *> m_pageButtons;
|
||||||
Id m_activePage;
|
Id m_activePage;
|
||||||
|
Id m_defaultPage;
|
||||||
};
|
};
|
||||||
|
|
||||||
class WelcomePlugin final : public ExtensionSystem::IPlugin
|
class WelcomePlugin final : public ExtensionSystem::IPlugin
|
||||||
@@ -358,8 +359,10 @@ WelcomeMode::WelcomeMode()
|
|||||||
|
|
||||||
WelcomeMode::~WelcomeMode()
|
WelcomeMode::~WelcomeMode()
|
||||||
{
|
{
|
||||||
QSettings *settings = ICore::settings();
|
QtcSettings *settings = ICore::settings();
|
||||||
settings->setValue(currentPageSettingsKeyC, m_activePage.toSetting());
|
settings->setValueWithDefault(currentPageSettingsKeyC,
|
||||||
|
m_activePage.toSetting(),
|
||||||
|
m_defaultPage.toSetting());
|
||||||
delete m_modeWidget;
|
delete m_modeWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -371,12 +374,13 @@ void WelcomeMode::initPlugins()
|
|||||||
for (IWelcomePage *page : IWelcomePage::allWelcomePages())
|
for (IWelcomePage *page : IWelcomePage::allWelcomePages())
|
||||||
addPage(page);
|
addPage(page);
|
||||||
|
|
||||||
if (!m_activePage.isValid() && !m_pageButtons.isEmpty()) {
|
if (!m_pageButtons.isEmpty()) {
|
||||||
const int welcomeIndex = Utils::indexOf(m_pluginList,
|
const int welcomeIndex = Utils::indexOf(m_pluginList,
|
||||||
Utils::equal(&IWelcomePage::id,
|
Utils::equal(&IWelcomePage::id,
|
||||||
Utils::Id("Examples")));
|
Utils::Id("Examples")));
|
||||||
const int defaultIndex = welcomeIndex >= 0 ? welcomeIndex : 0;
|
const int defaultIndex = welcomeIndex >= 0 ? welcomeIndex : 0;
|
||||||
m_activePage = m_pluginList.at(defaultIndex)->id();
|
m_defaultPage = m_pluginList.at(defaultIndex)->id();
|
||||||
|
if (!m_activePage.isValid())
|
||||||
m_pageButtons.at(defaultIndex)->click();
|
m_pageButtons.at(defaultIndex)->click();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user