[Libreoffice-commits] core.git: Branch 'feature/qt5-win' - Repository.mk vcl/Library_vclplug_qt5.mk vcl/Library_vclplug_win.mk vcl/qt5 vcl/win
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Tue Sep 11 14:06:18 UTC 2018
Repository.mk | 2 +-
vcl/Library_vclplug_qt5.mk | 8 ++++----
vcl/Library_vclplug_win.mk | 2 +-
vcl/qt5/Qt5Data.cxx | 12 ++++++++++--
vcl/win/gdi/salprn.cxx | 7 ++++++-
vcl/win/plugadapt/salplug.cxx | 15 ---------------
6 files changed, 22 insertions(+), 24 deletions(-)
New commits:
commit 2c11cfad90e2e394bd6c23e17c8c82d0c991e6e7
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Tue Sep 11 14:02:22 2018 +0200
Commit: Jan-Marek Glogowski <glogow at fbihome.de>
CommitDate: Tue Sep 11 16:02:34 2018 +0200
First working version with qt5 on Windows
Change-Id: I22846705c65209b796a4d4a1baaa3832c27eeb3e
diff --git a/Repository.mk b/Repository.mk
index 3076c6a55aab..260310dd54af 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -476,6 +476,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
ado \
oleautobridge \
smplmail \
+ $(if $(ENABLE_QT5),vclplug_qt5) \
vclplug_win \
wininetbe1 \
) \
@@ -653,7 +654,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
inprocserv \
UAccCOM \
winaccessibility \
- $(if $(ENABLE_QT5),vclplug_qt5) \
) \
))
diff --git a/vcl/Library_vclplug_qt5.mk b/vcl/Library_vclplug_qt5.mk
index c46856d5db9f..782bea8707a9 100644
--- a/vcl/Library_vclplug_qt5.mk
+++ b/vcl/Library_vclplug_qt5.mk
@@ -35,7 +35,7 @@ $(eval $(call gb_Library_use_sdk_api,vclplug_qt5))
$(eval $(call gb_Library_use_libraries,vclplug_qt5,\
$(if $(USING_X11),vclplug_gen) \
- $(if $(filter WNT,$(OS)),vclplug_win) \
+ $(if $(filter WNT,$(OS)),vclplug_win) \
vcl \
tl \
utl \
@@ -107,9 +107,9 @@ $(eval $(call gb_Library_add_exception_objects,vclplug_qt5,\
ifeq ($(OS),LINUX)
$(eval $(call gb_Library_add_libs,vclplug_qt5,\
- -lm \
- -ldl \
- -lpthread \
+ -lm \
+ -ldl \
+ -lpthread \
))
endif
diff --git a/vcl/Library_vclplug_win.mk b/vcl/Library_vclplug_win.mk
index f26e0afa390c..587f5c02f32b 100644
--- a/vcl/Library_vclplug_win.mk
+++ b/vcl/Library_vclplug_win.mk
@@ -64,7 +64,7 @@ $(eval $(call gb_Library_use_libraries,vclplug_win,\
$(eval $(call gb_Library_use_externals,vclplug_win,\
boost_headers \
epoxy \
- glm_headers \
+ glm_headers \
graphite \
harfbuzz \
icu_headers \
diff --git a/vcl/qt5/Qt5Data.cxx b/vcl/qt5/Qt5Data.cxx
index b01e969f8296..50175c79758a 100644
--- a/vcl/qt5/Qt5Data.cxx
+++ b/vcl/qt5/Qt5Data.cxx
@@ -149,14 +149,22 @@
#include <unx/x11_cursors/wsshow_curs.h>
#include <unx/x11_cursors/wsshow_mask.h>
-// #include <unx/glyphcache.hxx>
+#ifndef _WIN32
+#include <unx/glyphcache.hxx>
+#endif
-Qt5Data::Qt5Data(SalInstance* /* pInstance */)
+Qt5Data::Qt5Data(SalInstance* pInstance)
#ifndef _WIN32
: GenericUnixSalData(SAL_DATA_QT5, pInstance)
, m_pGlyphCache(new GlyphCache())
+#else
+ : SalData()
#endif
{
+#ifdef _WIN32
+ m_pInstance = pInstance;
+ SetSalData(this);
+#endif
ImplSVData* pSVData = ImplGetSVData();
// draw toolbars on separate lines
diff --git a/vcl/win/gdi/salprn.cxx b/vcl/win/gdi/salprn.cxx
index 4e2b7788ce05..119f27c20b44 100644
--- a/vcl/win/gdi/salprn.cxx
+++ b/vcl/win/gdi/salprn.cxx
@@ -1287,6 +1287,7 @@ BOOL CALLBACK SalPrintAbortProc( HDC hPrnDC, int /* nError */ )
{
SalData* pSalData = GetSalData();
WinSalPrinter* pPrinter;
+ int i = 0;
bool bWhile = true;
// Ensure we handle the mutex which will be released in WinSalInstance::DoYield
@@ -1295,6 +1296,10 @@ BOOL CALLBACK SalPrintAbortProc( HDC hPrnDC, int /* nError */ )
{
// process messages
bWhile = Application::Reschedule( true );
+ if (i > 15)
+ bWhile = false;
+ else
+ ++i;
pPrinter = pSalData->mpFirstPrinter;
while ( pPrinter )
@@ -1457,7 +1462,7 @@ bool WinSalPrinter::StartJob( const OUString* pFileName,
// As the Telecom Balloon Fax driver tends to send messages repeatedly
// we try to process first all, and then insert a dummy message
- while ( Application::Reschedule( true ) );
+ for (int i = 0; Application::Reschedule( true ) && i <= 15; ++i);
BOOL const ret = PostMessageW(GetSalData()->mpInstance->mhComWnd, SAL_MSG_DUMMY, 0, 0);
SAL_WARN_IF(0 == ret, "vcl", "ERROR: PostMessage() failed!");
diff --git a/vcl/win/plugadapt/salplug.cxx b/vcl/win/plugadapt/salplug.cxx
index 17124cc23e98..706d3564a367 100644
--- a/vcl/win/plugadapt/salplug.cxx
+++ b/vcl/win/plugadapt/salplug.cxx
@@ -83,21 +83,6 @@ static SalInstance* tryInstance( const OUString& rModuleBase, bool bForce = fals
{
pCloseModule = static_cast<oslModule>(aMod);
aMod.release();
-
-#ifndef ANDROID
- /*
- * Recent GTK+ versions load their modules with RTLD_LOCAL, so we can
- * not access the 'gnome_accessibility_module_shutdown' anymore.
- * So make sure libgtk+ & co are still mapped into memory when
- * atk-bridge's atexit handler gets called.
- * #i109007# KDE3 seems to have the same problem.
- * And same applies for KDE4.
- */
- if( rModuleBase == "gtk" || rModuleBase == "gtk3" || rModuleBase == "kde4" || rModuleBase == "gtk3_kde5")
- {
- pCloseModule = nullptr;
- }
-#endif
}
}
else
More information about the Libreoffice-commits
mailing list