From a77e869b87383be8949cd9f246dda37ed96a3c8e Mon Sep 17 00:00:00 2001 From: Haoyu Qiu Date: Wed, 1 Jan 2020 22:20:12 +0800 Subject: [PATCH] Ensures cursor visible for Tree with title --- scene/gui/tree.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scene/gui/tree.cpp b/scene/gui/tree.cpp index b6ac3448fb7..f9d1b9e49a9 100644 --- a/scene/gui/tree.cpp +++ b/scene/gui/tree.cpp @@ -3462,8 +3462,13 @@ void Tree::ensure_cursor_is_visible() { int ofs = get_item_offset(selected); if (ofs == -1) return; + + const int tbh = _get_title_button_height(); + ofs -= tbh; + + const int marginh = cache.bg->get_margin(MARGIN_TOP) + cache.bg->get_margin(MARGIN_BOTTOM); int h = compute_item_height(selected) + cache.vseparation; - int screenh = get_size().height - h_scroll->get_combined_minimum_size().height; + int screenh = get_size().height - h_scroll->get_combined_minimum_size().height - marginh - tbh; if (h > screenh) { //screen size is too small, maybe it was not resized yet. v_scroll->set_value(ofs);