// XXX: REMOVE THIS SOON!!#!
#include "blackbox.hh"
-#include "screen.hh"
+#include "bbscreen.hh"
extern "C" {
#include <X11/Xlib.h>
// create the OBClient class, which gets all of the hints on the window
Openbox::instance->addClient(window, client = new OBClient(screen, window));
- // add all the client's decoration windows as event handlers for the client
- Openbox::instance->addClient(client->frame->titlebar(), client);
- Openbox::instance->addClient(client->frame->buttonIconify(), client);
- Openbox::instance->addClient(client->frame->buttonMax(), client);
- Openbox::instance->addClient(client->frame->buttonStick(), client);
- Openbox::instance->addClient(client->frame->buttonClose(), client);
- Openbox::instance->addClient(client->frame->label(), client);
- Openbox::instance->addClient(client->frame->handle(), client);
- Openbox::instance->addClient(client->frame->gripLeft(), client);
- Openbox::instance->addClient(client->frame->gripRight(), client);
// we dont want a border on the client
XSetWindowBorderWidth(otk::OBDisplay::display, window, 0);
otk::Style *style = ((Blackbox*)Openbox::instance)->
searchScreen(RootWindow(otk::OBDisplay::display, screen))->
getWindowStyle();
+ // create the decoration frame for the client window
client->frame = new OBFrame(client, style);
+
+ // add all the client's decoration windows as event handlers for the client
+ Openbox::instance->addClient(client->frame->window(), client);
+ Openbox::instance->addClient(client->frame->titlebar(), client);
+ Openbox::instance->addClient(client->frame->buttonIconify(), client);
+ Openbox::instance->addClient(client->frame->buttonMax(), client);
+ Openbox::instance->addClient(client->frame->buttonStick(), client);
+ Openbox::instance->addClient(client->frame->buttonClose(), client);
+ Openbox::instance->addClient(client->frame->label(), client);
+ Openbox::instance->addClient(client->frame->handle(), client);
+ Openbox::instance->addClient(client->frame->gripLeft(), client);
+ Openbox::instance->addClient(client->frame->gripRight(), client);
// XXX: if on the current desktop..
XMapWindow(otk::OBDisplay::display, client->frame->window());
// remove the client class from the search list
Openbox::instance->removeClient(client->window());
// remove the frame's decor elements as event handlers for the client
+ Openbox::instance->removeClient(frame->window());
Openbox::instance->removeClient(frame->titlebar());
Openbox::instance->removeClient(frame->buttonIconify());
Openbox::instance->removeClient(frame->buttonMax());