diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2019-10-21 13:16:50 +0200 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2019-10-21 14:27:08 +0200 |
commit | af9238d913c24d3bb326d3b0834c5008c9745446 (patch) | |
tree | a82bcb53bd2d4cc58f5d36cb8df09ea269779985 /desktop | |
parent | f900c896697386fcc82b51f3f9ab3c8a84fdbb67 (diff) |
jsdialogs: handle spinfields
Change-Id: I9b845917ff1a7cb2242d7ef2b6b370007d0091b4
Reviewed-on: https://gerrit.libreoffice.org/81230
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/lib/init.cxx | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 48aa12b9d658..6cb4303d4439 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -3303,6 +3303,10 @@ static void doc_sendDialogEvent(LibreOfficeKitDocument* /*pThis*/, unsigned nWin { const OUString sClickAction("CLICK"); const OUString sSelectAction("SELECT"); + const OUString sClearAction("CLEAR"); + const OUString sTypeAction("TYPE"); + const OUString sUpAction("UP"); + const OUString sDownAction("DOWN"); try { @@ -3310,6 +3314,7 @@ static void doc_sendDialogEvent(LibreOfficeKitDocument* /*pThis*/, unsigned nWin std::unique_ptr<UIObject> pUIWindow(aUIObject.get_child(sId)); if (pUIWindow) { bool bIsClickAction = false; + StringMap aMap; if (pOptionalEventType) { if (strcmp(pOptionalEventType, "selected") == 0 && pOptionalData) @@ -3324,12 +3329,26 @@ static void doc_sendDialogEvent(LibreOfficeKitDocument* /*pThis*/, unsigned nWin return; } - StringMap aMap; aMap["POS"] = OUString::createFromAscii(pPos); aMap["TEXT"] = OUString::createFromAscii(pText); pUIWindow->execute(sSelectAction, aMap); } + else if (strcmp(pOptionalEventType, "plus") == 0) + { + pUIWindow->execute(sUpAction, aMap); + } + else if (strcmp(pOptionalEventType, "minus") == 0) + { + pUIWindow->execute(sDownAction, aMap); + } + else if (pOptionalData) + { + aMap["TEXT"] = OUString::createFromAscii(pOptionalData); + + pUIWindow->execute(sClearAction, aMap); + pUIWindow->execute(sTypeAction, aMap); + } else bIsClickAction = true; } @@ -3337,7 +3356,7 @@ static void doc_sendDialogEvent(LibreOfficeKitDocument* /*pThis*/, unsigned nWin bIsClickAction = true; if (bIsClickAction) - pUIWindow->execute(sClickAction, StringMap()); + pUIWindow->execute(sClickAction, aMap); } } catch(...) {} |