diff --git a/src/qt/qvalidatedlineedit.h b/src/qt/qvalidatedlineedit.h --- a/src/qt/qvalidatedlineedit.h +++ b/src/qt/qvalidatedlineedit.h @@ -23,6 +23,7 @@ protected: void focusInEvent(QFocusEvent *evt) override; void focusOutEvent(QFocusEvent *evt) override; + void keyPressEvent(QKeyEvent *evt) override; private: bool valid; diff --git a/src/qt/qvalidatedlineedit.cpp b/src/qt/qvalidatedlineedit.cpp --- a/src/qt/qvalidatedlineedit.cpp +++ b/src/qt/qvalidatedlineedit.cpp @@ -39,6 +39,13 @@ QLineEdit::focusOutEvent(evt); } +void QValidatedLineEdit::keyPressEvent(QKeyEvent *evt) { + // Forward the key press first so we validate the resulting content + QLineEdit::keyPressEvent(evt); + + checkValidity(); +} + void QValidatedLineEdit::markValid() { // As long as a user is typing ensure we display state as valid setValid(true);