diff --git a/modules/core/tooltip/tooltip.lua b/modules/core/tooltip/tooltip.lua index b263fff4..66e84347 100644 --- a/modules/core/tooltip/tooltip.lua +++ b/modules/core/tooltip/tooltip.lua @@ -29,6 +29,7 @@ function ToolTip.display(text) size.width = size.width + 4 size.height = size.height + 4 currentToolTip:setSize(size) + moveToolTip(currentToolTip) end end diff --git a/src/framework/ui/uiwidget.cpp b/src/framework/ui/uiwidget.cpp index c26b424b..8f1c0756 100644 --- a/src/framework/ui/uiwidget.cpp +++ b/src/framework/ui/uiwidget.cpp @@ -639,7 +639,9 @@ void UIWidget::updateState(Fw::WidgetState state) } if(updateChildren) { - for(const UIWidgetPtr& child : m_children) + // do a backup of children list, because it may change while looping it + UIWidgetList children = m_children; + for(const UIWidgetPtr& child : children) child->updateState(state); } @@ -843,7 +845,6 @@ void UIWidget::onStyleApply(const OTMLNodePtr& styleNode) } } else if(node->tag() == "onClick" || node->tag() == "onHoverChange") { - dump << node->tag(); g_lua.loadFunction(node->value(), "@" + node->source() + "[" + node->tag() + "]"); luaSetField(node->tag()); }