Kaydet (Commit) fca89aea authored tarafından Miklos Vajna's avatar Miklos Vajna

LOK: add LibreOfficeKitKeyEventType enumeration

Change-Id: I3d422670323cd982251569c4226dc46803d4f6a1
üst 08d71117
...@@ -657,10 +657,15 @@ static void lo_postKeyEvent(LibreOfficeKit* /*pThis*/, int nType, int nCode) ...@@ -657,10 +657,15 @@ static void lo_postKeyEvent(LibreOfficeKit* /*pThis*/, int nType, int nCode)
if (SalFrame *pFocus = SvpSalFrame::GetFocusFrame()) if (SalFrame *pFocus = SvpSalFrame::GetFocusFrame())
{ {
KeyEvent aEvent(nCode, nCode, 0); KeyEvent aEvent(nCode, nCode, 0);
if (nType == 0) switch (nType)
{
case LOK_KEYEVENT_KEYINPUT:
Application::PostKeyEvent(VCLEVENT_WINDOW_KEYINPUT, pFocus->GetWindow(), &aEvent); Application::PostKeyEvent(VCLEVENT_WINDOW_KEYINPUT, pFocus->GetWindow(), &aEvent);
else break;
case LOK_KEYEVENT_KEYUP:
Application::PostKeyEvent(VCLEVENT_WINDOW_KEYUP, pFocus->GetWindow(), &aEvent); Application::PostKeyEvent(VCLEVENT_WINDOW_KEYUP, pFocus->GetWindow(), &aEvent);
break;
}
} }
#endif #endif
} }
......
...@@ -64,6 +64,15 @@ typedef enum ...@@ -64,6 +64,15 @@ typedef enum
} }
LibreOfficeKitCallbackType; LibreOfficeKitCallbackType;
typedef enum
{
/// A key on the keyboard is pressed.
LOK_KEYEVENT_KEYINPUT,
/// A key on the keyboard is released.
LOK_KEYEVENT_KEYUP
}
LibreOfficeKitKeyEventType;
typedef void (*LibreOfficeKitCallback)(int nType, const char* pPayload, void* pData); typedef void (*LibreOfficeKitCallback)(int nType, const char* pPayload, void* pData);
#endif // LOK_USE_UNSTABLE_API #endif // LOK_USE_UNSTABLE_API
......
...@@ -130,9 +130,9 @@ static void signalKey(GtkWidget* /*pWidget*/, GdkEventKey* pEvent, gpointer /*pD ...@@ -130,9 +130,9 @@ static void signalKey(GtkWidget* /*pWidget*/, GdkEventKey* pEvent, gpointer /*pD
LOKDocView* pLOKDocView = LOK_DOCVIEW(pDocView); LOKDocView* pLOKDocView = LOK_DOCVIEW(pDocView);
if (pEvent->type == GDK_KEY_RELEASE) if (pEvent->type == GDK_KEY_RELEASE)
pLOKDocView->pOffice->pClass->postKeyEvent(pLOKDocView->pOffice, 1, gdk_keyval_to_unicode(pEvent->keyval)); pLOKDocView->pOffice->pClass->postKeyEvent(pLOKDocView->pOffice, LOK_KEYEVENT_KEYUP, gdk_keyval_to_unicode(pEvent->keyval));
else else
pLOKDocView->pOffice->pClass->postKeyEvent(pLOKDocView->pOffice, 0, gdk_keyval_to_unicode(pEvent->keyval)); pLOKDocView->pOffice->pClass->postKeyEvent(pLOKDocView->pOffice, LOK_KEYEVENT_KEYINPUT, gdk_keyval_to_unicode(pEvent->keyval));
} }
// GtkComboBox requires gtk 2.24 or later // GtkComboBox requires gtk 2.24 or later
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment