aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfluxgen <fluxgen>2003-05-14 14:37:06 (GMT)
committerfluxgen <fluxgen>2003-05-14 14:37:06 (GMT)
commit615ec14ab26bdff2458457a26c5adfe743154873 (patch)
tree3c9b11ceca1b8a45c223ae07b8cd14cc8cb60fb9
parent4195e26d01a37e7e3b131da2b196941c3ce78b12 (diff)
downloadfluxbox-615ec14ab26bdff2458457a26c5adfe743154873.zip
fluxbox-615ec14ab26bdff2458457a26c5adfe743154873.tar.bz2
added better shape support
-rw-r--r--src/fluxbox.cc10
-rw-r--r--src/fluxbox.hh7
2 files changed, 13 insertions, 4 deletions
diff --git a/src/fluxbox.cc b/src/fluxbox.cc
index ba8994f..ecec988 100644
--- a/src/fluxbox.cc
+++ b/src/fluxbox.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: fluxbox.cc,v 1.146 2003/05/14 12:10:54 fluxgen Exp $ 25// $Id: fluxbox.cc,v 1.147 2003/05/14 14:37:06 fluxgen Exp $
26 26
27#include "fluxbox.hh" 27#include "fluxbox.hh"
28 28
@@ -454,6 +454,12 @@ Fluxbox::Fluxbox(int argc, char **argv, const char *dpy_name, const char *rcfile
454 cursor.lr_angle = XCreateFontCursor(disp, XC_lr_angle); 454 cursor.lr_angle = XCreateFontCursor(disp, XC_lr_angle);
455 455
456 s_singleton = this; 456 s_singleton = this;
457 m_have_shape = false;
458 m_shape_eventbase = 0;
459#ifdef SHAPE
460 int shape_err;
461 m_have_shape = XShapeQueryExtension(disp, &m_shape_eventbase, &shape_err);
462#endif // SHAPE
457 463
458#ifdef HAVE_RANDR 464#ifdef HAVE_RANDR
459 // get randr event type 465 // get randr event type
@@ -877,7 +883,7 @@ void Fluxbox::handleEvent(XEvent * const e) {
877 BScreen *scr = searchScreen(e->xany.window); 883 BScreen *scr = searchScreen(e->xany.window);
878 if (scr != 0) 884 if (scr != 0)
879 scr->updateSize(); 885 scr->updateSize();
880 } 886 }
881#endif // HAVE_RANDR 887#endif // HAVE_RANDR
882 888
883 } 889 }
diff --git a/src/fluxbox.hh b/src/fluxbox.hh
index a3c4f81..e0cfc6c 100644
--- a/src/fluxbox.hh
+++ b/src/fluxbox.hh
@@ -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: fluxbox.hh,v 1.58 2003/05/13 00:18:28 fluxgen Exp $ 25// $Id: fluxbox.hh,v 1.59 2003/05/14 14:35:39 fluxgen Exp $
26 26
27#ifndef FLUXBOX_HH 27#ifndef FLUXBOX_HH
28#define FLUXBOX_HH 28#define FLUXBOX_HH
@@ -189,7 +189,8 @@ public:
189 typedef std::vector<Fluxbox::Titlebar> TitlebarList; 189 typedef std::vector<Fluxbox::Titlebar> TitlebarList;
190 /// @return whether the timestamps on the menu changed 190 /// @return whether the timestamps on the menu changed
191 bool menuTimestampsChanged() const; 191 bool menuTimestampsChanged() const;
192 192 bool haveShape() const { return m_have_shape; }
193 int shapeEventbase() const { return m_shape_eventbase; }
193private: 194private:
194 struct cursor { 195 struct cursor {
195 Cursor session, move, ll_angle, lr_angle; 196 Cursor session, move, ll_angle, lr_angle;
@@ -273,6 +274,8 @@ private:
273 bool m_shutdown; 274 bool m_shutdown;
274 int m_server_grabs; 275 int m_server_grabs;
275 int m_randr_event_type; ///< the type number of randr event 276 int m_randr_event_type; ///< the type number of randr event
277 int m_shape_eventbase; ///< event base for shape events
278 bool m_have_shape; ///< if shape is supported by server
276 const char *m_RC_PATH; 279 const char *m_RC_PATH;
277 const char *m_RC_INIT_FILE; 280 const char *m_RC_INIT_FILE;
278}; 281};