X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FWindow.cc;h=56487e0bd99c2674394bdae38f26993810b4d86a;hb=66e3f4d0600eeb8c642dc2f3b3320a3e9af075e3;hp=56ee90a33b9d0f15310fcea391a57a7d9baf3d6c;hpb=ba6e2034e7a0bea0e2a71d3e90a808f02bdb5629;p=chaz%2Fopenbox diff --git a/src/Window.cc b/src/Window.cc index 56ee90a3..56487e0b 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -33,9 +33,9 @@ #include #include -#ifdef STDC_HEADERS +#ifdef HAVE_STRING_H # include -#endif // STDC_HEADERS +#endif // HAVE_STRING_H #ifdef DEBUG # ifdef HAVE_STDIO_H @@ -168,9 +168,8 @@ OpenboxWindow::OpenboxWindow(Openbox &o, Window w, BScreen *s) : openbox(o) { #ifdef SLIT if (client.initial_state == WithdrawnState) { screen->getSlit()->addClient(client.window); - delete this; - openbox.ungrab(); + delete this; return; } #endif // SLIT @@ -224,8 +223,8 @@ OpenboxWindow::OpenboxWindow(Openbox &o, Window w, BScreen *s) : openbox(o) { if ((openbox.isStartup()) || (frame.x >= 0 && (signed) (frame.y + frame.y_border) >= 0 && - frame.x <= (signed) screen->getWidth() && - frame.y <= (signed) screen->getHeight())) + frame.x <= (signed) screen->size().w() && + frame.y <= (signed) screen->size().h())) place_window = False; } @@ -259,7 +258,7 @@ OpenboxWindow::OpenboxWindow(Openbox &o, Window w, BScreen *s) : openbox(o) { associateClientWindow(); - if (! screen->isSloppyFocus()) + if (! screen->sloppyFocus()) openbox.grabButton(Button1, 0, frame.plate, True, ButtonPressMask, GrabModeSync, GrabModeSync, None, None); @@ -847,7 +846,7 @@ void OpenboxWindow::reconfigure(void) { configure(frame.x, frame.y, frame.width, frame.height); - if (! screen->isSloppyFocus()) + if (! screen->sloppyFocus()) openbox.grabButton(Button1, 0, frame.plate, True, ButtonPressMask, GrabModeSync, GrabModeSync, None, None); else @@ -1071,8 +1070,8 @@ void OpenboxWindow::getWMNormalHints(void) { client.min_width = client.min_height = client.base_width = client.base_height = client.width_inc = client.height_inc = 1; - client.max_width = screen->getWidth(); - client.max_height = screen->getHeight(); + client.max_width = screen->size().w(); + client.max_height = screen->size().h(); client.min_aspect_x = client.min_aspect_y = client.max_aspect_x = client.max_aspect_y = 1; client.win_gravity = NorthWestGravity; @@ -1357,21 +1356,21 @@ Bool OpenboxWindow::setInputFocus(void) { if (((signed) (frame.x + frame.width)) < 0) { if (((signed) (frame.y + frame.y_border)) < 0) configure(frame.border_w, frame.border_w, frame.width, frame.height); - else if (frame.y > (signed) screen->getHeight()) - configure(frame.border_w, screen->getHeight() - frame.height, + else if (frame.y > (signed) screen->size().h()) + configure(frame.border_w, screen->size().h() - frame.height, frame.width, frame.height); else configure(frame.border_w, frame.y + frame.border_w, frame.width, frame.height); - } else if (frame.x > (signed) screen->getWidth()) { + } else if (frame.x > (signed) screen->size().w()) { if (((signed) (frame.y + frame.y_border)) < 0) - configure(screen->getWidth() - frame.width, frame.border_w, + configure(screen->size().w() - frame.width, frame.border_w, frame.width, frame.height); - else if (frame.y > (signed) screen->getHeight()) - configure(screen->getWidth() - frame.width, - screen->getHeight() - frame.height, frame.width, frame.height); + else if (frame.y > (signed) screen->size().h()) + configure(screen->size().w() - frame.width, + screen->size().h() - frame.height, frame.width, frame.height); else - configure(screen->getWidth() - frame.width, + configure(screen->size().w() - frame.width, frame.y + frame.border_w, frame.width, frame.height); } @@ -1407,7 +1406,7 @@ Bool OpenboxWindow::setInputFocus(void) { XSendEvent(display, client.window, False, NoEventMask, &ce); } - if (screen->isSloppyFocus() && screen->doAutoRaise()) + if (screen->sloppyFocus() && screen->autoRaise()) timer->start(); ret = True; @@ -1465,7 +1464,7 @@ void OpenboxWindow::deiconify(Bool reassoc, Bool raise) { XMapSubwindows(display, frame.window); XMapWindow(display, frame.window); - if (flags.iconic && screen->doFocusNew()) setInputFocus(); + if (flags.iconic && screen->focusNew()) setInputFocus(); flags.visible = True; flags.iconic = False; @@ -1541,19 +1540,19 @@ void OpenboxWindow::maximize(unsigned int button) { openbox_attrib.premax_w = frame.width; openbox_attrib.premax_h = frame.height; - dw = screen->getWidth(); + dw = screen->size().w(); dw -= frame.border_w * 2; dw -= frame.mwm_border_w * 2; dw -= client.base_width; - dh = screen->getHeight(); + dh = screen->size().h(); dh -= frame.border_w * 2; dh -= frame.mwm_border_w * 2; dh -= ((frame.handle_h + frame.border_w) * decorations.handle); dh -= client.base_height; dh -= frame.y_border; - if (! screen->doFullMax()) + if (! screen->fullMax()) dh -= screen->getToolbar()->getExposedHeight() + frame.border_w; if (dw < client.min_width) dw = client.min_width; @@ -1571,15 +1570,15 @@ void OpenboxWindow::maximize(unsigned int button) { dh += ((frame.handle_h + frame.border_w) * decorations.handle); dh += frame.mwm_border_w * 2; - dx += ((screen->getWidth() - dw) / 2) - frame.border_w; + dx += ((screen->size().w() - dw) / 2) - frame.border_w; - if (screen->doFullMax()) { - dy += ((screen->getHeight() - dh) / 2) - frame.border_w; + if (screen->fullMax()) { + dy += ((screen->size().h() - dh) / 2) - frame.border_w; } else { - dy += (((screen->getHeight() - screen->getToolbar()->getExposedHeight()) + dy += (((screen->size().h() - screen->getToolbar()->getExposedHeight()) - dh) / 2) - frame.border_w; - switch (screen->getToolbarPlacement()) { + switch (screen->getToolbar()->placement()) { case Toolbar::TopLeft: case Toolbar::TopCenter: case Toolbar::TopRight: @@ -1740,7 +1739,7 @@ void OpenboxWindow::setFocusFlag(Bool focus) { XSetWindowBorder(display, frame.plate, frame.uborder_pixel); } - if (screen->isSloppyFocus() && screen->doAutoRaise() && timer->isTiming()) + if (screen->sloppyFocus() && screen->autoRaise() && timer->isTiming()) timer->stop(); } @@ -2258,7 +2257,7 @@ void OpenboxWindow::mapNotifyEvent(XMapEvent *ne) { redrawAllButtons(); - if (flags.transient || screen->doFocusNew()) + if (flags.transient || screen->focusNew()) setInputFocus(); else setFocusFlag(False); @@ -2641,7 +2640,7 @@ void OpenboxWindow::buttonPressEvent(XButtonEvent *be) { shade(); } - if (! (flags.focused || screen->isSloppyFocus()) ) { + if (! (flags.focused || screen->sloppyFocus()) ) { setInputFocus(); // any click focus' the window in 'click to focus' } if (stack_change < 0) { @@ -2722,7 +2721,7 @@ void OpenboxWindow::buttonReleaseEvent(XButtonEvent *re) { flags.moving = False; openbox.maskWindowEvents(0, (OpenboxWindow *) 0); - if (!screen->doOpaqueMove()) { + if (!screen->opaqueMove()) { XDrawRectangle(display, screen->getRootWindow(), screen->getOpGC(), frame.move_x, frame.move_y, frame.resize_w - 1, frame.resize_h - 1); @@ -2781,7 +2780,7 @@ void OpenboxWindow::motionNotifyEvent(XMotionEvent *me) { openbox.maskWindowEvents(client.window, this); - if (! screen->doOpaqueMove()) { + if (! screen->opaqueMove()) { openbox.grab(); frame.move_x = frame.x; @@ -2802,28 +2801,28 @@ void OpenboxWindow::motionNotifyEvent(XMotionEvent *me) { dx -= frame.border_w; dy -= frame.border_w; - int snap_distance = screen->getEdgeSnapThreshold(); + int snap_distance = screen->edgeSnapThreshold(); // width/height of the snapping window unsigned int snap_w = frame.width + (frame.border_w * 2); - unsigned int snap_h = getHeight() + (frame.border_w * 2); + unsigned int snap_h = size().h() + (frame.border_w * 2); if (snap_distance) { - int drx = screen->getWidth() - (dx + snap_w); + int drx = screen->size().w() - (dx + snap_w); if (dx < drx && (dx > 0 && dx < snap_distance) || (dx < 0 && dx > -snap_distance) ) dx = 0; else if ( (drx > 0 && drx < snap_distance) || (drx < 0 && drx > -snap_distance) ) - dx = screen->getWidth() - snap_w; + dx = screen->size().w() - snap_w; int dtty, dbby, dty, dby; - switch (screen->getToolbarPlacement()) { + switch (screen->getToolbar()->placement()) { case Toolbar::TopLeft: case Toolbar::TopCenter: case Toolbar::TopRight: dtty = screen->getToolbar()->getExposedHeight() + frame.border_w; - dbby = screen->getHeight(); + dbby = screen->size().h(); break; default: @@ -2843,7 +2842,7 @@ void OpenboxWindow::motionNotifyEvent(XMotionEvent *me) { dy = dbby - snap_h; } - if (screen->doOpaqueMove()) { + if (screen->opaqueMove()) { configure(dx, dy, frame.width, frame.height); } else { XDrawRectangle(display, screen->getRootWindow(), screen->getOpGC(),