Author: olivier
Date: 2008-05-18 16:14:26 +0000 (Sun, 18 May 2008)
New Revision: 26972
Modified:
xfwm4/trunk/src/compositor.c
Log:
Fix a bug in overlays counting causing xscreensaver window to remain invisible
(cont. bug #3849)
Modified: xfwm4/trunk/src/compositor.c
===================================================================
--- xfwm4/trunk/src/compositor.c 2008-05-17 22:35:56 UTC (rev 26971)
+++ xfwm4/trunk/src/compositor.c 2008-05-18 16:14:26 UTC (rev 26972)
@@ -1762,18 +1762,15 @@
DisplayInfo *display_info;
g_return_if_fail (cw != NULL);
- TRACE ("entering map_win 0x%lx\n", cw->id);
+ TRACE ("entering map_win 0x%lx", cw->id);
screen_info = cw->screen_info;
display_info = screen_info->display_info;
if (!WIN_IS_REDIRECTED(cw))
{
- /* To be safe, we count only the fullscreen overlays */
- if (WIN_IS_FULLSCREEN(cw) && WIN_IS_VIEWABLE (cw))
- {
- screen_info->wins_unredirected++;
- }
+ screen_info->wins_unredirected++;
+ TRACE ("Mapping unredirected window 0x%lx, wins_unredirected increased
to %i", cw->id, screen_info->wins_unredirected);
#if HAVE_OVERLAYS
if ((screen_info->wins_unredirected == 1) &&
(display_info->have_overlays))
{
@@ -1781,7 +1778,6 @@
XUnmapWindow (myScreenGetXDisplay (screen_info),
screen_info->overlay);
}
#endif /* HAVE_OVERLAYS */
- TRACE ("Mapping unredirected window 0x%lx, wins_unredirected increased
to %i", cw->id, screen_info->wins_unredirected);
return;
}
@@ -1824,7 +1820,7 @@
screen_info = cw->screen_info;
display_info = screen_info->display_info;
- if (!WIN_IS_REDIRECTED(cw) && WIN_IS_FULLSCREEN(cw) &&
(screen_info->wins_unredirected > 0))
+ if (!WIN_IS_REDIRECTED(cw) && (screen_info->wins_unredirected > 0))
{
screen_info->wins_unredirected--;
TRACE ("Unmapped window 0x%lx, wins_unredirected decreased to %i",
cw->id, screen_info->wins_unredirected);
@@ -1849,6 +1845,8 @@
cw->viewable = FALSE;
cw->damaged = FALSE;
+ cw->redirected = TRUE;
+
free_win_data (cw, FALSE);
}
_______________________________________________
Xfce4-commits mailing list
[email protected]
http://foo-projects.org/mailman/listinfo/xfce4-commits