aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/FbWinFrame.hh5
-rw-r--r--src/Window.cc22
2 files changed, 9 insertions, 18 deletions
diff --git a/src/FbWinFrame.hh b/src/FbWinFrame.hh
index 2379c24..5832924 100644
--- a/src/FbWinFrame.hh
+++ b/src/FbWinFrame.hh
@@ -19,7 +19,7 @@
19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20// DEALINGS IN THE SOFTWARE. 20// DEALINGS IN THE SOFTWARE.
21 21
22// $Id: FbWinFrame.hh,v 1.13 2003/08/19 16:13:25 fluxgen Exp $ 22// $Id: FbWinFrame.hh,v 1.14 2003/08/24 15:18:09 fluxgen Exp $
23 23
24#ifndef FBWINFRAME_HH 24#ifndef FBWINFRAME_HH
25#define FBWINFRAME_HH 25#define FBWINFRAME_HH
@@ -134,7 +134,7 @@ public:
134 //@} 134 //@}
135 135
136 void reconfigure(); 136 void reconfigure();
137 137 void setUseShape(bool value);
138 /** 138 /**
139 @name accessors 139 @name accessors
140 */ 140 */
@@ -281,6 +281,7 @@ private:
281 }; 281 };
282 ThemeListener m_themelistener; 282 ThemeListener m_themelistener;
283 std::auto_ptr<Shape> m_shape; 283 std::auto_ptr<Shape> m_shape;
284 bool m_disable_shape;
284}; 285};
285 286
286#endif // FBWINFRAME_HH 287#endif // FBWINFRAME_HH
diff --git a/src/Window.cc b/src/Window.cc
index 3920367..1d2423d 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: Window.cc,v 1.220 2003/08/24 10:46:56 fluxgen Exp $ 25// $Id: Window.cc,v 1.221 2003/08/24 15:14:41 fluxgen Exp $
26 26
27#include "Window.hh" 27#include "Window.hh"
28 28
@@ -339,23 +339,13 @@ void FluxboxWindow::init() {
339 339
340 // check for shape extension and whether the window is shaped 340 // check for shape extension and whether the window is shaped
341 m_shaped = false; 341 m_shaped = false;
342#ifdef SHAPE 342
343 if (Fluxbox::instance()->haveShape()) { 343 if (Fluxbox::instance()->haveShape()) {
344 Display *disp = FbTk::App::instance()->display(); 344 Shape::setShapeNotify(winClient());
345 int not_used; 345 m_shaped = Shape::isShaped(winClient());
346 unsigned int not_used2;
347 int shaped;
348 XShapeSelectInput(disp, m_client->window(), ShapeNotifyMask);
349 XShapeQueryExtents(disp, m_client->window(),
350 &shaped, /// bShaped
351 &not_used, &not_used, // xbs, ybs
352 &not_used2, &not_used2, // wbs, hbs
353 &not_used, // cShaped
354 &not_used, &not_used, // xcs, ycs
355 &not_used2, &not_used2); // wcs, hcs
356 m_shaped = (shaped != 0 ? true : false);
357 } 346 }
358#endif // SHAPE 347
348 frame().setUseShape(!m_shaped);
359 349
360 //!! TODO init of client should be better 350 //!! TODO init of client should be better
361 // we don't want to duplicate code here and in attachClient 351 // we don't want to duplicate code here and in attachClient