From 3333f968888ae8017be5c01149e619a533b0aba1 Mon Sep 17 00:00:00 2001 From: Rene Gollent Date: Thu, 30 Jul 2015 22:33:36 -0400 Subject: [PATCH] SplitLayout: Fix #12261. - SetItemCollapsed()/IsItemCollapsed() didn't properly handle inverting values when mapping between the collapsed flag and the layout item's internal visibility flag, leading to them having the opposite semantics from what their name would suggest. --- src/kits/interface/SplitLayout.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/kits/interface/SplitLayout.cpp b/src/kits/interface/SplitLayout.cpp index 48537c20ae..b15c9984ab 100644 --- a/src/kits/interface/SplitLayout.cpp +++ b/src/kits/interface/SplitLayout.cpp @@ -1,5 +1,6 @@ /* * Copyright 2006-2009, Ingo Weinhold . + * Copyright 2015, Rene Gollent, rene@gollent.com. * All rights reserved. Distributed under the terms of the MIT License. */ @@ -493,14 +494,14 @@ BSplitLayout::SetCollapsible(int32 first, int32 last, bool collapsible) bool BSplitLayout::IsItemCollapsed(int32 index) const { - return _ItemLayoutInfo(ItemAt(index))->isVisible; + return !_ItemLayoutInfo(ItemAt(index))->isVisible; } void BSplitLayout::SetItemCollapsed(int32 index, bool collapsed) { - ItemAt(index)->SetVisible(collapsed); + ItemAt(index)->SetVisible(!collapsed); InvalidateLayout(true); }