diff options
Diffstat (limited to 'toolkit')
-rw-r--r-- | toolkit/qa/cppunit/UnitConversion.cxx | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/toolkit/qa/cppunit/UnitConversion.cxx b/toolkit/qa/cppunit/UnitConversion.cxx index 3178e38ff159..62fe284e8d5a 100644 --- a/toolkit/qa/cppunit/UnitConversion.cxx +++ b/toolkit/qa/cppunit/UnitConversion.cxx @@ -28,6 +28,10 @@ #include <com/sun/star/awt/XWindowPeer.hpp> #include <com/sun/star/awt/XWindow.hpp> +#ifdef _WIN32 +#include <windows.h> +#endif + using namespace ::com::sun::star; namespace @@ -96,6 +100,24 @@ void checkSize(uno::Reference<awt::XUnitConversion> const& xConv, awt::Size cons */ void ToolkitTest::testXUnitConversion() { +#ifdef _WIN32 + HKEY hkey; + DWORD type; + DWORD data; + DWORD size(sizeof(data)); + LONG ret = ::RegOpenKeyW(HKEY_CURRENT_USER, L"Control Panel\\Desktop", &hkey); + if (ret == ERROR_SUCCESS) + { + ret = ::RegQueryValueExW(hkey, L"LogPixels", nullptr, &type, + reinterpret_cast<LPBYTE>(&data), &size); + if (ret == ERROR_SUCCESS && type == REG_DWORD && data != 96) + { + std::cerr << "non-default resolution, skipping textXUnitConversion\n"; + return; + } + } +#endif + // create a window sal_Int32 x = 100; sal_Int32 y = 100; |