]> Dogcows Code - chaz/openbox/blobdiff - src/client.cc
shape works again. updating the delete_window protocol update the decor.
[chaz/openbox] / src / client.cc
index 54f6561b1d6dcc9154da99b05e8642891aaaf5b5..289fcf165112e66e1163f15fbc96894c3a65596a 100644 (file)
@@ -339,7 +339,8 @@ void OBClient::updateProtocols()
       if (proto[i] == property->atom(otk::OBProperty::wm_delete_window)) {
         _decorations |= Decor_Close;
         _functions |= Func_Close;
-        // XXX: update the decor?
+        if (frame)
+          frame->adjustSize(); // update the decorations
       } else if (proto[i] == property->atom(otk::OBProperty::wm_take_focus))
         // if this protocol is requested, then the window will be notified
         // by the window manager whenever it receives focus
@@ -785,16 +786,18 @@ void OBClient::clientMessageHandler(const XClientMessageEvent &e)
              property->atom(otk::OBProperty::net_active_window)) {
     focus();
     Openbox::instance->screen(_screen)->restack(true, this); // raise
+  } else {
   }
 }
 
 
-#if defined(SHAPE) || defined(DOXYGEN_IGNORE)
+#if defined(SHAPE)
 void OBClient::shapeHandler(const XShapeEvent &e)
 {
   otk::OtkEventHandler::shapeHandler(e);
   
   _shaped = e.shaped;
+  frame->adjustShape();
 }
 #endif
 
This page took 0.025505 seconds and 4 git commands to generate.