Bug #6014 » 0001-Layout-oscillation-fix-for-w-WPaintedWidget-Areas.patch
src/Wt/WContainerWidget.C | ||
---|---|---|
children_.insert(children_.begin() + index, widget.get());
|
||
addChild(std::move(widget));
|
||
flags_.set(BIT_ADJUST_CHILDREN_ALIGN); // children margins hacks
|
||
repaint(RepaintFlag::SizeAffected);
|
||
if ((domElementType() != DomElementType::MAP) &&
|
||
(domElementType() != DomElementType::AREA))
|
||
repaint(RepaintFlag::SizeAffected);
|
||
else
|
||
repaint();
|
||
widgetAdded(w);
|
||
}
|
||
... | ... | |
std::unique_ptr<WWidget> result
|
||
= Utils::dynamic_unique_ptr_cast<WWidget>(removeChild(widget));
|
||
repaint(RepaintFlag::SizeAffected);
|
||
if ((domElementType() != DomElementType::MAP) &&
|
||
(domElementType() != DomElementType::AREA))
|
||
repaint(RepaintFlag::SizeAffected);
|
||
else
|
||
repaint();
|
||
widgetRemoved(widget, renderRemove);
|
||
src/Wt/WPaintedWidget.C | ||
---|---|---|
renderWidth_ = width;
|
||
renderHeight_ = height;
|
||
if (areaImage_)
|
||
if (areaImage_ && !layoutSizeAware())
|
||
areaImage_->resize(renderWidth_, renderHeight_);
|
||
sizeChanged_ = true;
|
src/Wt/WWebWidget.C | ||
---|---|---|
if (js[0] != '_')
|
||
transientImpl_->specialChildRemove_ = true;
|
||
repaint(RepaintFlag::SizeAffected);
|
||
if ((domElementType() != DomElementType::MAP) &&
|
||
(domElementType() != DomElementType::AREA))
|
||
repaint(RepaintFlag::SizeAffected);
|
||
else
|
||
repaint();
|
||
}
|
||
child->setParentWidget(nullptr);
|
- « Previous
- 1
- 2
- 3
- Next »