Scanner persisted freq file, TextField for current item (#1403)

* Don't truncate string passed to Text widget

* Focus TextField on touch like other fields

* TextField for current, save last opened freq file
This commit is contained in:
Kyle Reed 2023-08-23 11:51:28 -07:00 committed by GitHub
parent 4a1479957c
commit f537c7896e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 58 additions and 36 deletions

View file

@ -366,16 +366,17 @@ void Text::paint(Painter& painter) {
const auto rect = screen_rect();
auto s = has_focus() ? style().invert() : style();
auto max_len = (unsigned)rect.width() / s.font.char_width();
auto text_view = std::string_view{text};
painter.fill_rectangle(rect, s.background);
if (text.length() > max_len)
text.resize(max_len);
if (text_view.length() > max_len)
text_view = text_view.substr(0, max_len);
painter.draw_string(
rect.location(),
s,
text);
text_view);
}
/* Labels ****************************************************************/
@ -1773,6 +1774,15 @@ bool TextField::on_encoder(EncoderEvent delta) {
return false;
}
bool TextField::on_touch(TouchEvent event) {
if (event.type == TouchEvent::Type::Start) {
focus();
return true;
}
return false;
}
/* NumberField ***********************************************************/
NumberField::NumberField(