diff --git a/src/shell/panelview.cpp b/src/shell/panelview.cpp index 949f6fad8..e686b8ef0 100644 --- a/src/shell/panelview.cpp +++ b/src/shell/panelview.cpp @@ -328,9 +328,9 @@ void PanelView::setVisibilityMode(PanelView::VisibilityMode mode) //life is vastly simpler if we ensure we're visible now show(); - disconnect(containment(), SIGNAL(activate()), this, SLOT(unhide())); + disconnect(containment(), &Plasma::Applet::activated, this, &PanelView::unhide); if (!(mode == NormalPanel || mode == WindowsGoBelow)) { - connect(containment(), SIGNAL(activate()), this, SLOT(unhide())); + connect(containment(), &Plasma::Applet::activated, this, &PanelView::unhide); } config().writeEntry("panelVisibility", (int)mode); @@ -630,6 +630,11 @@ bool PanelView::event(QEvent *e) return View::event(e); } +void PanelView::unhide() +{ + m_unhideTimer.start(); +} + void PanelView::updateStruts() { if (!containment() || !screen()) { diff --git a/src/shell/panelview.h b/src/shell/panelview.h index 40881454d..dd3e45a6c 100644 --- a/src/shell/panelview.h +++ b/src/shell/panelview.h @@ -110,6 +110,7 @@ private Q_SLOTS: void positionPanel(); void restore(); void updateUnhideTrigger(); + void unhide(); private: