aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/virtualkeyboard/basic/Basic.qml (renamed from examples/virtualkeyboard/basic/basic.qml)0
-rw-r--r--examples/virtualkeyboard/basic/basic-b2qt.qml2
-rw-r--r--examples/virtualkeyboard/basic/basic.pro4
-rw-r--r--examples/virtualkeyboard/basic/demo.qrc2
-rw-r--r--src/config.pri2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/alphanumeric.pro2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/demonumerals.pro2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.pro2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h5
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp58
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h9
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h7
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp8
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h7
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h7
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp5
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h3
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp4
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h2
-rw-r--r--src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro3
-rw-r--r--src/virtualkeyboard/3rdparty/t9write/t9write-build.pri2
-rw-r--r--src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf2
-rw-r--r--src/virtualkeyboard/lipisharedrecognizer.cpp29
-rw-r--r--src/virtualkeyboard/lipisharedrecognizer.h1
-rw-r--r--src/virtualkeyboard/virtualkeyboard.pro3
-rw-r--r--tests/auto/inputpanel/data/tst_inputpanel.qml6
40 files changed, 179 insertions, 38 deletions
diff --git a/examples/virtualkeyboard/basic/basic.qml b/examples/virtualkeyboard/basic/Basic.qml
index c8b9ad41..c8b9ad41 100644
--- a/examples/virtualkeyboard/basic/basic.qml
+++ b/examples/virtualkeyboard/basic/Basic.qml
diff --git a/examples/virtualkeyboard/basic/basic-b2qt.qml b/examples/virtualkeyboard/basic/basic-b2qt.qml
index 91ff8558..10e5c780 100644
--- a/examples/virtualkeyboard/basic/basic-b2qt.qml
+++ b/examples/virtualkeyboard/basic/basic-b2qt.qml
@@ -42,7 +42,7 @@ Item {
height: Screen.width < Screen.height ? parent.width : parent.height
anchors.centerIn: parent
rotation: Screen.width < Screen.height ? 90 : 0
- VirtualKeyboard {
+ Basic {
id: virtualKeyboard
anchors.left: parent.left
anchors.top: parent.top
diff --git a/examples/virtualkeyboard/basic/basic.pro b/examples/virtualkeyboard/basic/basic.pro
index e30337c4..2e0c6f68 100644
--- a/examples/virtualkeyboard/basic/basic.pro
+++ b/examples/virtualkeyboard/basic/basic.pro
@@ -15,7 +15,7 @@ RESOURCES += \
demo.qrc
OTHER_FILES += \
- basic.qml \
+ Basic.qml \
basic-b2qt.qml \
content/AutoScroller.qml \
content/HandwritingModeButton.qml \
@@ -32,5 +32,5 @@ disable-xcb {
disable-desktop|!isEmpty(CROSS_COMPILE)|qnx {
DEFINES += MAIN_QML=\\\"basic-b2qt.qml\\\"
} else {
- DEFINES += MAIN_QML=\\\"basic.qml\\\"
+ DEFINES += MAIN_QML=\\\"Basic.qml\\\"
}
diff --git a/examples/virtualkeyboard/basic/demo.qrc b/examples/virtualkeyboard/basic/demo.qrc
index 6bd24d05..5bcafc71 100644
--- a/examples/virtualkeyboard/basic/demo.qrc
+++ b/examples/virtualkeyboard/basic/demo.qrc
@@ -9,7 +9,7 @@
<file>content/FloatingButton_Active.svg</file>
<file>content/FloatingButton_Available.svg</file>
<file>content/FloatingButton_Unavailable.svg</file>
- <file>basic.qml</file>
+ <file>Basic.qml</file>
<file>basic-b2qt.qml</file>
</qresource>
</RCC>
diff --git a/src/config.pri b/src/config.pri
index 3b25d051..5a80d1c6 100644
--- a/src/config.pri
+++ b/src/config.pri
@@ -5,7 +5,7 @@ pinyin: CONFIG += lang-zh_CN
tcime|zhuyin|cangjie: CONFIG += lang-zh_TW
# Enable handwriting
-handwriting {
+handwriting:!lipi-toolkit:!t9write {
include(virtualkeyboard/3rdparty/t9write/t9write-build.pri)
equals(T9WRITE_FOUND, 1): CONFIG += t9write
else: CONFIG += lipi-toolkit
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/alphanumeric.pro b/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/alphanumeric.pro
index df79dcb4..d65137db 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/alphanumeric.pro
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/alphanumeric.pro
@@ -3,3 +3,5 @@ TEMPLATE = aux
cfg.files = config
cfg.path = $$[QT_INSTALL_DATA]/qtvirtualkeyboard/lipi_toolkit/projects/alphanumeric
INSTALLS += cfg
+
+!prefix_build: COPIES += cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/demonumerals.pro b/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/demonumerals.pro
index 7063f7f2..a16edd28 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/demonumerals.pro
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/demonumerals.pro
@@ -3,3 +3,5 @@ TEMPLATE = aux
cfg.files = config
cfg.path = $$[QT_INSTALL_DATA]/qtvirtualkeyboard/lipi_toolkit/projects/demonumerals
INSTALLS += cfg
+
+!prefix_build: COPIES += cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.pro b/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.pro
index d9902250..f9ad55a7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.pro
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.pro
@@ -3,3 +3,5 @@ TEMPLATE = aux
cfg.files += lipiengine.cfg
cfg.path = $$[QT_INSTALL_DATA]/qtvirtualkeyboard/lipi_toolkit/projects
INSTALLS += cfg
+
+!prefix_build: COPIES += cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h
index 86d06e83..04d315b9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h
@@ -52,6 +52,8 @@ public:
virtual void setLipiRootPath(const string& appLipiPath)=0;
+ virtual void setLipiLibPath(const string& appLipiLibPath)=0;
+
virtual int setLipiLogFileName(const string& appLipiPath) = 0;
virtual int setLipiLogLevel(const string& appLogLevel)=0;
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h
index 3be95ff5..b9cc072d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h
@@ -350,6 +350,11 @@
#define LIPIROOT_ENV_STRING "LIPI_ROOT"
/**
+* @brief Defines the lipi library environment string used in LipiEngine.cfg
+*/
+#define LIPILIB_ENV_STRING "LIPI_LIB"
+
+/**
* @brief Defines the type of project used in LipiEngine.cfg
*/
#define PROJECT_TYPE_STRING "ProjectType"
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h
index 137f9a5a..88a56ac8 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h
@@ -69,11 +69,11 @@ public:
// @}
/** @brief Given library name, this function loads it into the adress space.
- * @param lipiRoot
+ * @param lipiLibPath
* @param sharedLibName : name of the library to be loaded
* @param libHandle: pointer to the library handle
*/
- virtual int loadSharedLib(const string& lipiRoot,
+ virtual int loadSharedLib(const string& lipiLibPath,
const string& sharedLibName,
void** libHandle)=0;
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h
index 415c8a9a..6c10ccc2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h
@@ -95,6 +95,7 @@ struct LTKControlInfo
string cfgFileName;
string cfgFilePath;
string lipiRoot;
+ string lipiLib;
string toolkitVersion;
// constructor
@@ -104,6 +105,7 @@ struct LTKControlInfo
cfgFileName(""),
cfgFilePath(""),
lipiRoot(""),
+ lipiLib(""),
toolkitVersion("")
{
}
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp
index e91436b6..f5a69788 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp
@@ -126,6 +126,10 @@ int LTKLipiEngineModule::initializeLipiEngine()
{
LTKReturnError(ELIPI_ROOT_PATH_NOT_SET); // PATH not set
}
+ if(m_strLipiLibPath == "")
+ {
+ m_strLipiLibPath = m_strLipiRootPath + SEPARATOR + "lib";
+ }
temp = m_strLipiRootPath + SEPARATOR + "projects" + SEPARATOR +
LIPIENGINE_CFG_STRING;
@@ -273,6 +277,7 @@ int LTKLipiEngineModule::createShapeRecognizer(const string& strProjName,
LTKControlInfo controlInfo;
controlInfo.lipiRoot = m_strLipiRootPath;
+ controlInfo.lipiLib = m_strLipiLibPath;
controlInfo.projectName = strProjectName;
controlInfo.profileName = strProfileName;
controlInfo.toolkitVersion = currentVersion;
@@ -423,6 +428,7 @@ int LTKLipiEngineModule::createWordRecognizer(const string& strProjName,
LTKControlInfo controlInfo;
controlInfo.lipiRoot = m_strLipiRootPath;
+ controlInfo.lipiLib = m_strLipiLibPath;
controlInfo.projectName = strProjectName;
controlInfo.profileName = strProfileName;
controlInfo.toolkitVersion = currentVersion;
@@ -622,6 +628,28 @@ string LTKLipiEngineModule::getLipiRootPath() const
}
/******************************************************************************
+* AUTHOR :
+* DATE :
+* NAME : getLipiLibPath
+* DESCRIPTION : To fetch the value for the environment variable LIPI_LIB
+* ARGUMENTS : None
+* RETURNS : environment string on success & NULL on error
+* NOTES :
+* CHANGE HISTROY
+* Author Date Description of change
+******************************************************************************/
+string LTKLipiEngineModule::getLipiLibPath() const
+{
+ LOG(LTKLogger::LTK_LOGLEVEL_INFO)<<
+ "Entering: LTKLipiEngineModule::getLipiLibPath()"<<endl;
+
+ LOG(LTKLogger::LTK_LOGLEVEL_INFO)<<
+ "Exiting: LTKLipiEngineModule::getLipiLibPath()"<<endl;
+
+ return m_strLipiLibPath;
+}
+
+/******************************************************************************
* AUTHOR : Nidhi Sharma
* DATE : 10-JAN-2007
* NAME : setLipiRootPath
@@ -648,6 +676,32 @@ void LTKLipiEngineModule::setLipiRootPath(const string& appLipiPath)
}
/******************************************************************************
+* AUTHOR :
+* DATE :
+* NAME : setLipiLibPath
+* DESCRIPTION : To set the value of LIPI_LIB
+* ARGUMENTS : String
+* RETURNS :
+* NOTES :
+* CHANGE HISTROY
+* Author Date Description of change
+******************************************************************************/
+void LTKLipiEngineModule::setLipiLibPath(const string& appLipiLibPath)
+{
+
+ //Dont LOG messages as this may be called before configureLogger()
+
+ if ( appLipiLibPath.empty())
+ {
+ m_strLipiLibPath = m_OSUtilPtr->getEnvVariable(LIPILIB_ENV_STRING);
+ }
+ else
+ {
+ m_strLipiLibPath = appLipiLibPath;
+ }
+}
+
+/******************************************************************************
* AUTHOR : Thanigai
* DATE : 29-JUL-2005
* NAME : mapShapeAlgoModuleFunctions
@@ -1106,7 +1160,7 @@ int LTKLipiEngineModule::loadRecognizerDLL(const string& recognizerName,
string recognizerDLLPath = "";
int returnVal = SUCCESS;
- returnVal = m_OSUtilPtr->loadSharedLib(m_strLipiRootPath, recognizerName, dllHandler);
+ returnVal = m_OSUtilPtr->loadSharedLib(m_strLipiLibPath, recognizerName, dllHandler);
if(returnVal != SUCCESS)
@@ -1310,7 +1364,7 @@ int LTKLipiEngineModule::configureLogger()
}
}
- LTKLoggerUtil::createLogger(m_strLipiRootPath);
+ LTKLoggerUtil::createLogger(m_strLipiLibPath);
LTKLoggerUtil::configureLogger(m_logFileName, m_logLevel);
return SUCCESS;
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h
index 302b0324..9ccffac3 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h
@@ -99,6 +99,7 @@ private:
string m_strLipiRootPath; // LIPI_ROOT environment path
+ string m_strLipiLibPath; // LIPI_LIB environment path
string m_logFileName;
@@ -127,10 +128,18 @@ public:
*/
string getLipiRootPath() const;
+ /** @brief Returns LTKLipiEngineModule::m_strLipiLibPath
+ */
+ string getLipiLibPath() const;
+
/** @brief Sets the data member LTKLipiEngineModule::m_strLipiRootPath
*/
void setLipiRootPath(const string& appLipiPath="");
+ /** @brief Sets the data member LTKLipiEngineModule::m_strLipiLibPath
+ */
+ void setLipiLibPath(const string& appLipiLibPath="");
+
/** @brief Returns LTKLipiEngineModule::m_logFileName
*/
string getLogFileName() const;
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp
index 7a805b81..247f5f98 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp
@@ -161,6 +161,7 @@ m_libHandlerFE(NULL)
assignDefaultValues();
m_lipiRootPath = tmpControlInfo.lipiRoot;
+ m_lipiLibPath = tmpControlInfo.lipiLib;
m_currentVersion = tmpControlInfo.toolkitVersion;
strProjectName = tmpControlInfo.projectName;
strProfileName = tmpControlInfo.profileName;
@@ -4718,6 +4719,7 @@ int ActiveDTWShapeRecognizer::initializeFeatureExtractorInstance(const LTKContro
LTKShapeFeatureExtractorFactory factory;
int errorCode = factory.createFeatureExtractor(m_featureExtractorName,
m_lipiRootPath,
+ m_lipiLibPath,
&m_libHandlerFE,
controlInfo,
&m_ptrFeatureExtractor);
@@ -5059,7 +5061,7 @@ int ActiveDTWShapeRecognizer::initializePreprocessor(const LTKControlInfo& contr
// Load the DLL with path=preprocDLLPath
void* functionHandle = NULL;
- int returnVal = m_OSUtilPtr->loadSharedLib(controlInfo.lipiRoot, PREPROC, &m_libHandler);
+ int returnVal = m_OSUtilPtr->loadSharedLib(controlInfo.lipiLib, PREPROC, &m_libHandler);
if(returnVal != SUCCESS)
{
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h
index dc3ba171..9459d5c7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h
@@ -317,6 +317,13 @@ private:
* </p>
*/
+ string m_lipiLibPath;
+ /**< @brief Path of the Lipi Libraries
+ * <p>
+ * DEFAULT: LipiEngine::getLipiLibPath()
+ * </p>
+ */
+
LTKShapeFeatureExtractor *m_ptrFeatureExtractor;
/**< @brief Pointer to LTKShapeFeatureExtractor class
* <p>
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp
index f1eaa446..07fa2adc 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp
@@ -76,7 +76,8 @@ LTKShapeFeatureExtractorFactory::LTKShapeFeatureExtractorFactory()
int LTKShapeFeatureExtractorFactory::createFeatureExtractor(
const string& featureExtractorName,
const string& lipiRootPath,
- void** m_libHandlerFE,
+ const string& lipiLibPath,
+ void** m_libHandlerFE,
const LTKControlInfo& controlInfo,
LTKShapeFeatureExtractor** outFeatureExtractor)
{
@@ -97,7 +98,7 @@ int LTKShapeFeatureExtractorFactory::createFeatureExtractor(
LTKReturnError(errorCode);
}
- errorCode = getFeatureExtractorInst(lipiRootPath, feName, m_libHandlerFE,
+ errorCode = getFeatureExtractorInst(lipiRootPath, lipiLibPath, feName, m_libHandlerFE,
controlInfo, outFeatureExtractor);
if ( errorCode != SUCCESS)
@@ -129,6 +130,7 @@ int LTKShapeFeatureExtractorFactory::createFeatureExtractor(
*************************************************************************************/
int LTKShapeFeatureExtractorFactory::getFeatureExtractorInst(
const string& lipiRootPath,
+ const string& lipiLibPath,
const string& feName,
void** m_libHandlerFE,
const LTKControlInfo& controlInfo,
@@ -139,7 +141,7 @@ int LTKShapeFeatureExtractorFactory::getFeatureExtractorInst(
LTKOSUtil* utilPtr = LTKOSUtilFactory::getInstance();
- int returnVal = utilPtr->loadSharedLib(lipiRootPath, feName, m_libHandlerFE);
+ int returnVal = utilPtr->loadSharedLib(lipiLibPath, feName, m_libHandlerFE);
if(returnVal != SUCCESS)
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h
index 6b7a48c1..d178d6ef 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h
@@ -73,11 +73,13 @@ public:
int createFeatureExtractor(const string& featureExtractorType,
const string& lipiRootPath,
+ const string& lipiLibPath,
void** m_libHandlerFE,
const LTKControlInfo& controlInfo,
LTKShapeFeatureExtractor** outFeatureExtractor);
int getFeatureExtractorInst(const string& lipiRootPath,
+ const string& lipiLibPath,
const string& feName,
void** m_libHandlerFE,
const LTKControlInfo& controlInfo,
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp
index 52c0a16c..3c406f68 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp
@@ -128,6 +128,7 @@ m_libHandlerFE(NULL)
assignDefaultValues();
m_lipiRootPath = tmpControlInfo.lipiRoot;
+ m_lipiLibPath = tmpControlInfo.lipiLib;
m_currentVersion = tmpControlInfo.toolkitVersion;
strProjectName = tmpControlInfo.projectName;
strProfileName = tmpControlInfo.profileName;
@@ -1154,7 +1155,7 @@ int NeuralNetShapeRecognizer::initializePreprocessor(const LTKControlInfo& contr
// Load the DLL with path=preprocDLLPath
void* functionHandle = NULL;
- int returnVal = m_OSUtilPtr->loadSharedLib(controlInfo.lipiRoot, PREPROC, &m_libHandler);
+ int returnVal = m_OSUtilPtr->loadSharedLib(controlInfo.lipiLib, PREPROC, &m_libHandler);
if(returnVal != SUCCESS)
@@ -1291,6 +1292,7 @@ int NeuralNetShapeRecognizer::initializeFeatureExtractorInstance(const LTKContro
LTKShapeFeatureExtractorFactory factory;
int errorCode = factory.createFeatureExtractor(m_featureExtractorName,
m_lipiRootPath,
+ m_lipiLibPath,
&m_libHandlerFE,
controlInfo,
&m_ptrFeatureExtractor);
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h
index 067b3d4c..6e32002a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h
@@ -123,6 +123,13 @@ class NeuralNetShapeRecognizer: public LTKShapeRecognizer
* </p>
*/
+ string m_lipiLibPath;
+ /**< @brief Path of the Lipi Libraries
+ * <p>
+ * DEFAULT: LipiEngine::getLipiPath()
+ * </p>
+ */
+
LTKShapeFeatureExtractor *m_ptrFeatureExtractor;
/**< @brief Pointer to LTKShapeFeatureExtractor class
* <p>
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp
index db5b6a1f..78b09e47 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp
@@ -169,6 +169,7 @@ m_libHandlerFE(NULL)
assignDefaultValues();
m_lipiRootPath = tmpControlInfo.lipiRoot;
+ m_lipiLibPath = tmpControlInfo.lipiLib;
m_currentVersion = tmpControlInfo.toolkitVersion;
strProjectName = tmpControlInfo.projectName;
strProfileName = tmpControlInfo.profileName;
@@ -3281,6 +3282,7 @@ int NNShapeRecognizer::initializeFeatureExtractorInstance(const LTKControlInfo&
LTKShapeFeatureExtractorFactory factory;
int errorCode = factory.createFeatureExtractor(m_featureExtractorName,
m_lipiRootPath,
+ m_lipiLibPath,
&m_libHandlerFE,
controlInfo,
&m_ptrFeatureExtractor);
@@ -4223,7 +4225,7 @@ int NNShapeRecognizer::initializePreprocessor(const LTKControlInfo& controlInfo,
// Load the DLL with path=preprocDLLPath
void* functionHandle = NULL;
- int returnVal = m_OSUtilPtr->loadSharedLib(controlInfo.lipiRoot, PREPROC, &m_libHandler);
+ int returnVal = m_OSUtilPtr->loadSharedLib(controlInfo.lipiLib, PREPROC, &m_libHandler);
if(returnVal != SUCCESS)
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h
index 60b9b857..cce1baf0 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h
@@ -249,6 +249,13 @@ class NNShapeRecognizer: public LTKShapeRecognizer
* </p>
*/
+ string m_lipiLibPath;
+ /**< @brief Path of the Lipi Libraries
+ * <p>
+ * DEFAULT: LipiEngine::getLipiLibPath()
+ * </p>
+ */
+
LTKShapeFeatureExtractor *m_ptrFeatureExtractor;
/**< @brief Pointer to LTKShapeFeatureExtractor class
* <p>
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp
index ed40a848..dbcdca58 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp
@@ -89,6 +89,7 @@ m_numTracesProcessed(0),
m_boxedShapeProject(""),
m_boxedShapeProfile(""),
m_lipiRoot(""),
+m_lipiLib(""),
m_boxedConfigFile(""),
m_logFile(""),
m_logLevel(LTKLogger::LTK_LOGLEVEL_ERR),
@@ -124,6 +125,7 @@ m_OSUtilPtr(LTKOSUtilFactory::getInstance())
// initialize the data members
m_lipiRoot = tempControlInfo.lipiRoot;
+ m_lipiLib = tempControlInfo.lipiLib;
m_toolkitVersion = tempControlInfo.toolkitVersion;
@@ -1182,7 +1184,7 @@ int BoxedFieldRecognizer::updateRecognitionResults(const vector<LTKShapeRecoResu
}
m_hAlgoDLLHandle = NULL;
- errorCode = m_OSUtilPtr->loadSharedLib(m_lipiRoot, recognizerName, &m_hAlgoDLLHandle);
+ errorCode = m_OSUtilPtr->loadSharedLib(m_lipiLib, recognizerName, &m_hAlgoDLLHandle);
// Unable to load dll
if(errorCode != SUCCESS)
@@ -1222,6 +1224,7 @@ int BoxedFieldRecognizer::updateRecognitionResults(const vector<LTKShapeRecoResu
controlInfo.projectName = strProjectName;
controlInfo.profileName = strLocalProfileName;
controlInfo.lipiRoot = m_lipiRoot;
+ controlInfo.lipiLib = m_lipiLib;
controlInfo.toolkitVersion = m_toolkitVersion;
*outShapeRecPtr = NULL;
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h
index d1ccb496..e0703b5a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h
@@ -72,6 +72,9 @@ private:
/** Lipi root */
string m_lipiRoot;
+ /** Lipi libraries */
+ string m_lipiLib;
+
/** Isolated shape recognizer project used for recognizing each box */
string m_boxedShapeProject;
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro
index 6da87dd6..5d16d041 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro
@@ -1,4 +1,4 @@
-LIPILIBS = shaperecommon ltkcommon ltkutil qtwordreccommon
+LIPILIBS = shaperecommon ltkcommon ltkutil wordreccommon
include(../../../lipiplugin.pri)
INCLUDEPATH += \
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro
index 528c7c1b..a3f90198 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro
@@ -6,4 +6,6 @@ SUBDIRS += \
reco \
lipiengine
+util.depends = common
+reco.depends = util
lipiengine.depends = common util reco
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp
index 99e5fac0..f7f85702 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp
@@ -94,7 +94,7 @@ LTKLinuxUtil::~LTKLinuxUtil()
* CHANGE HISTROY
* Author Date Description
***************************************************************************/
-int LTKLinuxUtil::loadSharedLib(const string & lipiRoot,
+int LTKLinuxUtil::loadSharedLib(const string & lipiLibPath,
const string & sharedLibName,
void * * libHandle)
{
@@ -103,7 +103,7 @@ int LTKLinuxUtil::loadSharedLib(const string & lipiRoot,
string sharedLibraryPath = "";
// construct the path for the recogniser DLL
- sharedLibraryPath = lipiRoot + "/" + "lib" + "/" + "lib" + sharedLibName + ".so";
+ sharedLibraryPath = lipiLibPath + "/" + "lib" + sharedLibName + ".so";
// Load the DLL
*libHandle = dlopen(sharedLibraryPath.c_str(), RTLD_LAZY);
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h
index 074db044..d8eef6f2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h
@@ -72,7 +72,7 @@ public:
~LTKLinuxUtil();
// @}
- int loadSharedLib(const string& lipiRoot,
+ int loadSharedLib(const string& lipiLibPath,
const string& sharedLibName,
void** libHandle);
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp
index c89ffe47..1971a69d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp
@@ -93,12 +93,12 @@ LTKLoggerUtil::LTKLoggerUtil(){}
* Author Date Description of change
****************************************************************************/
-int LTKLoggerUtil::createLogger(const string& lipiRoot)
+int LTKLoggerUtil::createLogger(const string& lipiLibPath)
{
void* functionHandle = NULL;
auto_ptr<LTKOSUtil> a_ptrOSUtil(LTKOSUtilFactory::getInstance());
- int iErrorCode = a_ptrOSUtil->loadSharedLib(lipiRoot,
+ int iErrorCode = a_ptrOSUtil->loadSharedLib(lipiLibPath,
LOGGER_MODULE_STR,
&m_libHandleLogger);
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h
index 3252d14a..2f09831b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h
@@ -100,7 +100,7 @@ public:
* @return SUCCESS on successful split operation
*/
- static int createLogger(const string& lipiRoot);
+ static int createLogger(const string& lipiLibPath);
static int destroyLogger();
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h
index cdc761b3..649a2700 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h
@@ -74,7 +74,7 @@ public:
~LTKWinCEUtil();
// @}
- int loadSharedLib(const string& lipiRoot,
+ int loadSharedLib(const string& lipiLibPath,
const string& sharedLibName,
void** libHandle);
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp
index 0b72bd51..825ee84c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp
@@ -90,14 +90,14 @@ LTKWindowsUtil::~LTKWindowsUtil()
* CHANGE HISTROY
* Author Date Description
***************************************************************************/
-int LTKWindowsUtil::loadSharedLib(const string & lipiRoot,
+int LTKWindowsUtil::loadSharedLib(const string & lipiLibPath,
const string & sharedLibName,
void * * libHandle)
{
string sharedLibraryPath = "";
// construct the path for the recogniser DLL
- sharedLibraryPath = lipiRoot + "\\" + "lib" + "\\" + sharedLibName +
+ sharedLibraryPath = lipiLibPath + "\\" + sharedLibName +
#ifndef NDEBUG
"d"
#endif
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h
index 755fc390..d62350d9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h
@@ -74,7 +74,7 @@ public:
~LTKWindowsUtil();
// @}
- int loadSharedLib(const string& lipiRoot,
+ int loadSharedLib(const string& lipiLibPath,
const string& sharedLibName,
void** libHandle);
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro
index 6afbbd99..5f1cc5ac 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro
+++ b/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro
@@ -9,6 +9,9 @@ SOURCES += \
logger.cpp \
LTKLogger.cpp \
+INCLUDEPATH += \
+ ../lib \
+
win32 {
DEFINES += LOGGER_EXPORTS
LIBS += Advapi32.lib
diff --git a/src/virtualkeyboard/3rdparty/t9write/t9write-build.pri b/src/virtualkeyboard/3rdparty/t9write/t9write-build.pri
index 5ec0257d..ab519b90 100644
--- a/src/virtualkeyboard/3rdparty/t9write/t9write-build.pri
+++ b/src/virtualkeyboard/3rdparty/t9write/t9write-build.pri
@@ -5,7 +5,7 @@
# T9WRITE_ALPHABETIC_OBJ: Absolute path to the target object file
#
-!isEmpty(CROSS_COMPILE) {
+contains(QT_ARCH, arm) {
T9WRITE_BUILD_DIR = $$files(build_Android_ARM*)
} else:linux {
T9WRITE_BUILD_DIR = $$files(build_Android_x86*)
diff --git a/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf b/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
index d0e79deb..57042810 100644
--- a/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
+++ b/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
@@ -12,7 +12,7 @@ excludedirs += ../content/layouts \
# Specify the install path under QT_INSTALL_EXAMPLES
exampledirs += ../../../examples/virtualkeyboard \
snippets
-examplesinstallpath = qtvirtualkeyboard/virtualkeyboard
+examplesinstallpath = virtualkeyboard
imagedirs += images
depends += qtcore qtgui qtquick
diff --git a/src/virtualkeyboard/lipisharedrecognizer.cpp b/src/virtualkeyboard/lipisharedrecognizer.cpp
index f518de72..2d89e377 100644
--- a/src/virtualkeyboard/lipisharedrecognizer.cpp
+++ b/src/virtualkeyboard/lipisharedrecognizer.cpp
@@ -50,6 +50,7 @@ namespace QtVirtualKeyboard {
int LipiSharedRecognizer::s_lipiEngineRefCount = 0;
QString LipiSharedRecognizer::s_lipiRoot;
+QString LipiSharedRecognizer::s_lipiLib;
void *LipiSharedRecognizer::s_lipiEngineHandle = 0;
LipiSharedRecognizer::FN_PTR_CREATELTKLIPIENGINE LipiSharedRecognizer::s_createLTKLipiEngine = 0;
LipiSharedRecognizer::FN_PTR_DELETELTKLIPIENGINE LipiSharedRecognizer::s_deleteLTKLipiEngine = 0;
@@ -181,18 +182,31 @@ int LipiSharedRecognizer::loadLipiInterface()
if (++s_lipiEngineRefCount == 1) {
if (s_lipiRoot.isEmpty()) {
- if (qEnvironmentVariableIsEmpty("LIPI_ROOT")) {
- s_lipiRoot = QDir(QLibraryInfo::location(QLibraryInfo::PluginsPath) + "/lipi_toolkit").absolutePath();
- qputenv("LIPI_ROOT", s_lipiRoot.toLatin1());
- } else {
- s_lipiRoot = qgetenv("LIPI_ROOT");
- }
+ /* LIPI_ROOT defines the root directory for lipi-toolkit project.
+ LIPI_LIB is an extension implemented for QtVirtualKeyboard and
+ allows using different location for lipi-toolkit plugins.
+
+ LIPI_LIB defaults to LIPI_ROOT + "/lib".
+ */
+ bool lipiRootVarIsEmpty = qEnvironmentVariableIsEmpty("LIPI_ROOT");
+ s_lipiRoot = lipiRootVarIsEmpty ?
+ QDir(QLibraryInfo::location(QLibraryInfo::PluginsPath) + "/lipi_toolkit").absolutePath() :
+ qgetenv("LIPI_ROOT");
+
+ bool lipiLibVarIsEmpty = qEnvironmentVariableIsEmpty("LIPI_LIB");
+ if (!lipiLibVarIsEmpty)
+ s_lipiLib = qgetenv("LIPI_LIB");
+ else if (!lipiRootVarIsEmpty)
+ s_lipiLib = s_lipiRoot + "/lib";
+ else
+ s_lipiLib = QDir(QLibraryInfo::location(QLibraryInfo::PluginsPath) + "/lipi_toolkit").absolutePath();
}
QScopedPointer<LTKOSUtil> osUtil(LTKOSUtilFactory::getInstance());
const string lipiRootPath(QDir::toNativeSeparators(s_lipiRoot).toStdString());
+ const string lipiLibPath(QDir::toNativeSeparators(s_lipiLib).toStdString());
- int result = osUtil->loadSharedLib(lipiRootPath, LIPIENGINE_MODULE_STR, &s_lipiEngineHandle);
+ int result = osUtil->loadSharedLib(lipiLibPath, LIPIENGINE_MODULE_STR, &s_lipiEngineHandle);
if (result != SUCCESS) {
qWarning() << QString("Error %1: Could not open shared library for module '%2'").arg(result).arg(LIPIENGINE_MODULE_STR);
return result;
@@ -216,6 +230,7 @@ int LipiSharedRecognizer::loadLipiInterface()
s_lipiEngine = s_createLTKLipiEngine();
s_lipiEngine->setLipiRootPath(lipiRootPath);
+ s_lipiEngine->setLipiLibPath(lipiLibPath);
#if 0
s_lipiEngine->setLipiLogFileName(QDir::toNativeSeparators(QString("%1/lipi.log").arg(s_lipiRoot)).toStdString());
s_lipiEngine->setLipiLogLevel("DEBUG");
diff --git a/src/virtualkeyboard/lipisharedrecognizer.h b/src/virtualkeyboard/lipisharedrecognizer.h
index bac67f2a..5bfb6ec6 100644
--- a/src/virtualkeyboard/lipisharedrecognizer.h
+++ b/src/virtualkeyboard/lipisharedrecognizer.h
@@ -74,6 +74,7 @@ private:
static int s_lipiEngineRefCount;
static QString s_lipiRoot;
+ static QString s_lipiLib;
static void *s_lipiEngineHandle;
static FN_PTR_CREATELTKLIPIENGINE s_createLTKLipiEngine;
static FN_PTR_DELETELTKLIPIENGINE s_deleteLTKLipiEngine;
diff --git a/src/virtualkeyboard/virtualkeyboard.pro b/src/virtualkeyboard/virtualkeyboard.pro
index b5d03b7b..85436c03 100644
--- a/src/virtualkeyboard/virtualkeyboard.pro
+++ b/src/virtualkeyboard/virtualkeyboard.pro
@@ -222,6 +222,7 @@ qtquickcompiler: DEFINES += COMPILING_QML
hunspell_data.files = 3rdparty/hunspell/data/*.dic 3rdparty/hunspell/data/*.aff
hunspell_data.path = $$DATAPATH/hunspell
INSTALLS += hunspell_data
+ !prefix_build: COPIES += hunspell_data
} else {
error("Hunspell dictionaries are missing! Please copy .dic and .aff" \
"files to src/virtualkeyboard/3rdparty/hunspell/data directory.")
@@ -249,6 +250,7 @@ pinyin {
pinyin_data.files = $$PWD/3rdparty/pinyin/data/dict_pinyin.dat
pinyin_data.path = $$DATAPATH/pinyin
INSTALLS += pinyin_data
+ !prefix_build: COPIES += pinyin_data
}
tcime {
@@ -269,6 +271,7 @@ tcime {
$$PWD/3rdparty/tcime/data/qt/dict_zhuyin.dat
tcime_data.path = $$DATAPATH/tcime
INSTALLS += tcime_data
+ !prefix_build: COPIES += tcime_data
}
hangul {
diff --git a/tests/auto/inputpanel/data/tst_inputpanel.qml b/tests/auto/inputpanel/data/tst_inputpanel.qml
index 908fb7af..980fbc01 100644
--- a/tests/auto/inputpanel/data/tst_inputpanel.qml
+++ b/tests/auto/inputpanel/data/tst_inputpanel.qml
@@ -224,7 +224,7 @@ Rectangle {
// function key press
{ initText: "x", initInputMethodHints: Qt.ImhNoPredictiveText | Qt.ImhNoAutoUppercase, inputKey: Qt.Key_Shift, outputKeyCountMin: 1, outputKey: Qt.Key_Shift, preview: false, outputKeyText: "", outputKeyModifiers: Qt.NoModifier, outputKeyRepeat: false, outputText: "x" },
{ initText: "x", initInputMethodHints: Qt.ImhNoPredictiveText | Qt.ImhNoAutoUppercase, inputKey: Qt.Key_Backspace, outputKeyCountMin: 1, outputKey: Qt.Key_Backspace, preview: false, outputKeyText: "", outputKeyModifiers: Qt.NoModifier, outputKeyRepeat: false, outputText: "" },
- { initText: "xxxxxx", initInputMethodHints: Qt.ImhNoPredictiveText | Qt.ImhNoAutoUppercase, inputKey: Qt.Key_Backspace, keyHold: 600 + 8 * 50, outputKeyCountMin: 6, outputKey: Qt.Key_Backspace, preview: false, outputKeyText: "", outputKeyModifiers: Qt.NoModifier, outputKeyRepeat: true, outputText: "" },
+ { initText: "xxxxxx", initInputMethodHints: Qt.ImhNoPredictiveText | Qt.ImhNoAutoUppercase, inputKey: Qt.Key_Backspace, keyHold: 1000, outputKeyCountMin: 6, outputKey: Qt.Key_Backspace, preview: false, outputKeyText: "", outputKeyModifiers: Qt.NoModifier, outputKeyRepeat: true, outputText: "" },
]
}
@@ -235,7 +235,9 @@ Rectangle {
inputPanel.virtualKeyClickedSpy.clear()
if (data.hasOwnProperty("keyHold")) {
inputPanel.virtualKeyPress(data.inputKey)
- wait(data.keyHold)
+ do {
+ inputPanel.virtualKeyClickedSpy.wait(data.keyHold)
+ } while (inputPanel.virtualKeyClickedSpy.count < data.outputKeyCountMin)
inputPanel.virtualKeyRelease()
} else {
inputPanel.virtualKeyClick(data.inputKey)