merged
This commit is contained in:
commit
bf15250292
3 changed files with 18 additions and 16 deletions
24
src/Ewmh.cc
24
src/Ewmh.cc
|
@ -977,14 +977,14 @@ bool Ewmh::checkClientMessage(const XClientMessageEvent &ce,
|
|||
if (!screen)
|
||||
return true;
|
||||
FbWinFrameTheme &theme = screen->winFrameTheme();
|
||||
unsigned int bw = theme.border(true).width();
|
||||
long title_h = theme.titleHeight() ||
|
||||
theme.font().height() + 2*theme.bevelWidth() + 2;
|
||||
title_h += theme.border(true).width();
|
||||
long handle_h = theme.handleWidth() + theme.border(true).width();
|
||||
theme.font().height() + 2*theme.bevelWidth() + 2 + 2*bw;
|
||||
long handle_h = theme.handleWidth() + 2*bw;
|
||||
long extents[4];
|
||||
// our frames currently don't protrude from left/right
|
||||
extents[0] = 0;
|
||||
extents[1] = 0;
|
||||
extents[0] = bw;
|
||||
extents[1] = bw;
|
||||
extents[2] = title_h;
|
||||
extents[3] = handle_h;
|
||||
|
||||
|
@ -1281,16 +1281,18 @@ void Ewmh::updateFrameExtents(FluxboxWindow &win) {
|
|||
protrudes from the client window, on left, right, top, bottom
|
||||
(it is independent of window position).
|
||||
*/
|
||||
long extents[4];
|
||||
// our frames currently don't protrude from left/right
|
||||
extents[0] = 0;
|
||||
extents[1] = 0;
|
||||
extents[2] = win.frame().titlebarHeight();
|
||||
extents[3] = win.frame().handleHeight();
|
||||
|
||||
FluxboxWindow::ClientList::iterator it = win.clientList().begin();
|
||||
FluxboxWindow::ClientList::iterator it_end = win.clientList().end();
|
||||
for (; it != it_end; ++it) {
|
||||
long extents[4];
|
||||
// our frames currently don't protrude from left/right
|
||||
int bw = win.frame().window().borderWidth() - (*it)->old_bw;
|
||||
extents[0] = bw;
|
||||
extents[1] = bw;
|
||||
extents[2] = win.frame().titlebarHeight() + bw;
|
||||
extents[3] = win.frame().handleHeight() + bw;
|
||||
|
||||
(*it)->changeProperty(m_net->frame_extents,
|
||||
XA_CARDINAL, 32, PropModeReplace,
|
||||
(unsigned char *)extents, 4);
|
||||
|
|
|
@ -633,7 +633,8 @@ void FbWindow::create(Window parent, int x, int y,
|
|||
|
||||
|
||||
void FbWindow::sendConfigureNotify(int x, int y,
|
||||
unsigned int width, unsigned int height) {
|
||||
unsigned int width, unsigned int height,
|
||||
unsigned int bw) {
|
||||
Display *disp = FbTk::App::instance()->display();
|
||||
XEvent event;
|
||||
event.type = ConfigureNotify;
|
||||
|
@ -645,9 +646,7 @@ void FbWindow::sendConfigureNotify(int x, int y,
|
|||
event.xconfigure.y = y;
|
||||
event.xconfigure.width = width;
|
||||
event.xconfigure.height = height;
|
||||
//!! TODO
|
||||
event.xconfigure.border_width = 1;
|
||||
//!! TODO
|
||||
event.xconfigure.border_width = bw;
|
||||
event.xconfigure.above = None;
|
||||
event.xconfigure.override_redirect = false;
|
||||
|
||||
|
|
|
@ -195,7 +195,8 @@ public:
|
|||
void setOpaque(unsigned char alpha);
|
||||
|
||||
void setRenderer(FbWindowRenderer &renderer) { m_renderer = &renderer; }
|
||||
void sendConfigureNotify(int x, int y, unsigned int width, unsigned int height);
|
||||
void sendConfigureNotify(int x, int y, unsigned int width,
|
||||
unsigned int height, unsigned int bw = 0);
|
||||
|
||||
/// forces full background change, recalcing of alpha values if necessary
|
||||
void updateBackground(bool only_if_alpha);
|
||||
|
|
Loading…
Reference in a new issue