Removing a widget that got moved to another layout occasionally caused slot to lose track of related widget. As a result the layout never created a new slot when the same widget is put back in there. Change-Id: I0d8793324b8a5ac8a06aa2803ac8de22b90b7545tags/7.6.0.beta1^0
* @return | * @return | ||||
*/ | */ | ||||
public void removeWidget(Widget widget) { | public void removeWidget(Widget widget) { | ||||
Slot slot = widgetToSlot.get(widget); | |||||
removeSlot(slot); | |||||
Slot slot = widgetToSlot.remove(widget); | |||||
if (slot != null) { | |||||
removeSlot(slot); | |||||
} | |||||
} | } | ||||
/** | /** | ||||
*/ | */ | ||||
protected void removeSlot(Slot slot) { | protected void removeSlot(Slot slot) { | ||||
remove(slot); | remove(slot); | ||||
widgetToSlot.remove(slot.getWidget()); | |||||
} | } | ||||
/** | /** |