[Status Bar] Don't mess with status bar visibility in extensions

"Extensions" is additions to the status bar like free space bar
and zoom slider which should hide while loading.

The status bar itself should only show/hide based on the global setting.

BUG: 443132
This commit is contained in:
Kai Uwe Broulik 2021-11-28 21:44:56 +01:00
parent 077fdfc074
commit ec8f757f9c

View file

@ -124,6 +124,7 @@ DolphinStatusBar::DolphinStatusBar(QWidget* parent) :
topLayout->addWidget(m_progressTextLabel); topLayout->addWidget(m_progressTextLabel);
topLayout->addWidget(m_progressBar); topLayout->addWidget(m_progressBar);
setVisible(GeneralSettings::showStatusBar());
setExtensionsVisible(true); setExtensionsVisible(true);
setWhatsThis(xi18nc("@info:whatsthis Statusbar", "<para>This is " setWhatsThis(xi18nc("@info:whatsthis Statusbar", "<para>This is "
"the <emphasis>Statusbar</emphasis>. It contains three elements " "the <emphasis>Statusbar</emphasis>. It contains three elements "
@ -245,6 +246,7 @@ int DolphinStatusBar::zoomLevel() const
void DolphinStatusBar::readSettings() void DolphinStatusBar::readSettings()
{ {
setVisible(GeneralSettings::showStatusBar());
setExtensionsVisible(true); setExtensionsVisible(true);
} }
@ -321,15 +323,13 @@ void DolphinStatusBar::updateZoomSliderToolTip(int zoomLevel)
void DolphinStatusBar::setExtensionsVisible(bool visible) void DolphinStatusBar::setExtensionsVisible(bool visible)
{ {
bool showStatusBar = visible;
bool showSpaceInfo = visible; bool showSpaceInfo = visible;
bool showZoomSlider = visible; bool showZoomSlider = visible;
if (visible) { if (visible) {
showStatusBar = GeneralSettings::showStatusBar();
showSpaceInfo = GeneralSettings::showSpaceInfo(); showSpaceInfo = GeneralSettings::showSpaceInfo();
showZoomSlider = GeneralSettings::showZoomSlider(); showZoomSlider = GeneralSettings::showZoomSlider();
} }
setVisible(showStatusBar);
m_spaceInfo->setShown(showSpaceInfo); m_spaceInfo->setShown(showSpaceInfo);
m_spaceInfo->setVisible(showSpaceInfo); m_spaceInfo->setVisible(showSpaceInfo);
m_zoomSlider->setVisible(showZoomSlider); m_zoomSlider->setVisible(showZoomSlider);