diff options
Diffstat (limited to 'src/FbWinFrame.cc')
-rw-r--r-- | src/FbWinFrame.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/FbWinFrame.cc b/src/FbWinFrame.cc index 0e33b5a..18bae9a 100644 --- a/src/FbWinFrame.cc +++ b/src/FbWinFrame.cc | |||
@@ -42,6 +42,7 @@ | |||
42 | #include <algorithm> | 42 | #include <algorithm> |
43 | #include <X11/X.h> | 43 | #include <X11/X.h> |
44 | 44 | ||
45 | #include <iostream> | ||
45 | using namespace std; // mem_fun | 46 | using namespace std; // mem_fun |
46 | 47 | ||
47 | FbWinFrame::FbWinFrame(BScreen &screen, FbWinFrameTheme &theme, FbTk::ImageControl &imgctrl, | 48 | FbWinFrame::FbWinFrame(BScreen &screen, FbWinFrameTheme &theme, FbTk::ImageControl &imgctrl, |
@@ -334,6 +335,7 @@ void FbWinFrame::alignTabs() { | |||
334 | if (m_tabmode != EXTERNAL) | 335 | if (m_tabmode != EXTERNAL) |
335 | return; | 336 | return; |
336 | 337 | ||
338 | |||
337 | FbTk::Orientation orig_orient = m_tab_container.orientation(); | 339 | FbTk::Orientation orig_orient = m_tab_container.orientation(); |
338 | unsigned int orig_tabwidth = m_tab_container.maxWidthPerClient(); | 340 | unsigned int orig_tabwidth = m_tab_container.maxWidthPerClient(); |
339 | 341 | ||
@@ -374,14 +376,14 @@ void FbWinFrame::alignTabs() { | |||
374 | if (orig_orient != FbTk::ROT90) m_tab_container.hide(); | 376 | if (orig_orient != FbTk::ROT90) m_tab_container.hide(); |
375 | m_tab_container.setOrientation(FbTk::ROT90); | 377 | m_tab_container.setOrientation(FbTk::ROT90); |
376 | m_tab_container.setAlignment(Container::LEFT); | 378 | m_tab_container.setAlignment(Container::LEFT); |
377 | tabx = x() + width(); | 379 | tabx = x() + width() + m_window.borderWidth(); |
378 | taby = y(); | 380 | taby = y(); |
379 | break; | 381 | break; |
380 | case RIGHTBOTTOM: | 382 | case RIGHTBOTTOM: |
381 | if (orig_orient != FbTk::ROT90) m_tab_container.hide(); | 383 | if (orig_orient != FbTk::ROT90) m_tab_container.hide(); |
382 | m_tab_container.setOrientation(FbTk::ROT90); | 384 | m_tab_container.setOrientation(FbTk::ROT90); |
383 | m_tab_container.setAlignment(Container::RIGHT); | 385 | m_tab_container.setAlignment(Container::RIGHT); |
384 | tabx = x() + width(); | 386 | tabx = x() + width() + m_window.borderWidth(); |
385 | taby = y() + height() - m_tab_container.height(); | 387 | taby = y() + height() - m_tab_container.height(); |
386 | break; | 388 | break; |
387 | case BOTTOMLEFT: | 389 | case BOTTOMLEFT: |
@@ -1106,6 +1108,15 @@ void FbWinFrame::reconfigureTitlebar() { | |||
1106 | if (m_tabmode == INTERNAL) | 1108 | if (m_tabmode == INTERNAL) |
1107 | m_tab_container.moveResize(next_x, m_bevel, | 1109 | m_tab_container.moveResize(next_x, m_bevel, |
1108 | space_left, button_size); | 1110 | space_left, button_size); |
1111 | else { | ||
1112 | if (m_use_tabs) { | ||
1113 | if (m_tab_container.orientation() == FbTk::ROT0) { | ||
1114 | m_tab_container.resize(m_tab_container.width(), button_size); | ||
1115 | } else { | ||
1116 | m_tab_container.resize(button_size, m_tab_container.height()); | ||
1117 | } | ||
1118 | } | ||
1119 | } | ||
1109 | 1120 | ||
1110 | next_x += m_label.width() + m_bevel; | 1121 | next_x += m_label.width() + m_bevel; |
1111 | 1122 | ||