diff --git a/src/frontend/hud.cpp b/src/frontend/hud.cpp index bcf623ce..1f062240 100644 --- a/src/frontend/hud.cpp +++ b/src/frontend/hud.cpp @@ -592,7 +592,10 @@ void Hud::draw(const DrawContext& ctx){ const uint height = viewport.getHeight(); auto menu = gui.getMenu(); - darkOverlay->setVisible(menu->hasOpenPage()); + bool is_menu_open = menu->hasOpenPage(); + darkOverlay->setVisible(is_menu_open); + menu->setVisible(is_menu_open); + updateElementsPosition(viewport); uicamera->setFov(height); @@ -693,7 +696,6 @@ void Hud::setPause(bool pause) { if (pause && !menu->hasOpenPage()) { menu->setPage("pause"); } - menu->setVisible(pause); } Player* Hud::getPlayer() const { diff --git a/src/graphics/ui/elements/TextBox.cpp b/src/graphics/ui/elements/TextBox.cpp index 12f262f1..1e36c601 100644 --- a/src/graphics/ui/elements/TextBox.cpp +++ b/src/graphics/ui/elements/TextBox.cpp @@ -826,7 +826,7 @@ void TextBox::setCaret(size_t position) { scrolled(-glm::ceil(offset/static_cast(scrollStep)+0.5f)); } uint lcaret = caret - label->getTextLineOffset(line); - int realoffset = font->calcWidth(input, lcaret)-int(textOffset) - padding.x; + int realoffset = font->calcWidth(input, lcaret)-int(textOffset) + 2; if (realoffset-width > 0) { setTextOffset(textOffset + realoffset-width); } else if (realoffset < 0) {