[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source framework/util
framework/Library_fwk.mk |1 framework/inc/recording/dispatchrecorder.hxx | 10 -- framework/inc/services.h |1 framework/inc/uielement/langselectionmenucontroller.hxx| 10 -- framework/source/recording/dispatchrecorder.cxx| 34 --- framework/source/register/registertemp.cxx | 63 - framework/source/uielement/langselectionmenucontroller.cxx | 30 -- framework/util/fwk.component |8 + 8 files changed, 60 insertions(+), 97 deletions(-) New commits: commit c435ee5c9c9882d0817039d5e53990418c3d1066 Author: Noel Grandin AuthorDate: Wed Jul 8 18:39:27 2020 +0200 Commit: Noel Grandin CommitDate: Thu Jul 9 08:46:19 2020 +0200 framework: create instances with uno constructors See tdf#74608 for motivation Change-Id: Ia2d9447b687f0792d9d3a98d30cd2b8fe54049ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98388 Tested-by: Noel Grandin Reviewed-by: Noel Grandin diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk index 61bb9d825906..12434b7a4b74 100644 --- a/framework/Library_fwk.mk +++ b/framework/Library_fwk.mk @@ -150,7 +150,6 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\ framework/source/loadenv/targethelper \ framework/source/recording/dispatchrecorder \ framework/source/recording/dispatchrecordersupplier \ -framework/source/register/registertemp \ framework/source/services/ContextChangeEventMultiplexer \ framework/source/services/autorecovery \ framework/source/services/desktop \ diff --git a/framework/inc/recording/dispatchrecorder.hxx b/framework/inc/recording/dispatchrecorder.hxx index 54a9cb0e2185..806fe3cb2f22 100644 --- a/framework/inc/recording/dispatchrecorder.hxx +++ b/framework/inc/recording/dispatchrecorder.hxx @@ -57,12 +57,10 @@ class DispatchRecorder final DispatchRecorder( const css::uno::Reference< css::uno::XComponentContext >& xSMGR ); virtual ~DispatchRecorder() override; -// XInterface, XTypeProvider, XServiceInfo -DECLARE_XSERVICEINFO_NOFACTORY -/* Helper for registry */ -/// @throws css::uno::Exception -static css::uno::Reference< css::uno::XInterface > SAL_CALL impl_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); -static css::uno::Reference< css::lang::XSingleServiceFactory > impl_createFactory ( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); +/* interface XServiceInfo */ +virtual OUString SAL_CALL getImplementationName() override; +virtual sal_Bool SAL_CALL supportsService( const OUString& sServiceName ) override; +virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override; // XDispatchRecorder virtual void SAL_CALLstartRecording ( const css::uno::Reference< css::frame::XFrame >& xFrame ) override; diff --git a/framework/inc/services.h b/framework/inc/services.h index 8e1044811157..01a93213abd9 100644 --- a/framework/inc/services.h +++ b/framework/inc/services.h @@ -35,7 +35,6 @@ namespace framework{ #define IMPLEMENTATIONNAME_QUICKLAUNCHER "com.sun.star.comp.desktop.QuickstartWrapper" #define IMPLEMENTATIONNAME_FWK_TASKCREATOR "com.sun.star.comp.framework.TaskCreator" -#define IMPLEMENTATIONNAME_LANGUAGESELECTIONMENUCONTROLLER "com.sun.star.comp.framework.LanguageSelectionMenuController" } // namespace framework diff --git a/framework/inc/uielement/langselectionmenucontroller.hxx b/framework/inc/uielement/langselectionmenucontroller.hxx index cdf682e3e02b..32f2a45bac9c 100644 --- a/framework/inc/uielement/langselectionmenucontroller.hxx +++ b/framework/inc/uielement/langselectionmenucontroller.hxx @@ -38,12 +38,10 @@ namespace framework LanguageSelectionMenuController( const css::uno::Reference< css::uno::XComponentContext >& xContext ); virtual ~LanguageSelectionMenuController() override; -// XServiceInfo -DECLARE_XSERVICEINFO_NOFACTORY -/* Helper for registry */ -/// @throws css::uno::Exception -static css::uno::Reference< css::uno::XInterface > SAL_CALL impl_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); -static css::uno::Reference< css::lang::XSingleServiceFactory > impl_createFactory ( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); +/* interface XServiceInfo */ +virtual OUString SAL_CALL getImplementationName() override; +virtual sal_Bool SAL_CALL supportsService(
[Libreoffice-commits] core.git: include/vcl vcl/source
include/vcl/vclmedit.hxx |2 ++ vcl/source/edit/vclmedit.cxx |8 2 files changed, 10 insertions(+) New commits: commit 113a5e2b70d31299acad676fadac8c820e655a67 Author: Szymon Kłos AuthorDate: Tue Mar 17 15:17:14 2020 +0100 Commit: Szymon Kłos CommitDate: Thu Jul 9 08:45:08 2020 +0200 jsdialog: export cursor visibility for text areas Change-Id: I404e496a6f68f5cc2e2e628b51c759be49c7fecd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97729 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98231 Tested-by: Jenkins diff --git a/include/vcl/vclmedit.hxx b/include/vcl/vclmedit.hxx index caec816bd4b3..a21e7ba66b83 100644 --- a/include/vcl/vclmedit.hxx +++ b/include/vcl/vclmedit.hxx @@ -174,6 +174,8 @@ public: virtual FactoryFunction GetUITestFactory() const override; virtual bool set_property(const OString &rKey, const OUString &rValue) override; + +virtual void DumpAsPropertyTree(tools::JsonWriter&) override; }; #endif // INCLUDED_VCL_VCLMEDIT_HXX diff --git a/vcl/source/edit/vclmedit.cxx b/vcl/source/edit/vclmedit.cxx index fe459ba59a0d..b3fb80f2dbc6 100644 --- a/vcl/source/edit/vclmedit.cxx +++ b/vcl/source/edit/vclmedit.cxx @@ -38,6 +38,7 @@ #include #include #include +#include class ImpVclMEdit : public SfxListener { @@ -1552,4 +1553,11 @@ bool VclMultiLineEdit::set_property(const OString &rKey, const OUString &rValue) return true; } +void VclMultiLineEdit::DumpAsPropertyTree(tools::JsonWriter& rJsonWriter) +{ +Edit::DumpAsPropertyTree(rJsonWriter); + +rJsonWriter.put("cursor", pImpVclMEdit->GetTextWindow()->GetTextView()->IsCursorEnabled()); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: framework/inc framework/IwyuFilter_framework.yaml framework/source
framework/IwyuFilter_framework.yaml| 25 - framework/inc/dispatch/mailtodispatcher.hxx|4 framework/inc/dispatch/oxt_handler.hxx |4 framework/inc/dispatch/popupmenudispatcher.hxx |4 framework/inc/dispatch/servicehandler.hxx |4 framework/inc/dispatch/systemexec.hxx |4 framework/inc/jobs/helponstartup.hxx |4 framework/inc/jobs/shelljob.hxx|4 framework/inc/macros/registration.hxx | 90 -- framework/inc/macros/xinterface.hxx| 145 -- framework/inc/macros/xserviceinfo.hxx | 183 - framework/inc/macros/xtypeprovider.hxx | 119 framework/inc/recording/dispatchrecorder.hxx |3 framework/inc/recording/dispatchrecordersupplier.hxx |4 framework/inc/services.h |2 framework/inc/services/mediatypedetectionhelper.hxx|4 framework/inc/services/uriabbreviation.hxx |2 framework/inc/uielement/fontmenucontroller.hxx |2 framework/inc/uielement/fontsizemenucontroller.hxx |2 framework/inc/uielement/headermenucontroller.hxx |2 framework/inc/uielement/langselectionmenucontroller.hxx|2 framework/inc/uielement/macrosmenucontroller.hxx |1 framework/inc/uielement/menubarwrapper.hxx | 10 framework/inc/uielement/newmenucontroller.hxx |2 framework/inc/uielement/toolbarmodemenucontroller.hxx |2 framework/inc/uielement/toolbarsmenucontroller.hxx |2 framework/source/dispatch/dispatchdisabler.cxx |1 framework/source/dispatch/mailtodispatcher.cxx |1 framework/source/dispatch/oxt_handler.cxx |3 framework/source/dispatch/servicehandler.cxx |1 framework/source/dispatch/systemexec.cxx |1 framework/source/inc/dispatch/dispatchdisabler.hxx |4 framework/source/jobs/helponstartup.cxx|1 framework/source/jobs/shelljob.cxx |1 framework/source/recording/dispatchrecorder.cxx|1 framework/source/recording/dispatchrecordersupplier.cxx|1 framework/source/services/dispatchhelper.cxx |2 framework/source/services/mediatypedetectionhelper.cxx |1 framework/source/services/uriabbreviation.cxx |3 framework/source/uielement/fontmenucontroller.cxx |1 framework/source/uielement/fontsizemenucontroller.cxx |1 framework/source/uielement/footermenucontroller.cxx|1 framework/source/uielement/headermenucontroller.cxx|1 framework/source/uielement/langselectionmenucontroller.cxx |1 framework/source/uielement/macrosmenucontroller.cxx|2 framework/source/uielement/menubarwrapper.cxx | 92 -- framework/source/uielement/newmenucontroller.cxx |1 framework/source/uielement/toolbarmodemenucontroller.cxx |2 framework/source/uielement/toolbarsmenucontroller.cxx |1 49 files changed, 115 insertions(+), 639 deletions(-) New commits: commit 6653107b838be22da2ceb6e9123dafe67b45dd91 Author: Noel Grandin AuthorDate: Wed Jul 8 20:31:00 2020 +0200 Commit: Noel Grandin CommitDate: Thu Jul 9 08:27:53 2020 +0200 clean up macro usage Change-Id: I06669718f692cc5e9e209b4e490365f4f016afdb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98389 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/framework/IwyuFilter_framework.yaml b/framework/IwyuFilter_framework.yaml index 1b648d7cee43..35fe8d254351 100644 --- a/framework/IwyuFilter_framework.yaml +++ b/framework/IwyuFilter_framework.yaml @@ -4,31 +4,6 @@ blacklist: framework/inc/stdtypes.h: # Don't propose hxx -> h change in URE libs - cppuhelper/interfacecontainer.hxx -framework/inc/macros/xinterface.hxx: -# Used in macros -- com/sun/star/uno/Any.hxx -- com/sun/star/uno/Type.hxx -- cppuhelper/queryinterface.hxx -framework/inc/macros/xserviceinfo.hxx: -# Used in macros -- com/sun/star/lang/XServiceInfo.hpp -- com/sun/star/lang/XSingleServiceFactory.hpp -- com/sun/star/uno/Reference.hxx -- com/sun/star/uno/Sequence.hxx -- com/sun/star/uno/XComponentContext.hpp -- comphelper/processfactory.hxx -- cppuhelper/factory.hxx -- cppuhelper/supportsservice.hxx -- rtl/ustring.hxx -framework/inc/macros/registration.hxx: -# Used in macros -- com/sun/star/lang/XMultiServiceFactory.hpp -framework/inc/macros/xtypeprovider.hxx: -# Used in macros -- com/sun/star/lang/XTypeProvider.hpp -
Re; Revised Quotation and confirm price in USD Asap !
Dear Sir/Madam Please, I have called a lot of times to resolve the minimum problem, but your cell phone cannot be reached Please this order is top urgent then we count on your collaboration in order to deliver this order to us so as not to stop our production chain please kindly download attachment Revised Quotation and confirm price in USD Asap URGENT RESPONSE NEEDED!! Best Regards Shenzhen Pro tex Co., LTD--Yuen SimoesSales ManagerTel: +86-755-83422979Mobile: +86-186 6611 3442Site1: www.cktchled.comSign in to continue Sign in to view the documentMust be a valid email address.Your password must be at least 6 characters as well as contain at least one uppercase, one lowercase, and one number. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.2' - distro-configs/CPAndroidBranding.conf
distro-configs/CPAndroidBranding.conf |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 8df7cca9b87ea11daed3c75df0ede5fcfd9e46f6 Author: Aron Budea AuthorDate: Thu Jul 9 00:55:25 2020 +0200 Commit: Aron Budea CommitDate: Thu Jul 9 01:10:50 2020 +0200 android: we want full Chinese localization Change-Id: Ie67bc68f25431dd0391885ac43d87f2717eec1bc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98392 Tested-by: Aron Budea Reviewed-by: Aron Budea diff --git a/distro-configs/CPAndroidBranding.conf b/distro-configs/CPAndroidBranding.conf index cbd9497843d2..7d242f78fd07 100644 --- a/distro-configs/CPAndroidBranding.conf +++ b/distro-configs/CPAndroidBranding.conf @@ -7,6 +7,6 @@ --with-vendor=Collabora --disable-scripting-beanshell --disable-scripting-javascript ---with-lang=de en-US es fr pt-BR +--with-lang=de en-US es fr pt-BR zh-CN zh-TW --with-myspell-dicts --enable-release-build ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - sc/source
sc/source/core/tool/scmatrix.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit ef0f60f28ac83c55f260f61346f03b5f928764d8 Author: Eike Rathke AuthorDate: Wed Jul 8 18:36:59 2020 +0200 Commit: Eike Rathke CommitDate: Thu Jul 9 01:04:43 2020 +0200 Resolves: tdf#124454 exec the matrix operator on values converted from strings Effectively a fallout from the matrix operations rework started for tdf#89387 that did not convert strings at all and subsequent work converted the string according to settings but did not apply the current operator on the result. Change-Id: I90c8963021396fd9a46b063f6aee96283f89271a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98385 Reviewed-by: Eike Rathke Tested-by: Jenkins (cherry picked from commit 7ead920f7015bb8e7a4343b86bb26187d9a3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98338 diff --git a/sc/source/core/tool/scmatrix.cxx b/sc/source/core/tool/scmatrix.cxx index b27f73a10b94..fdba2f1b7989 100644 --- a/sc/source/core/tool/scmatrix.cxx +++ b/sc/source/core/tool/scmatrix.cxx @@ -3367,7 +3367,7 @@ public: double operator()(const svl::SharedString& rStr) const { -return convertStringToValue( mpErrorInterpreter, rStr.getString()); +return maOp( convertStringToValue( mpErrorInterpreter, rStr.getString()), mfVal); } TEmptyRes operator()(char) const ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: Branch 'distro/collabora/co-4-2' - loleaflet/l10n
loleaflet/l10n/admin-localizations.json |2 ++ loleaflet/l10n/help-localizations.json |2 ++ loleaflet/l10n/localizations.json|2 ++ loleaflet/l10n/locore-localizations.json |2 ++ loleaflet/l10n/uno-localizations.json|2 ++ 5 files changed, 10 insertions(+) New commits: commit 2196a4497851ddbf71a1e4b374d1e455c23cfbd1 Author: Michael Meeks AuthorDate: Wed Jul 8 21:18:55 2020 +0100 Commit: Aron Budea CommitDate: Wed Jul 8 23:43:19 2020 +0200 Adapt l10n for latest Android locale goodness. cf. https://gist.github.com/amake/0ac7724681ac1c178c6f95a5b09f03ce Change-Id: Ie0cc7f210a800fd835356d246ec661757e9ab89f Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98391 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Michael Meeks (cherry picked from commit 83557cbb881f22e0a70c808076176560af5513b9) Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98337 Reviewed-by: Aron Budea diff --git a/loleaflet/l10n/admin-localizations.json b/loleaflet/l10n/admin-localizations.json index a42f0de97..9ac48be94 100644 --- a/loleaflet/l10n/admin-localizations.json +++ b/loleaflet/l10n/admin-localizations.json @@ -122,7 +122,9 @@ "xh": "../l10n/ui-xh.json", "zh-cn": "../l10n/ui-zh_CN.json", "zh-CN": "../l10n/ui-zh_CN.json", +"zh-Hans": "../l10n/ui-zh_CN.json", "zh-tw": "../l10n/ui-zh_TW.json", "zh-TW": "../l10n/ui-zh_TW.json", +"zh-Hant": "../l10n/ui-zh_TW.json", "zu": "../l10n/ui-zu.json" } diff --git a/loleaflet/l10n/help-localizations.json b/loleaflet/l10n/help-localizations.json index 6dc5456be..559ac795e 100644 --- a/loleaflet/l10n/help-localizations.json +++ b/loleaflet/l10n/help-localizations.json @@ -123,7 +123,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zu.json" } diff --git a/loleaflet/l10n/localizations.json b/loleaflet/l10n/localizations.json index 2c988e5ba..b68c97ad6 100644 --- a/loleaflet/l10n/localizations.json +++ b/loleaflet/l10n/localizations.json @@ -123,7 +123,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zu.json" } diff --git a/loleaflet/l10n/locore-localizations.json b/loleaflet/l10n/locore-localizations.json index e99e1e85e..c828f7ffb 100644 --- a/loleaflet/l10n/locore-localizations.json +++ b/loleaflet/l10n/locore-localizations.json @@ -128,7 +128,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zu.json" } diff --git a/loleaflet/l10n/uno-localizations.json b/loleaflet/l10n/uno-localizations.json index 6ed799720..bf1566305 100644 --- a/loleaflet/l10n/uno-localizations.json +++ b/loleaflet/l10n/uno-localizations.json @@ -128,7 +128,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zu.json" } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa writerfilter/source
sw/qa/extras/ooxmlexport/data/tdf134606.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport10.cxx |7 writerfilter/source/dmapper/TableManager.cxx | 45 ++- 3 files changed, 37 insertions(+), 15 deletions(-) New commits: commit 5483d4e10aad27889b961b9cb94d7ba6c86aed0b Author: László Németh AuthorDate: Wed Jul 8 10:36:29 2020 +0200 Commit: László Németh CommitDate: Wed Jul 8 23:43:35 2020 +0200 tdf#134606 DOCX table import: fix gridBefore + nesting Nested tables in a table row with gridBefore could result of broken outer table, if the row doesn't contain text before the nested table, resulting invalid TextRange for insertion of gridBefore cells. Regression from commit 70274f86cdc1c023ffdd0130c262c1479262d76b (tdf#116194 DOCX import: fix missing tables with w:gridBefore) Change-Id: I6bb3948b6522d8785a1ea0ccf8d7c7f3c2bde189 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98320 Tested-by: Jenkins Reviewed-by: László Németh diff --git a/sw/qa/extras/ooxmlexport/data/tdf134606.docx b/sw/qa/extras/ooxmlexport/data/tdf134606.docx new file mode 100644 index ..c5b95cef3236 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf134606.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx index 13d6f679bbae..ebb3d8cf4e2b 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx @@ -617,6 +617,13 @@ DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf116194, "tdf116194.docx") assertXPath(pXmlDoc, "/w:document/w:body/w:tbl", 2); } +DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf134606, "tdf134606.docx") +{ +// The problem was that the importer lost the nested table structure with w:gridBefore +xmlDocUniquePtr pXmlDoc = parseExport(); +assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:tbl"); +} + DECLARE_OOXMLEXPORT_TEST(testMsoBrightnessContrast, "msobrightnesscontrast.docx") { uno::Reference image = getShape(1); diff --git a/writerfilter/source/dmapper/TableManager.cxx b/writerfilter/source/dmapper/TableManager.cxx index 651922fc3998..582b4d4705a6 100644 --- a/writerfilter/source/dmapper/TableManager.cxx +++ b/writerfilter/source/dmapper/TableManager.cxx @@ -441,23 +441,38 @@ void TableManager::endRow() TableData::Pointer_t pTableData = mTableDataStack.top(); // Add borderless w:gridBefore cell(s) to the row -if (pTableData) +sal_uInt32 nGridBefore = getCurrentGridBefore(); +if (pTableData && nGridBefore > 0 && pTableData->getCurrentRow()->getCellCount() > 0) { -sal_uInt32 nGridBefore -= mpTableDataHandler->getDomainMapperImpl().getTableManager().getCurrentGridBefore(); -for (unsigned int i = 0; i < nGridBefore; ++i) +const css::uno::Reference& xRowStart += pTableData->getCurrentRow()->getCellStart(0); +if (xRowStart.is()) { -css::table::BorderLine2 aBorderLine; -aBorderLine.Color = 0; -aBorderLine.InnerLineWidth = 0; -aBorderLine.OuterLineWidth = 0; -TablePropertyMapPtr pCellProperties(new TablePropertyMap); -pCellProperties->Insert(PROP_TOP_BORDER, css::uno::makeAny(aBorderLine)); -pCellProperties->Insert(PROP_LEFT_BORDER, css::uno::makeAny(aBorderLine)); -pCellProperties->Insert(PROP_BOTTOM_BORDER, css::uno::makeAny(aBorderLine)); -pCellProperties->Insert(PROP_RIGHT_BORDER, css::uno::makeAny(aBorderLine)); - pTableData->getCurrentRow()->addCell(pTableData->getCurrentRow()->getCellStart(0), - pCellProperties, /*bAddBefore=*/true); +try +{ +// valid TextRange for table creation (not a nested table)? +xRowStart->getText()->createTextCursorByRange(xRowStart); + +for (unsigned int i = 0; i < nGridBefore; ++i) +{ +css::table::BorderLine2 aBorderLine; +aBorderLine.Color = 0; +aBorderLine.InnerLineWidth = 0; +aBorderLine.OuterLineWidth = 0; +TablePropertyMapPtr pCellProperties(new TablePropertyMap); +pCellProperties->Insert(PROP_TOP_BORDER, css::uno::makeAny(aBorderLine)); +pCellProperties->Insert(PROP_LEFT_BORDER, css::uno::makeAny(aBorderLine)); +pCellProperties->Insert(PROP_BOTTOM_BORDER, css::uno::makeAny(aBorderLine)); +pCellProperties->Insert(PROP_RIGHT_BORDER, css::uno::makeAny(aBorderLine)); +pTableData->getCurrentRow()->addCell(xRowStart, pCellProperties, + /*bAddBefore=*/true); +} +} +catch (css::uno::Exc
GSoC Blurry Shadow Weekly Update
Hello, I've started this week working on the UI controller for the blur to be added to the shadow panel. I will continue working on tdf#134052 which I've been working on since last week of the first phase. How can I know more about how processUnifiedTransparencePrimitive2D function works in vclmetafileprocessor2d.cxx to draw transparent? As I think the function somehow neglects the blurry edges of the shadow. Regards, Ahmad ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: sc/source
sc/source/core/tool/scmatrix.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 7ead920f7015bb8e7a4343b86bb26187d9a3 Author: Eike Rathke AuthorDate: Wed Jul 8 18:36:59 2020 +0200 Commit: Eike Rathke CommitDate: Wed Jul 8 23:12:29 2020 +0200 Resolves: tdf#124454 exec the matrix operator on values converted from strings Effectively a fallout from the matrix operations rework started for tdf#89387 that did not convert strings at all and subsequent work converted the string according to settings but did not apply the current operator on the result. Change-Id: I90c8963021396fd9a46b063f6aee96283f89271a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98385 Reviewed-by: Eike Rathke Tested-by: Jenkins diff --git a/sc/source/core/tool/scmatrix.cxx b/sc/source/core/tool/scmatrix.cxx index b27f73a10b94..fdba2f1b7989 100644 --- a/sc/source/core/tool/scmatrix.cxx +++ b/sc/source/core/tool/scmatrix.cxx @@ -3367,7 +3367,7 @@ public: double operator()(const svl::SharedString& rStr) const { -return convertStringToValue( mpErrorInterpreter, rStr.getString()); +return maOp( convertStringToValue( mpErrorInterpreter, rStr.getString()), mfVal); } TEmptyRes operator()(char) const ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: loleaflet/l10n
loleaflet/l10n/admin-localizations.json |2 ++ loleaflet/l10n/help-localizations.json |2 ++ loleaflet/l10n/localizations.json|2 ++ loleaflet/l10n/locore-localizations.json |2 ++ loleaflet/l10n/uno-localizations.json|2 ++ 5 files changed, 10 insertions(+) New commits: commit 83557cbb881f22e0a70c808076176560af5513b9 Author: Michael Meeks AuthorDate: Wed Jul 8 21:18:55 2020 +0100 Commit: Michael Meeks CommitDate: Wed Jul 8 23:11:26 2020 +0200 Adapt l10n for latest Android locale goodness. cf. https://gist.github.com/amake/0ac7724681ac1c178c6f95a5b09f03ce Change-Id: Ie0cc7f210a800fd835356d246ec661757e9ab89f Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98391 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Michael Meeks diff --git a/loleaflet/l10n/admin-localizations.json b/loleaflet/l10n/admin-localizations.json index a42f0de97..9ac48be94 100644 --- a/loleaflet/l10n/admin-localizations.json +++ b/loleaflet/l10n/admin-localizations.json @@ -122,7 +122,9 @@ "xh": "../l10n/ui-xh.json", "zh-cn": "../l10n/ui-zh_CN.json", "zh-CN": "../l10n/ui-zh_CN.json", +"zh-Hans": "../l10n/ui-zh_CN.json", "zh-tw": "../l10n/ui-zh_TW.json", "zh-TW": "../l10n/ui-zh_TW.json", +"zh-Hant": "../l10n/ui-zh_TW.json", "zu": "../l10n/ui-zu.json" } diff --git a/loleaflet/l10n/help-localizations.json b/loleaflet/l10n/help-localizations.json index 6dc5456be..559ac795e 100644 --- a/loleaflet/l10n/help-localizations.json +++ b/loleaflet/l10n/help-localizations.json @@ -123,7 +123,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zh_TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/help-zu.json" } diff --git a/loleaflet/l10n/localizations.json b/loleaflet/l10n/localizations.json index 2c988e5ba..b68c97ad6 100644 --- a/loleaflet/l10n/localizations.json +++ b/loleaflet/l10n/localizations.json @@ -123,7 +123,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zh_TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/ui-zu.json" } diff --git a/loleaflet/l10n/locore-localizations.json b/loleaflet/l10n/locore-localizations.json index e99e1e85e..c828f7ffb 100644 --- a/loleaflet/l10n/locore-localizations.json +++ b/loleaflet/l10n/locore-localizations.json @@ -128,7 +128,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zh-TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/locore/zu.json" } diff --git a/loleaflet/l10n/uno-localizations.json b/loleaflet/l10n/uno-localizations.json index 6ed799720..bf1566305 100644 --- a/loleaflet/l10n/uno-localizations.json +++ b/loleaflet/l10n/uno-localizations.json @@ -128,7 +128,9 @@ "xh": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/xh.json", "zh-cn": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-CN.json", "zh-CN": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-CN.json", +"zh-Hans": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-CN.json", "zh-tw": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-TW.json", "zh-TW": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-TW.json", +"zh-Hant": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zh-TW.json", "zu": "%SERVICE_ROOT%/loleaflet/%VERSION%/l10n/uno/zu.json" } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/unx
vcl/unx/gtk3/gtk3gtkinst.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit ebe3a4b1d7eed5439c125c088b1fb4df438e8614 Author: Andrea Gelmini AuthorDate: Tue Jul 7 11:52:33 2020 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Wed Jul 8 22:21:38 2020 +0200 Fix typo Change-Id: I2a5a231d7e58c3a84651c70cdf561c81b56a651a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98250 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index 1cba75f751e2..1b94d454ba82 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -12396,7 +12396,7 @@ private: GtkTextBuffer* m_pTextBuffer; GtkAdjustment* m_pVAdjustment; int m_nMaxTextLength; -gulong m_nChangedSignalId; // we don't disable/enable this one, its to implement max-length +gulong m_nChangedSignalId; // we don't disable/enable this one, it's to implement max-length gulong m_nInsertTextSignalId; gulong m_nCursorPosSignalId; gulong m_nVAdjustChangedSignalId; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - sw/source
sw/source/filter/ww8/ww8par2.cxx |3 +++ 1 file changed, 3 insertions(+) New commits: commit fcefe800044f89d7fbbfa46262edcf0f39dbcc09 Author: Caolán McNamara AuthorDate: Tue Jul 7 16:05:19 2020 +0100 Commit: Adolfo Jayme Barrientos CommitDate: Wed Jul 8 22:17:13 2020 +0200 ofz#23961 pad back to original length in case of multi-byte input encoding resulting in a shorter output string than input Change-Id: Ieb4bb7b5f4551ca22e87c573233f083901f3d3c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98273 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos diff --git a/sw/source/filter/ww8/ww8par2.cxx b/sw/source/filter/ww8/ww8par2.cxx index 12ce9f9e8db1..f0a12ad3005e 100644 --- a/sw/source/filter/ww8/ww8par2.cxx +++ b/sw/source/filter/ww8/ww8par2.cxx @@ -615,6 +615,9 @@ void SwWW8ImplReader::SetAnlvStrings(SwNumFormat &rNum, WW8_ANLV const &rAV, return; } sText = OUString(reinterpret_cast(pText), nLen, eCharSet); +// ofz#23961 in case of multi-byte input encoding resulting in shorter +// output pad to full length with something semi-arbitrary +comphelper::string::padToLength(sText, nLen, cBulletChar); } else { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - vcl/skia
vcl/skia/salbmp.cxx | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) New commits: commit eb85e5bd28b9101c7c475c8e7a86ea61af85806f Author: Luboš Luňák AuthorDate: Tue Jul 7 12:15:20 2020 + Commit: Adolfo Jayme Barrientos CommitDate: Wed Jul 8 22:16:35 2020 +0200 prevent SkiaSalBitmap::Scale() from breaking indexed bitmaps (tdf#134574) Since the actual scaling is done later at some unknown time, the palette mustn't change, but scaling can change colors. Change-Id: Ie254c8b31993d9d509c32a730dd8c8b5d3cb2256 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98258 Tested-by: Jenkins Reviewed-by: Luboš Luňák (cherry picked from commit 3769d01791e54be0fbfc6d706596283213700ad0) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98330 Reviewed-by: Adolfo Jayme Barrientos diff --git a/vcl/skia/salbmp.cxx b/vcl/skia/salbmp.cxx index 439baca41b6f..9b4e0b3324b4 100644 --- a/vcl/skia/salbmp.cxx +++ b/vcl/skia/salbmp.cxx @@ -293,8 +293,8 @@ bool SkiaSalBitmap::Scale(const double& rScaleX, const double& rScaleY, BmpScale if (mSize == newSize) return true; -SAL_INFO("vcl.skia.trace", "scale(" << this << "): " << mSize << "->" << newSize << ":" -<< static_cast(nScaleFlag)); +SAL_INFO("vcl.skia.trace", "scale(" << this << "): " << mSize << "/" << mBitCount << "->" +<< newSize << ":" << static_cast(nScaleFlag)); // The idea here is that the actual scaling will be delayed until the result // is actually needed. Usually the scaled bitmap will be drawn somewhere, @@ -316,8 +316,18 @@ bool SkiaSalBitmap::Scale(const double& rScaleX, const double& rScaleY, BmpScale currentQuality = kHigh_SkFilterQuality; break; default: +SAL_INFO("vcl.skia.trace", "scale(" << this << "): unsupported scale algorithm"); return false; } +if (mBitCount < 24 && !mPalette.IsGreyPalette8Bit()) +{ +// Scaling can introduce additional colors not present in the original +// bitmap (e.g. when smoothing). If the bitmap is indexed (has non-trivial palette), +// this would break the bitmap, because the actual scaling is done only somewhen later. +// Linear 8bit palette (grey) is ok, since there we use directly the values as colors. +SAL_INFO("vcl.skia.trace", "scale(" << this << "): indexed bitmap"); +return false; +} // if there is already one scale() pending, use the lowest quality of all requested static_assert(kMedium_SkFilterQuality < kHigh_SkFilterQuality); mScaleQuality = std::min(mScaleQuality, currentQuality); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: Review for gerrit 98187 : tdf#100348 add fill to fontwork in export to pptx
Hi all, hi Thorsten, Regina Henschel schrieb am 07-Jul-20 um 14:48: I know, that unit tests are missing. I have added unit tests. So from my point of view it is finished now. Kind regards Regina ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: include/vcl vcl/source vcl/unx
include/vcl/vclmedit.hxx |3 +++ include/vcl/weld.hxx | 10 ++ vcl/source/app/salvtables.cxx | 12 vcl/source/edit/vclmedit.cxx | 16 vcl/unx/gtk3/gtk3gtkinst.cxx | 18 ++ 5 files changed, 59 insertions(+) New commits: commit 253d4c15e73b0a22320dbebb4bdf17f8fdb03649 Author: Caolán McNamara AuthorDate: Wed Jul 8 17:08:51 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 22:06:05 2020 +0200 query if the cursor can be moved up or down Change-Id: I47c09ff5f76c873cf30e608a134f90b42040a0c3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98387 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/include/vcl/vclmedit.hxx b/include/vcl/vclmedit.hxx index 307d218a5846..caec816bd4b3 100644 --- a/include/vcl/vclmedit.hxx +++ b/include/vcl/vclmedit.hxx @@ -134,6 +134,9 @@ public: virtual OUStringGetSelected() const override; OUStringGetSelected( LineEnd aSeparator ) const; +bool CanUp() const; +bool CanDown() const; + virtual voidCut() override; virtual voidCopy() override; virtual voidPaste() override; diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx index 7649accf8b2d..73f27cd9a517 100644 --- a/include/vcl/weld.hxx +++ b/include/vcl/weld.hxx @@ -2041,6 +2041,16 @@ public: m_aCursorPositionHdl = rLink; } +// returns true if pressing up would move the cursor +// doesn't matter if that move is to a previous line or to the start of the +// current line just so long as the cursor would move +virtual bool can_move_cursor_with_up() const = 0; + +// returns true if pressing down would move the cursor +// doesn't matter if that move is to a next line or to the end of the +// current line just so long as the cursor would move +virtual bool can_move_cursor_with_down() const = 0; + virtual void cut_clipboard() = 0; virtual void copy_clipboard() = 0; virtual void paste_clipboard() = 0; diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 893a7f4f0b49..e30bbd057c71 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -5500,6 +5500,18 @@ public: weld::TextView::connect_cursor_position(rLink); } +virtual bool can_move_cursor_with_up() const override +{ +bool bNoSelection = !m_xTextView->GetSelection(); +return !bNoSelection || m_xTextView->CanUp(); +} + +virtual bool can_move_cursor_with_down() const override +{ +bool bNoSelection = !m_xTextView->GetSelection(); +return !bNoSelection || m_xTextView->CanDown(); +} + virtual void cut_clipboard() override { m_xTextView->Cut(); diff --git a/vcl/source/edit/vclmedit.cxx b/vcl/source/edit/vclmedit.cxx index 021ef7658837..fe459ba59a0d 100644 --- a/vcl/source/edit/vclmedit.cxx +++ b/vcl/source/edit/vclmedit.cxx @@ -1515,6 +1515,22 @@ void VclMultiLineEdit::EnableCursor( bool bEnable ) GetTextView()->EnableCursor( bEnable ); } +bool VclMultiLineEdit::CanUp() const +{ +TextView* pTextView = GetTextView(); +const TextSelection& rTextSelection = pTextView->GetSelection(); +TextPaM aPaM(rTextSelection.GetEnd()); +return aPaM != pTextView->CursorUp(aPaM); +} + +bool VclMultiLineEdit::CanDown() const +{ +TextView* pTextView = GetTextView(); +const TextSelection& rTextSelection = pTextView->GetSelection(); +TextPaM aPaM(rTextSelection.GetEnd()); +return aPaM != pTextView->CursorDown(aPaM); +} + TextWindow* VclMultiLineEdit::GetTextWindow() { return pImpVclMEdit->GetTextWindow(); diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index 5ba41f9e028a..1cba75f751e2 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -12553,6 +12553,24 @@ public: g_signal_handler_unblock(m_pVAdjustment, m_nVAdjustChangedSignalId); } +// in gtk, 'up' when on the first line, will jump to the start of the line +// if not there already +virtual bool can_move_cursor_with_up() const override +{ +GtkTextIter start, end; +gtk_text_buffer_get_selection_bounds(m_pTextBuffer, &start, &end); +return !gtk_text_iter_equal(&start, &end) || !gtk_text_iter_is_start(&start); +} + +// in gtk, 'down' when on the first line, will jump to the end of the line +// if not there already +virtual bool can_move_cursor_with_down() const override +{ +GtkTextIter start, end; +gtk_text_buffer_get_selection_bounds(m_pTextBuffer, &start, &end); +return !gtk_text_iter_equal(&start, &end) || !gtk_text_iter_is_end(&end); +} + virtual void cut_clipboard() override { GtkClipboard *pClipboard = gtk_widget_get_clipboard(GTK_WIDGET(m_pTextView), ___ Libreoffice-commits mailing list l
[Libreoffice-commits] core.git: vcl/source
vcl/source/app/salvtables.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 94f4bdb910a9db49016ea23cd0086f70a1468363 Author: Caolán McNamara AuthorDate: Wed Jul 8 19:30:32 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 22:05:32 2020 +0200 expand to cover subwidgets Change-Id: Ib0765e6a38c6dc6cdb32eefc013b432f3cf36db2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98386 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 4121165b37a5..893a7f4f0b49 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -596,7 +596,7 @@ void SalInstanceWidget::HandleMouseEventListener(VclSimpleEvent& rEvent) bool SalInstanceWidget::HandleKeyEventListener(VclWindowEvent& rEvent) { // we get all key events here, ignore them unless we have focus -if (!has_focus()) +if (!m_xWidget->HasChildPathFocus()) return false; if (rEvent.GetId() == VclEventId::WindowKeyInput) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa
sw/qa/extras/ww8export/data/tdf134264.docx |binary sw/qa/extras/ww8export/ww8export3.cxx |8 2 files changed, 8 insertions(+) New commits: commit 7e66a473fa147546e5fb96c95a86ae5ec6f45fa5 Author: Xisco Fauli AuthorDate: Wed Jul 8 15:26:32 2020 +0200 Commit: Xisco Fauli CommitDate: Wed Jul 8 21:56:53 2020 +0200 tdf#134264: sw: Add unittest Change-Id: I373b2549a067452056f649213c32d5983212580c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98378 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/ww8export/data/tdf134264.docx b/sw/qa/extras/ww8export/data/tdf134264.docx new file mode 100644 index ..5acb4cf4e6ce Binary files /dev/null and b/sw/qa/extras/ww8export/data/tdf134264.docx differ diff --git a/sw/qa/extras/ww8export/ww8export3.cxx b/sw/qa/extras/ww8export/ww8export3.cxx index f998ffe1d85a..5c1892ce5205 100644 --- a/sw/qa/extras/ww8export/ww8export3.cxx +++ b/sw/qa/extras/ww8export/ww8export3.cxx @@ -245,6 +245,14 @@ DECLARE_WW8EXPORT_TEST(testTdf79435_legacyInputFields, "tdf79435_legacyInputFiel CPPUNIT_ASSERT_EQUAL(OUString("date"), sTmp); } +DECLARE_WW8EXPORT_TEST(testTdf134264, "tdf134264.docx") +{ +// Without the fix in place, ADDRESSBLOCK fields would have been lost after RT +CPPUNIT_ASSERT_EQUAL(OUString("MF"), getParagraph(1)->getString()); +CPPUNIT_ASSERT_EQUAL(OUString("M19"), getParagraph(2)->getString()); +CPPUNIT_ASSERT_EQUAL(OUString("1815"), getParagraph(3)->getString()); +} + DECLARE_WW8EXPORT_TEST(testTdf120225_textControlCrossRef, "tdf120225_textControlCrossRef.doc") { uno::Reference xTextDocument(mxComponent, uno::UNO_QUERY); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: [libreoffice-projects] Minutes from the UX/design meeting 2020-Jul-08
Hi Heiko, *, Kontakt Heiko Tietze () kirjutas kuupäeval K, 8. juuli 2020 kell 20:23: > * Keybinding is defined by UI language instead of locale setting >+ https://bugs.documentfoundation.org/show_bug.cgi?id=134470 >+ use keyboard locale (Eike) >+ no dropdown in tools > options > language to change the kb layout > (Heiko) > + and would clutter the UI if more controls are added >+ could be done as expert setting since the kb layout probably never > changes >=> go for it > I'm not advocating another setting in that dialog, but why do you think "the kb layout probably never changes"? As far as I've seen, people who use multiple languages typically do switch layouts: 1) Between Latin-based layouts with different "additional" characters 2) Between e.g. Latin / Cyrillic (Unless they're nerds like me who have made their own layout with all the characters they need for their languages - but I have an inkling that I'm in the minority here ;) How would the expert setting even work, would it "lock" the kb layout in LibO, regardless what the system-wide kb layout is? I sense trouble with that approach. Best regards, Mihkel ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: framework/inc framework/source framework/util
framework/inc/dispatch/mailtodispatcher.hxx | 10 +-- framework/inc/recording/dispatchrecordersupplier.hxx| 13 +--- framework/inc/services.h|8 -- framework/inc/services/mediatypedetectionhelper.hxx | 27 + framework/inc/uielement/fontmenucontroller.hxx | 10 +-- framework/inc/uielement/fontsizemenucontroller.hxx | 10 +-- framework/inc/uielement/footermenucontroller.hxx| 15 + framework/inc/uielement/headermenucontroller.hxx| 10 +-- framework/inc/uielement/macrosmenucontroller.hxx| 10 +-- framework/source/dispatch/mailtodispatcher.cxx | 36 +++- framework/source/recording/dispatchrecordersupplier.cxx | 45 framework/source/register/registertemp.cxx |8 -- framework/source/services/mediatypedetectionhelper.cxx | 35 framework/source/uielement/fontmenucontroller.cxx | 28 +++-- framework/source/uielement/fontsizemenucontroller.cxx | 26 +++-- framework/source/uielement/footermenucontroller.cxx | 28 - framework/source/uielement/headermenucontroller.cxx | 28 +++-- framework/source/uielement/macrosmenucontroller.cxx | 30 -- framework/util/fwk.component| 24 +--- 19 files changed, 230 insertions(+), 171 deletions(-) New commits: commit 1a90b1aa64866950cf9ad7032a8240b0c072e671 Author: Noel Grandin AuthorDate: Wed Jul 8 18:13:39 2020 +0200 Commit: Noel Grandin CommitDate: Wed Jul 8 21:12:50 2020 +0200 framework: create instances with uno constructors See tdf#74608 for motivation Change-Id: I6237016000dc05eacb14e59815b53cd44fbfce0c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98384 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/framework/inc/dispatch/mailtodispatcher.hxx b/framework/inc/dispatch/mailtodispatcher.hxx index a830822cde81..e76fadfb6b2b 100644 --- a/framework/inc/dispatch/mailtodispatcher.hxx +++ b/framework/inc/dispatch/mailtodispatcher.hxx @@ -61,12 +61,10 @@ class MailToDispatcher final : public ::cppu::WeakImplHelper< MailToDispatcher( const css::uno::Reference< css::uno::XComponentContext >& rxContext ); virtual ~MailToDispatcher( ) override; -// XInterface, XTypeProvider, XServiceInfo -DECLARE_XSERVICEINFO_NOFACTORY -/* Helper for registry */ -/// @throws css::uno::Exception -static css::uno::Reference< css::uno::XInterface > SAL_CALL impl_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); -static css::uno::Reference< css::lang::XSingleServiceFactory > impl_createFactory ( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); +/* interface XServiceInfo */ +virtual OUString SAL_CALL getImplementationName() override; +virtual sal_Bool SAL_CALL supportsService( const OUString& sServiceName ) override; +virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override; // XDispatchProvider virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch ( const css::util::URL& aURL, diff --git a/framework/inc/recording/dispatchrecordersupplier.hxx b/framework/inc/recording/dispatchrecordersupplier.hxx index b8eb844dbd1d..83517137df98 100644 --- a/framework/inc/recording/dispatchrecordersupplier.hxx +++ b/framework/inc/recording/dispatchrecordersupplier.hxx @@ -59,13 +59,10 @@ class DispatchRecorderSupplier final : public ::cppu::WeakImplHelper< public: -// XInterface, XTypeProvider, XServiceInfo - -DECLARE_XSERVICEINFO_NOFACTORY -/* Helper for registry */ -/// @throws css::uno::Exception -static css::uno::Reference< css::uno::XInterface > SAL_CALL impl_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); -static css::uno::Reference< css::lang::XSingleServiceFactory > impl_createFactory ( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager ); +/* interface XServiceInfo */ +virtual OUString SAL_CALL getImplementationName() override; +virtual sal_Bool SAL_CALL supportsService( const OUString& sServiceName ) override; +virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override; // XDispatchRecorderSupplier @@ -79,7 +76,7 @@ class DispatchRecorderSupplier final : public ::cppu::WeakImplHelper< public: - DispatchRecorderSupplier( const css::uno::Reference< css::lang::XMult
[Libreoffice-commits] core.git: desktop/source
desktop/source/lib/init.cxx | 34 +++--- 1 file changed, 19 insertions(+), 15 deletions(-) New commits: commit 224160656d549b5b1891edd1b3cee251b754e69b Author: Tomaž Vajngerl AuthorDate: Mon Jul 6 14:57:29 2020 +0200 Commit: Tomaž Vajngerl CommitDate: Wed Jul 8 20:55:15 2020 +0200 lok: set to export PDF bookmarks by default when save-as a PDF Change-Id: Ieb182b9a0d1f18a29a83ce369881578c06e217ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98211 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 900e50f75c40..b69986d0ad01 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -58,6 +58,7 @@ #include #include #include +#include #include #include @@ -2126,6 +2127,15 @@ void setLanguageAndLocale(OUString const & aLangISO) aLocalOptions.Commit(); } +void setFormatSpecificFilterData(OUString const & sFormat, comphelper::SequenceAsHashMap & rFilterDataMap) +{ +if (sFormat == "pdf") +{ +// always export bookmarks, which is needed for annotations +rFilterDataMap["ExportBookmarks"] <<= true; +} +} + } // anonymous namespace // Wonder global state ... @@ -2556,25 +2566,19 @@ static int doc_saveAs(LibreOfficeKitDocument* pThis, const char* sUrl, const cha aFilterOptions = comphelper::string::convertCommaSeparated(aFilteredOptionSeq); aSaveMediaDescriptor[MediaDescriptor::PROP_FILTEROPTIONS()] <<= aFilterOptions; -if(!watermarkText.isEmpty() || bFullSheetPreview) -{ -uno::Sequence< beans::PropertyValue > aFilterData( static_cast(bFullSheetPreview) + static_cast(!watermarkText.isEmpty()) ); +comphelper::SequenceAsHashMap aFilterDataMap; -if (!watermarkText.isEmpty()) -{ -aFilterData[ 0 ].Name = "TiledWatermark"; -aFilterData[ 0 ].Value <<= watermarkText; -} +setFormatSpecificFilterData(sFormat, aFilterDataMap); -if (bFullSheetPreview) -{ -int nOptIndex = static_cast(!watermarkText.isEmpty()); +if (!watermarkText.isEmpty()) +aFilterDataMap["TiledWatermark"] <<= watermarkText; -aFilterData[ nOptIndex ].Name = "SinglePageSheets"; -aFilterData[ nOptIndex ].Value <<= true; -} +if (bFullSheetPreview) +aFilterDataMap["SinglePageSheets"] <<= true; -aSaveMediaDescriptor["FilterData"] <<= aFilterData; +if (!aFilterDataMap.empty()) +{ +aSaveMediaDescriptor["FilterData"] <<= aFilterDataMap.getAsConstPropertyValueList(); } // add interaction handler too ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/vcl svx/source vcl/source
include/vcl/filter/PDFiumLibrary.hxx | 21 svx/source/inc/svdpdf.hxx|6 +++- svx/source/svdraw/svdpdf.cxx | 44 ++- vcl/source/pdf/PDFiumLibrary.cxx | 33 ++ 4 files changed, 76 insertions(+), 28 deletions(-) New commits: commit bc8016b81c2c609711c26af1f85da327cf30a4ff Author: Tomaž Vajngerl AuthorDate: Mon Jul 6 14:08:23 2020 +0200 Commit: Tomaž Vajngerl CommitDate: Wed Jul 8 20:55:01 2020 +0200 pdf: add PDFiumPathSegment to the wrapper & use in ImpSdrPdfImport A PageObject of type FPDF_PAGEOBJ_PATH can have a path segment, that is common in vector graphic objects. The path segment is wrapped into PDFiumPathSegment which can be used to handle the path and path properties. Change-Id: I990d51ba90fa356a6eca137eb4b71947858289aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98210 Tested-by: Tomaž Vajngerl Reviewed-by: Tomaž Vajngerl diff --git a/include/vcl/filter/PDFiumLibrary.hxx b/include/vcl/filter/PDFiumLibrary.hxx index f7dcc4b2c99e..43176f584420 100644 --- a/include/vcl/filter/PDFiumLibrary.hxx +++ b/include/vcl/filter/PDFiumLibrary.hxx @@ -73,6 +73,24 @@ public: class PDFiumTextPage; +class VCL_DLLPUBLIC PDFiumPathSegment final +{ +private: +FPDF_PATHSEGMENT mpPathSegment; + +PDFiumPathSegment(const PDFiumPathSegment&) = delete; +PDFiumPathSegment& operator=(const PDFiumPathSegment&) = delete; + +public: +PDFiumPathSegment(FPDF_PATHSEGMENT pPathSegment); +~PDFiumPathSegment(); + +FPDF_PATHSEGMENT getPointer() { return mpPathSegment; } +basegfx::B2DPoint getPoint(); +bool isClosed(); +int getType(); +}; + class VCL_DLLPUBLIC PDFiumPageObject final { private: @@ -100,6 +118,9 @@ public: int getTextRenderMode(); Color getFillColor(); Color getStrokeColor(); +// Path +int getPathSegmentCount(); +std::unique_ptr getPathSegment(int index); }; class VCL_DLLPUBLIC PDFiumTextPage final diff --git a/svx/source/inc/svdpdf.hxx b/svx/source/inc/svdpdf.hxx index 60a90619e6a8..08a05a50f156 100644 --- a/svx/source/inc/svdpdf.hxx +++ b/svx/source/inc/svdpdf.hxx @@ -113,8 +113,10 @@ class ImpSdrPdfImport final void ImportForm(std::unique_ptr const& pPageObject, std::unique_ptr const& pTextPage, int nPageObjectIndex); -void ImportImage(FPDF_PAGEOBJECT pPageObject, int nPageObjectIndex); -void ImportPath(FPDF_PAGEOBJECT pPageObject, int nPageObjectIndex); +void ImportImage(std::unique_ptr const& pPageObject, + int nPageObjectIndex); +void ImportPath(std::unique_ptr const& pPageObject, +int nPageObjectIndex); void ImportText(std::unique_ptr const& pPageObject, std::unique_ptr const& pTextPage, int nPageObjectIndex); diff --git a/svx/source/svdraw/svdpdf.cxx b/svx/source/svdraw/svdpdf.cxx index 30413fa1a30f..85911156159b 100644 --- a/svx/source/svdraw/svdpdf.cxx +++ b/svx/source/svdraw/svdpdf.cxx @@ -680,10 +680,10 @@ void ImpSdrPdfImport::ImportPdfObject( ImportText(pPageObject, pTextPage, nPageObjectIndex); break; case FPDF_PAGEOBJ_PATH: -ImportPath(pPageObject->getPointer(), nPageObjectIndex); +ImportPath(pPageObject, nPageObjectIndex); break; case FPDF_PAGEOBJ_IMAGE: -ImportImage(pPageObject->getPointer(), nPageObjectIndex); +ImportImage(pPageObject, nPageObjectIndex); break; case FPDF_PAGEOBJ_SHADING: SAL_WARN("sd.filter", "Got page object SHADING: " << nPageObjectIndex); @@ -878,10 +878,11 @@ void ImpSdrPdfImport::MapScaling() mnMapScalingOfs = nCount; } -void ImpSdrPdfImport::ImportImage(FPDF_PAGEOBJECT pPageObject, int /*nPageObjectIndex*/) +void ImpSdrPdfImport::ImportImage(std::unique_ptr const& pPageObject, + int /*nPageObjectIndex*/) { std::unique_ptr::type, FPDFBitmapDeleter> bitmap( -FPDFImageObj_GetBitmap(pPageObject)); +FPDFImageObj_GetBitmap(pPageObject->getPointer())); if (!bitmap) { SAL_WARN("sd.filter", "Failed to get IMAGE"); @@ -924,7 +925,7 @@ void ImpSdrPdfImport::ImportImage(FPDF_PAGEOBJECT pPageObject, int /*nPageObject float bottom; float right; float top; -if (!FPDFPageObj_GetBounds(pPageObject, &left, &bottom, &right, &top)) +if (!FPDFPageObj_GetBounds(pPageObject->getPointer(), &left, &bottom, &right, &top)) { SAL_WARN("sd.filter", "FAILED to get image bounds"); } @@ -941,36 +942,27 @@ void ImpSdrPdfImport::ImportImage(FPDF_PAGEOBJECT pPageObject, int /*nPageObject InsertObj(pGraf); } -void ImpSdrPdfImport::ImportPath(FPDF_PAGEOBJECT pPageObject, int /*nPageObjectIndex*/) +void ImpSdrPdfImport::ImportPath(std::unique_ptr
[Libreoffice-commits] core.git: vcl/qa
vcl/qa/cppunit/svm/svmtest.cxx |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) New commits: commit 243b96653e0f5d1113521129baecb4e1c278cc83 Author: Luboš Luňák AuthorDate: Wed Jul 8 17:45:08 2020 +0200 Commit: Tomaž Vajngerl CommitDate: Wed Jul 8 20:53:41 2020 +0200 svmtest shouldn't compare rendering against itself Change-Id: I426187abfd4e5e2596f9680aff14fc1e370a18ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98383 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl diff --git a/vcl/qa/cppunit/svm/svmtest.cxx b/vcl/qa/cppunit/svm/svmtest.cxx index f318aa718c4d..e03267e3bd36 100644 --- a/vcl/qa/cppunit/svm/svmtest.cxx +++ b/vcl/qa/cppunit/svm/svmtest.cxx @@ -258,8 +258,9 @@ void SvmTest::checkRendering(ScopedVclPtrInstance const & pVirtua { BitmapEx aSourceBitmapEx = pVirtualDev->GetBitmapEx(Point(), Size(10, 10)); ScopedVclPtrInstance pVirtualDevResult; +pVirtualDevResult->SetOutputSizePixel(Size(10, 10)); const_cast(rMetaFile).Play(pVirtualDevResult.get()); -BitmapEx aResultBitmapEx = pVirtualDev->GetBitmapEx(Point(), Size(10, 10)); +BitmapEx aResultBitmapEx = pVirtualDevResult->GetBitmapEx(Point(), Size(10, 10)); const bool bWriteCompareBitmap = false; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - filter/source
filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl | 13 ++ filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl |3 ++ 2 files changed, 12 insertions(+), 4 deletions(-) New commits: commit 340ab639ed3e65e6b3d2b54cbb3c70fddf25f23a Author: Svante Schubert AuthorDate: Wed Jul 8 00:57:33 2020 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Wed Jul 8 20:40:05 2020 +0200 Fixing top border style by fixing three XSLT issues triggered by... ... new properties in ODF 1.3 * check for fo:border='none' * missing @ in @fo:background-color * without default case (xsl:otherwise), end delimiter for "page" missing in CSS Change-Id: Ie5d0c3e8a32de0403534c5a4fa33a5f20393ce69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98365 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 646cf598633bacc3959fc126c9117f06f3d0f9e3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98335 Reviewed-by: Adolfo Jayme Barrientos diff --git a/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl b/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl index f9b5aff1b363..d1c8f189be85 100644 --- a/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl +++ b/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl @@ -705,11 +705,16 @@ +)"> diff --git a/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl b/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl index dc07f7e2918b..ec5b680df150 100644 --- a/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl +++ b/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl @@ -303,6 +303,9 @@ vertical-lr; + +horizontal-tb; direction:ltr; + ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: avmedia/Library_avmediawin.mk avmedia/source
avmedia/Library_avmediawin.mk |1 avmedia/source/win/avmediawin.component |3 + avmedia/source/win/framegrabber.cxx |3 - avmedia/source/win/framegrabber.hxx |5 -- avmedia/source/win/manager.cxx | 18 + avmedia/source/win/manager.hxx |5 -- avmedia/source/win/player.cxx |7 +-- avmedia/source/win/player.hxx |4 -- avmedia/source/win/window.cxx |3 - avmedia/source/win/window.hxx |5 -- avmedia/source/win/winuno.cxx | 59 11 files changed, 21 insertions(+), 92 deletions(-) New commits: commit 8876a037a657ec61d29c2951ae910a2e56e16840 Author: Noel Grandin AuthorDate: Wed Jul 8 16:02:42 2020 +0200 Commit: Noel Grandin CommitDate: Wed Jul 8 20:26:46 2020 +0200 avmedia/win: create instances with uno constructors See tdf#74608 for motivation Change-Id: I3a4afa5e583ad5b6339d4cf0036e1dc562274864 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98379 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/avmedia/Library_avmediawin.mk b/avmedia/Library_avmediawin.mk index 09453d6c77ba..320ba2b36073 100644 --- a/avmedia/Library_avmediawin.mk +++ b/avmedia/Library_avmediawin.mk @@ -42,7 +42,6 @@ $(eval $(call gb_Library_add_exception_objects,avmediawin,\ avmedia/source/win/manager \ avmedia/source/win/player \ avmedia/source/win/window \ - avmedia/source/win/winuno \ )) # vim: set noet sw=4 ts=4: diff --git a/avmedia/source/win/avmediawin.component b/avmedia/source/win/avmediawin.component index 3874439f4fc0..00a25c0c6dca 100644 --- a/avmedia/source/win/avmediawin.component +++ b/avmedia/source/win/avmediawin.component @@ -19,7 +19,8 @@ http://openoffice.org/2010/uno-components";> - + diff --git a/avmedia/source/win/framegrabber.cxx b/avmedia/source/win/framegrabber.cxx index 21b5dede6866..3b03c68e4e67 100644 --- a/avmedia/source/win/framegrabber.cxx +++ b/avmedia/source/win/framegrabber.cxx @@ -47,8 +47,7 @@ using namespace ::com::sun::star; namespace avmedia::win { -FrameGrabber::FrameGrabber( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) : -mxMgr( rxMgr ) +FrameGrabber::FrameGrabber() { ::CoInitializeEx( nullptr, COINIT_APARTMENTTHREADED ); } diff --git a/avmedia/source/win/framegrabber.hxx b/avmedia/source/win/framegrabber.hxx index aa5b8945e878..fb4fda35905d 100644 --- a/avmedia/source/win/framegrabber.hxx +++ b/avmedia/source/win/framegrabber.hxx @@ -31,8 +31,7 @@ class FrameGrabber : public ::cppu::WeakImplHelper< css::media::XFrameGrabber, css::lang::XServiceInfo > { public: - -explicit FrameGrabber( const css::uno::Reference< css::lang::XMultiServiceFactory >& rxMgr ); +explicit FrameGrabber(); ~FrameGrabber() override; boolcreate( const OUString& rURL ); @@ -46,8 +45,6 @@ public: virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override; private: - -css::uno::Reference< css::lang::XMultiServiceFactory >mxMgr; OUString maURL; }; diff --git a/avmedia/source/win/manager.cxx b/avmedia/source/win/manager.cxx index 3615850a7cf3..731effd5f80f 100644 --- a/avmedia/source/win/manager.cxx +++ b/avmedia/source/win/manager.cxx @@ -23,15 +23,11 @@ #include #include -#define AVMEDIA_WIN_MANAGER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Manager_DirectX" -#define AVMEDIA_WIN_MANAGER_SERVICENAME "com.sun.star.media.Manager" - using namespace ::com::sun::star; namespace avmedia::win { -Manager::Manager( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) : -mxMgr( rxMgr ) +Manager::Manager() { } @@ -43,7 +39,7 @@ Manager::~Manager() uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const OUString& rURL ) { -Player* pPlayer( new Player( mxMgr ) ); +Player* pPlayer( new Player() ); uno::Reference< media::XPlayer >xRet( pPlayer ); const INetURLObject aURL( rURL ); @@ -56,7 +52,7 @@ uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const OUString& OUString SAL_CALL Manager::getImplementationName( ) { -return AVMEDIA_WIN_MANAGER_IMPLEMENTATIONNAME; +return "com.sun.star.comp.avmedia.Manager_DirectX"; } @@ -68,10 +64,16 @@ sal_Bool SAL_CALL Manager::supportsService( const OUString& ServiceName ) uno::Sequence< OUString > SAL_CALL Manager::getSupportedServiceNames( ) { -return { AVMEDIA_WIN_MANAGER_SERVICENAME }; +return { "com.sun.star.media.Manager" }; } } // namespace avmedia::win +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface* +avmedia_Manager_DirectX_get_implementation( +css::uno::XComponentContext* , css::uno::Sequence const&) +{ +
[Libreoffice-commits] core.git: solenv/bin unoxml/Library_unordf.mk unoxml/Library_unoxml.mk unoxml/source
solenv/bin/native-code.py | 11 +++- unoxml/Library_unordf.mk|1 unoxml/Library_unoxml.mk|1 unoxml/source/dom/documentbuilder.cxx | 25 +++-- unoxml/source/dom/documentbuilder.hxx |7 -- unoxml/source/dom/saxbuilder.cxx| 31 --- unoxml/source/dom/saxbuilder.hxx| 11 +--- unoxml/source/rdf/CBlankNode.cxx| 29 ++ unoxml/source/rdf/CLiteral.cxx | 29 ++ unoxml/source/rdf/CNodes.hxx| 61 -- unoxml/source/rdf/CURI.cxx | 30 ++- unoxml/source/rdf/librdf_repository.cxx | 27 ++ unoxml/source/rdf/librdf_repository.hxx | 39 -- unoxml/source/rdf/librdf_services.cxx | 62 --- unoxml/source/rdf/unordf.component | 11 ++-- unoxml/source/service/services.cxx | 85 unoxml/source/service/unoxml.component | 11 ++-- unoxml/source/xpath/xpathapi.cxx| 34 unoxml/source/xpath/xpathapi.hxx| 15 + 19 files changed, 88 insertions(+), 432 deletions(-) New commits: commit f4fc5dc31eeb728777104c9ece2788bcc4bdea89 Author: Noel Grandin AuthorDate: Wed Jul 8 09:50:16 2020 +0200 Commit: Noel Grandin CommitDate: Wed Jul 8 20:26:28 2020 +0200 unoxml: create instances with uno constructors See tdf#74608 for motivation Change-Id: I636d92faa3b26ac06c044c0485e632967daa709c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98313 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py index b1bfc8903107..32972c8a7fae 100755 --- a/solenv/bin/native-code.py +++ b/solenv/bin/native-code.py @@ -40,8 +40,6 @@ core_factory_list = [ ("libucpfile1.a", "ucpfile_component_getFactory"), ("libucphier1.a", "ucphier1_component_getFactory"), ("libucptdoc1lo.a", "ucptdoc1_component_getFactory"), -("libunordflo.a", "unordf_component_getFactory"), -("libunoxmllo.a", "unoxml_component_getFactory"), ("libutllo.a", "utl_component_getFactory"), ("libxstor.a", "xstor_component_getFactory"), ("libxmlfdlo.a", "xmlfd_component_getFactory"), @@ -308,6 +306,15 @@ core_constructor_list = [ "stardiv_Toolkit_VCLXPointer_get_implementation", "stardiv_Toolkit_VCLXPopupMenu_get_implementation", "stardiv_Toolkit_VCLXToolkit_get_implementation", +# unoxml/source/rdf/unordf.component +"unoxml_rdfRepository_get_implementation", +"unoxml_CURI_get_implementation", +"unoxml_CLiteral_get_implementation", +"unoxml_CBlankNode_get_implementation", +# unoxml/source/service/unoxml.component +"unoxml_CXPathAPI_get_implementation", +"unoxml_CSAXDocumentBuilder_get_implementation", +"unoxml_CDocumentBuilder_get_implementation", # uui/util/uui.component "com_sun_star_comp_uui_UUIInteractionHandler_get_implementation", "com_sun_star_comp_uui_UUIInteractionRequestStringResolver_get_implementation", diff --git a/unoxml/Library_unordf.mk b/unoxml/Library_unordf.mk index 27640e70f0e4..8998c6aac73b 100644 --- a/unoxml/Library_unordf.mk +++ b/unoxml/Library_unordf.mk @@ -45,7 +45,6 @@ $(eval $(call gb_Library_add_exception_objects,unordf,\ unoxml/source/rdf/CURI \ unoxml/source/rdf/CLiteral \ unoxml/source/rdf/librdf_repository \ -unoxml/source/rdf/librdf_services \ )) # vim: set noet sw=4 ts=4: diff --git a/unoxml/Library_unoxml.mk b/unoxml/Library_unoxml.mk index 1d2202aa8839..34d9fe555e63 100644 --- a/unoxml/Library_unoxml.mk +++ b/unoxml/Library_unoxml.mk @@ -72,7 +72,6 @@ $(eval $(call gb_Library_add_exception_objects,unoxml,\ unoxml/source/events/mutationevent \ unoxml/source/events/uievent \ unoxml/source/events/mouseevent \ -unoxml/source/service/services \ )) $(eval $(call gb_Library_set_include,unoxml,\ diff --git a/unoxml/source/dom/documentbuilder.cxx b/unoxml/source/dom/documentbuilder.cxx index 03f4b2a79e91..7eaa8095511f 100644 --- a/unoxml/source/dom/documentbuilder.cxx +++ b/unoxml/source/dom/documentbuilder.cxx @@ -96,28 +96,14 @@ namespace DOM xmlInitParser(); } -Reference< XInterface > CDocumentBuilder::_getInstance(const Reference< XMultiServiceFactory >& ) -{ -return static_cast< XDocumentBuilder* >(new CDocumentBuilder); -} - -OUString CDocumentBuilder::_getImplementationName() -{ -return "com.sun.star.comp.xml.dom.DocumentBuilder"; -} -Sequence CDocumentBuilder::_getSupportedServiceNames() -{ -return { "com.sun.star.xml.dom.DocumentBuilder" }; -} - Sequence< OUString > SAL_CALL CDocumentBuilder::getSupportedServiceNames() { -return CDocumentBuilder::_getSupportedServiceNames(); +return { "com.sun.star.xml.dom.DocumentBuilder" }; } OUString SAL_CALL CDocumentBuilder::getImplementationName() {
[Libreoffice-commits] core.git: 2 commits - dbaccess/inc dbaccess/Library_dbaxml.mk dbaccess/Library_dbu.mk dbaccess/Library_sdbt.mk dbaccess/source dbaccess/util solenv/bin svgio/Library_svgio.mk svg
dbaccess/Library_dbaxml.mk |2 dbaccess/Library_dbu.mk |2 dbaccess/Library_sdbt.mk |1 dbaccess/inc/pch/precompiled_dbaxml.hxx |1 dbaccess/inc/pch/precompiled_dbu.hxx |2 dbaccess/source/filter/xml/dbaxml.component | 20 +- dbaccess/source/filter/xml/dbloader2.cxx | 61 +--- dbaccess/source/filter/xml/xmlExport.cxx | 99 ++--- dbaccess/source/filter/xml/xmlfilter.cxx |8 - dbaccess/source/filter/xml/xmlservices.cxx | 69 - dbaccess/source/filter/xml/xmlservices.hxx | 37 dbaccess/source/inc/apitools.hxx | 37 dbaccess/source/inc/dbu_reghelper.hxx| 39 - dbaccess/source/inc/flt_reghelper.hxx| 39 - dbaccess/source/inc/registrationhelper.hxx | 112 --- dbaccess/source/sdbtools/connection/connectiontools.cxx | 26 +-- dbaccess/source/sdbtools/inc/connectiontools.hxx |6 dbaccess/source/sdbtools/misc/sdbt_services.cxx | 46 -- dbaccess/source/shared/dbu_reghelper.cxx | 34 dbaccess/source/shared/flt_reghelper.cxx | 34 dbaccess/source/ui/app/AppController.cxx | 26 --- dbaccess/source/ui/app/AppController.hxx |7 dbaccess/source/ui/browser/dbloader.cxx | 33 dbaccess/source/ui/browser/exsrcbrw.cxx | 29 --- dbaccess/source/ui/browser/sbagrid.cxx | 26 --- dbaccess/source/ui/browser/unodatbr.cxx | 28 --- dbaccess/source/ui/inc/RelationController.hxx|7 dbaccess/source/ui/inc/TableController.hxx |7 dbaccess/source/ui/inc/exsrcbrw.hxx |7 dbaccess/source/ui/inc/querycontroller.hxx |7 dbaccess/source/ui/inc/sbagrid.hxx |7 dbaccess/source/ui/inc/uiservices.hxx| 55 --- dbaccess/source/ui/inc/unodatbr.hxx |8 - dbaccess/source/ui/inc/unosqlmessage.hxx | 10 - dbaccess/source/ui/misc/uiservices.cxx | 87 --- dbaccess/source/ui/querydesign/limitboxcontroller.cxx| 20 +- dbaccess/source/ui/querydesign/limitboxcontroller.hxx|6 dbaccess/source/ui/querydesign/querycontroller.cxx | 54 +-- dbaccess/source/ui/relationdesign/RelationController.cxx | 26 --- dbaccess/source/ui/tabledesign/TableController.cxx | 25 --- dbaccess/source/ui/uno/AdvancedSettingsDlg.cxx | 34 dbaccess/source/ui/uno/ColumnControl.cxx | 19 +- dbaccess/source/ui/uno/ColumnControl.hxx |6 dbaccess/source/ui/uno/ColumnModel.cxx | 19 +- dbaccess/source/ui/uno/ColumnModel.hxx |6 dbaccess/source/ui/uno/DBTypeWizDlg.cxx | 23 --- dbaccess/source/ui/uno/DBTypeWizDlg.hxx | 10 - dbaccess/source/ui/uno/DBTypeWizDlgSetup.cxx | 27 --- dbaccess/source/ui/uno/DBTypeWizDlgSetup.hxx | 10 - dbaccess/source/ui/uno/TableFilterDlg.cxx| 23 --- dbaccess/source/ui/uno/TableFilterDlg.hxx| 10 - dbaccess/source/ui/uno/UserSettingsDlg.cxx | 23 --- dbaccess/source/ui/uno/UserSettingsDlg.hxx | 10 - dbaccess/source/ui/uno/admindlg.cxx | 23 --- dbaccess/source/ui/uno/admindlg.hxx | 10 - dbaccess/source/ui/uno/composerdialogs.cxx | 39 ++--- dbaccess/source/ui/uno/composerdialogs.hxx | 12 - dbaccess/source/ui/uno/copytablewizard.cxx | 32 dbaccess/source/ui/uno/dbinteraction.cxx | 40 +++-- dbaccess/source/ui/uno/dbinteraction.hxx | 12 - dbaccess/source/ui/uno/textconnectionsettings_uno.cxx| 34 +--- dbaccess/source/ui/uno/unoDirectSql.cxx | 20 +- dbaccess/source/ui/uno/unoDirectSql.hxx |9 - dbaccess/source/ui/uno/unosqlmessage.cxx | 23 --- dbaccess/util/dbu.component | 80 +++--- dbaccess/util/sdbt.component |5 solenv/bin/native-code.py| 11 + svgio/Library_svgio.mk |1 svgio/source/svguno/svguno.cxx | 46 -- svgio/source/svguno/xsvgparser.cxx | 35 +--- svgio/source/svguno/xsvgparser.hxx | 49 -- svgio/svgio.component|5 72 files changed, 321 insertion
[Libreoffice-commits] core.git: vcl/source vcl/unx
vcl/source/app/salvtables.cxx |3 +++ vcl/unx/gtk3/gtk3gtkinst.cxx | 11 ++- 2 files changed, 9 insertions(+), 5 deletions(-) New commits: commit 10a5df7de19c86b362976b4bd8cee32da4413547 Author: Caolán McNamara AuthorDate: Tue Jul 7 20:27:51 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 20:24:23 2020 +0200 improve weld::Widget::draw rendering a widget Change-Id: I1f49e3e7829f41d7eb4ffc137a9b0ab5c47d2cce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98375 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 81c2e38085c3..4121165b37a5 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -1137,7 +1137,10 @@ void SalInstanceWidget::draw(OutputDevice& rOutput, const tools::Rectangle& rRec { Size aOrigSize(m_xWidget->GetSizePixel()); m_xWidget->SetSizePixel(rRect.GetSize()); +rOutput.Push(PushFlags::CLIPREGION); +rOutput.IntersectClipRegion(rRect); m_xWidget->Draw(&rOutput, rRect.TopLeft(), DrawFlags::NONE); +rOutput.Pop(); m_xWidget->SetSizePixel(aOrigSize); } diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index cba5c662baff..5ba41f9e028a 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -3047,10 +3047,10 @@ public: // has to be mapped for draw to work bool bAlreadyMapped = gtk_widget_get_mapped(m_pWidget); -if (!bAlreadyVisible) -gtk_widget_show(m_pWidget); if (!bAlreadyRealized) gtk_widget_realize(m_pWidget); +if (!bAlreadyVisible) +gtk_widget_show(m_pWidget); if (!bAlreadyMapped) gtk_widget_map(m_pWidget); @@ -3065,7 +3065,7 @@ public: aOrigAllocation.y, static_cast(aSize.Width()), static_cast(aSize.Height()) }; -gtk_widget_set_allocation(m_pWidget, &aNewAllocation); +gtk_widget_size_allocate(m_pWidget, &aNewAllocation); if (GTK_IS_CONTAINER(m_pWidget)) gtk_container_resize_children(GTK_CONTAINER(m_pWidget)); @@ -3080,13 +3080,14 @@ public: cairo_destroy(cr); gtk_widget_set_allocation(m_pWidget, &aOrigAllocation); +gtk_widget_size_allocate(m_pWidget, &aOrigAllocation); rOutput.DrawOutDev(rRect.TopLeft(), aSize, Point(), aSize, *xOutput); -if (!bAlreadyVisible) -gtk_widget_hide(m_pWidget); if (!bAlreadyMapped) gtk_widget_unmap(m_pWidget); +if (!bAlreadyVisible) +gtk_widget_hide(m_pWidget); if (!bAlreadyRealized) gtk_widget_unrealize(m_pWidget); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Minutes from the UX/design meeting 2020-Jul-08
Present: Sascha, Heiko Comments from: Bogdabn, Mike, Stuart, Eike Tickets/Topic * Page break editing: "Text Flow > Breaks" needs clearer wording + https://bugs.documentfoundation.org/show_bug.cgi?id=134440 + Paragraph style > Text flow > _With_ page style (unclear if it applies to before or after the break) + "Continue with page style" (Bogdan) + "Next/Following" could do it as well but personally fine with what we have (Heiko) => no further opinion so keeping ticket open * Hyperlink colours cannot be changed by changing Hyperlink style + https://bugs.documentfoundation.org/show_bug.cgi?id=134456 + Intended for Calc cells w/o autoformatting (Mike) + would be great to use Hyperlink character style in Writer (Heiko) but off-topic here + cannot follow the supposed benefit of hyperlink cell style and would remove this (Heiko) => up to discussion on BZ * Keybinding is defined by UI language instead of locale setting + https://bugs.documentfoundation.org/show_bug.cgi?id=134470 + use keyboard locale (Eike) + no dropdown in tools > options > language to change the kb layout (Heiko) + and would clutter the UI if more controls are added + could be done as expert setting since the kb layout probably never changes => go for it * UI Confusing icon names for Background Color / Highlight Color + https://bugs.documentfoundation.org/show_bug.cgi?id=134432 + rename Character Highlight Color / Paragraph Background Color + support the idea (Heiko) => do it * Add control grouping "labeling" to NB Tabbed Interface + https://bugs.documentfoundation.org/show_bug.cgi?id=134481 + Tooltips are sufficient, WF (Stuart) + essential part of the contextual groups (Heiko) + drawback is vertical size => undecided discussion; keep open signature.asc Description: OpenPGP digital signature ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] online.git: cypress_test/integration_tests
cypress_test/integration_tests/mobile/writer/shape_properties_spec.js | 14 ++ 1 file changed, 4 insertions(+), 10 deletions(-) New commits: commit 4a9ae824975948b6c4f582db1a02306e8fbd3675 Author: Tamás Zolnai AuthorDate: Wed Jul 8 16:29:41 2020 +0200 Commit: Tamás Zolnai CommitDate: Wed Jul 8 18:27:10 2020 +0200 cypress: reenable some shape related tests. Change-Id: Ic21b812cf8c0370dcab9e8474f30206a2b88f70a Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98381 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Tamás Zolnai diff --git a/cypress_test/integration_tests/mobile/writer/shape_properties_spec.js b/cypress_test/integration_tests/mobile/writer/shape_properties_spec.js index e8c442cee..6f5b43321 100644 --- a/cypress_test/integration_tests/mobile/writer/shape_properties_spec.js +++ b/cypress_test/integration_tests/mobile/writer/shape_properties_spec.js @@ -113,7 +113,7 @@ describe('Change shape properties via mobile wizard.', function() { .should('have.attr', 'd', 'M 1965,4863 L 7957,18073 1965,18073 1965,4863 1965,4863 Z'); }); - it.skip('Change size with keep ratio enabled.', function() { + it('Change size with keep ratio enabled.', function() { openPosSizePanel(); // Enable keep ratio @@ -122,14 +122,8 @@ describe('Change shape properties via mobile wizard.', function() { cy.get('#ratio #ratio') .should('have.prop', 'checked', true); - // TODO: flickering here? - cy.wait(300); - // Change height - cy.get('#selectheight .spinfield') - .clear() - .type('5.2') - .type('{enter}'); + helper.inputOnIdle('#selectheight .spinfield', '5.2'); cy.get('.leaflet-pane.leaflet-overlay-pane svg g svg g g g path') .should('not.have.attr', 'd', defaultGeometry); @@ -195,7 +189,7 @@ describe('Change shape properties via mobile wizard.', function() { .should('have.attr', 'stroke', 'rgb(152,0,0)'); }); - it.skip('Change line style', function() { + it('Change line style', function() { openLinePropertyPanel(); helper.clickOnIdle('#linestyle'); @@ -208,7 +202,7 @@ describe('Change shape properties via mobile wizard.', function() { .should('have.length.greaterThan', 12); }); - it.skip('Change line width', function() { + it('Change line width', function() { openLinePropertyPanel(); cy.get('#linewidth .spinfield') ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sfx2/source
sfx2/source/view/viewsh.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 2b196f3bb75dc8bea0f70b842b829394a7e0c097 Author: Noel Grandin AuthorDate: Wed Jul 8 12:26:06 2020 +0200 Commit: Noel Grandin CommitDate: Wed Jul 8 18:17:30 2020 +0200 SAL_WARN->SAL_INFO to prevent spamming the unit test logs Change-Id: I0c4f530f86e1e20f7fc42a1dff4499cc57c45bbb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98366 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sfx2/source/view/viewsh.cxx b/sfx2/source/view/viewsh.cxx index 603ecc53e9fb..00a10e62a3c6 100644 --- a/sfx2/source/view/viewsh.cxx +++ b/sfx2/source/view/viewsh.cxx @@ -1483,7 +1483,7 @@ void SfxViewShell::libreOfficeKitViewCallback(int nType, const char* pPayload) c if (pImpl->m_pLibreOfficeKitViewCallback) pImpl->m_pLibreOfficeKitViewCallback(nType, pPayload, pImpl->m_pLibreOfficeKitViewData); else -SAL_WARN( +SAL_INFO( "sfx.view", "SfxViewShell::libreOfficeKitViewCallback no callback set! Dropped payload of type " << lokCallbackTypeToString(nType) << ": [" << pPayload << ']'); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/vcl vcl/source
include/vcl/layout.hxx|1 + vcl/source/window/builder.cxx |4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) New commits: commit f70bd1aeee9360e29d42ff66acfce07d84047b25 Author: Caolán McNamara AuthorDate: Wed Jul 8 14:05:01 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 18:16:46 2020 +0200 drop WB_BORDER if the border style is invisible Change-Id: Ie88818cb2b61d411f868f748d6a7c2fdf8028e65 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98377 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/include/vcl/layout.hxx b/include/vcl/layout.hxx index ff33f1a107f8..facf8854263b 100644 --- a/include/vcl/layout.hxx +++ b/include/vcl/layout.hxx @@ -511,6 +511,7 @@ public: virtual const vcl::Window *get_child() const override; virtual bool set_property(const OString &rKey, const OUString &rValue) override; virtual void Paint(vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect) override; +bool HasVisibleBorder() const { return m_eDrawFrameStyle != DrawFrameStyle::NONE; } ScrollBar& getVertScrollBar() { return *m_pVScroll; } ScrollBar& getHorzScrollBar() { return *m_pHScroll; } Size getVisibleChildSize() const; diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index 1c93d0016df8..259cc45fb432 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -1579,7 +1579,9 @@ vcl::Window* VclBuilder::prepareWidgetOwnScrolling(vcl::Window *pParent, WinBits { WinBits nScrollBits = pParent->GetStyle(); nScrollBits &= (WB_AUTOHSCROLL|WB_HSCROLL|WB_AUTOVSCROLL|WB_VSCROLL); -rWinStyle |= nScrollBits | WB_BORDER; +rWinStyle |= nScrollBits; +if (static_cast(pParent)->HasVisibleBorder()) +rWinStyle |= WB_BORDER; pParent = pParent->GetParent(); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/source
vcl/source/window/builder.cxx |6 -- 1 file changed, 6 deletions(-) New commits: commit c5ece70541f0bf492f1b98d90af5659d64f2aeb7 Author: Caolán McNamara AuthorDate: Wed Jul 8 12:48:09 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 18:16:30 2020 +0200 prepareWidgetOwnScrolling already set WB_BORDER the pRealParent != pParent case already caused WB_BORDER to be set in prepareWidgetOwnScrolling Change-Id: Id33d9f8d10b8076a26b31e2dcdc70e3419bba5be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98376 Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index c80672f0e0aa..1c93d0016df8 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -1996,8 +1996,6 @@ VclPtr VclBuilder::makeObject(vcl::Window *pParent, const OString & WinBits nWinStyle = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK; //IconView manages its own scrolling, vcl::Window *pRealParent = prepareWidgetOwnScrolling(pParent, nWinStyle); -if (pRealParent != pParent) -nWinStyle |= WB_BORDER; VclPtr xBox = VclPtr::Create(pRealParent, nWinStyle); xWindowForPackingProps = xBox; @@ -2037,8 +2035,6 @@ VclPtr VclBuilder::makeObject(vcl::Window *pParent, const OString & } //ListBox/SvHeaderTabListBox manages its own scrolling, vcl::Window *pRealParent = prepareWidgetOwnScrolling(pParent, nWinStyle); -if (pRealParent != pParent) -nWinStyle |= WB_BORDER; if (m_bLegacy) { xWindow = VclPtr::Create(pRealParent, nWinStyle | WB_SIMPLEMODE); @@ -2185,8 +2181,6 @@ VclPtr VclBuilder::makeObject(vcl::Window *pParent, const OString & WinBits nWinStyle = WB_CLIPCHILDREN|WB_LEFT; //VclMultiLineEdit manages its own scrolling, vcl::Window *pRealParent = prepareWidgetOwnScrolling(pParent, nWinStyle); -if (pRealParent != pParent) -nWinStyle |= WB_BORDER; xWindow = VclPtr::Create(pRealParent, nWinStyle); if (pRealParent != pParent) cleanupWidgetOwnScrolling(pParent, xWindow, rMap); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: editeng/source include/editeng sc/source
editeng/source/editeng/editeng.cxx | 10 ++ editeng/source/editeng/impedit.hxx |4 include/editeng/editeng.hxx|3 +++ sc/source/ui/view/viewdata.cxx | 10 +- 4 files changed, 22 insertions(+), 5 deletions(-) New commits: commit 6907817b83e37d40be491cc10b2e5b99cc0f48fc Author: Dennis Francis AuthorDate: Wed Jun 3 21:33:24 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 18:08:25 2020 +0200 scPrintTwipsMsgs: Use print-twips paper-size Paper size for the EditEngine is calculated based on per-cell pixel alignment. So lets use the exact print-twips version whenever we need it to compute/adjust output-area and visible-area of EditView. Change-Id: I7da6db9363d09965315ff5ca9d01f0fea141a533 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98130 Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/editeng/source/editeng/editeng.cxx b/editeng/source/editeng/editeng.cxx index 73d85a07b7ce..99b6f1e04a99 100644 --- a/editeng/source/editeng/editeng.cxx +++ b/editeng/source/editeng/editeng.cxx @@ -2818,6 +2818,16 @@ void EditEngine::DisableAttributeExpanding() { pImpEditEngine->GetEditDoc().DisableAttributeExpanding(); } +void EditEngine::SetLOKSpecialPaperSize(const Size& rSize) +{ +pImpEditEngine->SetLOKSpecialPaperSize(rSize); +} + +const Size& EditEngine::GetLOKSpecialPaperSize() const +{ +return pImpEditEngine->GetLOKSpecialPaperSize(); +} + EFieldInfo::EFieldInfo() { } diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx index 5f67ecd9b22a..0e2b6df1d790 100644 --- a/editeng/source/editeng/impedit.hxx +++ b/editeng/source/editeng/impedit.hxx @@ -562,6 +562,8 @@ private: // If it is detected at one point that the StatusHdl has to be called, but // this should not happen immediately (critical section): Timer aStatusTimer; +SizeaLOKSpecialPaperSize; + Link aStatusHdlLink; Link aNotifyHdl; Link aHtmlImportHdl; @@ -1109,6 +,8 @@ public: boolIsNbspRunNext() const { return mbNbspRunNext; } void Dispose(); +void SetLOKSpecialPaperSize(const Size& rSize) { aLOKSpecialPaperSize = rSize; } +const Size& GetLOKSpecialPaperSize() const { return aLOKSpecialPaperSize; } }; inline EPaM ImpEditEngine::CreateEPaM( const EditPaM& rPaM ) diff --git a/include/editeng/editeng.hxx b/include/editeng/editeng.hxx index 292b620a9b95..e183cf81be5a 100644 --- a/include/editeng/editeng.hxx +++ b/include/editeng/editeng.hxx @@ -628,6 +628,9 @@ public: // the same type expands the original instead of inserting another. But the // spell check dialog doesn't want that behaviour void DisableAttributeExpanding(); + +void SetLOKSpecialPaperSize(const Size& rSize); +const Size& GetLOKSpecialPaperSize() const; }; #endif // INCLUDED_EDITENG_EDITENG_HXX diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx index 3469399f40b4..58ee76e99a1f 100644 --- a/sc/source/ui/view/viewdata.cxx +++ b/sc/source/ui/view/viewdata.cxx @@ -1652,7 +1652,10 @@ void ScViewData::SetEditEngine( ScSplitPos eWhich, aPaperSizePTwips.setWidth(OutputDevice::LogicToLogic( aUtilRect.GetWidth(), MapUnit::Map100thMM, MapUnit::MapTwip)); } + pNewEngine->SetPaperSize( aPaperSize ); +if (bLOKPrintTwips) +pNewEngine->SetLOKSpecialPaperSize(aPaperSizePTwips); // sichtbarer Ausschnitt Size aPaper = pNewEngine->GetPaperSize(); @@ -1781,12 +1784,10 @@ void ScViewData::EditGrowX() SCCOL nLeft = GetPosX(eHWhich); SCCOL nRight = nLeft + VisibleCellsX(eHWhich); -MapUnit eWinUnit = GetLogicMode(eWhich).GetMapUnit(); SizeaSize = pEngine->GetPaperSize(); Size aSizePTwips; - if (bLOKPrintTwips) -aSizePTwips = OutputDevice::LogicToLogic(aSize, MapMode(eWinUnit), MapMode(MapUnit::MapTwip)); +aSizePTwips = pEngine->GetLOKSpecialPaperSize(); tools::Rectangle aArea = pCurView->GetOutputArea(); tools::Rectangle aAreaPTwips; @@ -2074,7 +2075,6 @@ void ScViewData::EditGrowY( bool bInitial ) EditEngine* pEngine = pCurView->GetEditEngine(); vcl::Window* pWin = pCurView->GetWindow(); -MapUnit eWinUnit = GetLogicMode(eWhich).GetMapUnit(); SCROW nBottom = GetPosY(eVWhich) + VisibleCellsY(eVWhich); @@ -2085,7 +2085,7 @@ void ScViewData::EditGrowY( bool bInitial ) if (bLOKPrintTwips) { -aSizePTwips = OutputDevice::LogicToLogic(aSize, MapMode(eWinUnit), MapMode(MapUnit::MapTwip)); +aSizePTwips = pEngine->GetLOKSpecialPaperSize(); aAreaPTwips = pCurView->GetLOKSpecialOutputArea(); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/l
[Libreoffice-commits] core.git: svx/Library_textconversiondlgs.mk svx/source svx/util
svx/Library_textconversiondlgs.mk | 1 svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.cxx | 18 +-- svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx | 10 -- svx/source/unodialogs/textconversiondlgs/services.cxx | 49 -- svx/util/textconversiondlgs.component | 4 5 files changed, 10 insertions(+), 72 deletions(-) New commits: commit f3d21c378863a2a8756ded5dff6d1c18bc3c5db2 Author: Noel Grandin AuthorDate: Wed Jul 8 14:08:16 2020 +0200 Commit: Noel Grandin CommitDate: Wed Jul 8 17:41:36 2020 +0200 svx: create instances with uno constructors See tdf#74608 for motivation Change-Id: If6bd80525d398b45c2938e921c183633f173dfae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98372 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/svx/Library_textconversiondlgs.mk b/svx/Library_textconversiondlgs.mk index 085b52ec3991..3c623988081a 100644 --- a/svx/Library_textconversiondlgs.mk +++ b/svx/Library_textconversiondlgs.mk @@ -45,7 +45,6 @@ $(eval $(call gb_Library_use_libraries,textconversiondlgs,\ )) $(eval $(call gb_Library_add_exception_objects,textconversiondlgs,\ -svx/source/unodialogs/textconversiondlgs/services \ svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog \ svx/source/unodialogs/textconversiondlgs/chinese_translationdialog \ svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog \ diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.cxx b/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.cxx index ec3d64ed3218..fe0e3a46a78f 100644 --- a/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.cxx +++ b/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.cxx @@ -54,11 +54,6 @@ void ChineseTranslation_UnoDialog::impl_DeleteDialog() // lang::XServiceInfo OUString SAL_CALL ChineseTranslation_UnoDialog::getImplementationName() -{ -return getImplementationName_Static(); -} - -OUString ChineseTranslation_UnoDialog::getImplementationName_Static() { return "com.sun.star.comp.linguistic2.ChineseTranslationDialog"; } @@ -69,11 +64,6 @@ sal_Bool SAL_CALL ChineseTranslation_UnoDialog::supportsService( const OUString& } uno::Sequence< OUString > SAL_CALL ChineseTranslation_UnoDialog::getSupportedServiceNames() -{ -return getSupportedServiceNames_Static(); -} - -uno::Sequence< OUString > ChineseTranslation_UnoDialog::getSupportedServiceNames_Static() { return { "com.sun.star.linguistic2.ChineseTranslationDialog" }; } @@ -226,4 +216,12 @@ void SAL_CALL ChineseTranslation_UnoDialog::removeVetoableChangeListener( const } //end namespace + +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface* +svx_ChineseTranslation_UnoDialog_get_implementation( +css::uno::XComponentContext* , css::uno::Sequence const&) +{ +return cppu::acquire(new textconversiondlgs::ChineseTranslation_UnoDialog()); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx b/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx index d6ab96ee9af2..e31765478cf0 100644 --- a/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx +++ b/svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx @@ -72,16 +72,6 @@ public: virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) override; virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override; -static OUString getImplementationName_Static(); -static css::uno::Sequence< OUString > getSupportedServiceNames_Static(); - -/// @throws css::uno::Exception -static css::uno::Reference< css::uno::XInterface > -create( css::uno::Reference< css::uno::XComponentContext > const & ) -{ -return static_cast( new ChineseTranslation_UnoDialog ); -} - // lang::XInitialization virtual void SAL_CALL initialize( const css::uno::Sequence< css::uno::Any >& aArguments ) override; diff --git a/svx/source/unodialogs/textconversiondlgs/services.cxx b/svx/source/unodialogs/textconversiondlgs/services.cxx deleted file mode 100644 index b0c0e9ff99a4.. --- a/svx/source/unodialogs/textconversiondlgs/services.cxx +++ /dev/null @@ -1,49 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license noti
[Libreoffice-commits] core.git: writerfilter/source
writerfilter/source/dmapper/DomainMapperTableManager.cxx | 42 +++ writerfilter/source/dmapper/DomainMapperTableManager.hxx |1 writerfilter/source/dmapper/TableData.hxx| 19 ++ writerfilter/source/dmapper/TableManager.cxx | 11 +++ writerfilter/source/dmapper/TableManager.hxx |2 5 files changed, 42 insertions(+), 33 deletions(-) New commits: commit 2e8992aea2017e89a6f7ba5f0ef544f29059243b Author: Justin Luth AuthorDate: Mon Jun 29 13:20:00 2020 +0300 Commit: Justin Luth CommitDate: Wed Jul 8 17:31:35 2020 +0200 tdf#129452 writerfilter: preserve gridSpans longer than currentRow It is a fairly common thing for table operations to compare items in the same column (like merged cells for example). In order to determine column information, each row's (gridBefore - change-id Ie305477f0e3468a4a923095d76f520d97fe99ffe - and) merged cells need to be known. So save that information in the cell data - and don't just throw it away after the current row has been analyzed. Good grief. Change-Id: Ibfdac336bbb1f7303c7e585a85c94be37ad6f916 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97433 Tested-by: Jenkins Reviewed-by: Justin Luth Reviewed-by: László Németh diff --git a/writerfilter/source/dmapper/DomainMapperTableManager.cxx b/writerfilter/source/dmapper/DomainMapperTableManager.cxx index c16ee820528f..e80bc418ddaf 100644 --- a/writerfilter/source/dmapper/DomainMapperTableManager.cxx +++ b/writerfilter/source/dmapper/DomainMapperTableManager.cxx @@ -393,11 +393,6 @@ DomainMapperTableManager::IntVectorPtr const & DomainMapperTableManager::getCurr return m_aTableGrid.back( ); } -DomainMapperTableManager::IntVectorPtr const & DomainMapperTableManager::getCurrentSpans( ) -{ -return m_aGridSpans.back( ); -} - DomainMapperTableManager::IntVectorPtr const & DomainMapperTableManager::getCurrentCellWidths( ) { return m_aCellWidths.back( ); @@ -448,11 +443,9 @@ void DomainMapperTableManager::startLevel( ) } IntVectorPtr pNewGrid = std::make_shared>(); -IntVectorPtr pNewSpans = std::make_shared>(); IntVectorPtr pNewCellWidths = std::make_shared>(); TablePositionHandlerPtr pNewPositionHandler; m_aTableGrid.push_back( pNewGrid ); -m_aGridSpans.push_back( pNewSpans ); m_aCellWidths.push_back( pNewCellWidths ); m_aTablePositions.push_back( pNewPositionHandler ); // empty name will be replaced by the table style name, if it exists @@ -484,7 +477,6 @@ void DomainMapperTableManager::endLevel( ) } m_aTableGrid.pop_back( ); -m_aGridSpans.pop_back( ); // Do the same trick as in startLevel(): pop the value that was pushed too early. std::optional oCurrentWidth; @@ -525,9 +517,10 @@ void DomainMapperTableManager::endOfCellAction() TagLogger::getInstance().element("endOFCellAction"); #endif -if (m_aGridSpans.empty()) -throw std::out_of_range("empty spans"); -m_aGridSpans.back()->push_back(m_nGridSpan); +if ( !isInTable() ) +throw std::out_of_range("cell without a table"); +if ( m_nGridSpan > 1 ) +setCurrentGridSpan( m_nGridSpan ); m_nGridSpan = 1; ++m_nCell.back( ); } @@ -568,7 +561,6 @@ void DomainMapperTableManager::endOfRowAction() { // Save the grid infos to have them survive the end/start level IntVectorPtr pTmpTableGrid = m_aTableGrid.back(); -IntVectorPtr pTmpGridSpans = m_aGridSpans.back(); IntVectorPtr pTmpCellWidths = m_aCellWidths.back(); sal_uInt32 nTmpCell = m_nCell.back(); TableParagraphVectorPtr pTableParagraphs = getCurrentParagraphs(); @@ -581,11 +573,9 @@ void DomainMapperTableManager::endOfRowAction() startLevel(); m_aTableGrid.pop_back(); -m_aGridSpans.pop_back(); m_aCellWidths.pop_back(); m_nCell.pop_back(); m_aTableGrid.push_back(pTmpTableGrid); -m_aGridSpans.push_back(pTmpGridSpans); m_aCellWidths.push_back(pTmpCellWidths); m_nCell.push_back(nTmpCell); m_aParagraphsToEndTable.pop( ); @@ -639,23 +629,12 @@ void DomainMapperTableManager::endOfRowAction() #endif } -IntVectorPtr pCurrentSpans = getCurrentSpans( ); - -if ( getCurrentGridBefore() ) -{ -//fill missing gridBefore elements with '1' -pCurrentSpans->insert( pCurrentSpans->begin(), getCurrentGridBefore(), 1 ); -} -if ( pCurrentSpans->size() < getCurrentGridBefore() + m_nCell.back() ) -{ -//fill missing elements with '1' -pCurrentSpans->insert( pCurrentSpans->end(), getCurrentGridBefore() + m_nCell.back() - pCurrentSpans->size(), 1 ); -} +std::vector rCurrentSpans = getCurrentGridSpans(); #ifdef DBG_UTIL TagLogger::getInstance().startElement("gridSpans"); { -for (const auto& rGridSpan : *pCurrentSpans) +
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/layer/tile/CalcTileLayer.js |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 42c15edeef9bdd7528cfde7091134cfbbc8925da Author: Dennis Francis AuthorDate: Tue Jul 7 18:51:49 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:21:51 2020 +0200 enable split-panes feature for Calc for non-mobile Change-Id: I8be8c36ed5266a7d5eed13cbba95e849fa9723a2 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98363 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 116a4231d..2f1a6ac8a 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -4,7 +4,7 @@ */ /* global */ -L.CalcTileLayer = L.TileLayer.extend({ +L.CalcTileLayer = (L.Browser.mobile ? L.TileLayer : L.CanvasTileLayer).extend({ options: { // TODO: sync these automatically from SAL_LOK_OPTIONS sheetGeometryDataEnabled: true, ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: kit/ChildSession.cpp wsd/ClientSession.cpp wsd/ClientSession.hpp
kit/ChildSession.cpp |2 wsd/ClientSession.cpp | 156 ++ wsd/ClientSession.hpp | 20 ++ 3 files changed, 153 insertions(+), 25 deletions(-) New commits: commit d1b3f4c6af35849e0da7a1148a88f183a4e1101f Author: Dennis Francis AuthorDate: Wed Jul 8 07:10:13 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:18:33 2020 +0200 wsd/kit: use splitx/splity in clientvisiblearea message... to filter tile-invalidation messages, so that the client gets invalidations/new tiles for all split panes. Change-Id: Ifacc452ed6bb43dfd36ff16386fb4a547ec8302b Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98362 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/kit/ChildSession.cpp b/kit/ChildSession.cpp index c2644e68a..39b9d3b41 100644 --- a/kit/ChildSession.cpp +++ b/kit/ChildSession.cpp @@ -850,7 +850,7 @@ bool ChildSession::clientVisibleArea(const char* /*buffer*/, int /*length*/, con int width; int height; -if (tokens.size() != 5 || +if ((tokens.size() != 5 && tokens.size() != 7) || !getTokenInteger(tokens[1], "x", x) || !getTokenInteger(tokens[2], "y", y) || !getTokenInteger(tokens[3], "width", width) || diff --git a/wsd/ClientSession.cpp b/wsd/ClientSession.cpp index b313742ec..abed4c5df 100644 --- a/wsd/ClientSession.cpp +++ b/wsd/ClientSession.cpp @@ -58,6 +58,8 @@ ClientSession::ClientSession( _state(SessionState::DETACHED), _keyEvents(1), _clientVisibleArea(0, 0, 0, 0), +_splitX(0), +_splitY(0), _clientSelectedPart(-1), _tileWidthPixel(0), _tileHeightPixel(0), @@ -571,7 +573,7 @@ bool ClientSession::_handleInput(const char *buffer, int length) int y; int width; int height; -if (tokens.size() != 5 || +if ((tokens.size() != 5 && tokens.size() != 7) || !getTokenInteger(tokens[1], "x", x) || !getTokenInteger(tokens[2], "y", y) || !getTokenInteger(tokens[3], "width", width) || @@ -584,6 +586,20 @@ bool ClientSession::_handleInput(const char *buffer, int length) } else { +if (tokens.size() == 7) +{ +int splitX, splitY; +if (!getTokenInteger(tokens[5], "splitx", splitX) || +!getTokenInteger(tokens[6], "splity", splitY)) +{ +LOG_WRN("Invalid syntax for '" << tokens[0] << "' message: [" << firstLine << "]."); +return true; +} + +_splitX = splitX; +_splitY = splitY; +} + _clientVisibleArea = Util::Rectangle(x, y, width, height); resetWireIdMap(); return forwardToChild(std::string(buffer, length), docBroker); @@ -1732,15 +1748,31 @@ void ClientSession::handleTileInvalidation(const std::string& message, return; } -// Visible area can have negative value as position, but we have tiles only in the positive range -Util::Rectangle normalizedVisArea = getNormalizedVisibleArea(); - std::pair result = TileCache::parseInvalidateMsg(message); int part = result.first; Util::Rectangle& invalidateRect = result.second; -// We can ignore the invalidation if it's outside of the visible area -if(!normalizedVisArea.intersects(invalidateRect)) +constexpr SplitPaneName panes[4] = { +TOPLEFT_PANE, +TOPRIGHT_PANE, +BOTTOMLEFT_PANE, +BOTTOMRIGHT_PANE +}; +Util::Rectangle paneRects[4]; +int numPanes = 0; +for(int i = 0; i < 4; ++i) +{ +if(!isSplitPane(panes[i])) +continue; + +Util::Rectangle rect = getNormalizedVisiblePaneArea(panes[i]); +if (rect.intersects(invalidateRect)) { +paneRects[numPanes++] = rect; +} +} + +// We can ignore the invalidation if it's outside of all split-panes. +if(!numPanes) return; if( part == -1 ) // If no part is specified we use the part used by the client @@ -1751,26 +1783,30 @@ void ClientSession::handleTileInvalidation(const std::string& message, std::vector invalidTiles; if(part == _clientSelectedPart || _isTextDocument) { -// Iterate through visible tiles -for(int i = std::ceil(normalizedVisArea.getTop() / _tileHeightTwips); -i <= std::ceil(normalizedVisArea.getBottom() / _tileHeightTwips); ++i) +for(int paneIdx = 0; paneIdx < numPanes; ++paneIdx) { -for(int j = std::ceil(normalizedVisArea.getLeft() / _tileWidthTwips); -j <= std::ceil(normalizedVisArea.getRight() / _tileWidthTwips); ++j) +const Util::Rectangle& normalizedVisArea = paneRects[paneIdx]; +// Iterate through visible tiles +for(int i = std
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/geometry/Bounds.js | 10 ++ loleaflet/src/layer/SplitPanesContext.js | 11 +++ loleaflet/src/layer/tile/CalcTileLayer.js | 16 3 files changed, 33 insertions(+), 4 deletions(-) New commits: commit 6cba945dc16b634b1db95491b7d1cab3f120e6e1 Author: Dennis Francis AuthorDate: Wed Jul 8 07:02:26 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:12:48 2020 +0200 handle tile-invalidation messages for split-panes Change-Id: Ib349987dee456198d611eabbc9171a14f0670f24 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98361 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/src/geometry/Bounds.js b/loleaflet/src/geometry/Bounds.js index 957e03fe1..cadc8e225 100644 --- a/loleaflet/src/geometry/Bounds.js +++ b/loleaflet/src/geometry/Bounds.js @@ -165,6 +165,16 @@ L.Bounds.prototype = { isValid: function () { return !!(this.min && this.max); + }, + + intersectsAny: function (boundsArray) { + for (var i = 0; i < boundsArray.length; ++i) { + if (boundsArray[i].intersects(this)) { + return true; + } + } + + return false; } }; diff --git a/loleaflet/src/layer/SplitPanesContext.js b/loleaflet/src/layer/SplitPanesContext.js index 5d4909298..45dd502e0 100644 --- a/loleaflet/src/layer/SplitPanesContext.js +++ b/loleaflet/src/layer/SplitPanesContext.js @@ -174,6 +174,17 @@ L.SplitPanesContext = L.Class.extend({ return boundList; }, + getTwipsBoundList: function (pxBounds) { + var bounds = this.getPxBoundList(pxBounds); + var docLayer = this._docLayer; + return bounds.map(function (bound) { + return new L.Bounds( + docLayer._pixelsToTwips(bound.min), + docLayer._pixelsToTwips(bound.max) + ); + }); + }, + getClientVisibleArea: function () { var pixelBounds = this._map.getPixelBounds(); var fullSize = pixelBounds.getSize(); diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 1dfd7811c..116a4231d 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -373,10 +373,17 @@ L.CalcTileLayer = L.TileLayer.extend({ if (this._debug) { this._debugAddInvalidationRectangle(topLeftTwips, bottomRightTwips, textMsg); } + var invalidBounds = new L.Bounds(topLeftTwips, bottomRightTwips); - var visibleTopLeft = this._latLngToTwips(this._map.getBounds().getNorthWest()); - var visibleBottomRight = this._latLngToTwips(this._map.getBounds().getSouthEast()); - var visibleArea = new L.Bounds(visibleTopLeft, visibleBottomRight); + var visibleArea, visiblePaneAreas; + if (this._splitPanesContext) { + visiblePaneAreas = this._splitPanesContext.getTwipsBoundList(); + } + else { + var visibleTopLeft = this._latLngToTwips(this._map.getBounds().getNorthWest()); + var visibleBottomRight = this._latLngToTwips(this._map.getBounds().getSouthEast()); + visibleArea = new L.Bounds(visibleTopLeft, visibleBottomRight); + } var needsNewTiles = false; for (var key in this._tiles) { @@ -391,7 +398,8 @@ L.CalcTileLayer = L.TileLayer.extend({ else { this._tiles[key]._invalidCount = 1; } - if (visibleArea.intersects(bounds)) { + var intersectsVisible = visibleArea ? visibleArea.intersects(bounds) : bounds.intersectsAny(visiblePaneAreas); + if (intersectsVisible) { needsNewTiles = true; if (this._debug) { this._debugAddInvalidationData(this._tiles[key]); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - filter/source
filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl | 13 ++ filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl |3 ++ 2 files changed, 12 insertions(+), 4 deletions(-) New commits: commit a7cf0151eb8068d0aa418171a6acdaddfe8722e2 Author: Svante Schubert AuthorDate: Wed Jul 8 00:57:33 2020 +0200 Commit: Michael Stahl CommitDate: Wed Jul 8 17:10:28 2020 +0200 Fixing top border style by fixing three XSLT issues triggered by... ... new properties in ODF 1.3 * check for fo:border='none' * missing @ in @fo:background-color * without default case (xsl:otherwise), end delimiter for "page" missing in CSS Change-Id: Ie5d0c3e8a32de0403534c5a4fa33a5f20393ce69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98365 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 646cf598633bacc3959fc126c9117f06f3d0f9e3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98334 diff --git a/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl b/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl index f9b5aff1b363..d1c8f189be85 100644 --- a/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl +++ b/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl @@ -705,11 +705,16 @@ +)"> diff --git a/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl b/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl index dc07f7e2918b..ec5b680df150 100644 --- a/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl +++ b/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl @@ -303,6 +303,9 @@ vertical-lr; + +horizontal-tb; direction:ltr; + ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/layer/marker/Cursor.js |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) New commits: commit 05b7357edec6af69b2ef81f62fd38313e7337428 Author: Dennis Francis AuthorDate: Tue Jul 7 22:20:37 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:09:52 2020 +0200 Make cursor positioning work for split-panes Change-Id: I603e0309399b7031ad69d6e31f2ebd6c1bfe5fd2 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98360 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/src/layer/marker/Cursor.js b/loleaflet/src/layer/marker/Cursor.js index b7a0ba1a9..638e971fd 100644 --- a/loleaflet/src/layer/marker/Cursor.js +++ b/loleaflet/src/layer/marker/Cursor.js @@ -62,7 +62,8 @@ L.Cursor = L.Layer.extend({ update: function () { if (this._container && this._map) { - var pos = this._map.latLngToLayerPoint(this._latlng).round(); + var pos = this._map.latLngToContainerPoint(this._latlng).round(); + pos = this._map.containerPointToLayerPointIgnoreSplits(pos); this._setSize(); this._setPos(pos); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/geo/LatLngBounds.js | 15 +- loleaflet/src/layer/tile/CalcTileLayer.js | 26 ++--- loleaflet/src/layer/tile/TileLayer.js | 44 ++ 3 files changed, 51 insertions(+), 34 deletions(-) New commits: commit 732e440018011491ddf34113335f6f0b979e8237 Author: Dennis Francis AuthorDate: Tue Jul 7 21:52:27 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:06:01 2020 +0200 make _onUpdateCursor work correctly for split-panes Change-Id: Ib81a4530a48686fb2e2e31aee9941aab654f0868 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98359 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/src/geo/LatLngBounds.js b/loleaflet/src/geo/LatLngBounds.js index 80e059750..1241da361 100644 --- a/loleaflet/src/geo/LatLngBounds.js +++ b/loleaflet/src/geo/LatLngBounds.js @@ -189,7 +189,20 @@ L.LatLngBounds.prototype = { isValid: function () { return !!(this._southWest && this._northEast); - } + }, + + isInAny: function (latLngBoundsArray) { + console.assert(Array.isArray(latLngBoundsArray), 'invalid argument type'); + + for (var i = 0; i < latLngBoundsArray.length; ++i) { + if (latLngBoundsArray[i].contains(this)) { + return true; + } + } + + return false; + }, + }; L.LatLngBounds.createDefault = function() { diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 70fbe3dd0..1dfd7811c 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -931,7 +931,7 @@ L.CalcTileLayer = L.TileLayer.extend({ return this._twipsToPixels(this._cellCursorTwips.getTopLeft()); }, - _calculateScrollForNewCursor: function () { + _calculateScrollForNewCellCursor: function () { var scroll = new L.LatLng(0, 0); @@ -940,28 +940,10 @@ L.CalcTileLayer = L.TileLayer.extend({ } var map = this._map; - var paneRects = this._splitPanesContext ? - this._splitPanesContext.getPxBoundList() : undefined; - - console.assert(paneRects === undefined || paneRects.length, 'number of panes cannot be zero!'); - - var paneRectsInLatLng = paneRects ? paneRects.map(function (pxBound) { - return new L.LatLngBounds( - map.unproject(pxBound.getTopLeft()), - map.unproject(pxBound.getBottomRight()) - ); - }) : [ map.getBounds() ]; - - var scrollNeeded = true; - for (var i = 0; i < paneRectsInLatLng.length; ++i) { - if (paneRectsInLatLng[i].contains(this._cellCursor)) { - scrollNeeded = false; - break; - } - } + var paneRectsInLatLng = this.getPaneLatLngRectangles(); - if (!scrollNeeded) { - return scroll; // zero scroll. + if (this._cellCursor.isInAny(paneRectsInLatLng)) { + return scroll; // no scroll needed. } var freePaneBounds = paneRectsInLatLng[paneRectsInLatLng.length - 1]; diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index e5f73a10c..438476c26 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -2250,18 +2250,22 @@ L.TileLayer = L.GridLayer.extend({ if (!zoom && scroll !== false - && !this._map.getBounds().contains(this._visibleCursor) && this._map._isCursorVisible && (!this._map._clip || this._map._clip._selectionType !== 'complex')) { - var center = this._map.project(cursorPos); - center = center.subtract(this._map.getSize().divideBy(2)); - center.x = Math.round(center.x < 0 ? 0 : center.x); - center.y = Math.round(center.y < 0 ? 0 : center.y); - if (!(this._selectionHandles.start && this._selectionHandles.start.isDragged) && - !(this._selectionHandles.end && this._selectionHandles.end.isDragged) && - !(docLayer._followEditor || docLayer._followUser)) { - this._map.fire('scrollto', {x: center.x, y: center.y, calledFromInvalidateCursorMsg: scroll !== undefined}); + var paneRectsInLatLng = this.getPaneLatLngRectangles(); + + if (!this._visibleCursor.isInAny(pane
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/layer/tile/CalcTileLayer.js | 113 ++ loleaflet/src/layer/tile/TileLayer.js | 39 +- 2 files changed, 119 insertions(+), 33 deletions(-) New commits: commit 8c1b87462fa759aafb864cc953acb87e963beabf Author: Dennis Francis AuthorDate: Tue Jul 7 17:21:35 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:04:38 2020 +0200 integrate SplitPanesContext with CalcTileLayer... and take split-panes into account when switching views on the arrival of a new cursor message. Change-Id: If97b06ceefd1533d77b4074fd6991e21b7ab Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98358 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 9d711b48f..70fbe3dd0 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -56,6 +56,7 @@ L.CalcTileLayer = L.TileLayer.extend({ map.on('AnnotationCancel', this._onAnnotationCancel, this); map.on('AnnotationReply', this._onAnnotationReply, this); map.on('AnnotationSave', this._onAnnotationSave, this); + map.on('splitposchanged', this._calcSplitCell, this); map.uiManager.initializeSpecializedUI('spreadsheet'); }, @@ -68,6 +69,7 @@ L.CalcTileLayer = L.TileLayer.extend({ }, onAdd: function (map) { + this._switchSplitPanesContext(); map.addControl(L.control.tabs()); map.addControl(L.control.columnHeader()); map.addControl(L.control.rowHeader()); @@ -437,6 +439,7 @@ L.CalcTileLayer = L.TileLayer.extend({ var part = parseInt(textMsg.match(/\d+/g)[0]); if (!this.isHiddenPart(part)) { this._clearMsgReplayStore(); + this._switchSplitPanesContext(); this.refreshViewData(undefined, false /* compatDataSrcOnly */, true /* sheetGeometryChanged */); } }, @@ -449,6 +452,7 @@ L.CalcTileLayer = L.TileLayer.extend({ } this._restrictDocumentSize(); this._replayPrintTwipsMsgs(); + this._updateSplitPos(); this._map.fire('zoomchanged'); this.refreshViewData(); this._map._socket.sendMessage('commandvalues command=.uno:ViewAnnotationsPosition'); @@ -721,9 +725,55 @@ L.CalcTileLayer = L.TileLayer.extend({ this._updateHeadersGridLines(undefined, true /* updateCols */, true /* updateRows */); + this._updateSplitPos(); + this._map.fire('sheetgeometrychanged'); }, + _updateSplitPos: function () { + if (this._splitPanesContext) { + if (this._splitPanesContext._splitCell) { + var splitCell = this._splitPanesContext._splitCell; + var newSplitPos = this.sheetGeometry.getCellRect(splitCell.x, splitCell.y).min; + this._splitPanesContext.setSplitPos(newSplitPos.x, newSplitPos.y); // will update the splitters. + } + else { + // Can happen only on load. + this._splitPanesContext.alignSplitPos(); + this._calcSplitCell(); + } + } + }, + + _calcSplitCell: function () { + + if (!this.sheetGeometry || !this._splitPanesContext) { + return; + } + + this._splitPanesContext._splitCell = + this.sheetGeometry.getCellFromPos(this._splitPanesContext.getSplitPos(), 'csspixels'); + }, + + _switchSplitPanesContext: function () { + + if (!this.hasSplitPanesSupport()) { + return; + } + + if (!this._splitPaneCache) { + this._splitPaneCache = {}; + } + + var spContext = this._splitPaneCache[this._selectedPart]; + if (!spContext) { + spContext = new L.SplitPanesContext(this); + } + + this._splitPanesContext = spContext; + this._map._splitPanesContext = spContext; + }, + _onCommandValuesMsg: function (textMsg) { var jsonIdx = textMsg.indexOf('{'); if (jsonIdx === -1) @@ -881,6 +931,69 @@ L.CalcTileLayer = L.TileLayer.extend({ return this._twipsToPixels(this._cellCursorTwips.getTopLeft()); }, + _calculateScrollForNewCursor: function () { + + var scroll = new L.LatLng(0, 0); +
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/control/Control.ColumnHeader.js | 77 +++-- loleaflet/src/control/Control.Header.js | 377 ++ loleaflet/src/control/Control.RowHeader.js| 77 +++-- loleaflet/src/layer/CalcGridLines.js | 28 - loleaflet/src/layer/tile/CalcTileLayer.js |3 5 files changed, 323 insertions(+), 239 deletions(-) New commits: commit 0b50166333219a5e111aa6e5344f940ead6ad628 Author: Dennis Francis AuthorDate: Tue Jul 7 15:42:47 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 17:02:07 2020 +0200 make row/col headers render correctly for split-panes For this to work, we need sheet-geometry data. GapTickMap is dropped with a replacement HeaderInfo class that is easier/less confusing to work with split-panes. All indices in HeaderInfo are 0-based and a column/row is referred to as an 'element' when things have to be generic. Change-Id: Ibddac8901d48cada554b715af70195ef9b9832e2 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98357 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/src/control/Control.ColumnHeader.js b/loleaflet/src/control/Control.ColumnHeader.js index 80559a20d..8a07f1e86 100644 --- a/loleaflet/src/control/Control.ColumnHeader.js +++ b/loleaflet/src/control/Control.ColumnHeader.js @@ -11,6 +11,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({ onAdd: function (map) { map.on('updatepermission', this._onUpdatePermission, this); + map.on('moveend zoomchanged sheetgeometrychanged splitposchanged', this._updateCanvas, this); this._initialized = false; }, @@ -159,6 +160,13 @@ L.Control.ColumnHeader = L.Control.Header.extend({ this._updateColumnHeader(); }, + _updateCanvas: function () { + if (this._headerInfo) { + this._headerInfo.update(); + this._redrawHeaders(); + } + }, + setScrollPosition: function (e) { var position = -e.x; this._position = Math.min(0, position); @@ -186,7 +194,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({ }, _onUpdateCurrentColumn: function (e) { - var x = e.curX; + var x = e.curX - 1; // 1-based to 0-based. var w = this._twipsToPixels(e.width); var slim = w <= 1; this.updateCurrent(x, slim); @@ -201,10 +209,10 @@ L.Control.ColumnHeader = L.Control.Header.extend({ return; var ctx = this._canvasContext; - var content = this._colIndexToAlpha(entry.index); + var content = this._colIndexToAlpha(entry.index + 1); var startOrt = this._canvasHeight - this._headerHeight; - var startPar = entry.pos - entry.size - this._startOffset; - var endPar = entry.pos - this._startOffset; + var startPar = entry.pos - entry.size; + var endPar = entry.pos; var width = endPar - startPar; var height = this._headerHeight; @@ -218,7 +226,6 @@ L.Control.ColumnHeader = L.Control.Header.extend({ ctx.save(); var scale = L.getDpiScaleFactor(); ctx.scale(scale, scale); - ctx.translate(this._position + this._startOffset, 0); // background gradient var selectionBackgroundGradient = null; if (isHighlighted) { @@ -279,14 +286,13 @@ L.Control.ColumnHeader = L.Control.Header.extend({ var level = group.level; var startOrt = spacing + (headSize + spacing) * level; - var startPar = group.startPos - this._startOffset; + var startPar = this._headerInfo.docToHeaderPos(group.startPos); var height = group.endPos - group.startPos; ctx.save(); var scale = L.getDpiScaleFactor(); ctx.scale(scale, scale); - ctx.translate(this._position + this._startOffset, 0); // clip mask ctx.beginPath(); ctx.rect(startPar, startOrt, height, headSize); @@ -357,7 +363,7 @@ L.Control.ColumnHeader = L.Control.Header.extend({ getHeaderEntryBoundingClientRect: function (index) { var entry = this._mouseOverEntry; if (index) { - entry = this._tickMap.getGap(index); + entry = this._headerInfo.getColData(index); } if (!entry) @@ -365,8 +371,8 @@ L.Control.ColumnHeader = L.Control.Header.extend({ var rect = this._canvas.getBoundingClientRect(); - var colStart = entry.pos - entry.size + this._position; - var colEnd =
[Libreoffice-commits] online.git: 2 commits - cypress_test/integration_tests cypress_test/package.json loleaflet/src
cypress_test/integration_tests/common/helper.js | 94 +++ cypress_test/integration_tests/common/mobile_helper.js |6 cypress_test/integration_tests/mobile/calc/alignment_options_spec.js | 61 +--- cypress_test/integration_tests/mobile/calc/apply_font_spec.js | 48 +-- cypress_test/integration_tests/mobile/calc/calc_mobile_helper.js |3 cypress_test/integration_tests/mobile/calc/cell_appearance_spec.js | 52 +-- cypress_test/integration_tests/mobile/calc/hamburger_menu_spec.js | 15 - cypress_test/integration_tests/mobile/calc/number_format_spec.js | 41 --- cypress_test/integration_tests/mobile/impress/apply_font_spec.js | 111 ++-- cypress_test/integration_tests/mobile/impress/apply_paragraph_props_spec.js | 91 ++ cypress_test/integration_tests/mobile/impress/slide_properties_spec.js | 132 +++--- cypress_test/integration_tests/mobile/writer/apply_font_spec.js | 70 + cypress_test/integration_tests/mobile/writer/apply_paragraph_properties_spec.js | 105 ++- cypress_test/integration_tests/mobile/writer/focus_spec.js | 11 cypress_test/integration_tests/mobile/writer/hamburger_menu_spec.js | 31 -- cypress_test/integration_tests/mobile/writer/shape_properties_spec.js | 55 +--- cypress_test/integration_tests/mobile/writer/table_properties_spec.js | 53 +--- cypress_test/package.json |1 loleaflet/src/control/Control.MobileWizard.js | 12 loleaflet/src/layer/marker/Marker.js | 81 +- 20 files changed, 460 insertions(+), 613 deletions(-) New commits: commit b15f641297b44edc6e8dece4b61fd378a5170f76 Author: Tamás Zolnai AuthorDate: Tue Jul 7 12:28:33 2020 +0200 Commit: Tamás Zolnai CommitDate: Wed Jul 8 17:00:27 2020 +0200 cypress: introduce clickOnIdle() and inputOnIdle() methods. This method waits until the item is idle, e.g. not detached for a while. Using this we can workaround false failures caused by GUI flickering. For example, mobile wizard is updated all the time which makes hard to test it reliably. We can use this clickOnIdle() method, which is slower than the simple click(), but is more reliable. Change-Id: I2f970eb0cf400382c8384c91ab7c84b1e02e63af Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98373 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Tamás Zolnai diff --git a/cypress_test/integration_tests/common/helper.js b/cypress_test/integration_tests/common/helper.js index baafe49fb..e23a9b40f 100644 --- a/cypress_test/integration_tests/common/helper.js +++ b/cypress_test/integration_tests/common/helper.js @@ -1,4 +1,6 @@ -/* global cy Cypress expect */ +/* global cy Cypress expect require */ + +require('cypress-wait-until'); function loadTestDoc(fileName, subFolder, mobile) { cy.log('Loading test document - start.'); @@ -296,6 +298,94 @@ function imageShouldBeFullWhiteOrNot(selector, fullWhite = true) { }); } +function waitUntilIdle(selector, content) { + cy.log('Waiting item to be idle - start.'); + + var item; + var waitingTime = 1000; + if (content) { + cy.contains(selector, content, { log: false }) + .then(function(itemToIdle) { + item = itemToIdle; + }); + + cy.waitUntil(function() { + cy.wait(waitingTime); + + return cy.contains(selector, content, { log: false }) + .then(function(itemToIdle) { + if (Cypress.dom.isDetached(item[0])) { + cy.log('Item is detached.'); + item = itemToIdle; + return false; + } else { + return true; + } + }); + }); + } else { + cy.get(selector, { log: false }) + .then(function(itemToIdle) { + item = itemToIdle; + }); + + cy.waitUntil(function() { + cy.wait(waitingTime); + + return cy.get(selector, { log: false }) + .then(function(itemToIdle) { + if (Cypress.dom.isDetached(item[0])) { +
[Libreoffice-commits] online.git: loleaflet/css loleaflet/Makefile.am loleaflet/src
loleaflet/Makefile.am |1 loleaflet/css/leaflet.css | 19 +++ loleaflet/src/layer/tile/CanvasTileLayer.js | 30 + loleaflet/src/layer/vector/SplitterLine.js | 158 4 files changed, 208 insertions(+) New commits: commit 3c3adc3f5d22171c9fa5ca18351ae9376c04f88a Author: Dennis Francis AuthorDate: Tue Jul 7 14:57:24 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:59:04 2020 +0200 add draggable splitters that controls the split-panes Change-Id: I7d6f681fbacfd8b1a6699c52a8bd9d007f20b99d Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98355 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/Makefile.am b/loleaflet/Makefile.am index 589a95448..dfc9d5984 100644 --- a/loleaflet/Makefile.am +++ b/loleaflet/Makefile.am @@ -231,6 +231,7 @@ LOLEAFLET_JS =\ src/geometry/PolyUtil.js \ src/layer/vector/Polygon.js \ src/layer/vector/Rectangle.js \ + src/layer/vector/SplitterLine.js \ src/layer/vector/CircleMarker.js \ src/layer/vector/Circle.js \ src/layer/vector/SVG.js \ diff --git a/loleaflet/css/leaflet.css b/loleaflet/css/leaflet.css index 2ea1f74ea..f4bd5abf0 100644 --- a/loleaflet/css/leaflet.css +++ b/loleaflet/css/leaflet.css @@ -1001,3 +1001,22 @@ input.clipboard { top: 0; z-index: 9; } + +.leaflet-pane-splitter { + cursor:grab; + stroke: #e0e0e0; + fill: #e0e0e0; + opacity: 1; + } + +.splitter-hidden { + opacity: 0.6; + stroke: #ee; + fill: #ee; + } + +path.leaflet-pane-splitter:hover { + opacity: 1 !important; + stroke: #cdcdcd; + fill: #cdcdcd; + } diff --git a/loleaflet/src/layer/tile/CanvasTileLayer.js b/loleaflet/src/layer/tile/CanvasTileLayer.js index a9df21726..e086a08ad 100644 --- a/loleaflet/src/layer/tile/CanvasTileLayer.js +++ b/loleaflet/src/layer/tile/CanvasTileLayer.js @@ -1329,4 +1329,34 @@ L.CanvasTileLayer = L.TileLayer.extend({ this._map._socket.sendMessage('tileprocessed tile=' + tileID); }, + updateHorizPaneSplitter: function () { + + var map = this._map; + + if (!this._xSplitter) { + this._xSplitter = new L.SplitterLine( + map, { isHoriz: true }); + + map.addLayer(this._xSplitter); + } + else { + this._xSplitter.update(); + } + }, + + updateVertPaneSplitter: function () { + + var map = this._map; + + if (!this._ySplitter) { + this._ySplitter = new L.SplitterLine( + map, { isHoriz: false }); + + map.addLayer(this._ySplitter); + } + else { + this._ySplitter.update(); + } + }, + }); diff --git a/loleaflet/src/layer/vector/SplitterLine.js b/loleaflet/src/layer/vector/SplitterLine.js new file mode 100644 index 0..a769a58e0 --- /dev/null +++ b/loleaflet/src/layer/vector/SplitterLine.js @@ -0,0 +1,158 @@ +/* -*- js-indent-level: 8 -*- */ +/* + * L.SplitterLine is a draggable L.Rectangle to be used as control for split-panes. + */ + +L.SplitterLine = L.Rectangle.extend({ + + options: { + color: '#e0e0e0', + fill: true, + weight: 1, + fillOpacity: 1, + opacity: 1, + interactive: true, + fixed: true, + draggable: true, + noClip: true, + isHoriz: true, + manualDrag: false, + }, + + initialize: function (map, options) { + + this.options.isHoriz = options.isHoriz; + var latlngBounds = this._calculateLatLngBounds(map); + L.Rectangle.prototype.initialize.call(this, latlngBounds); + L.setOptions(this, options); + }, + + _calculateLatLngBounds: function (map) { + map = map || this._map; + this._splitPanesContext = this._splitPanesContext || map.getSplitPanesContext(); + console.assert(this._splitPanesContext, 'no _splitPanesContext!'); + + var size = map._docLayer.getMaxDocSize(); + var isHoriz = this.options.isHoriz; + var splitPos = this._splitPanesContext.getSplitPos(); + + this._lastPos = isHoriz ? splitPos.x : splitPos.y; + + var thickness = 4; + + var xmin = isHoriz ? splitPos.x - thickness/2 : -size.x; + var xmax = isHoriz ? splitPos.x + thickness/2 : size.x; + + var ymin = !isHoriz ? splitPos.y - thickness/2 : -size.y; + var ymax = !isHoriz ? splitPos.y +
[Libreoffice-commits] online.git: loleaflet/Makefile.am loleaflet/src
loleaflet/Makefile.am|2 loleaflet/src/layer/vector/CircleMarker.js |2 loleaflet/src/layer/vector/Path.Drag.js | 11 loleaflet/src/layer/vector/Path.Transform.SVG.js | 36 ++ loleaflet/src/layer/vector/Path.js | 137 + loleaflet/src/layer/vector/Polygon.js|4 loleaflet/src/layer/vector/Polyline.js |2 loleaflet/src/layer/vector/Renderer.js | 67 loleaflet/src/layer/vector/SVG.js| 36 +- loleaflet/src/layer/vector/SVGGroup.js | 224 --- loleaflet/src/layer/vector/SplitPanesRenderer.js | 59 loleaflet/src/layer/vector/SplitPanesSVG.js | 323 +++ 12 files changed, 815 insertions(+), 88 deletions(-) New commits: commit a59076e1ca88a6f2c8c67ce45bf769e963cf0717 Author: Dennis Francis AuthorDate: Tue Jul 7 14:29:54 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:57:44 2020 +0200 add split-panes support for overlay layer (This is only for svg renderer) There are separate svg DOM-nodes for each split-pane with view-box set appropriately. The L.Path based objects are shared for each split-pane, but there will be separate identical 'path' DOM-nodes for each svg container. This patch introduces L.SplitPanesRenderer/L.SplitPanesSVG (has same external api as L.Renderer/L.SVG). These are wrapper classes to host child renderers, one per split-pane and delegate calls to them appropriately. Change-Id: Id44e9a1312500e6b43cdd8e4f42e235b43d22772 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98354 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/Makefile.am b/loleaflet/Makefile.am index 2b2dd22c8..589a95448 100644 --- a/loleaflet/Makefile.am +++ b/loleaflet/Makefile.am @@ -234,6 +234,8 @@ LOLEAFLET_JS =\ src/layer/vector/CircleMarker.js \ src/layer/vector/Circle.js \ src/layer/vector/SVG.js \ + src/layer/vector/SplitPanesRenderer.js \ + src/layer/vector/SplitPanesSVG.js \ src/layer/vector/Path.Transform.SVG.js \ src/core/Handler.js \ src/layer/vector/SVGGroup.js \ diff --git a/loleaflet/src/layer/vector/CircleMarker.js b/loleaflet/src/layer/vector/CircleMarker.js index 837471440..0e45bddf6 100644 --- a/loleaflet/src/layer/vector/CircleMarker.js +++ b/loleaflet/src/layer/vector/CircleMarker.js @@ -66,7 +66,7 @@ L.CircleMarker = L.Path.extend({ }, _empty: function () { - return this._radius && !this._renderer._bounds.intersects(this._pxBounds); + return this._radius && !this._renderer.intersectsBounds(this._pxBounds); } }); diff --git a/loleaflet/src/layer/vector/Path.Drag.js b/loleaflet/src/layer/vector/Path.Drag.js index 4ca7ff847..b1375aacf 100644 --- a/loleaflet/src/layer/vector/Path.Drag.js +++ b/loleaflet/src/layer/vector/Path.Drag.js @@ -72,9 +72,7 @@ L.Handler.PathDrag = L.Handler.extend(/** @lends L.Path.Drag.prototype */ { (this._path.options.className + ' ' + L.Handler.PathDrag.DRAGGING_CLS) : L.Handler.PathDrag.DRAGGING_CLS; - if (this._path._path) { - L.DomUtil.addClass(this._path._path, L.Handler.PathDrag.DRAGGING_CLS); - } + this._path.addClass(L.Handler.PathDrag.DRAGGING_CLS); }, /** @@ -85,9 +83,8 @@ L.Handler.PathDrag = L.Handler.extend(/** @lends L.Path.Drag.prototype */ { this._path.options.className = this._path.options.className .replace(new RegExp('\\s+' + L.Handler.PathDrag.DRAGGING_CLS), ''); - if (this._path._path) { - L.DomUtil.removeClass(this._path._path, L.Handler.PathDrag.DRAGGING_CLS); - } + + this._path.removeClass(L.Handler.PathDrag.DRAGGING_CLS); if (!this._path.options.manualDrag) { L.DomEvent.off(document, 'mousemove touchmove', this._onDrag,this); @@ -119,7 +116,7 @@ L.Handler.PathDrag = L.Handler.extend(/** @lends L.Path.Drag.prototype */ { this._matrix = [1, 0, 0, 1, 0, 0]; L.DomEvent.stop(evt.originalEvent); - L.DomUtil.addClass(this._path._renderer._container, 'leaflet-interactive'); + this._path._renderer.addContainerClass('leaflet-interactive'); if (!this._path.options.manualDrag) { L.DomEvent diff --git a/loleaflet/src/layer/vector/Path.Transform.SVG.js b/loleaflet/src/layer/vector/Path.Transform.SVG.js index fb76c9cf6..4abc4528a 100644 --- a/loleaflet/src/layer/vector/Path.Transform.SVG.js +++ b/loleaflet/src/layer/vector/Path.Transform.SVG.js @@ -4,7 +4,7 @@ L.SVG.include({ * Reset transform
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/core/Socket.js |7 +-- loleaflet/src/map/Map.js |3 ++- 2 files changed, 7 insertions(+), 3 deletions(-) New commits: commit 0235fb48bdf11e546e68670fd51998b015c333cb Author: Dennis Francis AuthorDate: Tue Jul 7 14:15:58 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:54:48 2020 +0200 disable background layer for grids when using CanvasTileLayer Change-Id: I6c852758b60c04a11c2ac4133cdf78903aff1d48 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98353 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/src/core/Socket.js b/loleaflet/src/core/Socket.js index b4f918da7..1f2dcf047 100644 --- a/loleaflet/src/core/Socket.js +++ b/loleaflet/src/core/Socket.js @@ -952,8 +952,11 @@ L.Socket = L.Class.extend({ tileHeightTwips: tileHeightTwips, docType: command.type }); - if (!this._map.options.backgroundLayer) { - this._map.options.backgroundLayer = new L.CalcBackground().addTo(this._map); + + this._map.options.backgroundLayerEnabled = !(docLayer instanceof L.CanvasTileLayer); + + if (this._map.options.backgroundLayerEnabled) { + docLayer.backgroundLayer = new L.CalcBackground().addTo(this._map); (new L.CalcGridLines()).addTo(this._map); } } diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js index b4be77964..97163f1d7 100644 --- a/loleaflet/src/map/Map.js +++ b/loleaflet/src/map/Map.js @@ -41,7 +41,8 @@ L.Map = L.Evented.extend({ tileHeightTwips: window.tileSize * 15, urlPrefix: 'lool', wopiSrc: '', - cursorURL: L.LOUtil.getURL('cursors') + cursorURL: L.LOUtil.getURL('cursors'), + backgroundLayerEnabled: true, }, // Control.UIManager instance, set in main.js ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/control/Control.Scale.js |4 +- loleaflet/src/map/Map.js | 62 +++-- 2 files changed, 61 insertions(+), 5 deletions(-) New commits: commit d58cf803773db8362e784f1bda7cb4cbc0466ba6 Author: Dennis Francis AuthorDate: Tue Jul 7 13:45:59 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:52:16 2020 +0200 split-panes: respect split position when... converting to/from container coordinates. Also introduce the corresponding 'IgnoreSplits' versions of changed methods because they are needed for repositioning the map-view which is independent of the splits position. They are also needed for stuff outside the map which need not be aware of the splits. Change-Id: I9044a185e5762fa4c4866590e1b7cf456fb2d1dd Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98352 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/src/control/Control.Scale.js b/loleaflet/src/control/Control.Scale.js index 403c88f7c..a3e15406a 100644 --- a/loleaflet/src/control/Control.Scale.js +++ b/loleaflet/src/control/Control.Scale.js @@ -43,8 +43,8 @@ L.Control.Scale = L.Control.extend({ y = map.getSize().y / 2; var maxMeters = L.CRS.Earth.distance( - map.containerPointToLatLng([0, y]), - map.containerPointToLatLng([this.options.maxWidth, y])); + map.containerPointToLatLngIgnoreSplits([0, y]), + map.containerPointToLatLngIgnoreSplits([this.options.maxWidth, y])); this._updateScales(maxMeters); }, diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js index b6027ffc4..b4be77964 100644 --- a/loleaflet/src/map/Map.js +++ b/loleaflet/src/map/Map.js @@ -504,10 +504,10 @@ L.Map = L.Evented.extend({ setZoomAround: function (latlng, zoom, options) { var scale = this.getZoomScale(zoom), viewHalf = this.getSize().divideBy(2), - containerPoint = latlng instanceof L.Point ? latlng : this.latLngToContainerPoint(latlng), + containerPoint = latlng instanceof L.Point ? latlng : this.latLngToContainerPointIgnoreSplits(latlng), centerOffset = containerPoint.subtract(viewHalf).multiplyBy(1 - 1 / scale), - newCenter = this.containerPointToLatLng(viewHalf.add(centerOffset)); + newCenter = this.containerPointToLatLngIgnoreSplits(viewHalf.add(centerOffset)); return this.setView(newCenter, zoom, {zoom: options}); }, @@ -913,10 +913,57 @@ L.Map = L.Evented.extend({ }, containerPointToLayerPoint: function (point) { // (Point) + if (!this._splitPanesContext) { + return this.containerPointToLayerPointIgnoreSplits(point); + } + var splitPos = this._splitPanesContext.getSplitPos(); + var pixelOrigin = this.getPixelOrigin(); + var mapPanePos = this._getMapPanePos(); + var result = L.point(point); + if (point.x <= splitPos.x) { + result.x -= pixelOrigin.x; + } + else { + result.x -= mapPanePos.x; + } + + if (point.y <= splitPos.y) { + result.y -= pixelOrigin.y; + } + else { + result.y -= mapPanePos.y; + } + + return result; + }, + + containerPointToLayerPointIgnoreSplits: function (point) { // (Point) return L.point(point).subtract(this._getMapPanePos()); }, layerPointToContainerPoint: function (point) { // (Point) + + if (!this._splitPanesContext) { + return this.layerPointToContainerPointIgnoreSplits(point); + } + + var splitPos = this._splitPanesContext.getSplitPos(); + var pixelOrigin = this.getPixelOrigin(); + var mapPanePos = this._getMapPanePos(); + var result = L.point(point)._add(pixelOrigin); + + if (result.x > splitPos.x) { + result.x -= (pixelOrigin.x - mapPanePos.x); + } + + if (result.y > splitPos.y) { + result.y -= (pixelOrigin.y - mapPanePos.y); + } + + return result; + }, + + layerPointToContainerPointIgnoreSplits: function (point) { // (Point) return L.point(point).add(this._getMapPanePos()); }, @@ -925,6 +972,15 @@ L.Map = L.Evented.extend({ return this.layerPointToLatLng(layerPoint); }, + containerPointToLatLngIgnoreSplits: function (point) { +
[Libreoffice-commits] online.git: loleaflet/css loleaflet/Makefile.am loleaflet/src
loleaflet/Makefile.am |1 loleaflet/css/leaflet.css |8 loleaflet/src/layer/tile/CanvasTileLayer.js | 1332 3 files changed, 1341 insertions(+) New commits: commit 4b2ff56750ff11ae421572e4bceae273c540820f Author: Dennis Francis AuthorDate: Tue Jul 7 13:20:34 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:50:42 2020 +0200 introduce CanvasTileLayer with support for split-panes which is derived from TileLayer but renders tiles on a canvas instead. TODO: Generalize certain methods of TileLayer instead of a complete re-implementation in CanvasTileLayer just because a few things need to change. Change-Id: I51001f83f8f663d194bc9c4b018fa9950c40f420 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98351 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/Makefile.am b/loleaflet/Makefile.am index 49faf56f1..2b2dd22c8 100644 --- a/loleaflet/Makefile.am +++ b/loleaflet/Makefile.am @@ -201,6 +201,7 @@ LOLEAFLET_JS =\ src/layer/Layer.js \ src/layer/tile/GridLayer.js \ src/layer/tile/TileLayer.js \ + src/layer/tile/CanvasTileLayer.js \ src/layer/SplitPanesContext.js \ src/layer/tile/TileLayer.TableOverlay.js \ src/layer/ObjectFocusDarkOverlay.js \ diff --git a/loleaflet/css/leaflet.css b/loleaflet/css/leaflet.css index ccf881de2..2ea1f74ea 100644 --- a/loleaflet/css/leaflet.css +++ b/loleaflet/css/leaflet.css @@ -7,6 +7,7 @@ .leaflet-tile-container, .leaflet-map-pane svg, .leaflet-map-pane canvas, +.leaflet-canvas-container canvas .leaflet-zoom-box, .leaflet-image-layer, .leaflet-layer { @@ -993,3 +994,10 @@ input.clipboard { top: 24px; color: white; } + +.leaflet-canvas-container { + position: absolute; + left: 0; + top: 0; + z-index: 9; + } diff --git a/loleaflet/src/layer/tile/CanvasTileLayer.js b/loleaflet/src/layer/tile/CanvasTileLayer.js new file mode 100644 index 0..a9df21726 --- /dev/null +++ b/loleaflet/src/layer/tile/CanvasTileLayer.js @@ -0,0 +1,1332 @@ +/* -*- js-indent-level: 8 -*- */ +/* + * L.CanvasTileLayer is a L.TileLayer with canvas based rendering. + */ + +L.TileCoordData = L.Class.extend({ + + initialize: function (left, top, zoom, part) { + this.x = left; + this.y = top; + this.z = zoom; + this.part = part; + }, + + getPos: function () { + return new L.Point(this.x, this.y); + }, + + key: function () { + return this.x + ':' + this.y + ':' + this.z + ':' + this.part; + }, + + toString: function () { + return '{ left : ' + this.x + ', top : ' + this.y + + ', z : ' + this.z + ', part : ' + this.part + ' }'; + } +}); + +L.TileCoordData.parseKey = function (keyString) { + + console.assert(typeof keyString === 'string', 'key should be a string'); + var k = keyString.split(':'); + console.assert(k.length >= 4, 'invalid key format'); + return new L.TileCoordData(+k[0], +k[1], +k[2], +k[3]); +}; + +L.CanvasTilePainter = L.Class.extend({ + + options: { + debug: false, + }, + + initialize: function (layer, dpiScale, enableImageSmoothing) { + this._layer = layer; + this._canvas = this._layer._canvas; + this._splitPanesContext = this._layer.getSplitPanesContext(); + + if (dpiScale === 1 || dpiScale === 2) { + enableImageSmoothing = (enableImageSmoothing === true); + } + else { + enableImageSmoothing = (enableImageSmoothing === undefined || enableImageSmoothing); + } + + this._dpiScale = dpiScale; + + this._map = this._layer._map; + this._setupCanvas(enableImageSmoothing); + + this._topLeft = undefined; + this._lastZoom = undefined; + this._lastPart = undefined; + this._splitPos = this._splitPanesContext ? + this._splitPanesContext.getSplitPos() : new L.Point(0, 0); + + this._tileSizeCSSPx = undefined; + this._updatesRunning = false; + }, + + isUpdatesRunning: function () { + return this._updatesRunning; + }, + + startUpdates: function () { + if (this._updatesRunning === true) { + return false; + } + + this._updatesRunning = true; + this._updateWithRAF(); + return true; + }, + + stopUpdates: function () { + if (this._updatesRunning) { + L.Util.cancelAnimFrame(this._canvasRAF); +
[Libreoffice-commits] online.git: loleaflet/Makefile.am loleaflet/src
loleaflet/Makefile.am|1 loleaflet/src/layer/SplitPanesContext.js | 218 +++ 2 files changed, 219 insertions(+) New commits: commit 5f174075489365956d451d46e2a4839f7beff811 Author: Dennis Francis AuthorDate: Tue Jul 7 12:43:32 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:49:59 2020 +0200 introduce SplitPanesContext class This will store the split position and notify others and update the splitters when someone changes this. Change-Id: Ic1a2d665c972c369ce4e1362d0add50f72125d8a Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98350 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/Makefile.am b/loleaflet/Makefile.am index 762c2079a..49faf56f1 100644 --- a/loleaflet/Makefile.am +++ b/loleaflet/Makefile.am @@ -201,6 +201,7 @@ LOLEAFLET_JS =\ src/layer/Layer.js \ src/layer/tile/GridLayer.js \ src/layer/tile/TileLayer.js \ + src/layer/SplitPanesContext.js \ src/layer/tile/TileLayer.TableOverlay.js \ src/layer/ObjectFocusDarkOverlay.js \ src/layer/tile/WriterTileLayer.js \ diff --git a/loleaflet/src/layer/SplitPanesContext.js b/loleaflet/src/layer/SplitPanesContext.js new file mode 100644 index 0..5d4909298 --- /dev/null +++ b/loleaflet/src/layer/SplitPanesContext.js @@ -0,0 +1,218 @@ +/* -*- js-indent-level: 8 -*- */ +/* + * SplitPanesContext stores positions/sizes/objects related to split panes. + */ + +/* global */ + +L.SplitPanesContext = L.Class.extend({ + + options: { + maxHorizontalSplitPercent: 70, + maxVerticalSplitPercent: 70, + }, + + initialize: function (docLayer, createSplitters) { + console.assert(docLayer, 'no docLayer!'); + console.assert(docLayer._map, 'no map!'); + + this._docLayer = docLayer; + this._map = docLayer._map; + this._setDefaults(); + + if (createSplitters === true) { + this.updateSplitters(); + } + }, + + _setDefaults: function () { + this._splitPos = new L.Point(0, 0); + }, + + setDefaults: function () { + this._setDefaults(); + this.updateSplitters(); + }, + + getMaxSplitPosX: function () { + var rawMax = Math.floor(this._map.getSize().x * this.options.maxHorizontalSplitPercent / 100); + return this._docLayer.getSnapDocPosX(rawMax); + }, + + getMaxSplitPosY: function () { + var rawMax = Math.floor(this._map.getSize().y * this.options.maxVerticalSplitPercent / 100); + return this._docLayer.getSnapDocPosY(rawMax); + }, + + setSplitPos: function (splitX, splitY) { + + this.setHorizSplitPos(splitX); + this.setVertSplitPos(splitY); + }, + + alignSplitPos: function () { + this.alignHorizSplitPos(); + this.alignVertSplitPos(); + }, + + getSplitPos: function () { + return this._splitPos.clone(); + }, + + getSplitPosX: function () { + return this._splitPos.x; + }, + + getSplitPosY: function () { + return this._splitPos.y; + }, + + justifySplitPos: function (split, isHoriz) { + if (split <= 0) { + return 0; + } + + var maxSplitPos = isHoriz ? this.getMaxSplitPosX() : this.getMaxSplitPosY(); + if (split >= maxSplitPos) { + return maxSplitPos; + } + + return isHoriz ? this._docLayer.getSnapDocPosX(split) : + this._docLayer.getSnapDocPosY(split); + }, + + setHorizSplitPos: function (splitX) { + + console.assert(typeof splitX === 'number', 'splitX must be a number'); + + if (this._splitPos.x === splitX) { + return; + } + + this._splitPos.x = this.justifySplitPos(splitX, true /* isHoriz */); + + this._updateXSplitter(); + this._map.fire('splitposchanged'); + }, + + setVertSplitPos: function (splitY) { + + console.assert(typeof splitY === 'number', 'splitY must be a number'); + + if (this._splitPos.y === splitY) { + return; + } + + this._splitPos.y = this.justifySplitPos(splitY, false /* isHoriz */); + + this._updateYSplitter(); + this._map.fire('splitposchanged'); + }, + + alignHorizSplitPos: function () { + this._splitPos.x = this._docLayer.getSnapDocPosX(this._splitPos.x); + this._updateXSplitter(); + }, + + alignVertSplitPos: function (
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/layer/tile/CalcTileLayer.js | 118 +- loleaflet/src/layer/tile/GridLayer.js | 28 ++- loleaflet/src/layer/tile/TileLayer.js |7 + loleaflet/src/map/Map.js | 13 +++ 4 files changed, 164 insertions(+), 2 deletions(-) New commits: commit 2bdd07a232e76652e4e4ae1afd4f1a9fd1c2c197 Author: Dennis Francis AuthorDate: Tue Jul 7 12:08:13 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:48:44 2020 +0200 add new methods to Map/GridLayer/TileLayer/CalcTileLayer... needed to implement split-panes feature in Calc. Change-Id: I8e221299e951e3c38ed74794573e44a5d3b9e8b2 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98329 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 5c80d35f3..4ff7b51ba 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -835,7 +835,49 @@ L.CalcTileLayer = L.TileLayer.extend({ }); return rectArray; - } + }, + + getSnapDocPosX: function (docPosX, unit) { + if (!this.options.sheetGeometryDataEnabled) { + return docPosX; + } + + unit = unit || 'csspixels'; + + return this.sheetGeometry.getSnapDocPosX(docPosX, unit); + }, + + getSnapDocPosY: function (docPosY, unit) { + if (!this.options.sheetGeometryDataEnabled) { + return docPosY; + } + + unit = unit || 'csspixels'; + + return this.sheetGeometry.getSnapDocPosY(docPosY, unit); + }, + + getSplitPanesContext: function () { + if (!this.hasSplitPanesSupport()) { + return undefined; + } + + return this._splitPanesContext; + }, + + getMaxDocSize: function () { + + if (this.sheetGeometry) { + return this.sheetGeometry.getSize('csspixels'); + } + + return this._twipsToPixels(new L.Point(this._docWidthTwips, this._docHeightTwips)); + }, + + getCursorPos: function () { + return this._twipsToPixels(this._cellCursorTwips.getTopLeft()); + }, + }); L.MessageStore = L.Class.extend({ @@ -1127,6 +1169,26 @@ L.SheetGeometry = L.Class.extend({ return new L.Bounds(topLeft, topLeft.add(size)); }, + getCellFromPos: function (pos, unit) { + console.assert(pos instanceof L.Point); + return new L.Point( + this._columns.getIndexFromPos(pos.x, unit), + this._rows.getIndexFromPos(pos.y, unit) + ); + }, + + // Returns the start position of the column containing posX in the specified unit. + // unit must be one of 'csspixels', 'devpixels', 'tiletwips', 'printtwips' + getSnapDocPosX: function (posX, unit) { + return this._columns.getSnapPos(posX, unit); + }, + + // Returns the start position of the row containing posY in the specified unit. + // unit must be one of 'csspixels', 'devpixels', 'tiletwips', 'printtwips' + getSnapDocPosY: function (posY, unit) { + return this._rows.getSnapPos(posY, unit); + }, + _testValidity: function (sheetGeomJSON, checkCompleteness) { if (!sheetGeomJSON.hasOwnProperty('commandName')) { @@ -1592,6 +1654,60 @@ L.SheetDimension = L.Class.extend({ return posSize.startpos + posSize.size; }, + + isUnitSupported: function (unitName) { + return ( + unitName === 'csspixels' || + unitName === 'devpixels' || + unitName === 'tiletwips' || + unitName === 'printtwips' + ); + }, + + getSnapPos: function (pos, unit) { + console.assert(typeof pos === 'number', 'pos is not a number'); + console.assert(this.isUnitSupported(unit), 'unit: ' + unit + ' is not supported'); + + var origUnit = unit; + + if (unit === 'devpixels') { + pos = (pos * this._twipsPerCSSPixel) / this._devPixelsPerCssPixel; + unit = 'tiletwips'; + } + else if (unit === 'csspixels') { + pos = pos * this._twipsPerCSSPixel; + unit = 'tiletwips'; + } + + console.assert(unit === 'tiletwips' || unit === 'printtwips', 'wrong unit assumption'); + var result = (unit === 'tiletwips') ? + this._getSpanAndIndexFromTileTwipsPos(pos) : + th
[Libreoffice-commits] core.git: sc/qa
sc/qa/uitest/calc_tests/Comments.py | 49 1 file changed, 49 insertions(+) New commits: commit a480b32fb7a381fc17d51c2ccd0e8c4455d38792 Author: Ahmed ElShreif AuthorDate: Wed Jun 24 18:59:32 2020 +0200 Commit: Ahmed ElShreif CommitDate: Wed Jul 8 16:47:39 2020 +0200 uitest : Add demo for Calc-comments This patch test the support that added to this patch: https://gerrit.libreoffice.org/c/core/+/96837 Change-Id: If7444813f65bd90d62d0eb3504dcfc588c3f4e32 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97074 Tested-by: Jenkins Reviewed-by: Markus Mohrhard diff --git a/sc/qa/uitest/calc_tests/Comments.py b/sc/qa/uitest/calc_tests/Comments.py new file mode 100644 index ..52d1f2a1d666 --- /dev/null +++ b/sc/qa/uitest/calc_tests/Comments.py @@ -0,0 +1,49 @@ +# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +from uitest.framework import UITestCase +from uitest.uihelper.common import get_state_as_dict +from libreoffice.uno.propertyvalue import mkPropertyValues +from uitest.debug import sleep + +class Comments(UITestCase): +def test_comment(self): +calc_doc = self.ui_test.create_doc_in_start_center("calc") +xCalcDoc = self.xUITest.getTopFocusWindow() +gridwin = xCalcDoc.getChild("grid_window") +document = self.ui_test.get_component() + +# Select Cell D8 +gridwin.executeAction("SELECT", mkPropertyValues({"TABLE": "0"})) +gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "D8"})) + +# Create comment and open it's window +gridwin.executeAction("COMMENT", mkPropertyValues({"OPEN": ""})) + +# Write text in the Comment Window +gridwin.executeAction("TYPE", mkPropertyValues({"TEXT": "First Comment"})) + +# Close Comment Window +gridwin.executeAction("COMMENT", mkPropertyValues({"CLOSE":""})) + +# Check on the comment text +self.assertEqual(get_state_as_dict(gridwin)["CurrentCellCommentText"], "First Comment") + +# Check on comment in another cell +gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "A1"})) +gridwin.executeAction("COMMENT", mkPropertyValues({"OPEN": ""})) +gridwin.executeAction("TYPE", mkPropertyValues({"TEXT": "Second Comment"})) +gridwin.executeAction("COMMENT", mkPropertyValues({"CLOSE":""})) +self.assertEqual(get_state_as_dict(gridwin)["CurrentCellCommentText"], "Second Comment") + +# Write Comment without opening Comment window +gridwin.executeAction("SELECT", mkPropertyValues({"CELL": "B5"})) +gridwin.executeAction("COMMENT", mkPropertyValues({"SETTEXT": "Third Comment"})) +self.assertEqual(get_state_as_dict(gridwin)["CurrentCellCommentText"], "Third Comment") + +self.ui_test.close_doc() + +# vim: set shiftwidth=4 softtabstop=4 expandtab: \ No newline at end of file ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/ui/inc/uiobject.hxx|2 + sc/source/ui/uitest/uiobject.cxx | 41 +++ 2 files changed, 43 insertions(+) New commits: commit e1690504c27081ff5b212f20a80468a1c703c09a Author: Ahmed ElShreif AuthorDate: Mon Jun 22 11:15:56 2020 +0200 Commit: Ahmed ElShreif CommitDate: Wed Jul 8 16:46:46 2020 +0200 uitest : Add support to Calc - comments This patch has the implementation of the support for Calc comments . Now you can use these lines to use comments in calc: * Open Comment Window : >> gridwin.executeAction("COMMENT",mkPropertyValues({"OPEN":""})) * Then Type text as normal : >> gridwin.executeAction("TYPE",mkPropertyValues({"TEXT":"any"})) * Close Comment Window : >> gridwin.executeAction("COMMENT",mkPropertyValues({"CLOSE":""})) * Write Comment without opening comment window: >> gridwin.executeAction("COMMENT",mkPropertyValues({"SETTEXT":"any"})) You can also check the comment text by this line: >> get_state_as_dict(gridwind)["CurrentCellCommentText"] I will provide a test case in another patch. Change-Id: Ie3fc4efffb07827e742bdaa99dd5147c8b9711d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96837 Tested-by: Jenkins Reviewed-by: Ahmed ElShreif Reviewed-by: Markus Mohrhard diff --git a/sc/source/ui/inc/uiobject.hxx b/sc/source/ui/inc/uiobject.hxx index 3f92943293f2..827c2f1b5c07 100644 --- a/sc/source/ui/inc/uiobject.hxx +++ b/sc/source/ui/inc/uiobject.hxx @@ -14,6 +14,7 @@ class ScGridWindow; class ScDBFunc; class ScDrawView; class ScTabViewShell; +class ScViewFunc; class ScGridWinUIObject : public WindowUIObject { @@ -43,6 +44,7 @@ private: ScDBFunc* getDBFunc(); ScDrawView* getDrawView(); ScTabViewShell* getViewShell(); +ScViewFunc* getViewFunc(); }; class ScNavigatorDlg; diff --git a/sc/source/ui/uitest/uiobject.cxx b/sc/source/ui/uitest/uiobject.cxx index df62ab45881d..ec1b777ebfc5 100644 --- a/sc/source/ui/uitest/uiobject.cxx +++ b/sc/source/ui/uitest/uiobject.cxx @@ -14,14 +14,18 @@ #include #include +#include #include #include #include #include #include #include +#include #include #include +#include +#include #include #include @@ -75,6 +79,13 @@ StringMap ScGridWinUIObject::get_state() aMap["MarkedArea"] = aMarkedAreaString; +ScDocument* pDoc = mxGridWindow->getViewData()->GetDocument(); +ScAddress aPos( mxGridWindow->getViewData()->GetCurX() , mxGridWindow->getViewData()->GetCurY() , mxGridWindow->getViewData()->GetTabNo() ); +if ( pDoc->HasNote( aPos ) ) +{ +aMap["CurrentCellCommentText"] = pDoc->GetNote( aPos )->GetText(); +} + ScAppOptions aOpt = SC_MOD()->GetAppOptions(); aMap["Zoom"] = OUString::number( aOpt.GetZoom() ); return aMap; @@ -104,6 +115,14 @@ ScTabViewShell* ScGridWinUIObject::getViewShell() return pViewShell; } +ScViewFunc* ScGridWinUIObject::getViewFunc() +{ +ScViewData* pViewData = mxGridWindow->getViewData(); +ScViewFunc* pViewFunc = pViewData->GetView(); + +return pViewFunc; +} + void ScGridWinUIObject::execute(const OUString& rAction, const StringMap& rParameters) { @@ -231,6 +250,28 @@ void ScGridWinUIObject::execute(const OUString& rAction, mxGridWindow->LaunchDataSelectMenu(nCol, nRow); } } +else if (rAction == "COMMENT") +{ +if ( rParameters.find("OPEN") != rParameters.end() ) +{ +ScViewFunc* pViewFunc = getViewFunc(); +pViewFunc->EditNote(); +} +else if ( rParameters.find("CLOSE") != rParameters.end() ) +{ +FuDraw* pDraw = dynamic_cast (getViewFunc()->GetDrawFuncPtr()); +ScViewData* pViewData = mxGridWindow->getViewData(); +pViewData->GetDispatcher().Execute( pDraw->GetSlotID() , SfxCallMode::SLOT | SfxCallMode::RECORD ); +} +else if ( rParameters.find("SETTEXT") != rParameters.end() ) +{ +auto itr = rParameters.find("SETTEXT"); +const OUString rStr = itr->second; +ScDocument* pDoc = mxGridWindow->getViewData()->GetDocument(); +ScAddress aPos( mxGridWindow->getViewData()->GetCurX() , mxGridWindow->getViewData()->GetCurY() , mxGridWindow->getViewData()->GetTabNo() ); +pDoc->GetOrCreateNote( aPos )->SetText( aPos , rStr ); +} +} else if (rAction == "SIDEBAR") { SfxViewFrame* pViewFrm = SfxViewFrame::Current(); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/layer/tile/CalcTileLayer.js | 35 +- loleaflet/src/layer/tile/TileLayer.js |2 - loleaflet/src/map/Map.js | 11 + 3 files changed, 46 insertions(+), 2 deletions(-) New commits: commit d60bebc7ad22ea949248e367f76b5bcf33fb5628 Author: Dennis Francis AuthorDate: Fri Jun 26 09:56:41 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:47:15 2020 +0200 calc-zoom: preserve the top-left document position on zoom which is the behaviour in LibreOffice Calc desktop. This is now possible because we can accurarately determine the pixel position of any cell at any zoom level from the global sheetGeometry data we get from core. Change-Id: I5af41770e94c65d803fa9f99906b4ee1ca2f6ac7 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98328 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 31398abb4..5c80d35f3 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -1116,6 +1116,17 @@ L.SheetGeometry = L.Class.extend({ this._rows.getSize(unit)); }, + // Returns the CSS pixel position/size of the requested cell at a specified zoom. + getCellRect: function (columnIndex, rowIndex, zoomScale) { + var horizPosSize = this._columns.getElementData(columnIndex, false /* devicePixels */, zoomScale); + var vertPosSize = this._rows.getElementData(rowIndex, false /* devicePixels */, zoomScale); + + var topLeft = new L.Point(horizPosSize.startpos, vertPosSize.startpos); + var size = new L.Point(horizPosSize.size, vertPosSize.size); + + return new L.Bounds(topLeft, topLeft.add(size)); + }, + _testValidity: function (sheetGeomJSON, checkCompleteness) { if (!sheetGeomJSON.hasOwnProperty('commandName')) { @@ -1307,7 +1318,29 @@ L.SheetDimension = L.Class.extend({ }, // returns the element pos/size in css pixels by default. - getElementData: function (index, useDevicePixels) { + getElementData: function (index, useDevicePixels, zoomScale) { + if (zoomScale !== undefined) { + var startpos = 0; + var size = 0; + this._visibleSizes.forEachSpanInRange(0, index, function (spanData) { + var count = spanData.end - spanData.start + 1; + var sizeOneCSSPx = Math.floor(spanData.size * zoomScale / 15.0); + if (index > spanData.end) { + startpos += (sizeOneCSSPx * count); + } + else if (index >= spanData.start && index <= spanData.end) { + // final span + startpos += (sizeOneCSSPx * (index - spanData.start)); + size = sizeOneCSSPx; + } + }); + + return { + startpos: startpos, + size: size + }; + } + var span = this._visibleSizes.getSpanDataByIndex(index); if (span === undefined) { return undefined; diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index ec1d425d7..a53074498 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -3318,7 +3318,7 @@ L.TileLayer = L.GridLayer.extend({ // Cells can change position during changes of zoom level in calc // hence we need to request an updated cell cursor position for this level. _onCellCursorShift: function (force) { - if (this._cellCursorMarker || force) { + if ((this._cellCursorMarker && !this.options.sheetGeometryDataEnabled) || force) { this._map._socket.sendMessage('commandvalues command=.uno:CellCursor' + '?outputHeight=' + this._tileWidthPx + '&outputWidth=' + this._tileHeightPx diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js index 66103df1c..c3ba4e260 100644 --- a/loleaflet/src/map/Map.js +++ b/loleaflet/src/map/Map.js @@ -468,6 +468,17 @@ L.Map = L.Evented.extend({ // for spreadsheets, when the document is smaller than the viewing area // we want it to be glued to the row/column headers instead of being centered this._docLayer._checkSpreadSheetBounds(zoo
Building error
Hi Recently, I was trying to build LibreOffice on Windows. When I ran /opt/lo/bin/make gb_COLOR=1 in the Cygwin shell, it executed smoothly in the beginning. After 2 hours of running it gave this error: > error: .NET exception occurred: System.IO.IOException: Access is denied. (Exce ption from HRESULT: 0x80070005 (E_ACCESSDENIED)) at System.Reflection.Emit.ModuleBuilder.SavePEFile(RuntimeModule module, Stri ng fileName, Int32 entryPoint, Int32 isExe, Boolean isManifestFile) at System.Reflection.Emit.ModuleBuilder.Save(String fileName, Boolean isAssem blyFile, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageF ileMachine) at System.Reflection.Emit.AssemblyBuilder.SaveNoLock(String assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachi ne) at System.Reflection.Emit.AssemblyBuilder.Save(String assemblyFileName, Porta bleExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine) at ?A0x917c8043.sal_main() > dying abnormally...[PCH] precompiled_d ba make[1]: *** [C:/sources/libo-core/cli_ure/CliUnoApi_cli_uretypes.mk:14: C:/buil d/instdir/program/cli_uretypes.dll] Error 1 make[1]: *** Waiting for unfinished jobs make: *** [Makefile:282: build] Error 2 How should I solve this issue? Anshu ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] online.git: kit/SetupKitEnvironment.hpp loleaflet/src
kit/SetupKitEnvironment.hpp |3 +++ loleaflet/src/layer/tile/CalcTileLayer.js |4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) New commits: commit 5d2bb319e90e5381ac0ae320b127a3a1dec7f1f1 Author: Dennis Francis AuthorDate: Sun Jul 5 23:27:59 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 16:42:12 2020 +0200 Calc: enable sheet-geometry data and printTwips messages Change-Id: I80c61591a4e356cd406ecc1806ad387429ba13c1 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98169 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Dennis Francis diff --git a/kit/SetupKitEnvironment.hpp b/kit/SetupKitEnvironment.hpp index a8ef721ad..48c4df288 100644 --- a/kit/SetupKitEnvironment.hpp +++ b/kit/SetupKitEnvironment.hpp @@ -50,6 +50,9 @@ inline void setupKitEnvironment(const std::string& userInterface) options += ":notebookbar"; //options += ":sc_no_grid_bg"; // leave this disabled for now, merged-cells needs more work. + +options += ":sc_print_twips_msgs"; + ::setenv("SAL_LOK_OPTIONS", options.c_str(), 0); } diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js index 379bb4683..31398abb4 100644 --- a/loleaflet/src/layer/tile/CalcTileLayer.js +++ b/loleaflet/src/layer/tile/CalcTileLayer.js @@ -7,8 +7,8 @@ L.CalcTileLayer = L.TileLayer.extend({ options: { // TODO: sync these automatically from SAL_LOK_OPTIONS - sheetGeometryDataEnabled: false, - printTwipsMsgsEnabled: false + sheetGeometryDataEnabled: true, + printTwipsMsgsEnabled: true }, STD_EXTRA_WIDTH: 113, /* 2mm extra for optimal width, ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: 2 commits - net/Socket.cpp wsd/DocumentBroker.cpp
net/Socket.cpp |5 + wsd/DocumentBroker.cpp | 21 + 2 files changed, 26 insertions(+) New commits: commit c0706831b8f4c35d2a3b9939988c4894c44abebd Author: Tor Lillqvist AuthorDate: Wed Jul 8 17:28:45 2020 +0300 Commit: Tor Lillqvist CommitDate: Wed Jul 8 17:35:40 2020 +0300 Add comment describing what was not a good idea after all for the iOS app Change-Id: I43c760fa521f6a5860f2ed5dfef816ba5faaf463 diff --git a/wsd/DocumentBroker.cpp b/wsd/DocumentBroker.cpp index 009de809d..f198bb8e3 100644 --- a/wsd/DocumentBroker.cpp +++ b/wsd/DocumentBroker.cpp @@ -1436,6 +1436,27 @@ size_t DocumentBroker::removeSession(const std::string& id) << ", LastEditableSession: " << lastEditableSession << ", DontSaveIfUnmodified: " << dontSaveIfUnmodified << ", IsPossiblyModified: " << isPossiblyModified()); +// In theory, we almost could do this here: + +// #if MOBILEAPP +// There is always just one "session" in a mobile app, and the same one process continues +// running, so no need to delay the disconnectSessionInternal() call. Doing it like this +// will also get rid of the docbroker and lokit_main thread for the document quicker. + +// But, in reality it has unintended side effects on iOS because if you have done changes to +// the document, it does get saved, but that is only to the temporary copy. It is only in +// the document callback handler for LOK_CALLBACK_UNO_COMMAND_RESULT that we then call the +// system API to save that copy back to where it came from. See the +// LOK_CALLBACK_UNO_COMMAND_RESULT case in ChildSession::loKitCallback() in +// ChildSession.cpp. If we did use the below code snippet here, the document callback would +// get unregistered right away in Document::onUnload in Kit.cpp. + +// autoSave(isPossiblyModified(), dontSaveIfUnmodified); +// disconnectSessionInternal(id); +// stop("stopped"); + +// So just go down the same code path as for normal Online: + // If last editable, save and don't remove until after uploading to storage. if (!lastEditableSession || !autoSave(isPossiblyModified(), dontSaveIfUnmodified)) disconnectSessionInternal(id); commit 980b7b04a6a2f97989b8dfed3941251eda8c09e0 Author: Tor Lillqvist AuthorDate: Wed Jul 8 17:19:02 2020 +0300 Commit: Tor Lillqvist CommitDate: Wed Jul 8 17:34:20 2020 +0300 Add a FIXME Change-Id: I7d54f77c5661b04616c04d1807966b9e1ccea485 diff --git a/net/Socket.cpp b/net/Socket.cpp index 2f35b5cce..98822919c 100644 --- a/net/Socket.cpp +++ b/net/Socket.cpp @@ -288,6 +288,11 @@ int SocketPoll::poll(int64_t timeoutMaxMicroS) } // This should only happen when we're stopping. + +// FIXME: A few dozen lines above we have potentially inserted new elements in _pollSockets, so +// clearly its size can now be larger than what it was when we came to this function, which got +// saved in the size variable. + if (_pollSockets.size() != size) return rc; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: wsd/DocumentBroker.cpp
wsd/DocumentBroker.cpp |5 - 1 file changed, 5 deletions(-) New commits: commit 0a2033d68800f3ed7346b43b344982bf929fbbcf Author: Tor Lillqvist AuthorDate: Wed Jul 8 15:12:26 2020 +0300 Commit: Tor Lillqvist CommitDate: Wed Jul 8 16:30:13 2020 +0200 Bin pointless virtual function that only calls the base class function Pointless since my own 7f25109f72738706359a63c9062764699f00f568, so yeah, I should have noticed then. Change-Id: Ic34584134ef840b33b874952e0bba8d14d3fde2f Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98374 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Tor Lillqvist diff --git a/wsd/DocumentBroker.cpp b/wsd/DocumentBroker.cpp index a6b8c62e2..009de809d 100644 --- a/wsd/DocumentBroker.cpp +++ b/wsd/DocumentBroker.cpp @@ -155,11 +155,6 @@ public: { } -bool continuePolling() override -{ -return TerminatingPoll::continuePolling(); -} - void pollingThread() override { // Delegate to the docBroker. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: Error in building LibreOffice
Hi I solved that problem by running reg add HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\StrongName /v MachineKeyset /t REG_DWORD /d 0 in the Administrator Command Prompt. I got the solution here: https://stackoverflow.com/questions/4606342/signing-assembly-access-is-denied Thanks again Julian for hinting me in right direction. :) Best Anshu On Tue, Jul 7, 2020 at 3:26 PM Mike Kaganski wrote: > On 07.07.2020 12:41, anshu khare wrote: > > Someone please help me with this. > > > > On Sun, 5 Jul, 2020, 10:06 PM anshu khare, > wrote: > > > >> The link says about solving the error > >> > >> > >> ALINK: error AL1078: Error signing assembly -- Access is denied. > > Possibly no one who reads the list remembers anything similar. > > I don't know if that might help; you haven't indicated the arguments you > used for autogen, and that could shed some light... (and then, you are > likely to had followed the build directions in the wiki not carefully > enough - because of your previous question, which indicated that you > haven't followed the list of required components in VS; so the things > might had went wrong in so many ways...). Please mention as much > information as possible, and follow the guides as carefully as possible. > > Maybe using --disable-windows-build-signing in autogen.input could > affect this - just guessing. > > -- > Best regards, > Mike Kaganski > ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: configure.ac
configure.ac |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) New commits: commit b55031ec4e15b085a6eca581a46f229187c93afa Author: Mike Kaganski AuthorDate: Wed Jul 8 14:37:52 2020 +0300 Commit: Mike Kaganski CommitDate: Wed Jul 8 16:18:17 2020 +0200 Avoid "ECHO is off." output when requested variable consists of spaces Change-Id: I41e298ee3ea8d6c1cd249e8ee5f0ced997255ec3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98369 Tested-by: Mike Kaganski Reviewed-by: Mike Kaganski diff --git a/configure.ac b/configure.ac index ba23b7211e27..f5463c5c0731 100644 --- a/configure.ac +++ b/configure.ac @@ -3416,7 +3416,8 @@ win_get_env_from_vsvars32bat() # Also seems to be located in another directory under the same name: vsvars32.bat # https://github.com/bazelbuild/bazel/blob/master/src/main/native/build_windows_jni.sh#L56-L57 printf '@call "%s/../Common7/Tools/VsDevCmd.bat" /no_logo\r\n' "$(cygpath -w $VC_PRODUCT_DIR)" > $WRAPPERBATCHFILEPATH -printf '@setlocal\r\n@echo %%%s%%\r\n@endlocal\r\n' "$1" >> $WRAPPERBATCHFILEPATH +# use 'echo.%ENV%' syntax (instead of 'echo %ENV%') to avoid outputting "ECHO is off." in case when ENV is empty or a space +printf '@setlocal\r\n@echo.%%%s%%\r\n@endlocal\r\n' "$1" >> $WRAPPERBATCHFILEPATH chmod +x $WRAPPERBATCHFILEPATH _win_get_env_from_vsvars32bat=$("$WRAPPERBATCHFILEPATH" | tr -d '\r') rm -f $WRAPPERBATCHFILEPATH ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/workben
vcl/workben/cgmfuzzer.cxx |4 ++-- vcl/workben/pptfuzzer.cxx |4 ++-- vcl/workben/qpwfuzzer.cxx |4 ++-- vcl/workben/rtffuzzer.cxx |4 ++-- vcl/workben/slkfuzzer.cxx |4 ++-- vcl/workben/wmffuzzer.cxx |4 ++-- vcl/workben/ww2fuzzer.cxx |4 ++-- vcl/workben/ww6fuzzer.cxx |3 ++- vcl/workben/ww8fuzzer.cxx |4 ++-- 9 files changed, 18 insertions(+), 17 deletions(-) New commits: commit baaaee9b1665245e5b4f6a0ef5c949fd3ab32862 Author: Caolán McNamara AuthorDate: Wed Jul 8 11:56:36 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 15:37:10 2020 +0200 fix fuzzer build Change-Id: I1c96d177ddf6061e61f4027675e657c2d7fd446e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98367 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/vcl/workben/cgmfuzzer.cxx b/vcl/workben/cgmfuzzer.cxx index 252d538bd14c..d6c35981ef2e 100644 --- a/vcl/workben/cgmfuzzer.cxx +++ b/vcl/workben/cgmfuzzer.cxx @@ -15,7 +15,6 @@ #include extern "C" { -void * emfio_component_getFactory( const char* , void* , void* ); void * sd_component_getFactory( const char* , void* , void* ); void * i18npool_component_getFactory( const char* , void* , void* ); void * ucb_component_getFactory( const char* , void* , void* ); @@ -47,13 +46,13 @@ void * com_sun_star_animations_SequenceTimeContainer_get_implementation( void *, void * com_sun_star_animations_TransitionFilter_get_implementation( void *, void * ); void * com_sun_star_comp_comphelper_OPropertyBag( void *, void * ); void * com_sun_star_comp_uui_UUIInteractionHandler_get_implementation( void *, void * ); +void * emfio_emfreader_XEmfParser_get_implementation( void *, void * ); } const lib_to_factory_mapping * lo_get_factory_map(void) { static lib_to_factory_mapping map[] = { -{ "libemfiolo.a", emfio_component_getFactory }, { "libsdlo.a", sd_component_getFactory }, { "libunoxmllo.a", unoxml_component_getFactory }, { "libi18npoollo.a", i18npool_component_getFactory }, @@ -94,6 +93,7 @@ lo_get_constructor_map(void) { "com_sun_star_animations_TransitionFilter_get_implementation", com_sun_star_animations_TransitionFilter_get_implementation }, { "com_sun_star_comp_comphelper_OPropertyBag", com_sun_star_comp_comphelper_OPropertyBag }, { "com_sun_star_comp_uui_UUIInteractionHandler_get_implementation", com_sun_star_comp_uui_UUIInteractionHandler_get_implementation }, +{ "emfio_emfreader_XEmfParser_get_implementation", emfio_emfreader_XEmfParser_get_implementation}, { 0, 0 } }; diff --git a/vcl/workben/pptfuzzer.cxx b/vcl/workben/pptfuzzer.cxx index d7f6b73f986e..93cd12a1d870 100644 --- a/vcl/workben/pptfuzzer.cxx +++ b/vcl/workben/pptfuzzer.cxx @@ -15,7 +15,6 @@ #include extern "C" { -void * emfio_component_getFactory( const char* , void* , void* ); void * sd_component_getFactory( const char* , void* , void* ); void * i18npool_component_getFactory( const char* , void* , void* ); void * ucb_component_getFactory( const char* , void* , void* ); @@ -46,13 +45,13 @@ void * com_sun_star_animations_SequenceTimeContainer_get_implementation( void *, void * com_sun_star_animations_TransitionFilter_get_implementation( void *, void * ); void * com_sun_star_comp_comphelper_OPropertyBag( void *, void * ); void * com_sun_star_comp_uui_UUIInteractionHandler_get_implementation( void *, void * ); +void * emfio_emfreader_XEmfParser_get_implementation( void *, void * ); } const lib_to_factory_mapping * lo_get_factory_map(void) { static lib_to_factory_mapping map[] = { -{ "libemfiolo.a", emfio_component_getFactory }, { "libsdlo.a", sd_component_getFactory }, { "libunoxmllo.a", unoxml_component_getFactory }, { "libi18npoollo.a", i18npool_component_getFactory }, @@ -92,6 +91,7 @@ lo_get_constructor_map(void) { "com_sun_star_animations_TransitionFilter_get_implementation", com_sun_star_animations_TransitionFilter_get_implementation }, { "com_sun_star_comp_comphelper_OPropertyBag", com_sun_star_comp_comphelper_OPropertyBag }, { "com_sun_star_comp_uui_UUIInteractionHandler_get_implementation", com_sun_star_comp_uui_UUIInteractionHandler_get_implementation }, +{ "emfio_emfreader_XEmfParser_get_implementation", emfio_emfreader_XEmfParser_get_implementation}, { 0, 0 } }; diff --git a/vcl/workben/qpwfuzzer.cxx b/vcl/workben/qpwfuzzer.cxx index 0b1fe636240e..6cfecf4f20cd 100644 --- a/vcl/workben/qpwfuzzer.cxx +++ b/vcl/workben/qpwfuzzer.cxx @@ -14,7 +14,6 @@ #include extern "C" { -void * emfio_component_getFactory( const char* , void* , void* ); void * i18npool_component_getFactory( const char* , void* , void* ); void * com_sun_star_i18n_LocaleDataImpl_get_implementation( void *, void * ); @@ -27,13 +26,13 @@ void * com_sun_star_i18n_Collator_get_implementation( void *, void * ); void * com_sun_star_i18n_NativeN
[Libreoffice-commits] online.git: common/FileUtil.cpp common/FileUtil.hpp
common/FileUtil.cpp | 27 --- common/FileUtil.hpp |9 - 2 files changed, 32 insertions(+), 4 deletions(-) New commits: commit 30aa038235c30e435e558d83ca2a4cc70848db92 Author: Tor Lillqvist AuthorDate: Wed Jul 8 14:27:19 2020 +0300 Commit: Tor Lillqvist CommitDate: Wed Jul 8 15:20:14 2020 +0200 Make FileUtil.{hpp,cpp} compile for iOS again Change-Id: I0446c17401c32a76cc5acee168501b7b9fc515e4 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98368 Tested-by: Jenkins CollaboraOffice Tested-by: Jenkins Reviewed-by: Tor Lillqvist diff --git a/common/FileUtil.cpp b/common/FileUtil.cpp index 1f31e536d..6a61b926e 100644 --- a/common/FileUtil.cpp +++ b/common/FileUtil.cpp @@ -282,8 +282,23 @@ namespace FileUtil bool updateTimestamps(const std::string& filename, timespec tsAccess, timespec tsModified) { // The timestamp is in seconds and microseconds. -timeval timestamps[2]{ { tsAccess.tv_sec, tsAccess.tv_nsec / 1000 }, - { tsModified.tv_sec, tsModified.tv_nsec / 1000 } }; +timeval timestamps[2] + { + { + tsAccess.tv_sec, +#ifdef IOS + (__darwin_suseconds_t) +#endif + (tsAccess.tv_nsec / 1000) + }, + { + tsModified.tv_sec, +#ifdef IOS + (__darwin_suseconds_t) +#endif + (tsModified.tv_nsec / 1000) + } + }; if (utimes(filename.c_str(), timestamps) != 0) { LOG_SYS("Failed to update the timestamp of [" << filename << "]"); @@ -301,7 +316,13 @@ namespace FileUtil if (preserveTimestamps) { const Stat st(fromPath); -updateTimestamps(randFilename, st.sb().st_atim, st.sb().st_mtim); +updateTimestamps(randFilename, +#ifdef IOS + st.sb().st_atimespec, st.sb().st_mtimespec +#else + st.sb().st_atim, st.sb().st_mtim +#endif + ); } // Now rename atomically, replacing any existing files with the same name. diff --git a/common/FileUtil.hpp b/common/FileUtil.hpp index 7d484d3d5..dc87d205a 100644 --- a/common/FileUtil.hpp +++ b/common/FileUtil.hpp @@ -140,7 +140,14 @@ namespace FileUtil size_t size() const { return _sb.st_size; } /// Returns the modified time. -timespec modifiedTime() const { return _sb.st_mtim; } +timespec modifiedTime() const +{ +#ifdef IOS +return _sb.st_mtimespec; +#else +return _sb.st_mtim; +#endif +} /// Returns true iff the path exists, regardless of access permission. bool exists() const { return good() || (_errno != ENOENT && _errno != ENOTDIR); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa
sw/qa/extras/ooxmlexport/data/tdf134260.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport14.cxx | 31 +++ 2 files changed, 31 insertions(+) New commits: commit e001e8a24c71cf2bdb455acb5bf54ac685bc1df7 Author: Xisco Fauli AuthorDate: Wed Jul 8 10:25:34 2020 +0200 Commit: Xisco Fauli CommitDate: Wed Jul 8 15:02:27 2020 +0200 tdf#134260: sw: Add unittest Change-Id: I719dac8528453b00219c5bdc621f7ce88cd40bde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98318 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/ooxmlexport/data/tdf134260.docx b/sw/qa/extras/ooxmlexport/data/tdf134260.docx new file mode 100644 index ..98c4107f4804 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf134260.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx index 3ca1a456182f..f2e09af96bfa 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx @@ -267,6 +267,37 @@ DECLARE_OOXMLEXPORT_TEST(testTdf133000_numStyleFormatting, "tdf133000_numStyleFo CPPUNIT_ASSERT( nLevel1Margin < nLevel2Margin ); } +DECLARE_OOXMLEXPORT_TEST(testTdf134260, "tdf134260.docx") +{ +// Without the accompanying fix in place, this test would have failed with: +// - Expected: 0 +// - Actual : 1270 + +auto xNum1Levels += getProperty>(getParagraph(1), "NumberingRules"); + +CPPUNIT_ASSERT_EQUAL( +sal_Int32(0), + comphelper::SequenceAsHashMap(xNum1Levels->getByIndex(0))["ListtabStopPosition"] +.get()); + +auto xNum2Levels += getProperty>(getParagraph(2), "NumberingRules"); + +CPPUNIT_ASSERT_EQUAL( +sal_Int32(0), + comphelper::SequenceAsHashMap(xNum2Levels->getByIndex(0))["ListtabStopPosition"] +.get()); + +auto xNum3Levels += getProperty>(getParagraph(3), "NumberingRules"); + +CPPUNIT_ASSERT_EQUAL( +sal_Int32(0), + comphelper::SequenceAsHashMap(xNum3Levels->getByIndex(0))["ListtabStopPosition"] +.get()); +} + DECLARE_ODFEXPORT_TEST(testArabicZeroNumbering, "arabic-zero-numbering.docx") { auto xNumberingRules ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - sw/source
sw/source/filter/ww8/ww8par2.cxx |3 +++ 1 file changed, 3 insertions(+) New commits: commit 4bc9d9d0c49881ca8f66f7e744174ee6f8ff4ae3 Author: Caolán McNamara AuthorDate: Tue Jul 7 16:05:19 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 15:01:30 2020 +0200 ofz#23961 pad back to original length in case of multi-byte input encoding resulting in a shorter output string than input Change-Id: Ieb4bb7b5f4551ca22e87c573233f083901f3d3c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98272 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/sw/source/filter/ww8/ww8par2.cxx b/sw/source/filter/ww8/ww8par2.cxx index db9f07ec5ce6..407b6e91aae6 100644 --- a/sw/source/filter/ww8/ww8par2.cxx +++ b/sw/source/filter/ww8/ww8par2.cxx @@ -609,6 +609,9 @@ void SwWW8ImplReader::SetAnlvStrings(SwNumFormat &rNum, WW8_ANLV const &rAV, return; } sText = OUString(reinterpret_cast(pText), nLen, eCharSet); +// ofz#23961 in case of multi-byte input encoding resulting in shorter +// output pad to full length with something semi-arbitrary +comphelper::string::padToLength(sText, nLen, cBulletChar); } else { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: 2 commits - configure.ac filter/source
configure.ac|5 +++ filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl | 13 ++ filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl |3 ++ 3 files changed, 17 insertions(+), 4 deletions(-) New commits: commit 646cf598633bacc3959fc126c9117f06f3d0f9e3 Author: Svante Schubert AuthorDate: Wed Jul 8 00:57:33 2020 +0200 Commit: Michael Stahl CommitDate: Wed Jul 8 14:57:32 2020 +0200 Fixing top border style by fixing three XSLT issues triggered by... ... new properties in ODF 1.3 * check for fo:border='none' * missing @ in @fo:background-color * without default case (xsl:otherwise), end delimiter for "page" missing in CSS Change-Id: Ie5d0c3e8a32de0403534c5a4fa33a5f20393ce69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98365 Tested-by: Jenkins Reviewed-by: Michael Stahl diff --git a/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl b/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl index f9b5aff1b363..d1c8f189be85 100644 --- a/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl +++ b/filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl @@ -705,11 +705,16 @@ +)"> diff --git a/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl b/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl index dc07f7e2918b..ec5b680df150 100644 --- a/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl +++ b/filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl @@ -303,6 +303,9 @@ vertical-lr; + +horizontal-tb; direction:ltr; + commit fa654ada6f6a9bd3daf9639119759164cd9ff5a3 Author: Michael Stahl AuthorDate: Wed Jul 8 09:51:56 2020 +0200 Commit: Michael Stahl CommitDate: Wed Jul 8 14:57:21 2020 +0200 configure: try to fix qconfig.h check Change-Id: Ie88d36d2f00c920a2d2a3e8fc6a84fdca4552b86 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98314 Reviewed-by: Michael Weghorn Reviewed-by: Michael Stahl Tested-by: Jenkins diff --git a/configure.ac b/configure.ac index 0be03f347d2a..ba23b7211e27 100644 --- a/configure.ac +++ b/configure.ac @@ -11930,8 +11930,13 @@ then AC_MSG_ERROR([Qt5 headers not found. Please specify the root of your Qt5 installation by exporting QT5DIR before running "configure".]) fi # check for scenario: qt5-qtbase-devel-*.86_64 installed but host is i686 +AC_LANG_PUSH([C++]) +save_CPPFLAGS=$CPPFLAGS +CPPFLAGS="${CPPFLAGS} -I${qt5_incdir}" AC_CHECK_HEADER(QtCore/qconfig.h, [], [AC_MSG_ERROR(qconfig.h header not found.)], []) +CPPFLAGS=$save_CPPFLAGS +AC_LANG_POP([C++]) AC_MSG_CHECKING([for Qt5 libraries]) qt5_libdir="no" ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: svx/source sw/source
svx/source/sidebar/inspector/InspectorTextPanel.cxx |7 ++- sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx | 10 -- 2 files changed, 6 insertions(+), 11 deletions(-) New commits: commit 9abeaaff50e9f6f15c0ef1be5fdabb6fbe1b7a5c Author: Shivam Kumar Singh AuthorDate: Wed Jul 8 09:44:19 2020 +0530 Commit: Mike Kaganski CommitDate: Wed Jul 8 14:55:14 2020 +0200 tdf#134567 Show all properties in DPS Change-Id: If2238a80fbc9fc803fc5e12904964bf4289ba2d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98310 Tested-by: Jenkins Tested-by: Heiko Tietze Reviewed-by: Heiko Tietze Reviewed-by: Mike Kaganski diff --git a/svx/source/sidebar/inspector/InspectorTextPanel.cxx b/svx/source/sidebar/inspector/InspectorTextPanel.cxx index 906ca736a91a..652e63261713 100644 --- a/svx/source/sidebar/inspector/InspectorTextPanel.cxx +++ b/svx/source/sidebar/inspector/InspectorTextPanel.cxx @@ -44,7 +44,7 @@ InspectorTextPanel::InspectorTextPanel(vcl::Window* pParent, : PanelLayout(pParent, "InspectorTextPanel", "svx/ui/inspectortextpanel.ui", rxFrame) , mxListBoxStyles(m_xBuilder->weld_tree_view("listbox_fonts")) { -mxListBoxStyles->set_size_request(-1, mxListBoxStyles->get_height_rows(27)); +mxListBoxStyles->set_size_request(-1, mxListBoxStyles->get_height_rows(25)); } static void FillBox_Impl(weld::TreeView& rListBoxStyles, const TreeNode& current, @@ -74,6 +74,11 @@ void InspectorTextPanel::updateEntries(const std::vector& rStore) pTreeDiagram->expand_row(rEntry); return false; }); + +std::unique_ptr xEntry = mxListBoxStyles->make_iterator(); +mxListBoxStyles->get_iter_first(*xEntry); +mxListBoxStyles->iter_next(*xEntry); +mxListBoxStyles->collapse_row(*xEntry); // Collapse "Default Paragraph Style" } InspectorTextPanel::~InspectorTextPanel() { disposeOnce(); } diff --git a/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx b/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx index b4733e0c1633..dbc22de258b5 100644 --- a/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx +++ b/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx @@ -146,10 +146,8 @@ static void UpdateTree(SwDocShell* pDocSh, svx::sidebar::TreeNode& pParentNode, { uno::Reference xProp1; uno::Reference xProp1Set; -uno::Reference xProp1State; xStyleFamily->getByName(sCurrentStyleName) >>= xProp1; xStyleFamily->getByName(sCurrentStyleName) >>= xProp1Set; -xStyleFamily->getByName(sCurrentStyleName) >>= xProp1State; OUString aParentCharStyle = xProp1->getParentStyle(); xProp1Set->getPropertyValue("DisplayName") >>= sDisplayName; svx::sidebar::TreeNode pCurrentChild; @@ -170,10 +168,6 @@ static void UpdateTree(SwDocShell* pDocSh, svx::sidebar::TreeNode& pParentNode, for (const beans::Property& rProperty : aProperties) { OUString sPropName = rProperty.Name; -// If property's current value equals default value -if (xProp1Set->getPropertyValue(sPropName) -== xProp1State->getPropertyDefault(sPropName)) -continue; if (maIsDefined[sPropName]) continue; @@ -204,9 +198,7 @@ static void UpdateTree(SwDocShell* pDocSh, svx::sidebar::TreeNode& pParentNode, } uno::Reference aProp1Set; -uno::Reference aProp1State; xStyleFamily->getByName(sCurrentStyleName) >>= aProp1Set; -xStyleFamily->getByName(sCurrentStyleName) >>= aProp1State; const uno::Sequence aProperties = aProp1Set->getPropertySetInfo()->getProperties(); @@ -216,8 +208,6 @@ static void UpdateTree(SwDocShell* pDocSh, svx::sidebar::TreeNode& pParentNode, for (const beans::Property& rProperty : aProperties) { OUString aPropertyValuePair, sPropName = rProperty.Name; -if (aProp1Set->getPropertyValue(sPropName) == aProp1State->getPropertyDefault(sPropName)) -continue; if (maIsDefined[sPropName]) continue; maIsDefined[sPropName] = true; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/source
sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 4541f80e7fabf4c7d250d8d31a1ef330540c7ffb Author: Shivam Kumar Singh AuthorDate: Wed Jul 8 10:04:33 2020 +0530 Commit: Mike Kaganski CommitDate: Wed Jul 8 14:53:51 2020 +0200 tdf#134568 Omit Default Character Styles Change-Id: Id3cdcb609c9edf3b3ed7a13d0d64a392479f81f1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98311 Tested-by: Jenkins Tested-by: Heiko Tietze Reviewed-by: Heiko Tietze diff --git a/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx b/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx index a81efa78a8b4..b4733e0c1633 100644 --- a/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx +++ b/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx @@ -140,7 +140,7 @@ static void UpdateTree(SwDocShell* pDocSh, svx::sidebar::TreeNode& pParentNode, properties->getPropertyValue("ParaStyleName") >>= sCurrentStyleName; if (sCurrentStyleName.isEmpty()) -sCurrentStyleName = "Standard"; +return; // In case of Default Character Styles; while (true) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: loleaflet/src
loleaflet/src/control/Control.MobileWizard.js | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) New commits: commit d8c884f95afce9b5496e70e75a5fdd4625058652 Author: Szymon Kłos AuthorDate: Wed Jul 8 11:29:24 2020 +0200 Commit: Szymon Kłos CommitDate: Wed Jul 8 14:30:31 2020 +0200 mobile wizard: fix exploring menu levels After jquery libraries update some nodes were not hidden. Using animation fixes the issue. Also hide effects helper container which added empty gaps between entries. Change-Id: I36090a48d60401c9e6de4711601f357367239a19 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98327 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos diff --git a/loleaflet/src/control/Control.MobileWizard.js b/loleaflet/src/control/Control.MobileWizard.js index c0cd3b985..17e366ae6 100644 --- a/loleaflet/src/control/Control.MobileWizard.js +++ b/loleaflet/src/control/Control.MobileWizard.js @@ -181,7 +181,16 @@ L.Control.MobileWizard = L.Control.extend({ else $(titles).hide(); - $(contentToShow).siblings().hide(); + $('#mobile-wizard .ui-effects-placeholder').hide(); + + var nodesToHide = $(contentToShow).siblings(); + + var duration = 10; + if (animate) + $(nodesToHide).hide('slide', { direction: 'left' }, duration); + else + $(nodesToHide).hide(); + $('#mobile-wizard.funcwizard div#mobile-wizard-content').removeClass('hideHelpBG'); $('#mobile-wizard.funcwizard div#mobile-wizard-content').addClass('showHelpBG'); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: qtconfig.h header not found
On 08/07/2020 09:54, Michael Stahl wrote: hi Julien, ... it's been a while since i added a header check... try if https://gerrit.libreoffice.org/c/core/+/98314 helps Hello Michael, Thank you for your feedback, i responded on gerrit (still the same error) as you may have seen. Perhaps we should keep on there? Julien ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: cui/source include/vcl sc/source sd/source sfx2/source test/source vcl/inc vcl/source vcl/unx
cui/source/dialogs/screenshotannotationdlg.cxx |3 - include/vcl/syswin.hxx |2 include/vcl/weld.hxx |5 +- sc/source/ui/attrdlg/scdlgfact.cxx | 42 ++- sd/source/ui/dlg/sddlgfact.cxx | 54 - sfx2/source/dialog/tabdlg.cxx |3 - test/source/screenshot_test.cxx|3 - vcl/inc/salvtables.hxx |6 +- vcl/source/app/salvtables.cxx | 12 +++-- vcl/source/window/syswin.cxx | 12 +++-- vcl/unx/gtk3/gtk3gtkinst.cxx | 40 -- 11 files changed, 86 insertions(+), 96 deletions(-) New commits: commit 19fd82ac6e08896bd17169d1b6ea090458fc18da Author: Caolán McNamara AuthorDate: Tue Jul 7 20:27:51 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 13:39:11 2020 +0200 distinguish between dialog screenshoting and rendering a widget Change-Id: I43ee0c68d72c97a15d26e2ffea577c2a44ba91e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98326 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/cui/source/dialogs/screenshotannotationdlg.cxx b/cui/source/dialogs/screenshotannotationdlg.cxx index 4054fa57336f..b0513931bde8 100644 --- a/cui/source/dialogs/screenshotannotationdlg.cxx +++ b/cui/source/dialogs/screenshotannotationdlg.cxx @@ -205,8 +205,7 @@ ScreenshotAnnotationDlg_Impl::ScreenshotAnnotationDlg_Impl( maPicture(this), maSaveAsText(CuiResId(RID_SVXSTR_SAVE_SCREENSHOT_AS)) { -VclPtr xParentDialogSurface(VclPtr::Create(DeviceFormat::DEFAULT)); -rParentDialog.draw(*xParentDialogSurface); +VclPtr xParentDialogSurface(rParentDialog.screenshot()); maParentDialogSize = xParentDialogSurface->GetOutputSizePixel(); maParentDialogBitmap = xParentDialogSurface->GetBitmapEx(Point(), maParentDialogSize); maDimmedDialogBitmap = maParentDialogBitmap; diff --git a/include/vcl/syswin.hxx b/include/vcl/syswin.hxx index f1cb60015d4c..32f07c87 100644 --- a/include/vcl/syswin.hxx +++ b/include/vcl/syswin.hxx @@ -217,7 +217,7 @@ public: virtualvoiddoDeferredInit(WinBits nBits); // Screenshot interface -void createScreenshot(VirtualDevice& rOutput); +VclPtr createScreenshot(); }; inline void SystemWindow::SetIdleDebugName( const char *pDebugName ) diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx index c4577d63c49d..7649accf8b2d 100644 --- a/include/vcl/weld.hxx +++ b/include/vcl/weld.hxx @@ -272,7 +272,7 @@ public: virtual void connect_get_property_tree(const Link& rLink) = 0; // render the widget to an output device -virtual void draw(VirtualDevice& rOutput) = 0; +virtual void draw(OutputDevice& rOutput, const tools::Rectangle& rRect) = 0; virtual ~Widget() {} }; @@ -468,6 +468,9 @@ public: // collect positions of widgets and their help ids for screenshot purposes virtual ScreenShotCollection collect_screenshot_data() = 0; + +// render the widget to an output device +virtual VclPtr screenshot() = 0; }; class VCL_DLLPUBLIC WaitObject diff --git a/sc/source/ui/attrdlg/scdlgfact.cxx b/sc/source/ui/attrdlg/scdlgfact.cxx index e947993cacd2..55340b185d8b 100644 --- a/sc/source/ui/attrdlg/scdlgfact.cxx +++ b/sc/source/ui/attrdlg/scdlgfact.cxx @@ -128,8 +128,7 @@ short AbstractScDataFormDlg_Impl::Execute() BitmapEx AbstractScDataFormDlg_Impl::createScreenshot() const { -VclPtr xDialogSurface(VclPtr::Create(DeviceFormat::DEFAULT)); -m_xDlg->getDialog()->draw(*xDialogSurface); +VclPtr xDialogSurface(m_xDlg->getDialog()->screenshot()); return xDialogSurface->GetBitmapEx(Point(), xDialogSurface->GetOutputSizePixel()); } @@ -185,8 +184,7 @@ short AbstractScMoveTableDlg_Impl::Execute() BitmapEx AbstractScMoveTableDlg_Impl::createScreenshot() const { -VclPtr xDialogSurface(VclPtr::Create(DeviceFormat::DEFAULT)); -m_xDlg->getDialog()->draw(*xDialogSurface); +VclPtr xDialogSurface(m_xDlg->getDialog()->screenshot()); return xDialogSurface->GetBitmapEx(Point(), xDialogSurface->GetOutputSizePixel()); } @@ -291,8 +289,7 @@ void AbstractScImportAsciiDlg_Impl::SaveParameters() BitmapEx AbstractScImportAsciiDlg_Impl::createScreenshot() const { -VclPtr xDialogSurface(VclPtr::Create(DeviceFormat::DEFAULT)); -m_xDlg->getDialog()->draw(*xDialogSurface); +VclPtr xDialogSurface(m_xDlg->getDialog()->screenshot()); return xDialogSurface->GetBitmapEx(Point(), xDialogSurface->GetOutputSizePixel()); } @@ -323,8 +320,7 @@ bool AbstractScColRowLabelDlg_Impl::IsRow() BitmapEx AbstractScColRowLabelDlg_Impl::createScreenshot() const { -VclPtr xDialogSurface(VclPtr::Create(DeviceFormat::DEFAULT)); -m_xDlg->getDialog()->draw(*xDialogSurface); +VclPtr xDialogSurface(m_xDlg->getDialog()->screenshot()); return xDialogSurfac
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - vcl/unx
vcl/unx/gtk3/gtk3gtkframe.cxx | 33 ++--- 1 file changed, 26 insertions(+), 7 deletions(-) New commits: commit 2b17f09920e41c96bf8b5d4b1f5bc429b238f70e Author: Caolán McNamara AuthorDate: Wed Jul 8 10:13:26 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 13:39:34 2020 +0200 use gdk_wayland_window_set_application_id when it becomes available Change-Id: I60775dcbfbc396f195a71f219668944d0bfecf31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98333 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index 09c99caf81fd..b4757b39023c 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -1244,6 +1244,20 @@ void GtkSalFrame::SetIcon( sal_uInt16 nIcon ) appicon = g_strdup ("libreoffice-startcenter"); gtk_window_set_icon_name (GTK_WINDOW (m_pWindow), appicon); + +#if defined(GDK_WINDOWING_WAYLAND) +if (DLSYM_GDK_IS_WAYLAND_DISPLAY(getGdkDisplay())) +{ +static auto set_application_id = reinterpret_cast( + dlsym(nullptr, "gdk_wayland_window_set_application_id")); +if (set_application_id) +{ +GdkWindow* gdkWindow = gtk_widget_get_window(m_pWindow); +set_application_id(gdkWindow, appicon); +} +} +#endif + g_free (appicon); } @@ -1312,13 +1326,18 @@ void GtkSalFrame::Show( bool bVisible, bool /*bNoActivate*/ ) } #if defined(GDK_WINDOWING_WAYLAND) -//rhbz#1334915, gnome#779143, tdf#100158 -//gtk under wayland lacks a way to change the app_id -//of a window, so brute force everything as a -//startcenter when initially shown to at least get -//the default LibreOffice icon and not the broken -//app icon -if (DLSYM_GDK_IS_WAYLAND_DISPLAY(getGdkDisplay())) +/* + rhbz#1334915, gnome#779143, tdf#100158 + https://gitlab.gnome.org/GNOME/gtk/-/issues/767 + + before gdk_wayland_window_set_application_id was available gtk + under wayland lacked a way to change the app_id of a window, so + brute force everything as a startcenter when initially shown to at + least get the default LibreOffice icon and not the broken app icon +*/ +static bool bAppIdImmutable = DLSYM_GDK_IS_WAYLAND_DISPLAY(getGdkDisplay()) && + !dlsym(nullptr, "gdk_wayland_window_set_application_id"); +if (bAppIdImmutable) { OString sOrigName(g_get_prgname()); g_set_prgname("libreoffice-startcenter"); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: svtools/uiconfig
svtools/uiconfig/ui/thineditcontrol.ui |4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) New commits: commit c6f7a322b8a0c7b09c78afeb78128f51927fcb69 Author: Caolán McNamara AuthorDate: Mon Jul 6 20:25:34 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 13:38:29 2020 +0200 let spinbutton stretch to fill area Change-Id: I5411fe7cf49a1c9fdc1d9090347ca82736ba4e7a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98324 Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/svtools/uiconfig/ui/thineditcontrol.ui b/svtools/uiconfig/ui/thineditcontrol.ui index 6e9911425b09..8fd8f891d778 100644 --- a/svtools/uiconfig/ui/thineditcontrol.ui +++ b/svtools/uiconfig/ui/thineditcontrol.ui @@ -29,10 +29,12 @@ True True +True +True False -False +True True 1 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/unx
vcl/unx/gtk3/gtk3gtkframe.cxx | 33 ++--- 1 file changed, 26 insertions(+), 7 deletions(-) New commits: commit 2d8e2813ddc87f7ce03b97e4d603df11613461f0 Author: Caolán McNamara AuthorDate: Wed Jul 8 10:13:26 2020 +0100 Commit: Caolán McNamara CommitDate: Wed Jul 8 13:38:50 2020 +0200 use gdk_wayland_window_set_application_id when it becomes available Change-Id: I60775dcbfbc396f195a71f219668944d0bfecf31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98325 Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index 2ddcb832569b..7f2ce207ea7a 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -1244,6 +1244,20 @@ void GtkSalFrame::SetIcon( sal_uInt16 nIcon ) appicon = g_strdup ("libreoffice-startcenter"); gtk_window_set_icon_name (GTK_WINDOW (m_pWindow), appicon); + +#if defined(GDK_WINDOWING_WAYLAND) +if (DLSYM_GDK_IS_WAYLAND_DISPLAY(getGdkDisplay())) +{ +static auto set_application_id = reinterpret_cast( + dlsym(nullptr, "gdk_wayland_window_set_application_id")); +if (set_application_id) +{ +GdkWindow* gdkWindow = gtk_widget_get_window(m_pWindow); +set_application_id(gdkWindow, appicon); +} +} +#endif + g_free (appicon); } @@ -1312,13 +1326,18 @@ void GtkSalFrame::Show( bool bVisible, bool /*bNoActivate*/ ) } #if defined(GDK_WINDOWING_WAYLAND) -//rhbz#1334915, gnome#779143, tdf#100158 -//gtk under wayland lacks a way to change the app_id -//of a window, so brute force everything as a -//startcenter when initially shown to at least get -//the default LibreOffice icon and not the broken -//app icon -if (DLSYM_GDK_IS_WAYLAND_DISPLAY(getGdkDisplay())) +/* + rhbz#1334915, gnome#779143, tdf#100158 + https://gitlab.gnome.org/GNOME/gtk/-/issues/767 + + before gdk_wayland_window_set_application_id was available gtk + under wayland lacked a way to change the app_id of a window, so + brute force everything as a startcenter when initially shown to at + least get the default LibreOffice icon and not the broken app icon +*/ +static bool bAppIdImmutable = DLSYM_GDK_IS_WAYLAND_DISPLAY(getGdkDisplay()) && + !dlsym(nullptr, "gdk_wayland_window_set_application_id"); +if (bAppIdImmutable) { OString sOrigName(g_get_prgname()); g_set_prgname("libreoffice-startcenter"); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: source/text
source/text/sbasic/shared/Resume.xhp |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit de1a815d21e38d3942ce3647ffdabb5544b3636d Author: Stanislav Horacek AuthorDate: Tue Jul 7 18:57:06 2020 +0200 Commit: Olivier Hallot CommitDate: Wed Jul 8 12:57:26 2020 +0200 fix doubled colon Change-Id: I9bad622b777f2e403e24386f7efb985de72aceb6 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/98292 Tested-by: Jenkins Reviewed-by: Olivier Hallot diff --git a/source/text/sbasic/shared/Resume.xhp b/source/text/sbasic/shared/Resume.xhp index f2f6b0d56..0aa2ff88e 100644 --- a/source/text/sbasic/shared/Resume.xhp +++ b/source/text/sbasic/shared/Resume.xhp @@ -29,7 +29,7 @@ 0: Resets error information and re-executes the instruction that caused the error. 0 is optional. -label: : Resets error information and resumes execution at the specified label of the current subroutine. +label: Resets error information and resumes execution at the specified label of the current subroutine. Next: Resets error information and executes the instruction following the one that caused the error. Error information is built with Erl, Err and Error$ functions. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit bee8442c33e56567bf81a1d2a7bc9e656391f9d3 Author: Stanislav Horacek AuthorDate: Wed Jul 8 12:57:26 2020 +0200 Commit: Gerrit Code Review CommitDate: Wed Jul 8 12:57:26 2020 +0200 Update git submodules * Update helpcontent2 from branch 'master' to de1a815d21e38d3942ce3647ffdabb5544b3636d - fix doubled colon Change-Id: I9bad622b777f2e403e24386f7efb985de72aceb6 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/98292 Tested-by: Jenkins Reviewed-by: Olivier Hallot diff --git a/helpcontent2 b/helpcontent2 index 5e30d8fa70fb..de1a815d21e3 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit 5e30d8fa70fb0f84dc42f6e716a55630ca4310fb +Subproject commit de1a815d21e38d3942ce3647ffdabb5544b3636d ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: solenv/sanitizers svx/source svx/uiconfig svx/UIConfig_svx.mk vcl/source
solenv/sanitizers/ui/svx.suppr |9 svx/UIConfig_svx.mk |1 svx/source/dialog/srchdlg.cxx |8 svx/uiconfig/ui/findreplacedialog-mobile.ui | 1148 vcl/source/window/builder.cxx |3 5 files changed, 1167 insertions(+), 2 deletions(-) New commits: commit 7888e4c8b981d2bc4e035be73ed9ad46f31100a9 Author: Szymon Kłos AuthorDate: Mon Mar 2 09:32:27 2020 +0100 Commit: Szymon Kłos CommitDate: Wed Jul 8 12:54:16 2020 +0200 Add mobile version of find replace dialog Change-Id: If651f84b97a1ed6b08b9f4eb56ce95fe659cddf7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97606 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98229 Tested-by: Jenkins diff --git a/solenv/sanitizers/ui/svx.suppr b/solenv/sanitizers/ui/svx.suppr index 8adf225a594e..d33877fd457f 100644 --- a/solenv/sanitizers/ui/svx.suppr +++ b/solenv/sanitizers/ui/svx.suppr @@ -41,6 +41,15 @@ svx/uiconfig/ui/findreplacedialog.ui://GtkComboBoxText[@id='calcsearchin'] no-la svx/uiconfig/ui/findreplacedialog.ui://GtkLabel[@id='searchdir'] orphan-label svx/uiconfig/ui/floatingcontour.ui://GtkLabel[@id='statuspos'] orphan-label svx/uiconfig/ui/floatingcontour.ui://GtkLabel[@id='statussize'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='label4'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='searchdesc'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='entirecells'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='label5'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='replacedesc'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='label7'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='searchinlabel'] orphan-label +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkComboBoxText[@id='calcsearchin'] no-labelled-by +svx/uiconfig/ui/findreplacedialog-mobile.ui://GtkLabel[@id='searchdir'] orphan-label svx/uiconfig/ui/fontworkgallerydialog.ui://GtkLabel[@id='label1'] orphan-label svx/uiconfig/ui/grafctrlbox.ui://GtkSpinButton[@id='spinfield'] no-labelled-by svx/uiconfig/ui/headfootformatpage.ui://GtkLabel[@id='labelHeaderFormat'] orphan-label diff --git a/svx/UIConfig_svx.mk b/svx/UIConfig_svx.mk index 0658ede63727..4180c18ff114 100644 --- a/svx/UIConfig_svx.mk +++ b/svx/UIConfig_svx.mk @@ -54,6 +54,7 @@ $(eval $(call gb_UIConfig_add_uifiles,svx,\ svx/uiconfig/ui/filtermenu \ svx/uiconfig/ui/findbox \ svx/uiconfig/ui/findreplacedialog \ + svx/uiconfig/ui/findreplacedialog-mobile \ svx/uiconfig/ui/floatingareastyle \ svx/uiconfig/ui/floatingcontour \ svx/uiconfig/ui/floatingframeborder \ diff --git a/svx/source/dialog/srchdlg.cxx b/svx/source/dialog/srchdlg.cxx index a4a16795d4d8..50615a73ff54 100644 --- a/svx/source/dialog/srchdlg.cxx +++ b/svx/source/dialog/srchdlg.cxx @@ -65,6 +65,8 @@ #include #include #include +#include +#include #include #include @@ -81,6 +83,9 @@ using namespace com::sun::star::accessibility; using namespace com::sun::star; using namespace comphelper; + +#define IS_MOBILE (comphelper::LibreOfficeKit::isActive() && SfxViewShell::Current() && SfxViewShell::Current()->isLOKMobilePhone()) + enum class ModifyFlags { NONE = 0x00, Search = 0x01, @@ -253,7 +258,8 @@ void SearchAttrItemList::Remove(size_t nPos) SvxSearchDialog::SvxSearchDialog(weld::Window* pParent, SfxChildWindow* pChildWin, SfxBindings& rBind) : SfxModelessDialogController(&rBind, pChildWin, pParent, - "svx/ui/findreplacedialog.ui", "FindReplaceDialog") + IS_MOBILE ? OUString("svx/ui/findreplacedialog-mobile.ui") : OUString("svx/ui/findreplacedialog.ui"), + "FindReplaceDialog") , rBindings(rBind) , m_aPresentIdle("Bring SvxSearchDialog to Foreground") , bWriter(false) diff --git a/svx/uiconfig/ui/findreplacedialog-mobile.ui b/svx/uiconfig/ui/findreplacedialog-mobile.ui new file mode 100644 index ..121ffb94377d --- /dev/null +++ b/svx/uiconfig/ui/findreplacedialog-mobile.ui @@ -0,0 +1,1148 @@ + + + + + +False +6 +Find & Replace +False +0 +0 +dialog + + + + + +False +vertical +6 + + +False +end + + +gtk-help +False +True +True +True + + +False +True +1 +True + + + +
[Libreoffice-commits] core.git: bin/gbuild-to-ide
bin/gbuild-to-ide |5 - 1 file changed, 4 insertions(+), 1 deletion(-) New commits: commit 328b1d6774c3d116b62ab7149159389c5e2ca12f Author: Mike Kaganski AuthorDate: Wed Jul 8 11:03:05 2020 +0300 Commit: Mike Kaganski CommitDate: Wed Jul 8 12:47:53 2020 +0200 vs-ide-integration: unescape values coming from DEFS ... so `TK_DLL_NAME=\"tklo.dll\"` becomes `TK_DLL_NAME="tklo.dll"` Change-Id: I0e14ded85be387a342e1979aa3f120727178351d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98319 Tested-by: Jenkins Reviewed-by: Mike Kaganski diff --git a/bin/gbuild-to-ide b/bin/gbuild-to-ide index f74712cafeb9..f23592469fd9 100755 --- a/bin/gbuild-to-ide +++ b/bin/gbuild-to-ide @@ -1028,6 +1028,9 @@ class VisualStudioIntegrationGenerator(IdeIntegrationGenerator): else: return shortnames +# Unescape the values: \"tklo.dll\" => "tklo.dll" +escapepattern = re.compile(r'\\(.)') + @staticmethod def defs_list(defs): defines_list = [] @@ -1035,7 +1038,7 @@ class VisualStudioIntegrationGenerator(IdeIntegrationGenerator): for key, value in defs.items(): define = key if value is not None: -define += '=' + value +define += '=' + VisualStudioIntegrationGenerator.escapepattern.sub(r'\1', value) defines_list.append(define) return defines_list ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - sc/source
sc/source/ui/view/gridwin.cxx |9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) New commits: commit 5fc0cea87be4b439bb3d3a5281984fd16b05dc28 Author: Szymon Kłos AuthorDate: Wed Jul 8 11:45:33 2020 +0200 Commit: Szymon Kłos CommitDate: Wed Jul 8 12:07:07 2020 +0200 Don't reset reference marks when editing the formula This prevents us from hiding reference marks on switching sheets when formula is under edit. Change-Id: I4bf1e36967420c12bfa974b0aeefda537a26eed3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98364 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index 6d354e93ae4b..ec67eab92d28 100644 --- a/sc/source/ui/view/gridwin.cxx +++ b/sc/source/ui/view/gridwin.cxx @@ -6393,8 +6393,13 @@ void ScGridWindow::UpdateSelectionOverlay() pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_TEXT_SELECTION, "EMPTY"); pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_SELECTION_AREA, "EMPTY"); SfxLokHelper::notifyOtherViews(pViewShell, LOK_CALLBACK_TEXT_VIEW_SELECTION, "selection", "EMPTY"); -std::vector aReferenceMarks; -ScInputHandler::SendReferenceMarks(pViewShell, aReferenceMarks); + +ScInputHandler* pViewHdl = SC_MOD()->GetInputHdl(pViewShell); +if (!pViewHdl || !pViewHdl->IsEditMode()) +{ +std::vector aReferenceMarks; +ScInputHandler::SendReferenceMarks(pViewShell, aReferenceMarks); +} } if ( aOldMode != aDrawMode ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/ui/view/viewdata.cxx | 12 +++- 1 file changed, 7 insertions(+), 5 deletions(-) New commits: commit ecbad850058c567f4739ec51926e1953c49e187f Author: Dennis Francis AuthorDate: Wed Jun 3 15:18:31 2020 +0530 Commit: Dennis Francis CommitDate: Wed Jul 8 11:44:00 2020 +0200 SetLOKSpecialOutputArea() call must precede SetOutputArea() The ordering matters at the moment (unfortunately), since EditView::SetOutputArea(), after updating the output-area it also sends the LOK messages(cursor/selection) immediately. So we need to update the print-twips version in EditView by calling SetLOKSpecialOutputArea() beforehand to avoid wrong messages. Change-Id: Ibff64ad1a92f332ad726452369ecb2c5b2aaae53 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98128 Tested-by: Jenkins Reviewed-by: Dennis Francis diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx index 7a4d8224a06f..3469399f40b4 100644 --- a/sc/source/ui/view/viewdata.cxx +++ b/sc/source/ui/view/viewdata.cxx @@ -1530,9 +1530,6 @@ void ScViewData::SetEditEngine( ScSplitPos eWhich, aPTwipsRect.AdjustRight(TWIPS_PER_PIXEL); } -tools::Rectangle aOutputArea = pWin->PixelToLogic( aPixRect, GetLogicMode() ); -pEditView[eWhich]->SetOutputArea( aOutputArea ); - if (bLOKPrintTwips) { if (!pEditView[eWhich]->HasLOKSpecialPositioning()) @@ -1541,6 +1538,9 @@ void ScViewData::SetEditEngine( ScSplitPos eWhich, pEditView[eWhich]->SetLOKSpecialOutputArea(aPTwipsRect); } +tools::Rectangle aOutputArea = pWin->PixelToLogic( aPixRect, GetLogicMode() ); +pEditView[eWhich]->SetOutputArea( aOutputArea ); + if ( bActive && eWhich == GetActivePart() ) { // keep the part that has the active edit view available after @@ -2021,10 +2021,11 @@ void ScViewData::EditGrowX() bMoveArea = false; } -pCurView->SetOutputArea(aArea); if (bLOKPrintTwips) pCurView->SetLOKSpecialOutputArea(aAreaPTwips); +pCurView->SetOutputArea(aArea); + // In vertical mode, the whole text is moved to the next cell (right-aligned), // so everything must be repainted. Otherwise, paint only the new area. // If growing in centered alignment, if the cells left and right have different sizes, @@ -2134,10 +2135,11 @@ void ScViewData::EditGrowY( bool bInitial ) if (bChanged) { -pCurView->SetOutputArea(aArea); if (bLOKPrintTwips) pCurView->SetLOKSpecialOutputArea(aAreaPTwips); +pCurView->SetOutputArea(aArea); + if (nEditEndRow >= nBottom || bMaxReached) { if (!(nControl & EVControlBits::AUTOSCROLL)) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - 2 commits - sc/source
sc/source/ui/app/inputhdl.cxx |2 +- sc/source/ui/view/gridwin.cxx |2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) New commits: commit 88417fb01bf03969970b574421a7688768dff6ef Author: Szymon Kłos AuthorDate: Tue Jul 7 15:56:19 2020 +0200 Commit: Szymon Kłos CommitDate: Wed Jul 8 11:34:12 2020 +0200 Get correct tab for current selection Change-Id: Ie3146675a5b6cca5357fccc668ce17b859836147 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98315 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx index 8fb3ae746c18..e240f3e57cc0 100644 --- a/sc/source/ui/app/inputhdl.cxx +++ b/sc/source/ui/app/inputhdl.cxx @@ -508,7 +508,7 @@ void ScInputHandler::UpdateLokReferenceMarks() long nX2 = rViewData.GetRefEndX(); long nY1 = rViewData.GetRefStartY(); long nY2 = rViewData.GetRefEndY(); -long nTab = rViewData.GetRefTabNo(); +long nTab = rViewData.GetTabNo(); PutInOrder(nX1, nX2); PutInOrder(nY1, nY2); commit 7e8bcf38f00b3c45a78ba7a60aeb9e6dee11a23e Author: Szymon Kłos AuthorDate: Wed Jul 8 10:08:05 2020 +0200 Commit: Szymon Kłos CommitDate: Wed Jul 8 11:33:57 2020 +0200 Empty reference marks on selection reset Change-Id: Id085b6b608335e1bcc085d7a8c972622a918f1ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98316 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index 2ffc54a129b8..6d354e93ae4b 100644 --- a/sc/source/ui/view/gridwin.cxx +++ b/sc/source/ui/view/gridwin.cxx @@ -6393,6 +6393,8 @@ void ScGridWindow::UpdateSelectionOverlay() pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_TEXT_SELECTION, "EMPTY"); pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_SELECTION_AREA, "EMPTY"); SfxLokHelper::notifyOtherViews(pViewShell, LOK_CALLBACK_TEXT_VIEW_SELECTION, "selection", "EMPTY"); +std::vector aReferenceMarks; +ScInputHandler::SendReferenceMarks(pViewShell, aReferenceMarks); } if ( aOldMode != aDrawMode ) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/vcl vcl/source
include/vcl/ivctrl.hxx |2 + include/vcl/uitest/uiobject.hxx | 23 + vcl/source/control/ivctrl.cxx |6 vcl/source/uitest/uiobject.cxx | 52 4 files changed, 83 insertions(+) New commits: commit 644a775833857955576b5284bf2f1b992d8f5b21 Author: Ahmed ElShreif AuthorDate: Tue Jun 2 05:30:40 2020 +0200 Commit: Ahmed ElShreif CommitDate: Wed Jul 8 11:12:08 2020 +0200 uitest: Add support for vertical TabControl Object We need support for this Object as some dialogs use it like Hyperlink Dialog . So now we can navigate in the dialog in the same way we navigate with the normal TabControl Objects . You can use this lines in your test case that test a dialog that has vertical TabControl Object: >> xtab=HyperlinkDialog.getChild("tabcontrol") >> xtab.executeAction("SELECT", mkPropertyValues({"POS": "0"})) Change-Id: Id1792f5cceb8b08e13cb8c0c5fbaf1ff29f996d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98135 Tested-by: Jenkins Reviewed-by: Markus Mohrhard diff --git a/include/vcl/ivctrl.hxx b/include/vcl/ivctrl.hxx index adadcc9fefc4..399079c69f9d 100644 --- a/include/vcl/ivctrl.hxx +++ b/include/vcl/ivctrl.hxx @@ -323,6 +323,8 @@ public: void SetPageText(const OString& rPageId, const OUString& rText); vcl::Window* GetPageParent() { return m_xBox.get(); } + +virtual FactoryFunction GetUITestFactory() const override; }; #endif // INCLUDED_VCL_IVCTRL_HXX diff --git a/include/vcl/uitest/uiobject.hxx b/include/vcl/uitest/uiobject.hxx index 2c9a3e36cc60..15686e406904 100644 --- a/include/vcl/uitest/uiobject.hxx +++ b/include/vcl/uitest/uiobject.hxx @@ -32,6 +32,7 @@ class SvTreeListBox; class SvTreeListEntry; class SpinButton; class SpinField; +class VerticalTabControl; class VclMultiLineEdit; typedef std::map StringMap; @@ -410,6 +411,28 @@ private: virtual OUString get_name() const override; }; +class VerticalTabControlUIObject final : public WindowUIObject +{ +private: +VclPtr mxTabControl; + +public: + +VerticalTabControlUIObject(const VclPtr& mxTabControl); +virtual ~VerticalTabControlUIObject() override; + +virtual void execute(const OUString& rAction, +const StringMap& rParameters) override; + +virtual StringMap get_state() override; + +static std::unique_ptr create(vcl::Window* pWindow); + +private: + +virtual OUString get_name() const override; +}; + class TreeListUIObject final : public WindowUIObject { public: diff --git a/vcl/source/control/ivctrl.cxx b/vcl/source/control/ivctrl.cxx index 82e2bbc0c08b..c0c78a986b0d 100644 --- a/vcl/source/control/ivctrl.cxx +++ b/vcl/source/control/ivctrl.cxx @@ -27,6 +27,7 @@ #include #include #include +#include using namespace ::com::sun::star::accessibility; @@ -628,4 +629,9 @@ void VerticalTabControl::SetPageText(const OString& rPageId, const OUString& rTe pData->pEntry->SetText(rText); } +FactoryFunction VerticalTabControl::GetUITestFactory() const +{ +return VerticalTabControlUIObject::create; +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/source/uitest/uiobject.cxx b/vcl/source/uitest/uiobject.cxx index 29b3c296b8d2..fc32de562701 100644 --- a/vcl/source/uitest/uiobject.cxx +++ b/vcl/source/uitest/uiobject.cxx @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -1508,4 +1509,55 @@ std::unique_ptr RoadmapWizardUIObject::create(vcl::Window* pWindow) return std::unique_ptr(new RoadmapWizardUIObject(pRoadmapWizard)); } +VerticalTabControlUIObject::VerticalTabControlUIObject(const VclPtr& xTabControl): +WindowUIObject(xTabControl), +mxTabControl(xTabControl) +{ +} + +VerticalTabControlUIObject::~VerticalTabControlUIObject() +{ +} + +void VerticalTabControlUIObject::execute(const OUString& rAction, +const StringMap& rParameters) +{ +if (rAction == "SELECT") +{ +if (rParameters.find("POS") != rParameters.end()) +{ +auto itr = rParameters.find("POS"); +sal_uInt32 nPos = itr->second.toUInt32(); +OString xid = mxTabControl->GetPageId(nPos); +mxTabControl->SetCurPageId(xid); +} +} +else +WindowUIObject::execute(rAction, rParameters); +} + +StringMap VerticalTabControlUIObject::get_state() +{ +StringMap aMap = WindowUIObject::get_state(); +aMap["PageCount"] = OUString::number(mxTabControl->GetPageCount()); + +OString nPageId = mxTabControl->GetCurPageId(); +aMap["CurrPageTitel"] = mxTabControl->GetPageText(nPageId); +aMap["CurrPagePos"] = OUString::number(mxTabControl->GetPagePos(nPageId)); + +return aMap; +} + +OUString VerticalTabControlUIObject::get_name() const +{ +return "VerticalTabControlUIObject"; +} + +std::unique_ptr VerticalTabControlUIObject::create(vcl::Window* pWi
[Libreoffice-commits] core.git: sw/qa
sw/qa/uitest/writer_tests3/hyperlinkdialog.py | 83 ++ 1 file changed, 83 insertions(+) New commits: commit 5701b35279444a635e6ef33ba2ffd35965e1c25d Author: Ahmed ElShreif AuthorDate: Sun Jul 5 15:18:51 2020 +0200 Commit: Ahmed ElShreif CommitDate: Wed Jul 8 11:12:43 2020 +0200 uitest : sw: Add UItest for Hyperlink Dialog This test case tests the Hyperlink Dialog in inserting a Hyperlink . Also it tests the Vertical TabControl Support that added here: https://gerrit.libreoffice.org/c/core/+/98135 Change-Id: Ic7975cc12425dbcba24b0261404585ded006e5e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98160 Tested-by: Jenkins Reviewed-by: Markus Mohrhard diff --git a/sw/qa/uitest/writer_tests3/hyperlinkdialog.py b/sw/qa/uitest/writer_tests3/hyperlinkdialog.py new file mode 100644 index ..5b414242babc --- /dev/null +++ b/sw/qa/uitest/writer_tests3/hyperlinkdialog.py @@ -0,0 +1,83 @@ +# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +from uitest.framework import UITestCase +import time +from uitest.uihelper.common import get_state_as_dict, type_text +from libreoffice.uno.propertyvalue import mkPropertyValues +from uitest.debug import sleep + +#test Hyperlink dialog +class HyperlinkDialog(UITestCase): + +def test_hyperlink_dialog_vertical_tab(self): + +self.ui_test.create_doc_in_start_center("writer") +MainWindow = self.xUITest.getTopFocusWindow() + +self.ui_test.execute_dialog_through_command(".uno:HyperlinkDialog") +xDialog = self.xUITest.getTopFocusWindow() + +# Test the vertical tab +xtab=xDialog.getChild("tabcontrol") +self.assertEqual(get_state_as_dict(xtab)["PageCount"], "4") + +xtab.executeAction("SELECT", mkPropertyValues({"POS": "0"})) +self.assertEqual(get_state_as_dict(xtab)["CurrPageTitel"], "Internet") +self.assertEqual(get_state_as_dict(xtab)["CurrPagePos"], "0") + +xtab.executeAction("SELECT", mkPropertyValues({"POS": "1"})) +self.assertEqual(get_state_as_dict(xtab)["CurrPageTitel"], "Mail") +self.assertEqual(get_state_as_dict(xtab)["CurrPagePos"], "1") + +xtab.executeAction("SELECT", mkPropertyValues({"POS": "2"})) +self.assertEqual(get_state_as_dict(xtab)["CurrPageTitel"], "Document") +self.assertEqual(get_state_as_dict(xtab)["CurrPagePos"], "2") + +xtab.executeAction("SELECT", mkPropertyValues({"POS": "3"})) +self.assertEqual(get_state_as_dict(xtab)["CurrPageTitel"], "New Document") +self.assertEqual(get_state_as_dict(xtab)["CurrPagePos"], "3") + +xcancel = xDialog.getChild("cancel") +self.ui_test.close_dialog_through_button(xcancel) + +self.ui_test.close_doc() + +def test_insert_hyperlink(self): + +self.ui_test.create_doc_in_start_center("writer") +xMainWindow = self.xUITest.getTopFocusWindow() + +self.ui_test.execute_dialog_through_command(".uno:HyperlinkDialog") +xDialog = self.xUITest.getTopFocusWindow() + +# insert link +xtab=xDialog.getChild("tabcontrol") +xtab.executeAction("SELECT", mkPropertyValues({"POS": "0"})) + +xtarget = xDialog.getChild("target") +xtarget.executeAction("TYPE", mkPropertyValues({"TEXT": "http://www.libreoffice.org/"})) +self.assertEqual(get_state_as_dict(xtarget)["Text"], "http://www.libreoffice.org/";) + +xindication = xDialog.getChild("indication") +xindication.executeAction("TYPE", mkPropertyValues({"TEXT": "link"})) +self.assertEqual(get_state_as_dict(xindication)["Text"], "link") + +xok = xDialog.getChild("ok") +self.ui_test.close_dialog_through_button(xok) + +# Check that the link is added +xMainWindow = self.xUITest.getTopFocusWindow() +xedit = xMainWindow.getChild("writer_edit") +xedit.executeAction("SELECT", mkPropertyValues({"END_POS": "0", "START_POS": "4"})) +self.assertEqual(get_state_as_dict(xedit)["SelectedText"], "link") + +self.ui_test.close_doc() + +# vim: set shiftwidth=4 softtabstop=4 expandtab: ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/svx svx/source
include/svx/verttexttbxctrl.hxx |1 + svx/source/tbxctrls/verttexttbxctrl.cxx | 16 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) New commits: commit d3a98b87824f2e2248a45b97d7eef5e8ad596dd3 Author: Maxim Monastirsky AuthorDate: Wed Jul 8 00:46:29 2020 +0300 Commit: Maxim Monastirsky CommitDate: Wed Jul 8 11:04:04 2020 +0200 tdf#134188 tdf#114223 Don't override vertical text button visibility i.e. restore the fix for tdf#33356, which was removed in commit eeb2d19e77d6dc47c68e8ba0920a02cf64a1247b ("Resolves: tdf#130159 hide writedirection unless CTL is enabled"). But do it in a way that doesn't introduce tdf#114223 (a regression of tdf#33356). We can assume that the visibility state of the button at the point of control initialization is the one set with toolbar customization, as any customization triggers clearing of the whole toolbar, and reconstructing from scratch. Change-Id: I2cdf18e144dd6eb99b8c1e1da968beacddbb3728 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98317 Tested-by: Jenkins Reviewed-by: Maxim Monastirsky diff --git a/include/svx/verttexttbxctrl.hxx b/include/svx/verttexttbxctrl.hxx index d283919f6bf8..6dc437ec383a 100644 --- a/include/svx/verttexttbxctrl.hxx +++ b/include/svx/verttexttbxctrl.hxx @@ -38,6 +38,7 @@ class SAL_DLLPUBLIC_TEMPLATE SvxVertCTLTextTbxCtrl_Base: */ class SvxVertCTLTextTbxCtrl : public SvxVertCTLTextTbxCtrl_Base { +bool m_bVisible; public: explicit SvxVertCTLTextTbxCtrl(const css::uno::Reference& rContext); diff --git a/svx/source/tbxctrls/verttexttbxctrl.cxx b/svx/source/tbxctrls/verttexttbxctrl.cxx index 02e245d3fa85..18d6b2b8b4e6 100644 --- a/svx/source/tbxctrls/verttexttbxctrl.cxx +++ b/svx/source/tbxctrls/verttexttbxctrl.cxx @@ -64,6 +64,7 @@ com_sun_star_comp_svx_VertTextToolBoxControl_get_implementation( SvxVertCTLTextTbxCtrl::SvxVertCTLTextTbxCtrl(const css::uno::Reference& rContext) : SvxVertCTLTextTbxCtrl_Base(rContext, nullptr, OUString()) +, m_bVisible(false) { } @@ -76,6 +77,17 @@ void SAL_CALL SvxVertCTLTextTbxCtrl::initialize(const css::uno::Sequenceget_item_visible(m_aCommandURL.toUtf8()); +return; +} + +ToolBox* pToolBox = nullptr; +sal_uInt16 nItemId = 0; +getToolboxId(nItemId, &pToolBox); +m_bVisible = pToolBox && pToolBox->IsItemVisible(nItemId); } void SAL_CALL SvxVertCTLTextTbxCtrl::statusChanged(const css::frame::FeatureStateEvent& rEvent) @@ -88,12 +100,12 @@ void SAL_CALL SvxVertCTLTextTbxCtrl::statusChanged(const css::frame::FeatureStat if (rEvent.FeatureURL.Complete == ".uno:VerticalTextState") { SvtLanguageOptions aLangOptions; -bEnabled = aLangOptions.IsVerticalTextEnabled(); +bEnabled = m_bVisible && aLangOptions.IsVerticalTextEnabled(); } else if (rEvent.FeatureURL.Complete == ".uno:CTLFontState") { SvtLanguageOptions aLangOptions; -bEnabled = aLangOptions.IsCTLFontEnabled(); +bEnabled = m_bVisible && aLangOptions.IsCTLFontEnabled(); } else { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - sw/qa writerfilter/source
sw/qa/extras/ooxmlexport/data/tdf83309.docx |binary writerfilter/source/dmapper/NumberingManager.cxx |2 ++ 2 files changed, 2 insertions(+) New commits: commit 54b6a6a5c95ed51ce0cd709d9fd3e477ced5ce8f Author: Vasily Melenchuk AuthorDate: Thu Jun 25 11:42:02 2020 +0300 Commit: Xisco Fauli CommitDate: Wed Jul 8 10:39:15 2020 +0200 tdf#134260: docx import: allow default value for list tab position It looks like previously used as a testcase document is just a specific case with default values. All other readers (incl. Office 365) displaying that doc with default tab at zero position. Change-Id: I50fe00c7f87b6d790fbe6e2f32a306ac59060c72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97089 Tested-by: Jenkins Reviewed-by: Thorsten Behrens (cherry picked from commit 7221994b9b29659d3290e95eee92b1a3f80c2b7e) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98331 Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/ooxmlexport/data/tdf83309.docx b/sw/qa/extras/ooxmlexport/data/tdf83309.docx index 8dfddb6ed201..e8f59bc81969 100644 Binary files a/sw/qa/extras/ooxmlexport/data/tdf83309.docx and b/sw/qa/extras/ooxmlexport/data/tdf83309.docx differ diff --git a/writerfilter/source/dmapper/NumberingManager.cxx b/writerfilter/source/dmapper/NumberingManager.cxx index c96dbba8dcb8..11b851c7ee8c 100644 --- a/writerfilter/source/dmapper/NumberingManager.cxx +++ b/writerfilter/source/dmapper/NumberingManager.cxx @@ -231,6 +231,8 @@ uno::Sequence ListLevel::GetLevelProperties(bool bDefaults if (m_nTabstop.has_value()) aNumberingProperties.push_back(lcl_makePropVal(PROP_LISTTAB_STOP_POSITION, *m_nTabstop)); +else if (bDefaults) + aNumberingProperties.push_back(lcl_makePropVal(PROP_LISTTAB_STOP_POSITION, 0)); //TODO: handling of nFLegal? //TODO: nFNoRestart lower levels do not restart when higher levels are incremented, like: ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] online.git: Branch 'distro/cib/libreoffice-6-2' - 3 commits - configure.ac loleaflet/reference.html loleaflet/src wsd/Auth.cpp wsd/DocumentBroker.cpp wsd/LOOLWSD.cpp wsd/Storage.
configure.ac |2 +- loleaflet/reference.html | 16 loleaflet/src/core/Socket.js |7 +++ wsd/Auth.cpp |3 ++- wsd/DocumentBroker.cpp |8 wsd/LOOLWSD.cpp | 19 ++- wsd/Storage.cpp |7 +-- 7 files changed, 53 insertions(+), 9 deletions(-) New commits: commit 7a3b244b7234b468e5a83022c3792674d0b892da Author: Samuel Mehrbrodt AuthorDate: Wed Jul 8 10:33:17 2020 +0200 Commit: Samuel Mehrbrodt CommitDate: Wed Jul 8 10:33:17 2020 +0200 Release 6.2.10.0 diff --git a/configure.ac b/configure.ac index 181a707f4..4b83ca624 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ([2.63]) -AC_INIT([loolwsd], [6.2.9.0], [libreoffice@lists.freedesktop.org]) +AC_INIT([loolwsd], [6.2.10.0], [libreoffice@lists.freedesktop.org]) LT_INIT([shared, disable-static, dlopen]) AM_INIT_AUTOMAKE([1.10 subdir-objects tar-pax -Wno-portability]) commit d97784c5e4f33725394f7e27cdc10318dc5dc207 Author: Samuel Mehrbrodt AuthorDate: Thu Jul 2 08:16:00 2020 +0200 Commit: Samuel Mehrbrodt CommitDate: Wed Jul 8 10:26:10 2020 +0200 Improve reporting save results Change-Id: I3f2f96f4b8f196e6e9268bed24695f739f679124 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/97699 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice Reviewed-by: Samuel Mehrbrodt (cherry picked from commit e71e37bcec84068e92434357df6172b9cf457e7e) diff --git a/wsd/DocumentBroker.cpp b/wsd/DocumentBroker.cpp index a6e92498d..72777c6c0 100644 --- a/wsd/DocumentBroker.cpp +++ b/wsd/DocumentBroker.cpp @@ -782,8 +782,8 @@ bool DocumentBroker::saveToStorageInternal(const std::string& sessionId, { LOG_DBG("Save skipped as document [" << _docKey << "] was not modified."); _lastSaveTime = std::chrono::steady_clock::now(); -_poll->wakeup(); broadcastSaveResult(true, "unmodified"); +_poll->wakeup(); return true; } @@ -895,7 +895,7 @@ bool DocumentBroker::saveToStorageInternal(const std::string& sessionId, LOG_ERR("Cannot save docKey [" << _docKey << "] to storage URI [" << uriAnonym << "]. Invalid or expired access token. Notifying client."); it->second->sendTextFrame("error: cmd=storage kind=saveunauthorized"); -broadcastSaveResult(false, "Invalid or expired access token", storageSaveResult.getErrorMsg()); +broadcastSaveResult(false, "Invalid or expired access token"); } else if (storageSaveResult.getResult() == StorageBase::SaveResult::FAILED) { @@ -921,9 +921,9 @@ bool DocumentBroker::saveToStorageInternal(const std::string& sessionId, void DocumentBroker::broadcastSaveResult(bool success, const std::string& result, const std::string& errorMsg) { -std::string resultstr = success ? "true" : "false"; +const std::string resultstr = success ? "true" : "false"; // Some sane limit, otherwise we get problems transfering this to the client with large strings (can be a whole webpage) -std::string errorMsgFormatted = errorMsg.substr(0, 1000); +std::string errorMsgFormatted = LOOLProtocol::getAbbreviatedMessage(errorMsg); // Replace reserverd characters errorMsgFormatted = Poco::translate(errorMsgFormatted, "\"", "'"); broadcastMessage("commandresult: { \"command\": \"save\", \"success\": " + resultstr + commit 0b367e1cbcbfa9a4c89e1fa792ee4c75ce762157 Author: Samuel Mehrbrodt AuthorDate: Tue Jul 7 21:18:13 2020 +0200 Commit: Samuel Mehrbrodt CommitDate: Wed Jul 8 09:03:22 2020 +0200 Report back load result to integrator Integrator currently gets no message when loading the document from WOPI host fails. Similiar to Action_Save_Resp, introduce Action_Load_Resp with the result of the load action. diff --git a/loleaflet/reference.html b/loleaflet/reference.html index 5dd40dbb1..dfce3de95 100644 --- a/loleaflet/reference.html +++ b/loleaflet/reference.html @@ -2976,6 +2976,22 @@ Actions response Values Description + + Action_Load_Result + + success:+ result: + errorMsg: + + Acknowledgement when load finishes. + success tells if LOOL was able to load the document + successfully. + result contains the reason the document was not loaded. + errorMsg contains a detailed error message in case loading failed. + Probably it will contain the error message returned from the WOPI/Webdav host. + + + Action_Save_Resp diff --git a/loleaflet/src/core/Socket.js b/loleaflet/src/core/Socket.js index 8f68b94ad..21a2cf4a3 100644 --- a/lo
[Libreoffice-commits] core.git: Branch 'private/jmux/win-arm64' - 89 commits - android/Bootstrap avmedia/Library_avmediagst.mk avmedia/Library_avmediavlc.mk avmedia/source basctl/source bin/find-can-b
Rebased ref, commits from common ancestor: commit b17222b6206877be316c11ab9f6309ef3111487d Author: Jan-Marek Glogowski AuthorDate: Wed Jul 8 03:09:10 2020 +0200 Commit: Jan-Marek Glogowski CommitDate: Wed Jul 8 10:13:01 2020 +0200 python3: upgrade to 3.8.3 With all the prerequisites in place, LO can upgrade to the current Python release. Interestingly I found that cygwin always seems to LC_COLLATE=C, as the default collation rules are missing. Change-Id: Ib82f7b77213da9c525f8c79a13d128d9eec9ca64 diff --git a/configure.ac b/configure.ac index 66e33cc61ad7..5d2232adf9df 100644 --- a/configure.ac +++ b/configure.ac @@ -9093,8 +9093,8 @@ int main(int argc, char **argv) { internal) SYSTEM_PYTHON= PYTHON_VERSION_MAJOR=3 -PYTHON_VERSION_MINOR=7 -PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.7 +PYTHON_VERSION_MINOR=8 +PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.3 if ! grep -q -i python.*${PYTHON_VERSION} ${SRC_ROOT}/download.lst; then AC_MSG_ERROR([PYTHON_VERSION ${PYTHON_VERSION} but no matching file in download.lst]) fi diff --git a/download.lst b/download.lst index 6c684aceac6f..eca88453751c 100644 --- a/download.lst +++ b/download.lst @@ -222,8 +222,8 @@ export POPPLER_SHA256SUM := 234f8e573ea57fb6a008e7c1e56bfae1af5d1adf0e65f47555e1 export POPPLER_TARBALL := poppler-0.82.0.tar.xz export POSTGRESQL_SHA256SUM := a754c02f7051c2f21e52f8669a421b50485afcde9a581674d6106326b189d126 export POSTGRESQL_TARBALL := postgresql-9.2.24.tar.bz2 -export PYTHON_SHA256SUM := 06a0a9f1bf0d8cd1e4121194d666c4e28ddae4dd54346de6c343206599f02136 -export PYTHON_TARBALL := Python-3.7.7.tar.xz +export PYTHON_SHA256SUM := dfab5ec723c218082fe3d5d7ae17ecbdebffa9a1aea4d64aa3a2ecdd2e795864 +export PYTHON_TARBALL := Python-3.8.3.tar.xz export QRCODEGEN_SHA256SUM := fcdf9fd69fde07ae4dca2351d84271a9de8093002f733b77c70f52f1630f6e4a export QRCODEGEN_TARBALL := QR-Code-generator-1.4.0.tar.gz export QXP_SHA256SUM := e137b6b110120a52c98edd02ebdc4095ee08d0d5295a94316a981750095a945c diff --git a/external/python3/ExternalPackage_python3.mk b/external/python3/ExternalPackage_python3.mk index 4dfc3b196f82..214c0d5c0ff5 100644 --- a/external/python3/ExternalPackage_python3.mk +++ b/external/python3/ExternalPackage_python3.mk @@ -150,6 +150,10 @@ endif # idlelib, tkinter, turtledemo - need Tk to build the C module # test - probably unnecessary? was explicitly removed #i116738# # venv - why would we need virtual environments +# +# These lists are now sorted with "LC_COLLATE=C sort", by using +# find Lib/ -name "*.py" | sort | sed -e 's/^/\t/' -e 's/$/ \\/' +# $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\ LICENSE \ @@ -162,6 +166,7 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p Lib/_dummy_thread.py \ Lib/_markupbase.py \ Lib/_osx_support.py \ + Lib/_py_abc.py \ Lib/_pydecimal.py \ Lib/_pyio.py \ Lib/_sitebuiltins.py \ @@ -180,6 +185,7 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p Lib/binhex.py \ Lib/bisect.py \ Lib/bz2.py \ + Lib/cProfile.py \ Lib/calendar.py \ Lib/cgi.py \ Lib/cgitb.py \ @@ -195,7 +201,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p Lib/contextvars.py \ Lib/copy.py \ Lib/copyreg.py \ - Lib/cProfile.py \ Lib/crypt.py \ Lib/csv.py \ Lib/dataclasses.py \ @@ -232,7 +237,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p Lib/linecache.py \ Lib/locale.py \ Lib/lzma.py \ - Lib/macpath.py \ Lib/mailbox.py \ Lib/mailcap.py \ Lib/mimetypes.py \ @@ -260,21 +264,20 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p Lib/profile.py \ Lib/pstats.py \ Lib/pty.py \ - Lib/pyclbr.py \ - Lib/_py_abc.py \ Lib/py_compile.py \ + Lib/pyclbr.py \ Lib/pydoc.py \ Lib/queue.py \ Lib/quopri.py \ Lib/random.py \ - Lib/reprlib.py \ Lib/re.py \ + Lib/reprlib.py \ Lib/rlcompleter.py \ Lib/runpy.py \ Lib/sched.py \ Lib/secrets.py \ - Lib/shelve.py \ Lib/selectors.py \ + Lib/shelve.py \ Lib/shlex.py \ Lib/shutil.py \ Lib/signal.py \ @@ -288,10 +291,10 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p Lib/sre_constants.py \ Lib/sre_parse.py \ Lib/ssl.py \ - Lib/statistics.py \ Lib/stat.py \ - Lib/stringprep.py \ + Lib/statistics.py \ Lib/string.py \ + Lib/stringprep.py \ Lib/struc
Re: qtconfig.h header not found
hi Julien, On 07.07.20 21:59, Julien Nabet wrote: Hello Michael, Following d68fc8d10da9047534f0e7a2d5ebc59f13745442 (configure: try to fail early if qt5 header QtCore/qconfig-32.h missing), I get this: configure: error: qconfig.h header not found. Error running configure at ./autogen.sh line 299 apt-file search qconfig.h -> libsquirrel-dev: /usr/include/squirrel3/sqconfig.h qtbase5-dev: /usr/include/x86_64-linux-gnu/qt5/QtCore/qconfig.h qtbase5-gles-dev: /usr/include/x86_64-linux-gnu/qt5/QtCore/qconfig.h "qtbase5-dev" is installed julien@debianamd:~/lo/libreoffice$ ls -l /usr/include/x86_64-linux-gnu/qt5/QtCore/qconfig.h -rw-r--r-- 1 root root 1724 juin 26 18:47 /usr/include/x86_64-linux-gnu/qt5/QtCore/qconfig.h uname -a -> Linux debianamd 5.7.0-1-amd64 #1 SMP Debian 5.7.6-1 (2020-06-24) x86_64 GNU/Linux it's been a while since i added a header check... try if https://gerrit.libreoffice.org/c/core/+/98314 helps ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: svx/source
svx/source/tbxctrls/StylesPreviewWindow.cxx |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) New commits: commit 0695b5f5b328a1bc9cfdc8ba020dbdd674185e04 Author: Szymon Kłos AuthorDate: Tue Jul 7 14:24:57 2020 +0200 Commit: Szymon Kłos CommitDate: Wed Jul 8 09:53:39 2020 +0200 Avoid nullptr dereference Change-Id: I5f2bd8206a1339e09f277cdc7f0c6a01a6d85df7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98259 Tested-by: Jenkins CollaboraOffice Reviewed-by: Szymon Kłos (cherry picked from commit c9ceaeaee923a742d842fbc6174222eaf9667ca6) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98270 Tested-by: Jenkins diff --git a/svx/source/tbxctrls/StylesPreviewWindow.cxx b/svx/source/tbxctrls/StylesPreviewWindow.cxx index 09e8a849fb68..7861467422d1 100644 --- a/svx/source/tbxctrls/StylesPreviewWindow.cxx +++ b/svx/source/tbxctrls/StylesPreviewWindow.cxx @@ -66,7 +66,8 @@ StyleStatusListener::StyleStatusListener( void StyleStatusListener::StateChanged(SfxItemState /*eState*/, const SfxPoolItem* pState) { const SfxTemplateItem* pStateItem = dynamic_cast(pState); -m_pPreviewControl->Select(pStateItem->GetStyleName()); +if (pStateItem) +m_pPreviewControl->Select(pStateItem->GetStyleName()); } StyleItemController::StyleItemController( ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sfx2/uiconfig
sfx2/uiconfig/ui/addtargetdialog.ui |4 ++-- sfx2/uiconfig/ui/autoredactdialog.ui |4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) New commits: commit 4bc6cc1416db4eb206cfec5016513778e55b305c Author: Ayhan Yalçınsoy AuthorDate: Mon Jun 29 23:37:23 2020 +0300 Commit: Heiko Tietze CommitDate: Wed Jul 8 09:34:34 2020 +0200 tdf#131369: Use 'Match case' instead of 'Case Sensitive' Change-Id: Ibb6e99f80e8c5e76ad6f23428256145bb3f8c20c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97460 Tested-by: Jenkins Reviewed-by: Heiko Tietze diff --git a/sfx2/uiconfig/ui/addtargetdialog.ui b/sfx2/uiconfig/ui/addtargetdialog.ui index cac3b7a42f75..962117b906c8 100644 --- a/sfx2/uiconfig/ui/addtargetdialog.ui +++ b/sfx2/uiconfig/ui/addtargetdialog.ui @@ -228,7 +228,7 @@ 12 -Case Sensitive +Match case True True False @@ -243,7 +243,7 @@ -Whole Words Only +Whole words only True True False diff --git a/sfx2/uiconfig/ui/autoredactdialog.ui b/sfx2/uiconfig/ui/autoredactdialog.ui index e6602d51c40f..4aa6fc6975ec 100644 --- a/sfx2/uiconfig/ui/autoredactdialog.ui +++ b/sfx2/uiconfig/ui/autoredactdialog.ui @@ -158,7 +158,7 @@ True 6 -Case Sensitive +Match case @@ -171,7 +171,7 @@ True 6 -Whole Words +Whole words ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/skia
vcl/skia/salbmp.cxx | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) New commits: commit 3769d01791e54be0fbfc6d706596283213700ad0 Author: Luboš Luňák AuthorDate: Tue Jul 7 12:15:20 2020 + Commit: Luboš Luňák CommitDate: Wed Jul 8 09:31:12 2020 +0200 prevent SkiaSalBitmap::Scale() from breaking indexed bitmaps (tdf#134574) Since the actual scaling is done later at some unknown time, the palette mustn't change, but scaling can change colors. Change-Id: Ie254c8b31993d9d509c32a730dd8c8b5d3cb2256 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98258 Tested-by: Jenkins Reviewed-by: Luboš Luňák diff --git a/vcl/skia/salbmp.cxx b/vcl/skia/salbmp.cxx index 8cd1a158dc2f..6373eeea405a 100644 --- a/vcl/skia/salbmp.cxx +++ b/vcl/skia/salbmp.cxx @@ -296,8 +296,8 @@ bool SkiaSalBitmap::Scale(const double& rScaleX, const double& rScaleY, BmpScale if (mSize == newSize) return true; -SAL_INFO("vcl.skia.trace", "scale(" << this << "): " << mSize << "->" << newSize << ":" -<< static_cast(nScaleFlag)); +SAL_INFO("vcl.skia.trace", "scale(" << this << "): " << mSize << "/" << mBitCount << "->" +<< newSize << ":" << static_cast(nScaleFlag)); // The idea here is that the actual scaling will be delayed until the result // is actually needed. Usually the scaled bitmap will be drawn somewhere, @@ -319,8 +319,18 @@ bool SkiaSalBitmap::Scale(const double& rScaleX, const double& rScaleY, BmpScale currentQuality = kHigh_SkFilterQuality; break; default: +SAL_INFO("vcl.skia.trace", "scale(" << this << "): unsupported scale algorithm"); return false; } +if (mBitCount < 24 && !mPalette.IsGreyPalette8Bit()) +{ +// Scaling can introduce additional colors not present in the original +// bitmap (e.g. when smoothing). If the bitmap is indexed (has non-trivial palette), +// this would break the bitmap, because the actual scaling is done only somewhen later. +// Linear 8bit palette (grey) is ok, since there we use directly the values as colors. +SAL_INFO("vcl.skia.trace", "scale(" << this << "): indexed bitmap"); +return false; +} // if there is already one scale() pending, use the lowest quality of all requested static_assert(kMedium_SkFilterQuality < kHigh_SkFilterQuality); mScaleQuality = std::min(mScaleQuality, currentQuality); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/skia
vcl/skia/salbmp.cxx | 20 1 file changed, 4 insertions(+), 16 deletions(-) New commits: commit 843e30dc230b5fcfa9589a9fd1dfe3f040c1e2ef Author: Luboš Luňák AuthorDate: Tue Jul 7 13:21:28 2020 +0200 Commit: Luboš Luňák CommitDate: Wed Jul 8 09:30:50 2020 +0200 make sure SkiaSalBitmap::dump() doesn't change the object Now that there's delayed resizing and erasing, saving and restoring the state is getting complicated, so just work on a copy. Change-Id: I4df8cdba24d89e16f58d19516d667ff35e42dea6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98255 Tested-by: Jenkins Reviewed-by: Luboš Luňák diff --git a/vcl/skia/salbmp.cxx b/vcl/skia/salbmp.cxx index 43286ac4a9fe..8cd1a158dc2f 100644 --- a/vcl/skia/salbmp.cxx +++ b/vcl/skia/salbmp.cxx @@ -925,22 +925,10 @@ OString SkiaSalBitmap::GetAlphaImageKey() const #ifdef DBG_UTIL void SkiaSalBitmap::dump(const char* file) const { -sk_sp saveImage = mImage; -sk_sp saveAlphaImage = mAlphaImage; -bool resetBuffer = !mBuffer; -int saveWriteAccessCount = mWriteAccessCount; -Size savePrescaleSize = mPixelsSize; -SkiaSalBitmap* thisPtr = const_cast(this); -// avoid possible assert -thisPtr->mWriteAccessCount = 0; -SkiaHelper::dump(GetSkImage(), file); -// restore old state, so that debugging doesn't affect it -if (resetBuffer) -thisPtr->mBuffer.reset(); -thisPtr->mImage = saveImage; -thisPtr->mAlphaImage = saveAlphaImage; -thisPtr->mWriteAccessCount = saveWriteAccessCount; -thisPtr->mPixelsSize = savePrescaleSize; +// Use a copy, so that debugging doesn't affect this instance. +SkiaSalBitmap copy; +copy.Create(*this); +SkiaHelper::dump(copy.GetSkImage(), file); } void SkiaSalBitmap::verify() const ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: bin/gla11y
bin/gla11y |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 196c150862839ce02458eba7641a573e0d860e13 Author: Andrea Gelmini AuthorDate: Tue Jul 7 20:36:42 2020 +0200 Commit: Julien Nabet CommitDate: Wed Jul 8 09:22:19 2020 +0200 Fix typo Change-Id: I91bd071261dfd964a6f7705cf8bb30814ef3a671 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98295 Tested-by: Julien Nabet Reviewed-by: Julien Nabet diff --git a/bin/gla11y b/bin/gla11y index 80d3e54a371c..01c339696cf1 100755 --- a/bin/gla11y +++ b/bin/gla11y @@ -250,7 +250,7 @@ widgets_labels = [ progname = os.path.basename(sys.argv[0]) # This dictionary contains the set of suppression lines as read from the -# suppression file(s). It is merely indexed by the text of the suppresion line +# suppression file(s). It is merely indexed by the text of the suppression line # and contains whether the suppressions was unused. suppressions = {} ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/sax
include/sax/fshelper.hxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 0eff4285eff1a5b6a220067adf605fbaaed2ccfe Author: Andrea Gelmini AuthorDate: Tue Jul 7 20:36:43 2020 +0200 Commit: Julien Nabet CommitDate: Wed Jul 8 09:21:50 2020 +0200 Fix typo Change-Id: Ib6c49ad6f8ec29e5ef49a46d4352fd58b182f75a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98296 Tested-by: Julien Nabet Reviewed-by: Julien Nabet diff --git a/include/sax/fshelper.hxx b/include/sax/fshelper.hxx index e4b5072345e2..f5d92eed1c50 100644 --- a/include/sax/fshelper.hxx +++ b/include/sax/fshelper.hxx @@ -161,7 +161,7 @@ private: typedef std::shared_ptr< FastSerializerHelper > FSHelperPtr; -// Helpers to make intention to pass optional attributes to *Element finctions explicit, instead of +// Helpers to make intention to pass optional attributes to *Element functions explicit, instead of // using `(condition) ? value.toUtf8().getStr() : nullptr` syntax. inline const char* UseIf(const char* s, bool bUse) { return bUse ? s : nullptr; } // OString, OUString ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: extensions/source
extensions/source/update/check/updatecheckconfig.cxx |4 ++-- extensions/source/update/check/updatecheckjob.cxx|2 +- 2 files changed, 3 insertions(+), 3 deletions(-) New commits: commit 2759edcbc143447fff9a28b8917c99e7a31a9564 Author: Julien Nabet AuthorDate: Tue Jul 7 20:54:45 2020 +0200 Commit: Julien Nabet CommitDate: Wed Jul 8 09:20:55 2020 +0200 loplugin:redundantstatic (extensions/updatecheck(config|job)) Change-Id: Icf0769ab24c8a7c470b1fdf6363204d004c51fb6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98297 Tested-by: Jenkins Reviewed-by: Julien Nabet diff --git a/extensions/source/update/check/updatecheckconfig.cxx b/extensions/source/update/check/updatecheckconfig.cxx index 0db924341208..f3622f34914d 100644 --- a/extensions/source/update/check/updatecheckconfig.cxx +++ b/extensions/source/update/check/updatecheckconfig.cxx @@ -58,7 +58,7 @@ namespace uno = com::sun::star::uno ; #define PROPERTY_VERSION"Version" -static const char * const aUpdateEntryProperties[] = { +const char * const aUpdateEntryProperties[] = { UPDATE_VERSION, UPDATE_BUILDID, UPDATE_DESCRIPTION, @@ -72,7 +72,7 @@ static const char * const aUpdateEntryProperties[] = { OLD_VERSION }; -static const sal_uInt32 nUpdateEntryProperties = SAL_N_ELEMENTS(aUpdateEntryProperties); +const sal_uInt32 nUpdateEntryProperties = SAL_N_ELEMENTS(aUpdateEntryProperties); NamedValueByNameAccess::~NamedValueByNameAccess() { diff --git a/extensions/source/update/check/updatecheckjob.cxx b/extensions/source/update/check/updatecheckjob.cxx index 3656a214ff02..72015e75fd72 100644 --- a/extensions/source/update/check/updatecheckjob.cxx +++ b/extensions/source/update/check/updatecheckjob.cxx @@ -316,7 +316,7 @@ createConfigInstance(const uno::Reference& xContext) } -static const cppu::ImplementationEntry kImplementations_entries[] = +const cppu::ImplementationEntry kImplementations_entries[] = { { createJobInstance, ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits