summaryrefslogtreecommitdiff
path: root/src/privatewindow.h
diff options
context:
space:
mode:
authorDennis Kasprzyk <onestone@compiz-fusion.org>2008-09-17 18:30:13 +0200
committerDennis Kasprzyk <onestone@compiz-fusion.org>2008-09-17 18:30:13 +0200
commite73a1df3bf2a5871a2c7fd1a97d3e1a961cfd96b (patch)
treeb250b78b3b11cf6f08176eb566c12d8a255904dc /src/privatewindow.h
parent4be312889b0b9c90a293566be5357a06900581b7 (diff)
downloadmobileperf-e73a1df3bf2a5871a2c7fd1a97d3e1a961cfd96b.tar.gz
mobileperf-e73a1df3bf2a5871a2c7fd1a97d3e1a961cfd96b.tar.bz2
Cleanup CompWindow public API and move header to core/window.h
Diffstat (limited to 'src/privatewindow.h')
-rw-r--r--src/privatewindow.h74
1 files changed, 69 insertions, 5 deletions
diff --git a/src/privatewindow.h b/src/privatewindow.h
index ff31be7..7f89289 100644
--- a/src/privatewindow.h
+++ b/src/privatewindow.h
@@ -2,7 +2,7 @@
#define _PRIVATEWINDOW_H
#include <compiz-core.h>
-#include <compwindow.h>
+#include <core/window.h>
#include <comppoint.h>
#include <core/timer.h>
#include "privatescreen.h"
@@ -11,14 +11,14 @@
((w)->attrib.map_state != IsViewable || \
(w)->attrib.x + (w)->width + (w)->output.right <= 0 || \
(w)->attrib.y + (w)->height + (w)->output.bottom <= 0 || \
- (w)->attrib.x - (w)->output.left >= (int) (w)->screen->size().width () || \
- (w)->attrib.y - (w)->output.top >= (int) (w)->screen->size().height () )
+ (w)->attrib.x - (w)->output.left >= (int) screen->size().width () || \
+ (w)->attrib.y - (w)->output.top >= (int) screen->size().height () )
class PrivateWindow {
public:
- PrivateWindow (CompWindow *window, CompScreen *screen);
+ PrivateWindow (CompWindow *window);
~PrivateWindow ();
void
@@ -133,10 +133,74 @@ class PrivateWindow {
bool reparent ();
void unreparent ();
+ bool handlePingTimeout (unsigned int lastPing);
+
+ void handlePing (int lastPing);
+
+ void applyStartupProperties (CompStartupSequence *s);
+
+ void updateNormalHints ();
+
+ void updateWmHints ();
+
+ void updateClassHints ();
+
+ void updateTransientHint ();
+
+ void updateIconGeometry ();
+
+ Window getClientLeader ();
+
+ char * getStartupId ();
+
+ void updateRegion ();
+
+ bool updateStruts ();
+
+ bool handleSyncAlarm ();
+
+ void configure (XConfigureEvent *ce);
+
+ void configureFrame (XConfigureEvent *ce);
+
+ void circulate (XCirculateEvent *ce);
+
+ unsigned int adjustConfigureRequestForGravity (XWindowChanges *xwc,
+ unsigned int xwcm,
+ int gravity);
+
+
+ void updateSize ();
+
+ bool getUserTime (Time *time);
+
+ void setUserTime (Time time);
+
+ bool allowWindowFocus (unsigned int noFocusMask,
+ Time timestamp);
+
+ void freeIcons ();
+
+ void setDesktop (unsigned int desktop);
+
+ void updateMwmHints ();
+
+ void updateStartupId ();
+
+ void processMap ();
+
+ static unsigned int windowTypeFromString (const char *str);
+
+ static int compareWindowActiveness (CompWindow *w1,
+ CompWindow *w2);
+
+ void setOverrideRedirect (bool overrideRedirect);
+
public:
+ PrivateWindow *priv;
+
CompWindow *window;
- CompScreen *screen;
int refcnt;
Window id;