aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Window.cc25
1 files changed, 17 insertions, 8 deletions
diff --git a/src/Window.cc b/src/Window.cc
index 9e8bbd2..1d85dea 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -1405,11 +1405,11 @@ void FluxboxWindow::getMWMHints(void) {
1405 unsigned long num, len; 1405 unsigned long num, len;
1406 Fluxbox *fluxbox = Fluxbox::instance(); 1406 Fluxbox *fluxbox = Fluxbox::instance();
1407 if (XGetWindowProperty(display, client.window, 1407 if (XGetWindowProperty(display, client.window,
1408 fluxbox->getMotifWMHintsAtom(), 0, 1408 fluxbox->getMotifWMHintsAtom(), 0,
1409 PropMwmHintsElements, false, 1409 PropMwmHintsElements, false,
1410 fluxbox->getMotifWMHintsAtom(), &atom_return, 1410 fluxbox->getMotifWMHintsAtom(), &atom_return,
1411 &format, &num, &len, 1411 &format, &num, &len,
1412 (unsigned char **) &client.mwm_hint) == Success && 1412 (unsigned char **) &client.mwm_hint) == Success &&
1413 client.mwm_hint) 1413 client.mwm_hint)
1414 if (num == PropMwmHintsElements) { 1414 if (num == PropMwmHintsElements) {
1415 if (client.mwm_hint->flags & MwmHintsDecorations) 1415 if (client.mwm_hint->flags & MwmHintsDecorations)
@@ -1437,10 +1437,10 @@ void FluxboxWindow::getMWMHints(void) {
1437 } 1437 }
1438 1438
1439 if (client.mwm_hint->flags & MwmHintsFunctions) 1439 if (client.mwm_hint->flags & MwmHintsFunctions)
1440 if (client.mwm_hint->functions & MwmFuncAll) 1440 if (client.mwm_hint->functions & MwmFuncAll) {
1441 functions.resize = functions.move = functions.iconify = 1441 functions.resize = functions.move = functions.iconify =
1442 functions.maximize = functions.close = true; 1442 functions.maximize = functions.close = true;
1443 else { 1443 } else {
1444 functions.resize = functions.move = functions.iconify = 1444 functions.resize = functions.move = functions.iconify =
1445 functions.maximize = functions.close = false; 1445 functions.maximize = functions.close = false;
1446 1446
@@ -2688,7 +2688,16 @@ void FluxboxWindow::propertyNotifyEvent(Atom atom) {
2688 default: 2688 default:
2689 if (atom == fluxbox->getWMProtocolsAtom()) { 2689 if (atom == fluxbox->getWMProtocolsAtom()) {
2690 getWMProtocols(); 2690 getWMProtocols();
2691 2691
2692 if (decorations.close && !findTitleButton(Fluxbox::Close)) {
2693 createButton(Fluxbox::Close, FluxboxWindow::closePressed_cb,
2694 FluxboxWindow::closeButton_cb, FluxboxWindow::closeDraw_cb);
2695
2696 if (decorations.titlebar)
2697 positionButtons(true);
2698 if (windowmenu)
2699 windowmenu->reconfigure();
2700 }
2692 } 2701 }
2693 2702
2694 break; 2703 break;