diff --git a/workspace.cpp b/workspace.cpp index 45cf15e626..8cd0d6055c 100644 --- a/workspace.cpp +++ b/workspace.cpp @@ -1198,6 +1198,7 @@ void Workspace::focusToNull() void Workspace::setShowingDesktop(bool showing) { + const bool changed = showing != showing_desktop; rootInfo()->setShowingDesktop(showing); showing_desktop = showing; if (Client* desk = findDesktop(true, VirtualDesktopManager::self()->current())) { @@ -1206,6 +1207,8 @@ void Workspace::setShowingDesktop(bool showing) if (showing_desktop) requestFocus(desk); } + if (changed) + emit showingDesktopChanged(showing); } void Workspace::disableGlobalShortcutsForClient(bool disable) diff --git a/workspace.h b/workspace.h index 999a1c24f2..4acefb4fc8 100644 --- a/workspace.h +++ b/workspace.h @@ -452,6 +452,7 @@ Q_SIGNALS: void propertyNotify(long a); void configChanged(); void reinitializeCompositing(); + void showingDesktopChanged(bool showing); /** * This signels is emitted when ever the stacking order is change, ie. a window is risen * or lowered