Number Button Fix

- Add `is_editing` helper to BaseStringButton
- Block left/right input from changing number while typing

Resolves #706
This commit is contained in:
SuperDude88
2026-05-08 23:19:48 -04:00
parent 71c892368d
commit e42c4d3174
3 changed files with 8 additions and 7 deletions
+2 -2
View File
@@ -54,7 +54,7 @@ void NumberButton::set_value(Rml::String value) {
}
bool NumberButton::handle_nav_command(NavCommand cmd) {
if (cmd == NavCommand::Left || cmd == NavCommand::Right) {
if (!is_editing() && (cmd == NavCommand::Left || cmd == NavCommand::Right)) {
const int newValue = std::clamp(
mGetValue() + (cmd == NavCommand::Right ? mStep : -mStep), mMin, mMax);
if (newValue != mGetValue()) {
@@ -66,4 +66,4 @@ bool NumberButton::handle_nav_command(NavCommand cmd) {
return BaseStringButton::handle_nav_command(cmd);
}
} // namespace dusk::ui
} // namespace dusk::ui