aboutsummaryrefslogtreecommitdiff
path: root/src/event.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/event.c')
-rw-r--r--src/event.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/event.c b/src/event.c
index b508a1e..e1529ab 100644
--- a/src/event.c
+++ b/src/event.c
@@ -306,6 +306,10 @@ HandleButtonEvent(const XButtonEvent *event)
default:
break;
}
+ if(event->type == ButtonRelease) {
+ PressedBorderButton = BA_NONE;
+ DrawBorder(np, NULL);
+ }
} else if(event->window == rootWindow && event->type == ButtonPress) {
if(!ShowRootMenu(event->button, event->x, event->y)) {
if(event->button == 4) {
@@ -1214,17 +1218,26 @@ DispatchBorderButtonEvent(const XButtonEvent *event, ClientNode *np)
}
break;
case BA_CLOSE:
- if(event->type == ButtonRelease) {
+ if(event->type == ButtonPress) {
+ PressedBorderButton = BA_CLOSE;
+ DrawBorder(np, NULL);
+ } else {
DeleteClient(np);
}
break;
case BA_MAXIMIZE:
- if(event->type == ButtonRelease) {
+ if(event->type == ButtonPress) {
+ PressedBorderButton = BA_MAXIMIZE;
+ DrawBorder(np, NULL);
+ } else {
MaximizeClient(np);
}
break;
case BA_MINIMIZE:
- if(event->type == ButtonRelease) {
+ if(event->type == ButtonPress) {
+ PressedBorderButton = BA_MINIMIZE;
+ DrawBorder(np, NULL);
+ } else {
MinimizeClient(np);
}
break;