Browse Source

Ensures cursor visible for Tree with title

Haoyu Qiu 5 years ago
parent
commit
a77e869b87
1 changed files with 6 additions and 1 deletions
  1. 6 1
      scene/gui/tree.cpp

+ 6 - 1
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);