summaryrefslogtreecommitdiff
path: root/dialog.c
diff options
context:
space:
mode:
Diffstat (limited to 'dialog.c')
-rw-r--r--dialog.c37
1 files changed, 20 insertions, 17 deletions
diff --git a/dialog.c b/dialog.c
index effbc39..7911cba 100644
--- a/dialog.c
+++ b/dialog.c
@@ -181,24 +181,27 @@ dialogHandleEvent (CompDisplay *d,
if (w && w->transientFor)
{
CompWindow *ww = findWindowAtDisplay (w->screen->display, w->transientFor);
- DialogWindow *dww = GET_DIALOG_WINDOW (ww, \
+ if (ww)
+ {
+ DialogWindow *dww = GET_DIALOG_WINDOW (ww, \
GET_DIALOG_SCREEN (ww->screen, \
GET_DIALOG_DISPLAY (ww->screen->display)));
- if (dww->faded)
- {
- CompWindow *www;
- int othertrans = 0;
- for (www = w->screen->windows; www; www = www->next)
- {
- if (www->transientFor == ww->id && w->id != www->id &&
- matchEval(dialogGetDialogtypes (www->screen->display),www))
- othertrans++;
- }
- if (!othertrans)
+ if (dww->faded)
{
- dww->faded = FALSE;
- dww->animate = ANIMATE_UP;
- addWindowDamage (ww);
+ CompWindow *www;
+ int othertrans = 0;
+ for (www = w->screen->windows; www; www = www->next)
+ {
+ if (www->transientFor == ww->id && w->id != www->id &&
+ matchEval(dialogGetDialogtypes (www->screen->display),www))
+ othertrans++;
+ }
+ if (!othertrans)
+ {
+ dww->faded = FALSE;
+ dww->animate = ANIMATE_UP;
+ addWindowDamage (ww);
+ }
}
}
}
@@ -350,7 +353,7 @@ dialogFiniWindow (CompPlugin *p,
{
DIALOG_WINDOW (w);
DIALOG_SCREEN (w->screen);
- /* if (w->transientFor)
+ if (w->transientFor)
{
CompWindow *ww = findWindowAtDisplay (w->screen->display, w->transientFor);
if (ww)
@@ -365,7 +368,7 @@ dialogFiniWindow (CompPlugin *p,
addWindowDamage (ww);
}
}
- } */
+ }
w->base.privates[ds->windowPrivateIndex].ptr = 0;
free (dw);
}