summaryrefslogtreecommitdiff
path: root/vcl
AgeCommit message (Collapse)AuthorFilesLines
2021-12-27vcl: change Get{Linear|Complex}GradientSteps()Chris Sherlock1-38/+31
No need to have split out the function, we can just check the gradient style type. However, if we are checking the steps for a metafile we can make this a static function. Change-Id: If0524567ec5974db92aff928e0733ab746ecbeba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127029 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-12-27vcl: remove unnecessary actions from DrawGradientToMetafile()Chris Sherlock2-52/+106
It turns out, we never actually needed to decompose the gradient into seperate actions in DrawGradientToMetafile(). We still need this for AddGradientActions() however. Update tests and add new ones for AddGradientActions(). Change-Id: I2115da8e7d1efa5bcd2a8f4f00d9678216549e4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126846 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-12-26Avoid OUStringBuffer::toString where possibleMike Kaganski2-9/+13
Change-Id: I99abbe97a48b2077e28d6221fb70036e5e412657 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127479 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-25oss-fuzz: convert to static cross-buildJan-Marek Glogowski8-16/+11
This way we can get rid of the pre-generated locale data and the special fuzzers target, which invokes a full gbuild make for every prereqisite, always parsing the whole tree, taking ages. This also reverts: - commit d0780b21cfe235c4446adf649eb690f9c1771dd5 ("fix oss-fuzz build") by adding epubgen and revenge dependencies. - commit ff25d6a123beb42476bf42d189b3033a86835b2a ("ofz#41602 fix more build failure"), which shouldn't happen anymore since commit d47628f287f4377394c4ff488c433bfe254b6abe ("don't want to link to system static libs for DISABLE_DYNLOADING") Change-Id: I3aed9ec62da507254b42e4e7470bae1097b4bc8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127031 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-25oss-fuzz: use fuzzer_statics for default staticsJan-Marek Glogowski47-138/+51
Change-Id: I3616507127e0661635d87ba2b949ddaa13bc898d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127454 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-24Use rtl functions instead of own surrogate checking/combiningMike Kaganski2-6/+9
Change-Id: I3eb05d8f5b0761bc3b672d4c855eb469f8cc1a29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127375 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-24use comphelper::WeakComponentImplHelper in JSDropTargetNoel Grandin2-14/+10
Change-Id: I40f8090e0c24a29bdb310183981187997696f8e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127398 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-24Recheck include/[s-x]* with IWYUGabor Kelemen4-0/+4
See tdf#42949 for motivation Change-Id: Iaebddd648c52c175da17d2a55a1e8de82c213f4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127330 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-12-23ofz#42868 fix fuzzing buildCaolán McNamara1-0/+1
Change-Id: Ifcdc302d6aee121f5b889b2a02a47b333d23069f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127388 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-23Split BasePrimitive2D UNO interface into separate objectNoel Grandin3-6/+12
Rather than make all the BasePrimitive2D classes bear the cost of being an UNO object, we just wrap the top level BasePrimitive2D in this class when we need to pass them over UNO. This reduces the locking overhead when doing normal drawinglayer operations, and reduces the size of drawinglayer objects and the cost of initialising them, which shaves 5% off the load/display time of a large barchart. Add new drawinglayer::convertPrimitive2DContainerToBitmapEx utility method to avoid needing to convert to Sequence<XPrimitive2D> Change-Id: I553eaa4c16ba016b098cb21f6c55f5008f0d9b53 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126487 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-22tdf#129625, tdf#144672: sw: Add UItestXisco Fauli1-0/+2
Change-Id: Ie6a4cc8b5d218112c56ff3cbba6a0c51ab30fb59 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127309 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-12-22Silence loplugin:fakebool for BOOL GetMessageW even harderStephan Bergmann2-2/+2
8f22ce5ea3e62a4837773f6958b8ce7ac96f811a "loplugin:fakebool (clang-cl)" had tried to use auto to silence the warning about GetMessageW's misused BOOL return type (where GetMessageW encodes more than just true vs. false), but that no longer works after Clang 14 trunk <https://github.com/llvm/llvm-project/commit/c9e46219f38da5c3fbfe41012173dc893516826e> "[clang] retain type sugar in auto / template argument deduction", so just use int here as the type for which BOOL is a typedef according to <https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/9d81be47-232e-42cf-8f0d-7a3b29bf2eb2> "BOOL". Change-Id: Ie703676e858dba915de5c4496c02db82a2735e29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127298 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-12-22-Werror,-Wunused-variableStephan Bergmann1-1/+0
Change-Id: Ia43a7f973d08794a4fc8cd0b1060df8f33759b6d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127297 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-12-21Use sal::systools::CoInitializeGuard and sal::systools::ThrowIfFailedMike Kaganski4-18/+10
Change-Id: Ifb40e7672671df03b5ffc89905ad1e7b68451b68 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127232 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-21tdf#131467 Qt set default position on first resizeJan-Marek Glogowski2-6/+15
Setting the position in Show() is too late, because LO will try to set the mouse pointer to the default button, if configured. That obviously needs the window position. And also take the menubar offset into account. Change-Id: Ia280539c082ff6f675966869fb6643a41a17d696 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127154 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-21no point in release solar mutex before calling PostUserEventNoel Grandin1-1/+1
which will just acquire it again Change-Id: If483a74ccac762f288bcd05956066ce726a96516 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127212 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-21Qt use asChild for pointer positioningJan-Marek Glogowski2-6/+6
.. and refactor some variable names. Change-Id: I7d31a7a377f614bdd78f8d09852a2eda0cc47442 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127153 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-21Disallow multiple component files per libraryJan-Marek Glogowski14-233/+123
This converts existing users of multiple component files to the new filtering mechanism and adds a check to error in the case that someone tries to set multiple component files again. Change-Id: Ie75d6c5d1b78f446ff06faba7350715289b8d17e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126892 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-12-19osl::Mutex->std::mutex in I18nHelperNoel Grandin1-11/+6
Change-Id: I8743755992eeb78ec213cb51913da1b66b712142 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127069 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-19use more cppu::BaseMutexNoel Grandin9-16/+13
Change-Id: Iddd7438161ead93b27cf8e8058ca5b1eae3d8001 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127075 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-17tdf#146225 Revert "Use g_get_real_time instead of g_get_current_time"Hossein2-17/+22
This reverts commit 489d7298d2e609ee5900f05ba0064845a7a551ce and 4812c8df39cb03b59d8c033005e8e9dc45a260dd. Change-Id: Ic537a605eedc39c6cbafab4c28a77d81edfa1e20 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126998 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
2021-12-16Fix iOS compilation after recent changes to SequenceTor Lillqvist2-3/+3
Change-Id: I73c519174029766a3a2f61f9ad93fd63589b8184 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126957 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-12-16Related tdf#145910: relax even more denylist about OpenGLJulien Nabet1-21/+1
Comment this one: <!-- tdf#125516: crash on preview of slide transitions, or in slideshow, when OpenGL rendering enabled Windows 10, with Intel DCH packaged driver --> <entry os="10" vendor="intel" compare="between_inclusive_start" minVersion="26.20.100.6861" maxVersion="26.20.100.7584"><!-- tdf#125516 --> Revert these: 1) <entry os="all" vendor="intel" compare="less" version="10.18.14.4264"> <device id="all"/> </entry> commit 5621762a36483f7bc555dd0e6a294eb68100490a Author: Tor Lillqvist <tml@collabora.com> Date: Fri Jan 8 15:53:54 2016 +0200 Don't use the "marketing" version number for the Intel driver The 15.x.y.z.d number is not the real version number that our code sees. commit b1878ab683adeff6d151617fcd8f4a4530366e0e Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.com> Date: Fri Nov 20 22:55:38 2015 +0100 opengl: populate blocklist 2) <entry os="8" vendor="intel" compare="equal" version="10.18.10.3308"><!-- Intel(R) HD Graphics 4000 --> <device id="0x0166"/> </entry> commit 5e416099f088a2f8a8980e08e3d5b731da0a6d9c Author: Marina Latini <marina@studiostorti.com> Date: Thu Nov 10 14:34:00 2016 +0100 Windows 8 driver blacklist Blacklisted intel driver for graphics card Intel(R) HD Graphics 4000 for Windows 8. With this card LibreOffice won't start. 3) <entry os="7" vendor="intel"> <device id="all"/> </entry> commit c9b2af045acc92c8665a8523407f530cc691d5bf Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> Date: Tue Jul 26 16:21:13 2016 +0900 tdf#101138 opengl: blacklist intel drivers for Win 7 (crash in general but nothing about slide transition, let's give it a try) 4) <entry os="all" vendor="amd" compare="less" version="15.200.1062.1004"> <!-- 150.200 --> <device id="all"/> </entry> commit b1878ab683adeff6d151617fcd8f4a4530366e0e Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.com> Date: Fri Nov 20 22:55:38 2015 +0100 opengl: populate blocklist 5) <entry os="all" vendor="nvidia" compare="less" version="10.18.13.5362"> <!-- 353.62 --> <device id="all"/> </entry> commit b1878ab683adeff6d151617fcd8f4a4530366e0e Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.com> Date: Fri Nov 20 22:55:38 2015 +0100 opengl: populate blocklist 6) <entry os="10" vendor="nvidia"> <!-- tdf#128441 --> <device id="0x2182"/> </entry> commit ed94101d8c399f6de2e2b9b7cd31dd6b68d269a8 Author: Julien Nabet <serval2412@yahoo.fr> Date: Sat Nov 2 18:34:06 2019 +0100 tdf#128441: blacklist nvidia on Win10 deviceid 0x2182 (crash on Writer so not Slide transition) 7) <entry os="all" vendor="microsoft" compare="less" version="6.2.0.0"> <!-- 6.2.0.0 --> <device id="all"/> </entry> commit b1878ab683adeff6d151617fcd8f4a4530366e0e Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.com> Date: Fri Nov 20 22:55:38 2015 +0100 opengl: populate blocklist Change-Id: I7c2c99488e74277cbbff2f0f37937ca3b2115b72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126489 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-12-16Removed break; after returnAndrea Gelmini1-54/+0
Change-Id: I4dff60b9b24b60d58ddd174c7dcb222b4ca26224 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126912 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-12-16drop ui-previewerCaolán McNamara3-156/+0
the need for this is gone now the transition from src to ui is completed. I certainly don't use this anymore. Change-Id: I5bf9c8bc4f00152977091f466c2e808b824acb44 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126925 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-16crashtesting: Assertion `nMin <= nMax' failed in MinMaxCaolán McNamara1-37/+44
MinMax(T, tools::Long, tools::Long) [T = int]: Assertion `nMin <= nMax' failed. seen since commit 374e261ad1ea8b41f5ecdd850c27fdc961c4868b Date: Sun Dec 5 11:55:58 2021 +0100 increase maximum document thumbnail size from 256 to 512 but presumably always lurked previously. This commit is supposed to change nothing, just rearrange to show that the nWidth == 1 branch (and adapted the nHeight == 1 branch too) doesn't use the data generated by the asserting block and move that block into the nWidth/nHeight != 1 branches Change-Id: I1d3284ee32c1eff738c34bc252400726dc7632b4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126895 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-15unset mpMenuBarWidget when it was destroyed along with its parentCaolán McNamara1-0/+1
Resolves: https://github.com/flathub/org.libreoffice.LibreOffice/issues/173 Change-Id: I875cf658fb86adfa389429ead059bfd7c4f08ef4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126866 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-15tdf#146225 Fix delay when exiting from the gtk3 uiHossein1-4/+14
While removing the deprecated g_get_current_time and replacing it with g_get_real_time in 489d7298d2e609ee5900f05ba0064845a7a551ce, a behaviour change in sal_gtk_timeout_expired static method is done, which lead to tdf#146225. With this commit, it is changed back to the previous state, with 2 additional variables of tv_sec and tv_usec. Eventually, the method should be simplified. Change-Id: I2f1bb22b9a2d518e6f0332472535be8d4adf92f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126829 Tested-by: Hossein <hossein@libreoffice.org> Reviewed-by: Hossein <hossein@libreoffice.org>
2021-12-15tdf#145934 workaround rounding causing 'dancing characters'Caolán McNamara1-2/+2
Change-Id: I1fb260196beb0cc54232aa60a1191d3090fa31b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126848 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-15tdf#144961 vcl: fix CJK matching in FindFontFamilyByAttributesHossein2-7/+31
Whilst testing CJK matching, I uncovered an issue. The matching algorithm detects that the font is a CJK font if there are any CJK characters in the font name. However, if you searched for a CJK font against a font that was not a CJK font (i.e. the family name had no CJK characters) then it would still match against this font family. We now check if the font being matched against was a CJK font family or not, if not then I reduced the testMatch value by CJK_MATCH_VALUE. The fix can be tested with: make CPPUNIT_TEST_NAME=testShouldNotFindCJKFamily -sr \ CppunitTest_vcl_font Without the fix in place, the test fails with: Test name: VclPhysicalFontCollectionTest::testShouldNotFindCJKFamily assertion failed - Expression: !aFontCollection.FindFontFamilyByAttributes( ImplFontAttrs::CJK, WEIGHT_NORMAL, WIDTH_NORMAL, ITALIC_NONE, "") - family found Change-Id: I18b246f151b2174dc4ae0f5507630a4e8e4bb442 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123309 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
2021-12-14Stream::Tell returns sal_uInt64Noel Grandin10-27/+27
Change-Id: I02e49d4f59c17a9868c4111ac91b5dd2715e689c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126630 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-13Refactor some buildsytem stuff (mostly whitespace)Jan-Marek Glogowski1-6/+12
Change-Id: Idfca786ecc7251e08525bd5b45936143727c43d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126731 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-13remove newly unused Menu::InsertItem variantCaolán McNamara1-22/+0
Change-Id: I796bc10d96ebf0b2269f313a700146c68956dcf6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126712 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-13desktop_detector is also a vcl pluginJan-Marek Glogowski2-1/+4
Change-Id: I71445c16744674f75fed190911749f38226169e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126715 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-13tdf#145764 - Change behaviour of BASIC IDE Home KeyAndreas Heinisch1-5/+11
Pressing the Home Key moves the cursor to the first non-space character in the line, whereas pressing it at the first non-space character moves it to the beginning of that line Follow up of: I8eabb6d01b1a4de0d24bf064f82c83342ca91396 Change-Id: I9f4f0b2b602fa0158488959c2e2029f5da315771 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126702 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-11tdf#145764 - BASIC IDE Home Key: move cursor to the beginning/first characterAndreas Heinisch1-1/+16
Pressing the Home Key moves the cursor to the first character in the line, whereas pressing it at line start moves it to the first character in that line. Change-Id: I8eabb6d01b1a4de0d24bf064f82c83342ca91396 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126548 Tested-by: Jenkins Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-12-11Fix typosAndrea Gelmini2-2/+2
Change-Id: I8e6db5dfb5285e45f862fadf09ecb4142be6e075 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126659 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2021-12-11explain the intent of HasDrawTransformedBitmap() betterLuboš Luňák2-4/+9
Change-Id: I32d6cfb7358dae25109de4db3332797763abc7d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126506 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-12-11don't duplicate SalGraphics docs in SalGraphicsImplLuboš Luňák1-22/+15
It's incomplete anyway, and it's annoying to do it twice. Simply refer to SalGraphics. Change-Id: I6a28709e2e68ba565176ea3ddf67bd17ecf3d1e7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126505 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-12-11Use g_get_real_time instead of g_get_current_timeHossein2-32/+17
g_get_current_time() which is deprecated, is replaced by the newer function g_get_real_time() in which is available since glib 2.28. Function GLib > get_real_time https://docs.gtk.org/glib/func.get_real_time.html Change-Id: I371c2efc290e70410b84346ed47d721ae9547273 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126374 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-10Revert "Re-Enable DrawTransformBitmapExDirect for render backends"Armin Le Grand23-62/+86
This reverts commit 7e5af164b7d293dd410710bed411e1ca64bbecf7. Reason for revert: Not the best/effective way to clear out the stuff remaining to be done, would need additional stuff Change-Id: Ia6ab90384da29a5e34eff0ab8881bad2ab49c58c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126601 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-12-10add resize_to_request to popoverCaolán McNamara3-3/+29
Change-Id: I4bd549efd934946f355f06645ed816acd370a51d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126634 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-10[loplugin:external] in vcl/skia/SkiaHelper.cxxJulien Nabet1-1/+1
Following 2c86b79e87bc8579f5213708954d5c85fe231407 cache Skia drawing based on checksum of bitmap content (tdf#146095) Change-Id: I184a7d96988b7a52100de026c13f422590755ded Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126635 Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2021-12-10cache Skia drawing based on checksum of bitmap content (tdf#146095)Luboš Luňák3-3/+50
Previously the caching was based on SkImage's uniqueID(), which detects whether it's the same image. For caching to work based on this it is required that the underlying image does not change, which generally means using the same Bitmap(Ex) for repeated drawing. But e.g. in tdf#146096 canvas (AFAICT) tries to cache bitmaps by copying them around, which generates so many bitmaps that they all do not fit in the cache (helped by the fact that the edit window still animates them too, and bitmap caching in canvas being broken). It feels kinda lame and unnecessary to checksum pixels of many bitmaps to be drawn just to find out whether their drawing can be sped up, and it really should be fixed higher up wherever it's broken, but I've already failed several times trying to fix this in canvas, so let's just roll with this. This is done only for raster-based images, because GPU-backed drawing is fast enough to deal even with expensive drawing (and fetching GPU-backend pixels would be expensive). On my machine this changes showing the slide from not being able to quite keep up to about 20% CPU usage. Change-Id: I25a362a02dc61e99b391cb305e2fdcd2feb67879 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126613 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-12-10tdf#127341 Do not activate TextEdit at right-klick on URL in calcArmin Le Grand (Allotropia)1-0/+7
Change-Id: I1881c007a05f56d5cb7914da56243f551c2da1cc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126618 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-12-10return value by simply returning itLuboš Luňák3-13/+9
Change-Id: I0c3443f182db697d12fb8bc8a356d989b62847df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126610 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-12-10make sure Skia bitmap checksum is invalidated properlyLuboš Luňák3-1/+56
Change-Id: I85e81b730dcb0fdc7728d5a956974ef09a73de87 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126585 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-12-10don't use 32bit Skia bitmaps if not configured soLuboš Luňák1-0/+4
Change-Id: Ic7781f799d0d4baef01955f03ace8428b6d9f229 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126584 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-12-10tdf#143148 Use pragma once in vclVaibhavMalik41871-4/+1
Change-Id: Iffad4effaeef46663d8a57110bf2d560e81d0d3c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126629 Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2021-12-10Generally determine Rdb content from gb_*_set_componentfile callsStephan Bergmann2-8/+8
...instead of by listing the content somewhat redundantly in the Rdb_*.mk files, to avoid duplication of logic for components that are only built conditionally (and thus should only be included conditionally in the corresponding Rdb). To achieve that, add an "rdb" parameter to gb_ComponentTarget_ComponentTarget (and to the gb_*_set_componentfile macros that internally call gb_ComponentTarget_ComponentTarget), which is used to make the appropriate gb_Rdb_add_component call internally from within gb_ComponentTarget_ComponentTarget. (As a special case, gb_CppunitTest_set_componentfile shall not call gb_Rdb_add_component, as that has already been done by the corresponding gb_Library_set_componentfile call, so allow the gb_ComponentTarget_ComponentTarget "rdb" parameter to be empty to support that special case.) Most Rdb_*.mk files are thus mostly empty now. One exception is i18npool/Rdb_saxparser.mk, which duplicates some of the Rdb_services content as needed during the build in CustomTarget_i18npool/localedata. 1c9a40299d328c78c035ca63ccdf22c5c669a03b "gbuild: create services.rdb from built components" had already tried to do something similar (in addition to other things) under a new --enable-services-rdb-from-build option. However, that approach had four drawbacks that this approach here addresses (and which thus partly reverts 1c9a40299d328c78c035ca63ccdf22c5c669a03b): 1 Rdb_services shall not contain the component files of all libraries that are built. While that commit filtered out the component files that go into Rdb_ure/services (ure/Rdb_ure.mk), it failed to filter out the component files that go into others like Rdb_postgresql-sdbc (connectivity/Rdb_postgresql-sdbc.mk). 2 The code added by that commit to Makefile.gbuild codified the knowledge that there is an Rdb_services, which is brittle. 3 The code added by that commit to solenv/gbuild/Rdb.mk codified the knowledge (for gb_Rdb__URECOMPONENTS) that there is an Rdb_ure/services, which is brittle. 4 Introducing an --enable-services-rdb-from-build option needlessly provided two different ways how the content of Rdb_services is assembled. The changes done here would leave --enable-services-rdb-from-build as a misnomer, as it no longer controls how Rdb_services is assembled. I thus renamed it to --enable-customtarget-components, as that is apparently what it still does now. Change-Id: Ia5e8df4b640146c77421fcec6daa11a9cd260265 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126577 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>