summaryrefslogtreecommitdiffstats
path: root/scene/gui/line_edit.cpp
diff options
context:
space:
mode:
authorHugo Locurcio <hugo.locurcio@hugo.pro>2021-11-13 23:06:47 +0100
committerHugo Locurcio <hugo.locurcio@hugo.pro>2022-01-07 20:51:22 +0100
commitf6443beade093a1413e87c53fb9821e5e25c859f (patch)
treedb7af9fbae268faf1512e421243c4ed277efeb57 /scene/gui/line_edit.cpp
parent6e4da909aaa7ca70864016bac3a8fe424ee7194a (diff)
downloadredot-engine-f6443beade093a1413e87c53fb9821e5e25c859f.tar.gz
Add a theme constant to change LineEdit and TextEdit's caret width
This can be useful to improve caret visibility, especially at larger font sizes. This can also be used for accessibility purposes.
Diffstat (limited to 'scene/gui/line_edit.cpp')
-rw-r--r--scene/gui/line_edit.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp
index f000f64caf..00c024ab80 100644
--- a/scene/gui/line_edit.cpp
+++ b/scene/gui/line_edit.cpp
@@ -780,8 +780,6 @@ void LineEdit::_notification(int p_what) {
ofs_max -= r_icon->get_width();
}
- int caret_width = Math::round(1 * get_theme_default_base_scale());
-
// Draw selections rects.
Vector2 ofs = Point2(x_ofs + scroll_offset, y_ofs);
if (selection.enabled) {
@@ -843,6 +841,8 @@ void LineEdit::_notification(int p_what) {
// Draw carets.
ofs.x = x_ofs + scroll_offset;
if (draw_caret || drag_caret_force_displayed) {
+ const int caret_width = get_theme_constant(SNAME("caret_width")) * get_theme_default_base_scale();
+
if (ime_text.length() == 0) {
// Normal caret.
CaretInfo caret = TS->shaped_text_get_carets(text_rid, caret_column);