summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2022-07-26 07:53:37 +0200
committerGitHub <noreply@github.com>2022-07-26 07:53:37 +0200
commitc3dc887c410c5fa01eba197acba3afd8ce357ada (patch)
tree47e2b6a039048e16ea22d34fdbeebd3d06ecd682
parent30ace84000136f506c254ba6430c083815bafa82 (diff)
parent6486d261aa235b4a7b053a2b35d6ae22abf5e96f (diff)
Merge pull request #63472 from timothyqiu/tree-row-cell-bg
Tree: Don't draw selection background of individual cells in Row mode
-rw-r--r--scene/gui/tree.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/scene/gui/tree.cpp b/scene/gui/tree.cpp
index f08b8e4669..1eb6c5a554 100644
--- a/scene/gui/tree.cpp
+++ b/scene/gui/tree.cpp
@@ -1849,15 +1849,16 @@ int Tree::draw_item(const Point2i &p_pos, const Point2 &p_draw_ofs, const Size2
p_item->set_meta("__focus_rect", Rect2(r.position, r.size));
- if (rtl) {
- r.position.x = get_size().width - r.position.x - r.size.x;
- }
-
- if (p_item->cells[i].selected) {
- if (has_focus()) {
- cache.selected_focus->draw(ci, r);
- } else {
- cache.selected->draw(ci, r);
+ if (select_mode != SELECT_ROW) {
+ if (rtl) {
+ r.position.x = get_size().width - r.position.x - r.size.x;
+ }
+ if (p_item->cells[i].selected) {
+ if (has_focus()) {
+ cache.selected_focus->draw(ci, r);
+ } else {
+ cache.selected->draw(ci, r);
+ }
}
}
}