From aeafe360480c3f49895111e13438d640b33b1d96 Mon Sep 17 00:00:00 2001 From: markt Date: Sat, 12 May 2007 17:44:45 +0000 Subject: fixed tabs disappearing on reconfigure with [Deco] {TAB} and tabs in titlebar --- ChangeLog | 4 ++++ src/Screen.cc | 18 ++++-------------- src/Window.cc | 4 +++- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index eb10656..dc89fbc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ (Format: Year/Month/Day) Changes for 1.1: +*07/05/12: + * Fixed tabs disappearing with [Deco] {TAB} and tabs in titlebar (Mark) + Window.cc Screen.cc +*07/05/04: * Fixed infinite loop caused by deiconify command (Mark) FbCommands.cc *07/04/24: diff --git a/src/Screen.cc b/src/Screen.cc index 7bcd938..786daa1 100644 --- a/src/Screen.cc +++ b/src/Screen.cc @@ -1046,24 +1046,14 @@ void BScreen::reconfigureTabs() { if (!(*w_it)->windowList().empty()) { Workspace::Windows::iterator win_it = (*w_it)->windowList().begin(); const Workspace::Windows::iterator win_it_end = (*w_it)->windowList().end(); - for (; win_it != win_it_end; ++win_it) { - (*win_it)->frame().updateTabProperties(); - if (*resource.default_internal_tabs) - (*win_it)->frame().setTabMode(FbWinFrame::INTERNAL); - else - (*win_it)->frame().setTabMode(FbWinFrame::EXTERNAL); - } + for (; win_it != win_it_end; ++win_it) + (*win_it)->applyDecorations(); } } Icons::iterator icon_it = m_icon_list.begin(); Icons::iterator icon_it_end = m_icon_list.end(); - for (; icon_it != icon_it_end; ++icon_it) { - (*icon_it)->frame().updateTabProperties(); - if (*resource.default_internal_tabs) - (*icon_it)->frame().setTabMode(FbWinFrame::INTERNAL); - else - (*icon_it)->frame().setTabMode(FbWinFrame::EXTERNAL); - } + for (; icon_it != icon_it_end; ++icon_it) + (*icon_it)->applyDecorations(); } diff --git a/src/Window.cc b/src/Window.cc index cbbf7a4..a3999e3 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -3122,8 +3122,10 @@ void FluxboxWindow::applyDecorations(bool initial) { if (decorations.titlebar) { bool change = frame().showTitlebar(); client_move |= change; - if (change && screen().getDefaultInternalTabs()) { + if (screen().getDefaultInternalTabs()) { client_move |= frame().setTabMode(FbWinFrame::INTERNAL); + } else { + client_move |= frame().setTabMode(FbWinFrame::EXTERNAL); } } else { client_move |= frame().hideTitlebar(); -- cgit v0.11.2