_grip_right.unmanaged();
_plate.unmanaged();
+ _grip_left.setCursor(Openbox::instance->cursors().ll_angle);
+ _grip_right.setCursor(Openbox::instance->cursors().lr_angle);
+
_plate.show();
_button_close.setText("X");
// that the ONE LABEL!!
// adds an extra sep so that there's a space on either side of the
// titlebar.. note: x = sep, below.
- _label.setWidth(width - sep * 2 -
- (_button_iconify.width() + sep) * (layout.size() - 1));
+ int lwidth = width - sep * 2 -
+ (_button_iconify.width() + sep) * (layout.size() - 1);
+ // quick sanity check for really small windows. if this is needed, its
+ // obviously not going to be displayed right...
+ // XXX: maybe we should make this look better somehow? constraints?
+ if (lwidth <= 0) lwidth = 1;
+ _label.setWidth(lwidth);
int x = sep;
for (int i = 0, len = layout.size(); i < len; ++i) {
void OBFrame::grabClient()
{
- // select the event mask on the frame
- //XSelectInput(otk::OBDisplay::display, _window, SubstructureRedirectMask);
-
// reparent the client to the frame
XReparentWindow(otk::OBDisplay::display, _client->window(),
_plate.getWindow(), 0, 0);
_client->ignore_unmaps++;
- // raise the client above the frame
- //XRaiseWindow(otk::OBDisplay::display, _client->window());
+ // select the event mask on the client's parent
+ //XSelectInput(otk::OBDisplay::display, _plate.getWindow(),
+ // SubstructureRedirectMask);
+
// map the client so it maps when the frame does
XMapWindow(otk::OBDisplay::display, _client->window());
}
+void OBFrame::reverseGravity()
+{
+ move(_client->area().x() - _size.left, _client->area().y() - _size.top);
+}
+
+
}