aboutsummaryrefslogtreecommitdiff
path: root/src/Ewmh.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ewmh.cc')
-rw-r--r--src/Ewmh.cc24
1 files changed, 13 insertions, 11 deletions
diff --git a/src/Ewmh.cc b/src/Ewmh.cc
index c1f9adc..dcd9c18 100644
--- a/src/Ewmh.cc
+++ b/src/Ewmh.cc
@@ -977,14 +977,14 @@ bool Ewmh::checkClientMessage(const XClientMessageEvent &ce,
977 if (!screen) 977 if (!screen)
978 return true; 978 return true;
979 FbWinFrameTheme &theme = screen->winFrameTheme(); 979 FbWinFrameTheme &theme = screen->winFrameTheme();
980 unsigned int bw = theme.border(true).width();
980 long title_h = theme.titleHeight() || 981 long title_h = theme.titleHeight() ||
981 theme.font().height() + 2*theme.bevelWidth() + 2; 982 theme.font().height() + 2*theme.bevelWidth() + 2 + 2*bw;
982 title_h += theme.border(true).width(); 983 long handle_h = theme.handleWidth() + 2*bw;
983 long handle_h = theme.handleWidth() + theme.border(true).width();
984 long extents[4]; 984 long extents[4];
985 // our frames currently don't protrude from left/right 985 // our frames currently don't protrude from left/right
986 extents[0] = 0; 986 extents[0] = bw;
987 extents[1] = 0; 987 extents[1] = bw;
988 extents[2] = title_h; 988 extents[2] = title_h;
989 extents[3] = handle_h; 989 extents[3] = handle_h;
990 990
@@ -1281,16 +1281,18 @@ void Ewmh::updateFrameExtents(FluxboxWindow &win) {
1281 protrudes from the client window, on left, right, top, bottom 1281 protrudes from the client window, on left, right, top, bottom
1282 (it is independent of window position). 1282 (it is independent of window position).
1283 */ 1283 */
1284 long extents[4];
1285 // our frames currently don't protrude from left/right
1286 extents[0] = 0;
1287 extents[1] = 0;
1288 extents[2] = win.frame().titlebarHeight();
1289 extents[3] = win.frame().handleHeight();
1290 1284
1291 FluxboxWindow::ClientList::iterator it = win.clientList().begin(); 1285 FluxboxWindow::ClientList::iterator it = win.clientList().begin();
1292 FluxboxWindow::ClientList::iterator it_end = win.clientList().end(); 1286 FluxboxWindow::ClientList::iterator it_end = win.clientList().end();
1293 for (; it != it_end; ++it) { 1287 for (; it != it_end; ++it) {
1288 long extents[4];
1289 // our frames currently don't protrude from left/right
1290 int bw = win.frame().window().borderWidth() - (*it)->old_bw;
1291 extents[0] = bw;
1292 extents[1] = bw;
1293 extents[2] = win.frame().titlebarHeight() + bw;
1294 extents[3] = win.frame().handleHeight() + bw;
1295
1294 (*it)->changeProperty(m_net->frame_extents, 1296 (*it)->changeProperty(m_net->frame_extents,
1295 XA_CARDINAL, 32, PropModeReplace, 1297 XA_CARDINAL, 32, PropModeReplace,
1296 (unsigned char *)extents, 4); 1298 (unsigned char *)extents, 4);