summaryrefslogtreecommitdiff
path: root/src/window.cpp
diff options
context:
space:
mode:
authorangel <angel@heaven.net>2010-07-29 18:31:46 +0300
committerangel <angel@heaven.net>2010-07-29 18:31:46 +0300
commita16fa16b718c57903033e534503e55cb21faaf11 (patch)
tree876b0f6c2fb9a1413dea5998ecd1a18180de9844 /src/window.cpp
parent3cb3e313a9a24685a85d3004b845908a103259b4 (diff)
downloadzcomp-a16fa16b718c57903033e534503e55cb21faaf11.tar.gz
zcomp-a16fa16b718c57903033e534503e55cb21faaf11.tar.bz2
added --zcomp flag to disable wm, fixed border width calculation
Diffstat (limited to 'src/window.cpp')
-rw-r--r--src/window.cpp29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/window.cpp b/src/window.cpp
index c43b3c5..9913d9e 100644
--- a/src/window.cpp
+++ b/src/window.cpp
@@ -885,8 +885,8 @@ PrivateWindow::updateRegion ()
{
r.x = -priv->attrib.border_width;
r.y = -priv->attrib.border_width;
- r.width = priv->width + priv->attrib.border_width;
- r.height = priv->height + priv->attrib.border_width;
+ r.width = priv->width + priv->attrib.border_width * 2;
+ r.height = priv->height + priv->attrib.border_width * 2;
rects = &r;
n = 1;
@@ -900,8 +900,8 @@ PrivateWindow::updateRegion ()
{
x1 = rects[i].x + priv->attrib.border_width;
y1 = rects[i].y + priv->attrib.border_width;
- x2 = x1 + rects[i].width;
- y2 = y1 + rects[i].height;
+ x2 = x1 + rects[i].width + priv->attrib.border_width;
+ y2 = y1 + rects[i].height + priv->attrib.border_width;
if (x1 < 0)
x1 = 0;
@@ -1193,10 +1193,14 @@ CompWindow::destroy ()
}
+
void
CompWindow::sendConfigureNotify ()
{
XConfigureEvent xev;
+
+ if (zcomp)
+ return;
xev.type = ConfigureNotify;
xev.event = priv->id;
@@ -1268,11 +1272,13 @@ CompWindow::map ()
priv->unmapRefCnt = 1;
priv->attrib.map_state = IsViewable;
+
+ compLogMessage ("zcomp", CompLogLevelWarn, "map %i :: %x", priv->mapNum, id()); // TTX
if (!overrideRedirect ())
screen->priv->setWmState (NormalState, priv->id);
- priv->invisible = true;
+ priv->invisible = zcomp ? false : true;
priv->alive = true;
priv->lastPong = screen->priv->lastPing;
@@ -4952,9 +4958,10 @@ CompWindow::CompWindow (Window id,
priv->id = id;
- XGrabButton (screen->dpy (), AnyButton, AnyModifier, priv->id, true,
- ButtonPressMask | ButtonReleaseMask | ButtonMotionMask,
- GrabModeSync, GrabModeSync, None, None);
+ if (!zcomp)
+ XGrabButton (screen->dpy (), AnyButton, AnyModifier, priv->id, true,
+ ButtonPressMask | ButtonReleaseMask | ButtonMotionMask,
+ GrabModeSync, GrabModeSync, None, None);
priv->alpha = (depth () == 32);
priv->lastPong = screen->priv->lastPing;
@@ -5450,6 +5457,9 @@ PrivateWindow::reparent ()
XEvent e;
CompWindow::Geometry sg = serverGeometry;
Display *dpy = screen->dpy ();
+
+ if (zcomp)
+ return true;
if (frame || attrib.override_redirect)
return false;
@@ -5544,6 +5554,9 @@ PrivateWindow::unreparent ()
XEvent e;
bool alive = true;
XWindowChanges xwc;
+
+ if (zcomp)
+ return;
if (!frame)
return;