TextBlock性能优化,避免重复布局
This commit is contained in:
parent
9366415c8c
commit
4418c383bc
@ -33,8 +33,10 @@ void mtext_block::arrange_children(const geometry_t& in_allotted_geometry) {
|
||||
mleaf_widget<text_block_args>::arrange_children(in_allotted_geometry);
|
||||
if (warp_text_) {
|
||||
const auto current_width = in_allotted_geometry.get_local_size().x();
|
||||
layout_ = font_manager::instance().layout_text(text_, font_, font_size_, current_width, line_spacing_);
|
||||
invalidate(invalidate_reason::layout);
|
||||
if (current_width != layout_.total_size.x()) {
|
||||
layout_ = font_manager::instance().layout_text(text_, font_, font_size_, current_width, line_spacing_);
|
||||
invalidate(invalidate_reason::layout);
|
||||
}
|
||||
} else {
|
||||
layout_ = font_manager::instance().layout_text(text_, font_, font_size_, 0, line_spacing_);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user