summaryrefslogtreecommitdiff
path: root/winrules.c
diff options
context:
space:
mode:
Diffstat (limited to 'winrules.c')
-rw-r--r--winrules.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/winrules.c b/winrules.c
index a2f6437..ce16134 100644
--- a/winrules.c
+++ b/winrules.c
@@ -486,21 +486,20 @@ winrulesHandleEvent (CompDisplay *d,
WRAP (wd, d, handleEvent, winrulesHandleEvent);
}
-static unsigned int
-winrulesGetAllowedActionsForWindow (CompWindow *w)
+static void
+winrulesGetAllowedActionsForWindow (CompWindow *w,
+ unsigned int *setActions,
+ unsigned int *clearActions)
{
- unsigned int actions;
-
WINRULES_SCREEN (w->screen);
WINRULES_WINDOW (w);
UNWRAP (ws, w->screen, getAllowedActionsForWindow);
- actions = (*w->screen->getAllowedActionsForWindow) (w);
+ (*w->screen->getAllowedActionsForWindow) (w, setActions, clearActions);
WRAP (ws, w->screen, getAllowedActionsForWindow,
winrulesGetAllowedActionsForWindow);
- return actions & ww->allowedActions;
-
+ *clearActions |= ~ww->allowedActions;
}
static Bool