mirror of
https://github.com/thunderbrewhq/thunderbrew
synced 2025-12-12 11:12:29 +00:00
fix(ui): implement key repeating (e.g. backspace) for CSimpleEditBox
This commit is contained in:
parent
982aedbc02
commit
6c5c560dc7
2 changed files with 18 additions and 0 deletions
|
|
@ -891,6 +891,23 @@ int32_t CSimpleEditBox::OnLayerKeyDown(const CKeyEvent& evt) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32_t CSimpleEditBox::OnLayerKeyDownRepeat(const CKeyEvent& evt) {
|
||||||
|
if (!this->m_visible) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!CSimpleEditBox::s_currentFocus && this->m_autoFocus) {
|
||||||
|
CSimpleEditBox::SetKeyboardFocus(this);
|
||||||
|
return this->OnLayerKeyDown(evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this == CSimpleEditBox::s_currentFocus) {
|
||||||
|
return this->OnLayerKeyDown(evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int32_t CSimpleEditBox::OnLayerMouseDown(const CMouseEvent& evt, const char* btn) {
|
int32_t CSimpleEditBox::OnLayerMouseDown(const CMouseEvent& evt, const char* btn) {
|
||||||
int32_t eaten = CSimpleFrame::OnLayerMouseDown(evt, btn);
|
int32_t eaten = CSimpleFrame::OnLayerMouseDown(evt, btn);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -72,6 +72,7 @@ class CSimpleEditBox : public CSimpleFrame, CSimpleFontedFrame {
|
||||||
virtual void OnFrameSizeChanged(float width, float height);
|
virtual void OnFrameSizeChanged(float width, float height);
|
||||||
virtual int32_t OnLayerChar(const CCharEvent& evt);
|
virtual int32_t OnLayerChar(const CCharEvent& evt);
|
||||||
virtual int32_t OnLayerKeyDown(const CKeyEvent& evt);
|
virtual int32_t OnLayerKeyDown(const CKeyEvent& evt);
|
||||||
|
virtual int32_t OnLayerKeyDownRepeat(const CKeyEvent& evt);
|
||||||
virtual int32_t OnLayerMouseDown(const CMouseEvent& evt, const char* btn);
|
virtual int32_t OnLayerMouseDown(const CMouseEvent& evt, const char* btn);
|
||||||
virtual int32_t OnLayerMouseUp(const CMouseEvent& evt, const char* btn);
|
virtual int32_t OnLayerMouseUp(const CMouseEvent& evt, const char* btn);
|
||||||
virtual void FontUpdated(CSimpleFontedFrameFont* font, int32_t a3);
|
virtual void FontUpdated(CSimpleFontedFrameFont* font, int32_t a3);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue