summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Screen.cc57
1 files changed, 32 insertions, 25 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index 951d5d8..4378f8d 100644
--- a/src/Screen.cc
+++ b/src/Screen.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$ 25// $Id: Screen.cc,v 1.20 2002/02/07 14:46:23 fluxgen Exp $
26 26
27// stupid macros needed to access some functions in version 2 of the GNU C 27// stupid macros needed to access some functions in version 2 of the GNU C
28// library 28// library
@@ -294,30 +294,7 @@ resource(rm, screenname, altscreenname)
294 image_control, fluxbox->getStyleFilename(), getRootCommand().c_str()); 294 image_control, fluxbox->getStyleFilename(), getRootCommand().c_str());
295 295
296 #ifdef GNOME 296 #ifdef GNOME
297 297 initGnomeAtoms();
298 /* create the GNOME window */
299 Window gnome_win = XCreateSimpleWindow(getBaseDisplay()->getXDisplay(),
300 getRootWindow(), 0, 0, 5, 5, 0, 0, 0);
301
302 /* supported WM check */
303 XChangeProperty(getBaseDisplay()->getXDisplay(),
304 getRootWindow(), getBaseDisplay()->getGnomeSupportingWMCheckAtom(),
305 XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &gnome_win, 1);
306
307 XChangeProperty(getBaseDisplay()->getXDisplay(), gnome_win,
308 getBaseDisplay()->getGnomeSupportingWMCheckAtom(),
309 XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &gnome_win, 1);
310
311 Atom gnomeatomlist[] = {
312 getBaseDisplay()->getGnomeWorkspaceAtom(),
313 getBaseDisplay()->getGnomeWorkspaceCountAtom(),
314 getBaseDisplay()->getGnomeStateAtom()
315 };
316
317 XChangeProperty(getBaseDisplay()->getXDisplay(), getRootWindow(),
318 getBaseDisplay()->getGnomeProtAtom(), XA_ATOM, 32, PropModeReplace,
319 (unsigned char *)gnomeatomlist, (sizeof gnomeatomlist)/sizeof gnomeatomlist[0]);
320
321 #endif 298 #endif
322 299
323 #ifdef NEWWMSPEC 300 #ifdef NEWWMSPEC
@@ -1718,3 +1695,33 @@ void BScreen::leftWorkspace(void) {
1718 if (getCurrentWorkspaceID() > 0) 1695 if (getCurrentWorkspaceID() > 0)
1719 changeWorkspaceID(getCurrentWorkspaceID()-1); 1696 changeWorkspaceID(getCurrentWorkspaceID()-1);
1720} 1697}
1698
1699#ifdef GNOME
1700void BScreen::initGnomeAtoms(void) {
1701
1702 /* create the GNOME window */
1703 Window gnome_win = XCreateSimpleWindow(getBaseDisplay()->getXDisplay(),
1704 getRootWindow(), 0, 0, 5, 5, 0, 0, 0);
1705
1706 /* supported WM check */
1707 XChangeProperty(getBaseDisplay()->getXDisplay(),
1708 getRootWindow(), getBaseDisplay()->getGnomeSupportingWMCheckAtom(),
1709 XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &gnome_win, 1);
1710
1711 XChangeProperty(getBaseDisplay()->getXDisplay(), gnome_win,
1712 getBaseDisplay()->getGnomeSupportingWMCheckAtom(),
1713 XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &gnome_win, 1);
1714
1715 Atom gnomeatomlist[] = {
1716 getBaseDisplay()->getGnomeWorkspaceAtom(),
1717 getBaseDisplay()->getGnomeWorkspaceCountAtom(),
1718 getBaseDisplay()->getGnomeStateAtom(),
1719 getBaseDisplay()->getGnomeHintsAtom()
1720 };
1721
1722 XChangeProperty(getBaseDisplay()->getXDisplay(), getRootWindow(),
1723 getBaseDisplay()->getGnomeProtAtom(), XA_ATOM, 32, PropModeReplace,
1724 (unsigned char *)gnomeatomlist, (sizeof gnomeatomlist)/sizeof gnomeatomlist[0]);
1725
1726}
1727#endif //!GNOME