added IME protocol support

This commit is contained in:
vaxerski
2022-08-05 13:03:37 +02:00
parent 3947fe9e9f
commit 1c4d0e8c18
9 changed files with 302 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
#pragma once
#include "../../defines.hpp"
#include "../../helpers/WLClasses.hpp"
class CInputMethodRelay {
public:
CInputMethodRelay();
void onNewIME(wlr_input_method_v2*);
void onNewTextInput(wlr_text_input_v3*);
wlr_input_method_v2* m_pWLRIME = nullptr;
void commitIMEState(wlr_text_input_v3*);
void removeTextInput(wlr_text_input_v3*);
void onKeyboardFocus(wlr_surface*);
STextInput* getFocusedTextInput();
STextInput* getFocusableTextInput();
private:
std::list<STextInput> m_lTextInputs;
DYNLISTENER(textInputNew);
DYNLISTENER(IMECommit);
DYNLISTENER(IMEDestroy);
void createNewTextInput(wlr_text_input_v3*);
};