From 805869e5d222f4c49c655564c7574e06beb0fcf3 Mon Sep 17 00:00:00 2001 From: Richard Huang Date: Mon, 29 Feb 2016 17:35:21 +0000 Subject: [PATCH] Force the actors in the relayout container to do a size negotiation Change-Id: I52f7d2752ddf0f33629901fb3504580d6c64bb15 --- .../event/size-negotiation/relayout-controller-impl.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/dali/internal/event/size-negotiation/relayout-controller-impl.cpp b/dali/internal/event/size-negotiation/relayout-controller-impl.cpp index 9efe523..0d6b927 100644 --- a/dali/internal/event/size-negotiation/relayout-controller-impl.cpp +++ b/dali/internal/event/size-negotiation/relayout-controller-impl.cpp @@ -479,6 +479,17 @@ void RelayoutController::Relayout() // 3. Negotiate the size with the current actor. Pass it an empty container which the actor // has to fill with all the actors it has not done any size negotiation for. + + // Force the actor in the relayout container to do a size negotiation + if(actorImpl.GetResizePolicy(Dimension::WIDTH) == ResizePolicy::USE_ASSIGNED_SIZE) + { + actorImpl.SetLayoutNegotiated(false, Dimension::WIDTH); + } + if(actorImpl.GetResizePolicy(Dimension::HEIGHT) == ResizePolicy::USE_ASSIGNED_SIZE) + { + actorImpl.SetLayoutNegotiated(false, Dimension::HEIGHT); + } + actorImpl.NegotiateSize( size, *mRelayoutStack ); } } -- 2.7.4