summaryrefslogtreecommitdiff
path: root/unity-shared
diff options
authorAndrea Azzarone <azzaronea@gmail.com>2014-10-22 17:26:56 +0200
committerAndrea Azzarone <azzaronea@gmail.com>2014-10-22 17:26:56 +0200
commit362e5e3baa21c940d4aa9390dc33359bc4e64b16 (patch)
tree441cc6b76ceeae820466a628368106e182009239 /unity-shared
parent908c2e6969fd1365ccf5ba0b34de345bfae90bdd (diff)
Minor changes suggested by Marco's review.
(bzr r3874.1.16)
Diffstat (limited to 'unity-shared')
-rw-r--r--unity-shared/PluginAdapter.cpp24
1 files changed, 9 insertions, 15 deletions
diff --git a/unity-shared/PluginAdapter.cpp b/unity-shared/PluginAdapter.cpp
index 3c7f3d4f0..ea310bb3c 100644
--- a/unity-shared/PluginAdapter.cpp
+++ b/unity-shared/PluginAdapter.cpp
@@ -1457,28 +1457,22 @@ void PluginAdapter::OnWindowClosed(CompWindow *w)
// XXX Don't use that outside lockscreen controller!
void PluginAdapter::UnmapAllNoNuxWindowsSync()
{
- bool one_window_is_mapped = false;
for (auto const& window : m_Screen->windows())
{
- if (!IsNuxWindow(window) && window->isMapped())
+ if (!IsNuxWindow(window) && (window->isMapped() || window->isViewable()))
{
- XUnmapWindow(m_Screen->dpy(), window->id());
- one_window_is_mapped = true;
- }
- }
-
- // Wait!
- while(one_window_is_mapped)
- {
- one_window_is_mapped = false;
- for (auto const& window : m_Screen->windows())
- {
- if (!IsNuxWindow(window) && window->isMapped())
+ if (window->overrideRedirect())
{
- one_window_is_mapped = true;
+ XUnmapWindow(m_Screen->dpy(), window->id());
+ }
+ else
+ {
+ window->hide();
}
}
}
+
+ XSync(m_Screen->dpy(), False);
}
bool PluginAdapter::IsNuxWindow(CompWindow* value)