diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2020-05-06 23:45:55 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2020-05-07 15:56:06 +0200 |
commit | 6ba74150866d71469827de9f4f19268dfa7db137 (patch) | |
tree | 0c24ca4b2a5a45afd024b14837f80232dfcd76bb /jvmfwk | |
parent | 58c87f8261abf4f1528a43dc501e956cb9c1d2f2 (diff) |
jfw::isAccessibilitySupportDesired is obsolete
There's no platform left that would require java accessibility.
Change-Id: I2149f619e20aae70d7713d223985f8016ade8e77
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93600
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'jvmfwk')
-rw-r--r-- | jvmfwk/inc/fwkutil.hxx | 2 | ||||
-rw-r--r-- | jvmfwk/source/framework.cxx | 103 | ||||
-rw-r--r-- | jvmfwk/source/fwkutil.cxx | 48 |
3 files changed, 10 insertions, 143 deletions
diff --git a/jvmfwk/inc/fwkutil.hxx b/jvmfwk/inc/fwkutil.hxx index f2f6fcbdfb30..60ffa9fe89d0 100644 --- a/jvmfwk/inc/fwkutil.hxx +++ b/jvmfwk/inc/fwkutil.hxx @@ -89,8 +89,6 @@ enum FileStatus */ FileStatus checkFileURL(const OUString & path); -bool isAccessibilitySupportDesired(); - } #endif diff --git a/jvmfwk/source/framework.cxx b/jvmfwk/source/framework.cxx index 67b65acb8a5c..d008b5d16ab2 100644 --- a/jvmfwk/source/framework.cxx +++ b/jvmfwk/source/framework.cxx @@ -153,32 +153,6 @@ javaFrameworkError jfw_startVM( if (!aInfo) return JFW_E_NO_SELECT; -#ifdef _WIN32 - //Because on Windows there is no system setting that we can use to determine - //if Assistive Technology Tool support is needed, we ship a .reg file that the - //user can use to create a registry setting. When the user forgets to set - //the key before he starts the office then a JRE may be selected without access bridge. - //When he later sets the key then we select a JRE with accessibility support but - //only if the user has not manually changed the selected JRE in the options dialog. - if (jfw::isAccessibilitySupportDesired()) - { - // If no JRE has been selected then we do not select one. This function shall then - //return JFW_E_NO_SELECT - if (aInfo && - (aInfo->nFeatures & JFW_FEATURE_ACCESSBRIDGE) == 0) - { - //has the user manually selected a JRE? - if (settings.getJavaInfoAttrAutoSelect()) - { - // if not then the automatism has previously selected a JRE - //without accessibility support. We return JFW_E_NO_SELECT - //to cause that we search for another JRE. The search code will - //then prefer a JRE with accessibility support. - return JFW_E_NO_SELECT; - } - } - } -#endif //check if the javavendors.xml has changed after a Java was selected OString sVendorUpdate = jfw::getElementUpdated(); @@ -304,12 +278,7 @@ javaFrameworkError jfw_findAndSelectJRE(std::unique_ptr<JavaInfo> *pInfo) osl::MutexGuard guard(jfw::FwkMutex::get()); if (jfw::getMode() == jfw::JFW_MODE_DIRECT) return JFW_E_DIRECT_MODE; - sal_uInt64 nFeatureFlags = 0; std::unique_ptr<JavaInfo> aCurrentInfo; - //Determine if accessibility support is needed - bool bSupportAccessibility = jfw::isAccessibilitySupportDesired(); - nFeatureFlags = bSupportAccessibility ? - JFW_FEATURE_ACCESSBRIDGE : 0; // 'bInfoFound' indicates whether a Java installation has been found @@ -327,13 +296,7 @@ javaFrameworkError jfw_findAndSelectJRE(std::unique_ptr<JavaInfo> *pInfo) aVendorSettings, &aCurrentInfo, infos) == javaPluginError::NONE) { - // compare features - // if the user does not require any features (nFeatureFlags = 0) - // or the Java installation provides all features, then this installation is used - if ((aCurrentInfo->nFeatures & nFeatureFlags) == nFeatureFlags) - { - bInfoFound = true; - } + bInfoFound = true; } // if no Java installation providing all features was detected by using JAVA_HOME, @@ -345,24 +308,9 @@ javaFrameworkError jfw_findAndSelectJRE(std::unique_ptr<JavaInfo> *pInfo) aVendorSettings, vecJavaInfosFromPath, infos) == javaPluginError::NONE) { - for (auto & pJInfo: vecJavaInfosFromPath) - { - // if the current Java installation implements all required features: use it - if ((pJInfo->nFeatures & nFeatureFlags) == nFeatureFlags) - { - aCurrentInfo = std::move(pJInfo); - bInfoFound = true; - break; - } - else if (!aCurrentInfo) - { - // current Java installation does not provide all features - // but no Java installation has been detected before - // -> remember the current one until one is found - // that provides all features - aCurrentInfo = std::move(pJInfo); - } - } + assert(!vecJavaInfosFromPath.empty()); + aCurrentInfo = std::move(vecJavaInfosFromPath[0]); + bInfoFound = true; } } @@ -382,27 +330,8 @@ javaFrameworkError jfw_findAndSelectJRE(std::unique_ptr<JavaInfo> *pInfo) if (plerr == javaPluginError::NONE) { - //iterate over all installations to find the best which has - //all features - for (auto & pJInfo: arInfos) - { - // compare features - // If the user does not require any features (nFeatureFlags = 0) - // then the first installation is used - if ((pJInfo->nFeatures & nFeatureFlags) == nFeatureFlags) - { - //the just found Java implements all required features - //currently there is only accessibility!!! - aCurrentInfo = std::move(pJInfo); - break; - } - else if (!aCurrentInfo) - { - // We remember the first installation in aCurrentInfo if - // no JavaInfo has been found before: - aCurrentInfo = std::move(pJInfo); - } - } + assert(!arInfos.empty()); + aCurrentInfo = std::move(arInfos[0]); } if (!aCurrentInfo) @@ -430,22 +359,10 @@ javaFrameworkError jfw_findAndSelectJRE(std::unique_ptr<JavaInfo> *pInfo) if (aInfo) { - // compare features - // If the user does not require any features (nFeatureFlags = 0) - // then the first installation is used - if ((aInfo->nFeatures & nFeatureFlags) == nFeatureFlags) - { - //the just found Java implements all required features - //currently there is only accessibility!!! - aCurrentInfo = std::move(aInfo); - break; - } - else if (!aCurrentInfo) - { - // We remember the very first installation in - // aCurrentInfo: - aCurrentInfo = std::move(aInfo); - } + //the just found Java implements all required features + //currently there is only accessibility!!! + aCurrentInfo = std::move(aInfo); + break; } }//end iterate over paths } diff --git a/jvmfwk/source/fwkutil.cxx b/jvmfwk/source/fwkutil.cxx index fad1268feee1..a3be17ea1d48 100644 --- a/jvmfwk/source/fwkutil.cxx +++ b/jvmfwk/source/fwkutil.cxx @@ -41,54 +41,6 @@ using namespace osl; namespace jfw { -bool isAccessibilitySupportDesired() -{ -#ifdef _WIN32 - bool retVal = false; - HKEY hKey = nullptr; - if (RegOpenKeyExA(HKEY_CURRENT_USER, - "Software\\LibreOffice\\Accessibility\\AtToolSupport", - 0, KEY_READ, &hKey) == ERROR_SUCCESS) - { - DWORD dwType = 0; - DWORD dwLen = 16; - unsigned char arData[16]; - if( RegQueryValueExA(hKey, "SupportAssistiveTechnology", nullptr, &dwType, arData, - &dwLen)== ERROR_SUCCESS) - { - if (dwType == REG_SZ) - { - arData[std::min(dwLen, DWORD(15))] = 0; - if (strcmp(reinterpret_cast<char*>(arData), "true") == 0 - || strcmp(reinterpret_cast<char*>(arData), "1") == 0) - retVal = true; - else if (strcmp(reinterpret_cast<char*>(arData), "false") == 0 - || strcmp(reinterpret_cast<char*>(arData), "0") == 0) - retVal = false; - else - SAL_WARN("jfw", "bad registry value " << arData); - } - else if (dwType == REG_DWORD) - { - if (arData[0] == 1) - retVal = true; - else if (arData[0] == 0) - retVal = false; - else - SAL_WARN( - "jfw", "bad registry value " << unsigned(arData[0])); - } - } - RegCloseKey(hKey); - } -#elif defined UNX - // Java is no longer required for a11y - we use atk directly. - bool retVal = false; -#endif - - return retVal; -} - rtl::ByteSequence encodeBase16(const rtl::ByteSequence& rawData) { static const char EncodingTable[] = |