summaryrefslogtreecommitdiffstats
path: root/scene/gui
diff options
context:
space:
mode:
author风青山 <idleman@yeah.net>2022-03-15 20:07:50 +0800
committer风青山 <idleman@yeah.net>2022-03-15 21:49:00 +0800
commitf789c1769095ca48384fd92519fad99583eb7b40 (patch)
tree39dc39ddc6d2184ba8c45dba4bfff7845c3e34bd /scene/gui
parent51bbcbdec2f971ed0113992b34335ef3c9873e79 (diff)
downloadredot-engine-f789c1769095ca48384fd92519fad99583eb7b40.tar.gz
Fix text buf does not clear when calling the method set_item_text in PopupMenu
Diffstat (limited to 'scene/gui')
-rw-r--r--scene/gui/popup_menu.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/scene/gui/popup_menu.cpp b/scene/gui/popup_menu.cpp
index 4220066b20..9fc1fb072c 100644
--- a/scene/gui/popup_menu.cpp
+++ b/scene/gui/popup_menu.cpp
@@ -1003,8 +1003,12 @@ void PopupMenu::set_item_text(int p_idx, const String &p_text) {
p_idx += get_item_count();
}
ERR_FAIL_INDEX(p_idx, items.size());
+ if (items[p_idx].text == p_text) {
+ return;
+ }
items.write[p_idx].text = p_text;
items.write[p_idx].xl_text = atr(p_text);
+ items.write[p_idx].dirty = true;
_shape_item(p_idx);
control->update();