You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Fix unexpected scroll on resize + consistent return value
This commit is contained in:
@@ -4226,7 +4226,10 @@ double TextEdit::get_scroll_pos_for_line(int p_line, int p_wrap_index) const {
|
|||||||
return p_line;
|
return p_line;
|
||||||
}
|
}
|
||||||
|
|
||||||
double new_line_scroll_pos = get_visible_line_count_in_range(0, CLAMP(p_line, 0, text.size() - 1));
|
double new_line_scroll_pos = 0.0;
|
||||||
|
if (p_line > 0) {
|
||||||
|
new_line_scroll_pos = get_visible_line_count_in_range(0, MIN(p_line - 1, text.size() - 1));
|
||||||
|
}
|
||||||
new_line_scroll_pos += p_wrap_index;
|
new_line_scroll_pos += p_wrap_index;
|
||||||
return new_line_scroll_pos;
|
return new_line_scroll_pos;
|
||||||
}
|
}
|
||||||
@@ -4290,7 +4293,7 @@ int TextEdit::get_visible_line_count_in_range(int p_from_line, int p_to_line) co
|
|||||||
|
|
||||||
/* Returns the total number of (lines + wrapped - hidden). */
|
/* Returns the total number of (lines + wrapped - hidden). */
|
||||||
if (!_is_hiding_enabled() && get_line_wrapping_mode() == LineWrappingMode::LINE_WRAPPING_NONE) {
|
if (!_is_hiding_enabled() && get_line_wrapping_mode() == LineWrappingMode::LINE_WRAPPING_NONE) {
|
||||||
return p_to_line - p_from_line;
|
return (p_to_line - p_from_line) + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int total_rows = 0;
|
int total_rows = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user