summaryrefslogtreecommitdiff
path: root/solenv
AgeCommit message (Collapse)Author
2021-10-15Remove non-const Sequence::begin()/end() in internal codeMike Kaganski
... to avoid hidden cost of multiple COW checks, because they call getArray() internally. This obsoletes [loplugin:sequenceloop]. Also rename toNonConstRange to asNonConstRange, to reflect that the result is a view of the sequence, not an independent object. TODO: also drop non-const operator[], but introduce operator[] in SequenceRange. Change-Id: Idd5fd7a3400fe65274d2a6343025e2ef8911635d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123518 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-14filter out also link.exe messages about LTO code generationLuboš Luňák
Change-Id: I4f61bfd829429745141cd03eb0db625fe0458e32 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123584 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-10-13use -flto=auto for gcc if no $PARALLELISM is setLuboš Luňák
I'm not sure if all gcc versions support the value, but if older ones do not they at least silently accept it. Change-Id: If18ce1cbf6122cf9ded00eee5c2058d70e486c0c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123540 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-10-13MSVC LTO does not like mixing 32bit and 64 codeLuboš Luňák
So disable LTO for x64 code when building for 32bit. Change-Id: I8445d8307b3b797b78cea12e6322e0d792c71dfd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123537 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-10-11clang does not support -flto=<number>Luboš Luňák
This may happen when building with GCC when Clang is used for Skia and --with-parallelism is in effect. Change-Id: Ic52dbbcf53253ed73413af4ea8254b000eee72d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123430 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-10-11merge LD_PLUGIN use with other LTO useLuboš Luňák
It seems LD_PLUGIN predates the other --plugin usage, so make that one use LD_PLUGIN instead of using --plugin twice. Change-Id: I00133be18e576bc9a797853621a20dd7d5245344 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123257 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-10-11use ThinLTO for Clang everywhereLuboš Luňák
No idea why it should be used only on Apple platforms and normal LTO elsewhere. ThinLTO should build faster and the result should perform roughly the same. Change-Id: Ie93cf0ba810ee5bb2309fcbd3548a4847587b3d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123256 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-10-09Rename bookmrk* -> bookmark*Julien Nabet
Change-Id: I9dec77b2af8abe5abb286ff76ed85d1e4078ee6a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123325 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-10-08vcl: test PhysicalFontCollection and move to vcl::font namespaceChris Sherlock
- tested PhysicalFontCollection, noted odd behaviour with search names and normalization - moved PhysicalFontCollection.hxx to vcl/inc/font - moved PhysicalFontCollection into vcl::font namespace Note that I needed to regenerate the pch file otherwise errors were generated. Change-Id: Ifa0c7b871c40687bd15002565d2f7a3e408218f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122036 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-07remove python make dependency from MoTargetCaolán McNamara
not needed since... commit 7fdf1663ed8e689e7fb154ab22a9dcb7fc7bf43c Author: Caolán McNamara <caolanm@redhat.com> Date: Thu Sep 14 15:57:38 2017 +0100 remove interim update module for gettext support Change-Id: I05df619848cde842a5cda79d20e013914ce882d4 Change-Id: I094c033db356f32b93c77f7bdbd4ce5be8b0b0ae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123151 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-10-05drop 'using namespace std' in s* + toolkitJulien Nabet
Change-Id: Ibd0b983d46a5683df64b4de79cd444427705e9e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123118 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-10-05vcl: test PhysicalFontFace and move to vcl::font namespaceChris Sherlock
- moved PhysicalFontFace.hxx to vcl/inc/font - added PhysicalFontFace to vcl::font namespace - had to regenerate precompiled_vcl.hxx - tested PhysicalFontFace, with some extensive tests for IsBetterMatch() Change-Id: I860022ac244f8a827f6f9cb7ed9018c5d9c328cb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121970 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-04We need com_sun_star_animations_AnimatePhysics_get_implementationTor Lillqvist
Fix crash in iOS app reported at https://github.com/CollaboraOnline/online/issues/3321 . Change-Id: I1b5fedb0d5db84cc3f6a75b52c29a39ebe7a6ed9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123046 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123047 Tested-by: Jenkins
2021-10-03unterminated call to function 'call': missing ')'.Caolán McNamara
Change-Id: Ida812eb3a002da3d99ddf3179d674a653f7ed2b9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123027 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-10-03TODO: remove missing .po support when writerfilter .po files existCaolán McNamara
Change-Id: I8f20845fcb1fbd598cf1c1c8c8ff20b3e9c37bfc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123012 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-10-02new loplugin:moveparamNoel Grandin
Look for places where we can pass Primitive2DContainer by move reference and so avoid unnecessary copies. Change-Id: I1db167feba6d1a616ca6fc39778118ae20106bd1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122964 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-29qt6: Add a qt6 VCL pluginMichael Weghorn
This adds a new "qt6" VCL plugin based on Qt 6. Building the plugin is enabled by autogen option '--enable-qt6' (and optionally setting 'QT6DIR' as needed). Use the 'SAL_USE_VCLPLUGIN=qt6' environment variable before running LO to select this VCL plugin. Taking qt6 into account at all relevant places certainly still requires follow-up changes, but this builds and runs with a self-compiled qtbase from the 'dev' git branch as of commit 3ce0672143d2eb3c3809f82998a4d71c5800d77a. I didn't see anything obviously broken in a quick run, but didn't test much. This reuses and shares the qt5 VCL plugin code; the qt6 headers and sources for now just '#include' the qt5 ones. Version checks are used for the code places that need different handling to be built against Qt 6. The build system parts in this commit were mostly done by copying the qt5 equivalents, then adapting as needed. Some notes on things I came across while porting to qt6: 1) At least in my self-compiled Qt versions, 'moc' (the meta-object compiler) is located in the 'libexec' subdirectory in 'QT6DIR', while the Qt 5 equivalent is located in the "bin" subdirectory of 'QT5DIR', so the configure.ac check uses the former. 2) moc does not process classes from the included headers. Since the headers in 'vcl/inc/qt6' just '#include' the ones from 'vcl/inc/qt5', running moc on the qt6 headers doesn't work, so moc is currently run on the qt5 headers for qt6 as well (s. 'vcl/CustomTarget_qt6_moc.mk'). That will have to be adapted in case the qt6 VCL plugin uses "own" headers instead of just including the qt5 ones at some point. 3) QX11Extras has been removed from Qt 6. [1] says: > Changes to Qt X11 Extras > > The QX11Info class has been removed. > > Clients that still rely on the functionality can include the private > header <QtGui/private/qtx11extras_p.h> as a stopgap solution. To enable > private headers use QT += core-private with qmake, or add a project > dependency to Qt::CorePrivate with CMake. I didn't take any closer look, just dropped the use of QtX11Extras for qt6 for now. 4) XCB_ICCCM is no longer needed. It is only used in qt5 to workaround a Qt bug fixed in Qt 5.12, s. commit fe2baf9e84e0ca9aeaa683e37076f57fa3f38dca Author: Jan-Marek Glogowski <jan-marek.glogowski@extern.cib.de> Date: Tue Dec 3 08:32:58 2019 +0100 Qt5 fix missing XCB_ICCCM_WM_HINT_WINDOW_GROUP 5) X11-specific code is still used for key modifier handling. Therefore, still check for the XCB headers when 'USING_X11' is set in configure.ac, and use a 'QT6_USING_X11' define (as qt5 uses 'QT5_USING_X11'). 6) There's currently no Qt 6 video sink for GStreamer. As of today, qt-gstreamer is unmaintained and there is no Qt 6 version. The project's README [2] says: > 0. Maintenance Notice > --------------------- > > This code is unmaintained. You can use it at your own risk. > > If you want to integrate video display in your QML-based UI, > you should consider using 'qmlglsink', from gst-plugins-good. > This is a well supported video sink that uses the generic > gstreamer-gl stack and is in many ways superior to 'qtquick2videosink' > that is provided by qt-gstreamer. You can use this code as an example: > https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/tests/examples/qt/qmlsink > > If you are not interested in using QML in your UI, then you > may use one of the other elements provided by this module > (see below). If you do that, it would be helpful to let us > know that this code is still useful to you. We may consider > adding these elements in one of the core gstreamer modules. > > If you are here for the Qt-style bindings, I'm sorry to disappoint you. > The alternative is to use the C API, or the GStreamermm C++ API. > Qt-style bindings are cool, but unfortunately they are very hard > to maintain because they are written by hand. If you are interested > in continuing this project, you are welcome to implement a > generator for them, probably based on GObject-Introspection. > I am happy to provide directions if you want to pursue such a thing. Therefore, the Qt video sink handling is qt5-only and the corresponding handling for GOBJECT (used for the GStreamer video sink handling) was not taken over for qt6. This presumably means that video playback in Impress presentations does not work when using qt6 with they Qt Wayland plugin, s. tdf#125219 for the corresponding bug for qt5/kf5. (I did not build the qtwayland module to actually test this, though. Video playback with the Qt xcb plugin in a Wayland session works.) [1] https://doc-snapshots.qt.io/qt6-dev/extras-changes-qt6.html [2] https://cgit.freedesktop.org/gstreamer/qt-gstreamer/tree/README Change-Id: Ib105ccfb2c3630ec5d5403793a3cd9ba31d85bdf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122808 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2021-09-28com_sun_star_comp_svx_CharacterSpacingToolBoxControl is duplicatedCaolán McNamara
com_sun_star_comp_svx_CharacterSpacingToolBoxControl_get_implementation is already listed under svx/util/svx.component Change-Id: I55fd0e2aff051b62b33d5b257ced8e934c9053d9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122770 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-09-28More constructors needed for the DISABLE_DYNLOADING caseTor Lillqvist
Fixes https://github.com/CollaboraOnline/online/issues/3293. Change-Id: I3c0eaedf47321f0e81be4ac52c66f8e55381ac32 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122720 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122755
2021-09-28vcl: rename OutDevState to StackChris Sherlock
I have moved the header file to include/vcl/rendercontext as this will eventually be part of the RenderContext split from OutputDevice. State and associated enums have also been moved to the vcl namespace. I have also moved ComplexTextLayoutFlags into the vcl::text namespace. Change-Id: I0abbf560e75b45a272854b267e948c240cd69091 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121524 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-09-27vcl: move FontSelectPattern to own file and into vcl::font namespaceChris Sherlock
Change-Id: I2f01a8e67c52ece9b434777203aa9fbc9ac8be02 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122613 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2021-09-24disable these for fuzzing as well as !HAVE_FEATURE_DBCONNECTIVITYCaolán McNamara
Change-Id: I90d9680590c9f9e36fdafaca9c98955a03654da7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122589 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-09-24need connectivity_dbase_ODriver if HAVE_FEATURE_DBCONNECTIVITY is trueCaolán McNamara
to get calc to attempt to import a dbase file Change-Id: I22cc0b69f785f1194feabff2eb88b86cde6eb6b9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122474 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-09-24need OSDBCDriverManager if HAVE_FEATURE_DBCONNECTIVITY is trueCaolán McNamara
to get calc to attempt to import a dbase file Change-Id: I177b41504cb42e5ba3ced799698d5f77305102d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122456 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-09-23Look for the udkapi types.rdb file in the right place when cross-compilingTor Lillqvist
Fixes cross-compilation to iOS on macOS. Previously is was looking for instdir_for_build/LibreOfficeDev.app/Contents/program/types.rdb The correct location is instdir_for_build/LibreOfficeDev.app/Contents/Resources/ure/share/misc/types.rdb Now it is possible to build the master branch for iOS again. (No idea whether it works.) Change-Id: If5b09c77601b5a5136c26e1d383654a85b6cc795 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122516 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-09-23Adapt solenv/flatpak-manifest.in to recent download.lst changesStephan Bergmann
Change-Id: I3d97bbc023dee481420cc1fda8f36f4d3f6364fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122510 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-09-23external: update pdfium to 4643Miklos Vajna
Change-Id: I4e86b163a9abef88f26c6c0ae91ae0a4008658f1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122485 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-09-22avoid some more D9025 warningsLuboš Luňák
Change-Id: I01f8df5f399b17f46da9a59501bea28bc70cac4e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122431 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-22Apparently we need to define gb_Library_PLAINEXT_FOR_BUILD for iOSTor Lillqvist
Helps a build for iOS proceed a bit further. Change-Id: Icb0465eb204effbc0b777b5066d40d9938924eed Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122421 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-09-22make .pch file also depend on its source .hxx fileLuboš Luňák
This dependency is normally handled by either the .pch not existing (and so it needs building), or GCC/Clang output it in the deps, but MSVC doesn't seem to provide this dependency, so modifying the .hxx there doesn't trigger a rebuild. Change-Id: I83415d97b98b8861b3d53cba07c4ac2748e9f476 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122413 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-20use MSVC's /Zc:inline option to reduce binary sizeLuboš Luňák
If I'm getting it right, MSVC has a non-conforming feature that allows to declare a function as inline without defining its body in the header, and it'll work if the function is actually emitted elsewhere, and the linker will sort it out. This seems to be implemented by forcing emitting of out-of-line copies of all inline functions, which is wasteful. /Zc:inline disables this useless feature, which seems to save quite some space (optimized build, starmath's .o files 350k->220k, smlo.dll 2.5M->2.2M). The docs don't say anything about binary compatibility, but treat it the same way as -Zc:dllexportInlines, just in case. This change also may help avoid the tdf#144598 problem for our AVX/etc. code, such as in Calc. Change-Id: I73cc5d46ba1e4245e8d3b6688804c2b9684d2f9a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122334 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-20use clang-cl's -Zc:dllexportInlines- for clang-cl buildsLuboš Luňák
This is clang-cl's equivalent of -fvisibility-inlines-hidden, and it seems to be also sort of the equivalent of MSVC's -Zc:inline. So it saves build time and disk space. Clang docs say that this is binary compatible in only one direction, so our public C++ code shouldn't be using this, as external C++ code could try to use exported inlines that are no longer there. Change-Id: Ie6217808f8ee4a15344183abfc65038e1558d1b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122352 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-20use clang-cl's -Zc:dllexportInlines- for Skia (tdf#144598)Luboš Luňák
This is clang-cl's equivalent of -fvisibility-inlines-hidden, and it seems to be also sort of the equivalent of MSVC's -Zc:inline. So it saves build time and disk space. As an additional effect, this disables emitting copies of inlines functions in every .o file where the function is called (even if inlined), which means that it hopefully avoids the problem of SkOpts_avx.cpp generating a copy of SkRect::round() which would include AVX code, and the linker might select this as the instance of SkRect::round() to keep, thus making SSE2 code call AVX code without checking for AVX availability first. Change-Id: I97541ae11d05f489894bc9233271eb21fd520f43 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122335 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-20introduce SfxItemSetFixed and use it in DefaultPropertiesNoel Grandin
DefaultProperties::SetObjectItemSet is very hot when loading shapes, and a large chunk of that cost is allocating the pool item array. So use a template class to allocate the array in-line to the class, which means it can be allocated on-stack. Change-Id: Ic53b41f35784726362de38fceb35f8634cddf0a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122310 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-19make "-external/" valid gbuild exclusion for FORCE_COMPILELuboš Luňák
Get the name of the directory extra level up, which is 'external' for external modules, and check that too. Change-Id: Ie9a3bffea0c64c07cf2e9dfa221fd27106a05443 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122307 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-18make FORCE_COMPILE_ALL more flexible than all or nothingLuboš Luňák
Rename it to FORCE_COMPILE and it takes the --enable-symbols specification of what to include, for example FORCE_COMPILE="all -sw/ -Library_sc". Change-Id: I92afd8e0abc75d3566285c197d6640c26c03db36 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122248 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-18make COMPILER_EXTERNAL_TOOL=1 work properly with generated sourcesLuboš Luňák
The normal compile commands would fail if the tool standing in as the compiler would not generate e.g. the dependency files. Change-Id: I590a925d3562c9677cbd836095cd0b8cfeb9613b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122247 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-18don't force compiler plugins when COMPILER_EXTERNAL_TOOL=1 is usedLuboš Luňák
Change-Id: I741d4e5450ba66d4452ee2e5398eaac0643a371f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122246 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-09-17clang-format ondemand.hxxNoel Grandin
Change-Id: I7fa1c0e5832ace0c97c93a9df808b73a3f0ffc36 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122262 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-16tdf#143103 Support Color Filter in "Standard Filter" dialogSamuel Mehrbrodt
Change-Id: Ie8ffc928315b742d5b445d5fdda62cb9c2aabc0e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122089 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2021-09-13loplugin:cow_wrapperNoel Grandin
check the classes that use o3tl::cow_wrapper so that they don't unnecessarity trigger copies Change-Id: I545e627598217f3e61ba2c384adb8d4f8b404829 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122030 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-11add -DSYSTEM_NSS to flags ignored for system PCHLuboš Luňák
Change-Id: I4afdf324956b0280ceeaf2d18174dedbb091b5b0
2021-09-10vcl: move outdevstate.cxx to stack.cxxChris Sherlock
Change-Id: I674be4eb758178468dbba70cb45d68d009952ebc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121024 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-09tdf#130795 use concurrent hashmap in SharedStringPoolNoel Grandin
we are loading a spreadsheet in parallel here, but the parallel threads achievei very little actual concurrency because of heavy contention in the SharedStringPool mutex. So switch to a concurrent hash map. I looked at a couple of different ones (including the Folly one), and this was the one with the simplest resulting code. This takes my load time from 12.5s to 8s Change-Id: I04d6d8e11d613b510eb3bc981f3338819b7ac813 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121717 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-06vcl: migrate ImplLayoutRuns to own filesChris Sherlock
Wrote a set of unit tests for ImplLayoutRuns, and added ImplLayoutRuns to vcl::text namespace. Change-Id: Id6ae8882acb8e3d821bb38551e78019cbdcaa662 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121204 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-06Flatpak: Upgrade to 21.08 runtime, disable SkiaStephan Bergmann
For whatever reason, building Skia against the 21.08 SDK would fail with > /run/build/libreoffice/workdir/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.cpp: In function ‘void {anonymous}::colrv1_draw_paint(SkCanvas*, const FT_Color*, FT_Face, FT_COLR_Paint)’: > /run/build/libreoffice/workdir/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.cpp:668:14: error: ‘FT_COLR_PAINTFORMAT_TRANSFORMED’ was not declared in this scope; did you mean ‘FT_COLR_PAINTFORMAT_TRANSFORM’? > 668 | case FT_COLR_PAINTFORMAT_TRANSFORMED: { > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | FT_COLR_PAINTFORMAT_TRANSFORM > /run/build/libreoffice/workdir/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.cpp:669:60: error: ‘union FT_COLR_Paint_::<unnamed>’ has no member named ‘transformed’; did you mean ‘transform’? > 669 | SkMatrix transform = ToSkMatrix(colrv1_paint.u.transformed.affine); > | ^~~~~~~~~~~ > | transform > /run/build/libreoffice/workdir/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.cpp: In function ‘bool {anonymous}::colrv1_traverse_paint(SkCanvas*, const FT_Color*, FT_Face, FT_OpaquePaint)’: > /run/build/libreoffice/workdir/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.cpp:763:14: error: ‘FT_COLR_PAINTFORMAT_TRANSFORMED’ was not declared in this scope; did you mean ‘FT_COLR_PAINTFORMAT_TRANSFORM’? > 763 | case FT_COLR_PAINTFORMAT_TRANSFORMED: > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | FT_COLR_PAINTFORMAT_TRANSFORM > /run/build/libreoffice/workdir/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.cpp:768:74: error: ‘union FT_COLR_Paint_::<unnamed>’ has no member named ‘transformed’; did you mean ‘transform’? > 768 | colrv1_traverse_paint(canvas, palette, face, paint.u.transformed.paint); > | ^~~~~~~~~~~ > | transform > make[1]: *** [/run/build/libreoffice/solenv/gbuild/LinkTarget.mk:347: /run/build/libreoffice/workdir/GenCxxObject/UnpackedTarball/skia/src/ports/SkFontHost_FreeType_common.o] Error 1 But including Skia in the Linux flatpak isn't too useful anyway (and just happened to be on by default): First, it is disabled by default on Linux, cf. UseSkia in officecfg/registry/data/org/openoffice/Office/Common.xcu. And second, on Linux it can only be enabled for SAL_USE_VCLPLUGIN=gen, but not for the gtk3 plugin that the flatpak normally uses, cf. OfaViewTabPage::UpdateSkiaStatus in cui/source/options/optgdlg.cxx. Change-Id: Ifdc9c23676280caf19db0e9f09df15aaa21eef5f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121705 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-09-06tdf#138255 use GtkSpinButton in SwGotoPageDlgtobias
Use GtkSpinButton instead of GtkEntry in SwGotoPageDlg analogous to the widget in SwNavigationPI. Change-Id: I0ddb4433bea23d8f3d460bd69f30a10b8f7ce984 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121688 Tested-by: Jenkins Tested-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2021-09-05Adapt solenv/flatpak-manifest.in to recent download.lst changesStephan Bergmann
Change-Id: I88ff67fc9922adc7e6c751c76425c68701512481 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121599 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2021-09-01sc: do not use dashes in the file namesXisco Fauli
underscores are used predominantly Change-Id: I4a51903a2c7712f463b10a56c7466077544adfee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121408 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-08-31flatten SfxObjectShellArr_ImplNoel Grandin
Change-Id: I97e3ea18ce17c63ae95d7755a32c602b88373370 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121337 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>