diff options
-rw-r--r-- | src/Screen.cc | 57 |
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 | ||
1700 | void 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 | ||