summaryrefslogtreecommitdiff
path: root/drawinglayer
AgeCommit message (Collapse)Author
10 daysfix BufferedDecompositionFlusher thread namingNoel Grandin
otherwise we end up renaming the main thread Change-Id: I59f8274e13273321d80ab264e1d31e66b70547c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184318 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
10 daysRemove obsolete fw declarations from desktop/ drawinglayer/Gabor Kelemen
found with bin/find-unneeded-includes --fwdecl Change-Id: I61ee34a26ed75c0bbbf4dae0359bfeeea37b4296 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183883 Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de> Tested-by: Jenkins
2025-04-03vcl: cairo: split cairo format defines into new headerAron Budea
Change-Id: I1d9b05c600cea860df0596d63e817b30347f563c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183651 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Aron Budea <aron.budea@collabora.com> Tested-by: Jenkins
2025-04-01remove SAL_WARN from BufferedDecompositionFlusherNoel Grandin
now that this has stabilised, I don't need it anymore Change-Id: Ibadd043bb11f6070ee66637e3eb0174c9bbe7a63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183596 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2025-04-01take solarmutex in BufferedDecompositionFlusherNoel Grandin
when clearing objects, I have seen a crash on macos which happens inside skia Change-Id: I8328439917339242d56d813f518e05bbd92adc60 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183572 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-03-31lok: slideshow: handle text object in edit modeMarco Cecchetti
This patch allows to render a text object in edit mode by decomposing a TextHierarchyEditPrimitive2D instance in place of using TextEditDrawing. That avoids to have artifacts displayed while playing the slideshow such as a tiny rectangle around the edited text shape. Moreover it allows to animate a single paragraph even when the related text object is in edit mode. Change-Id: I0c27dc0953dd1b0fb7ae70f41e569587f3a623ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183532 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2025-03-31Need to take over BColorModifierStack for *all* content renderingsArmin Le Grand (Collabora)
Change-Id: Iac558c8b653349a86966869bd96dca265a8fb223 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183419 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2025-03-26add translate functions for B2D*PolygonNoel Grandin
Change-Id: I1f9091c47f0145d6fa0a8bc2deb4864244aad896 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183309 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2025-03-26fix BufferedDecompositionFlusher some moreNoel Grandin
if the onShot() method is processing a lot of work, and at the same time teardown happens, it might managed to restart itself after teardown. What ended up being easiest is making this its own thread, and calling shutdown() on that thread from DeInitVCL. See notes in BufferedDecompositionFlusher.cxx. Change-Id: I70fecb259c6e74d2c102065696f7ae2bed15cab6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183320 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2025-03-25loplugin:constparam in drawinglayerNoel Grandin
Change-Id: I7921dc085e348945f8f14c12a15ed6c5414f298e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183294 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-03-24cid#1645088 Data race conditionCaolán McNamara
and cid#1645104 Data race condition Change-Id: I91674b3646789cb70ddcea034f34b386c23ea95f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183257 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-03-24tdf#165706 additional taking care in CairoSDPRArmin Le Grand (Collabora)
The task is fixed with the previous commit for this tdf number, but convinced me to do also some more safe stuff in the CairoSDPR implementation. The associated OutputDevice *is* now handed over to CairoSDPR and some stuff being done in the helper to create the SDPR is now done directly in the CairoSDPR constructors. Also the FormControl rendering is now closer to what the VCLPrimitiveRenderer does, to be on the safe side. It is still just the FormControl rendering that indirectly uses the associated OutputDevice, but more convenient. The CairoSDPR now also (as VCLRenderer) resets the MapMode in the associated OutputDevice for the time using it - just in case there might be other *indirect* usages like the FormControl one. Change-Id: I5029788655ff81bf360d98312d417b7886208e1f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183204 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2025-03-23cid#1645104 Data race conditionCaolán McNamara
and cid#1645088 Data race condition cid#1645086 Data race condition presumably the mutex is just for maBuffered2DDecomposition, otherwise setting maLastAccess with the mutex held implies all the other maLastAccess uses should be protected with that mutex Change-Id: I918b8854a2abbb8436200c98cf545e217b19bba6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183244 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-03-20fix BufferedDecompositionFlusher shutdown crash (2)Noel Grandin
stopping the timer doesn't seem to be sufficient, try deleting all of the contained data at that point in time too. regression from commit 8a17b7f0a679ebf21bcfb425186b205d996d129b Author: Noel Grandin <noelgrandin@gmail.com> Date: Thu Mar 13 18:37:54 2025 +0200 tdf#131595 Improve drawinglayer flushing mechanism. Change-Id: Ic11f287e83c482bfa81b5efb6b378113d15ecd0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183164 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2025-03-19fix BufferedDecompositionFlusher shutdown crashNoel Grandin
releasing the reference is not enough, we have to call stop() on it. regression from commit 8a17b7f0a679ebf21bcfb425186b205d996d129b Author: Noel Grandin <noelgrandin@gmail.com> Date: Thu Mar 13 18:37:54 2025 +0200 tdf#131595 Improve drawinglayer flushing mechanism. Change-Id: I6686e1fb1d2509413597ce4fa88b23d99a7e047a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183133 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-03-17tdf#131595 Improve drawinglayer flushing mechanism.Noel Grandin
Which dramatically speeds up switching between sheets in the referenced document. The problem here is that we have a timer for each buffered primitive. And we have a lot of primitives here. And the TimerManager does not scale well to lots and lots of timer, because it uses a linked list. So this change modifies the flushing mechanism, trading off some precision for some speed. Change-Id: I66a744f06af9b08d4e9b797d11db8d22f4060789 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182876 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-03-14use mutex before touching maBuffered2DDecomposition (tdf#131595 related)Noel Grandin
Otherwise we could be reading stale data. And change it to return a bool, the call-sites only care if we have/dont-have the data, and returning a value of a field that should only be accessed under a lock is dodgy. And move the the setRemainingTime call to get2DDecomposition(), because that where we really "use" the data ie. paint with it. Change-Id: I44b5d41fee68985213ecc7d11b4ce1bdcfd119b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182909 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-03-14use mutex before touching maBuffered2DDecomposition (tdf#131595 related)Noel Grandin
Otherwise we could be reading stale data. And change it to return a bool, the call-sites only care if we have/dont-have the data, and returning a value of a field that should only be accessed under a lock is dodgy. And move the the setRemainingTime call to get2DDecomposition(), because that where we really "use" the data ie. paint with it. Change-Id: Ie795465a1177a47f846cf9310d419079e52b8770 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182908 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-03-12slideshow: fix para. rendering when using SdrBlockTextPrimitive2DTomaž Vajngerl
If using an empty ViewInformation, it is possible that the prim. decomposition is redone, when a different ViewInformation is used. This removes all visibility flags for the paragraphs, so the whole text is rendered. This fixes the issue by using the same instance of the ViewInformation that is also used later for rendering the primitives to the VirtualDevice, so the buffered decomposition is used. Also a test is added - it checks the hash of the buffer, which should be different for all 3 layers. For this the tostring has to be moved to the common hash.hxx, so we can reuse it in out tests. Includes: Author: Marco Cecchetti <marco.cecchetti@collabora.com> AuthorDate: Wed Mar 5 23:15:33 2025 +0100 slideshow: regression: layer with paragraph has not the expected content Change-Id: I850c6922cdd358eee35074fbff04f238994b2c76 Otherwise 'make -C sd -sr CppunitTest_sd_tiledrendering CPPUNIT_TEST_NAME=testSlideshowLayeredRendering_Animation_DifferentKindOfTextBox' would fail. Change-Id: I4c951215a52e302d3b7b60a30c1b995002e53a4b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182833 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2025-03-06tdf#161583 drawinglayer,editeng,svx,sd: add "Name" to SvxURLField ...Michael Stahl
... and use for PDF export, instead of the representation, which appears to be wrong. Strangely the Hyperlink dialog already allowed to insert a Name, but it was not actually set in the document. (regression from commit fa3f04bdd4f73a1b3be70dfb709c44638ef7e3d9) Change-Id: Ic21bbe8ead9f85dfbe0827b0051ecb68aeff0beb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182597 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2025-03-04tdf#165437: regression: CairoSDPR: Exclude SDPR when mirroredArmin Le Grand (Collabora)
This one is similar to tdf#165061 due to not using CairoSDPR when RTL is used, but it seems that not all cases of 'mirroring' are covered with using IsRTLEnabled. It also needs to check HasMirroredGraphics, so I added that. Change-Id: Ia86add7841e69657d8f64f7001eea4a57e927043 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182481 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2025-02-26use more concrete UNO types in some local varsNoel Grandin
found by a little plugin I created. Plugin parked into store/ folder because it needs hand-holding when run. Change-Id: I2b4da7378f0becbc5f020ac9e78cd765aa0119b4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181768 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2025-02-13tdf#165061 CairoSDPR: regression: Fix RTL usageArmin Le Grand (Collabora)
See comments in task, for now disable using SDPR when RTL is enabled. Change-Id: I9dabe2324fb9e6b190ebb3851dc73b2c7dacf84d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181604 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2025-02-12tdf#145538 used range loop in textbreakuphelper.cxxasif196
Change-Id: I529dfdee60055cb27af2ef6ba3ae50694ac191e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180554 Reviewed-by: Hossein <hossein@libreoffice.org> Tested-by: Jenkins
2025-01-31tdf#164476 CiaroSDPR: improve ControlPrimitive2D renderingArmin Le Grand (Collabora)
The task shows that for some situations the Controls do not get vbisualized. These *should* be child windows of the panel containing them, but fir some reason these seem to get incarnated by being 'painted'. Problem is that for SDPRs an OutputDevice to do so is not available - by purpose. Luckily it is possible to use a awt::XGraphics and 'paint' from there. It would also be possible to find out why the child windows do not get constructed and where this may need to be done, but for now just add 'painting' the Controls by using the path utilizing the awt::XGraphics mechanism. For that purpose, do set an awt::XGraphics at the CairoSDPR if it gets constructed using an OutputDevice. It may be that we need to think about how to solve this for SDPRs that get constructed from scratch, e.g. when using createPixelProcessor2DFromScratch. This would mean to somehow construct a awt::XGraphics from a cairo surface, probably using an OutputDevice as in-betwen step, but for now this change solves the problem. Change-Id: I3bc653deab7f0b2902081b0fdbd501dfcc78383b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180967 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2025-01-29Fix typoAndrea Gelmini
Change-Id: If596f94b80ee9a7d203ccf04f74d94ff8636e069 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180891 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2025-01-29SAL_INFO the result of checkCoordinateLimitWorkaroundNeededForUsedCairoStephan Bergmann
Change-Id: I88a021042ccf4e69d550a15eb9555c8f36437c8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180887 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2025-01-29tdf#164403 CairoSDPR: adapt hairline widthArmin Le Grand (Collabora)
If Cairo Coordinate Limit Workaround is Active do also adapt hairline width to 1.0 since we (have to) fallback to render in view coordinates. Change-Id: I2216c1728355b5e76ee04f699193a896f9c4fd4b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180860 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2025-01-25tdf#164793: fix misplaced roundingMike Kaganski
Regression after commit bc0ab08634f59e1a1814e575fe6ad5e50bf1aee1, where I confused what neede to be rounded. Change-Id: Ib150ea1989ed7241747fe4a89bce051478a54bfc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180737 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-01-24Fix typo in codeAndrea Gelmini
"paintPolyPoylgonRGBA"->"paintPolyPolygonRGBA" Change-Id: I9969634d9bd286c25b8c1953b1b7ddf1a4bf4629 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180654 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2025-01-23Fix typoAndrea Gelmini
Change-Id: Id343170838639e1b3f6e762f7769a9f0b066f9be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180653 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2025-01-23Fix typosAndrea Gelmini
Change-Id: I6cee3b0b283feff5b153301bed5a0cae2ef88eea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180652 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2025-01-23Fix typoAndrea Gelmini
Change-Id: Ia7bf5acfdc6b30f31d29d7938c419f9e26b43ec4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180657 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2025-01-22Drop unused 'using namespace'Mike Kaganski
Change-Id: Ieae92ec95fee8d506fde9b21ac6551e83bd2750c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180594 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-01-21tdf#164403 CairoSDPR: Solve Cairo's 24.8 coordinate problemArmin Le Grand (Collabora)
Thus Cairo is offering a full-fledged double precision API but internally uses a 24.8 fixed-float format (see https://gitlab. freedesktop.org/cairo/cairo/-/issues/252, thanks Caolan for finding that). This seems to be the case for linux and windows implementations. Due to the API being on double precision this is an implementation detail, but it has to be taken into account when using cairo. It is not officially documented what is a shame - it should be somewhere in the readmes/ documentation at a prominent place. 24.8 means coordinates are limited to +/- 2^23 (usually minus one) and [0/256 .. 255/256] places after comma. This is unfortunately not limited to the view coordinates - that would be acceptable, discrete/pixel areas of that size should be fine, BUT used with transformations. Thus when having any coordinates beyond that limit - and with double precision and transformations we have that here - cairo just 'cuts' the coordinates to it's min/max 24.8 format. This is not acceptable for e.g. a cad system, and even leads to problems in something like an office suite as we see. It implies that using cairo in a safe way means to basically use linear algebra yourself in your app and use cairo only without transformations and with discrete view coordinates (pixels). AND to know about that limitation in the 1st place ... Well, cairo works well and that problem happens until now in one place in writer below page 490. Let's be pragmatic. Key is to *detect* the situation. Always doing own transformations is possible, but not nice: I *could* always transform the polygon to screen coordinates, but that will kill the PolyPolygon buffering mechanism (in chart we have PolyPolygons with 80.000 entries :-); These are held in cairo_path_t form at the original PolyPolygon to not need to transform them every time, but let Cairo do that. The idea is that when Cairo impl may use HW on the system to do that (HW can do that nowadays) while rendering the PolyPolygon from the object model would have to be converted just once to Cairo form and used multiple times... Cairo *should* be fair, document this and allow you to test/ ask if this limit exists in the version you are using, but it does not. Thus I suppose to detect that situation as 'cheap' as possible and react to it - e.g. in writer when below page 490. But not only - it might be possibe to construct draw/impress pages (free definable) that also reach that limit. With detecting as cheap as possible I mean: Naturally you would start to test your geometry to be painted if it is overlapping or outside that range defined by 24.8, but that would already involve transforming all geometry by world and view transformations. I think it should be okay to just take the target area (starting at 0,0 and having a size in pixels) and transforming that back to logical world coordinates. Then this needs to be checked only if view transformation changes, not object transformation. Usually view transformation is setup and all/many objects are painted to it using object transformations. Detection should then only be needed when view transform changes. Thus I added a test (see checkCoordinateLimitWorkaroundNeededForUsedCairo()). This is esecuted once per office runtime. If it detects that the problem is there it sets a flag. Depending on this the view coordinates are then transformed to logic coordinates and checked if these are completely inside the coordinate area that ciaro *can* correctly handle. This has to be done once per CariroSDPR since (currently) ViewTransformation is not changed (has to be adapted if this should happen one day). Based on that the single helpers on the renderer have to be adapted: Simplest is just to render using ViewCoordinates - and do transform object geometry using basegfx/our own stuff that does that correctly (with ease :-). Done that, checked, works AFAICT. What a bad surprise, but I can work around it... Change-Id: Ic33d6ccfe9854af396d0ac9f14c76eb25bb9e4e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180529 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2025-01-20tdf#164622 - SVG: fix broken cropped svg files at metafile exportBalazs Varga
For creating metafile, there mask polygon from MaskPrimitive2D needs to be closed. Otherwise later during the metafile export the we will skipp the rendering of the last points of the polylines. SVG clipping paths: "A clipping path is a set of closed vector path that may consist of an arbitrary number of straight and curved segments." Change-Id: I21487a81b904ec7ec5c6bd2a89b7539aeb86d606 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180278 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2025-01-12pdf: add PDF 2.0 support for /Title structure elementTomaž Vajngerl
Add support to PDF export to handle /Title structure element and fallback to /P (paragraph) if the PDF version is not PDF 2.0. Then add /Title structure element in writer if the style name of the paragraph is "Title". Change-Id: Ia8faab09bf3c97423d154deb7f1eb69860ce857a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180122 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2025-01-11pdf: change StructElement to enum class, move out of PDFWriterTomaž Vajngerl
Moves the StructElement out of PDFWriter and changes it to enum class. This makes it mroe type safe, easier to search and more clear what type we are using. Change-Id: Icf469319a01f58397b131c3517bc75fba4072500 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179977 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2025-01-02slideshow: Render each animated paragraph in its own layerTomaž Vajngerl
We need to render each animated paragraph of a SdrTextObj in its own layer. This is not easy to do, so modify the PrimitiveContainer after rendering and turn off all the paragraphs that shouldn't be rendered. In addition also turn off rendering of the object itself (the fill and stroke). This can be done by setting the newly added setVisible method on the desired TextHierarchyParagraphPrimitive2D to false (and others to true), and turning the primitives to render the object to setVisible = false. If the primitive is not "visible" it will be skipped in the when rendering with VclPixelProcessor2D. Also changes the SlideshowLayerRenderer to take into account the rendering of paragraphs. We remember all the paragraphs for an text object that are animated, then we take this into account when we do render passes. We also need to take care of the paragraph hash, which needs to be set consistently for all animated paragraphs (so the layers can be identified correctly for animated paragraphs). Change-Id: Ice3b9e1f586c3fca81cf5da809fa88c4b9c87c37 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179599 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-12-20Fix typoAndrea Gelmini
Change-Id: I1d2bf150ffc29c65b0ac35a8e261b65f56514b7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178882 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-12-19tdf#164270 CairoSDPR: Correct Control renderingArmin Le Grand (Collabora)
Controls need not to be rendered when they are visible as Windows (they then render themselves). Also added some needed cleanups for better display of control primitive decomposition as Bitmap. Change-Id: I976cd791f9f080a7ab567232303d5d4f0b6dff05 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178725 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-12-02tdf#160084 Simplify comparison for basegfx::fToolsBogdan Buzea
Change-Id: I8ef1df248d3ed9fbc804e53897ca934cce9683e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176779 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-11-21no longer need this svtools/drawinglayer hackNoel Grandin
after commit 664ecbd8916478cdc28a9c793fbdb9359b3cac64 Author: Noel Grandin <noelgrandin@gmail.com> Date: Wed Nov 20 16:08:14 2024 +0200 remove OutDevSupportType::TransparentRect Change-Id: I57804ec9e9967c7082a1f657165d967d75b1dedf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176910 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-11-11loplugin:reftotemp in drawinglayer..frameworkNoel Grandin
Change-Id: I31618b4ae7ea4e37834bffc89e352b4c33eda14d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176372 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-11-11clang-tidy: performance-unnecessary-copy-initialization in drawinglayerNoel Grandin
Change-Id: I7ed82c26a5c9d5e7803776e96b19bd8f4d98259e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176393 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-11-10tdf#163486: PVS: Identical branchesBogdan Buzea
V1037 Two or more case-branches perform the same actions. Check lines: 94, 99 Change-Id: I406b94c79426cebbd4813a019389d0cac0616bbf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175226 Tested-by: Jenkins Reviewed-by: David Gilbert <freedesktop@treblig.org>
2024-11-08no need to take a copy of the getProcessComponentContext return valueNoel Grandin
we can just take a "const &". (found by running clang-tidy with the performance-unnecessary-copy-initialization warning) Change-Id: I20fd208c65303da78170b1ac06c638fdf3aa094b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176267 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-11-04new loplugin:staticconstexprNoel Grandin
Change-Id: Ida1996dfffa106bf95fd064e8191b8033b4002f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175336 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-10-31convert KernArray from sal_Int32 to doubleNoel Grandin
which allows us to eliminate a bunch of rounding at various layers, and consequently maintain a lot more precision Change-Id: I911dedd7c041c1d67396c082e5695346ea689acb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175814 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-10-26cid#1555767 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1555770 COPY_INSTEAD_OF_MOVE cid#1555788 COPY_INSTEAD_OF_MOVE cid#1555789 COPY_INSTEAD_OF_MOVE cid#1555798 COPY_INSTEAD_OF_MOVE cid#1555816 COPY_INSTEAD_OF_MOVE cid#1555822 COPY_INSTEAD_OF_MOVE cid#1555835 COPY_INSTEAD_OF_MOVE cid#1555845 COPY_INSTEAD_OF_MOVE cid#1555859 COPY_INSTEAD_OF_MOVE cid#1555864 COPY_INSTEAD_OF_MOVE cid#1555868 COPY_INSTEAD_OF_MOVE cid#1555892 COPY_INSTEAD_OF_MOVE cid#1555896 COPY_INSTEAD_OF_MOVE cid#1555921 COPY_INSTEAD_OF_MOVE cid#1555932 COPY_INSTEAD_OF_MOVE cid#1555935 COPY_INSTEAD_OF_MOVE cid#1555944 COPY_INSTEAD_OF_MOVE cid#1555952 COPY_INSTEAD_OF_MOVE cid#1555985 COPY_INSTEAD_OF_MOVE cid#1556024 COPY_INSTEAD_OF_MOVE cid#1556038 COPY_INSTEAD_OF_MOVE cid#1556042 COPY_INSTEAD_OF_MOVE cid#1556044 COPY_INSTEAD_OF_MOVE cid#1556060 COPY_INSTEAD_OF_MOVE cid#1556083 COPY_INSTEAD_OF_MOVE cid#1556085 COPY_INSTEAD_OF_MOVE cid#1556090 COPY_INSTEAD_OF_MOVE cid#1556136 COPY_INSTEAD_OF_MOVE cid#1556157 COPY_INSTEAD_OF_MOVE cid#1556159 COPY_INSTEAD_OF_MOVE cid#1556172 COPY_INSTEAD_OF_MOVE cid#1556179 COPY_INSTEAD_OF_MOVE cid#1556187 COPY_INSTEAD_OF_MOVE cid#1556255 COPY_INSTEAD_OF_MOVE cid#1556256 COPY_INSTEAD_OF_MOVE cid#1556266 COPY_INSTEAD_OF_MOVE cid#1556275 COPY_INSTEAD_OF_MOVE cid#1556290 COPY_INSTEAD_OF_MOVE cid#1556294 COPY_INSTEAD_OF_MOVE cid#1556301 COPY_INSTEAD_OF_MOVE cid#1556311 COPY_INSTEAD_OF_MOVE cid#1556318 COPY_INSTEAD_OF_MOVE cid#1556326 COPY_INSTEAD_OF_MOVE cid#1556369 COPY_INSTEAD_OF_MOVE cid#1556374 COPY_INSTEAD_OF_MOVE cid#1556387 COPY_INSTEAD_OF_MOVE cid#1556388 COPY_INSTEAD_OF_MOVE cid#1556417 COPY_INSTEAD_OF_MOVE cid#1556425 COPY_INSTEAD_OF_MOVE cid#1556435 COPY_INSTEAD_OF_MOVE cid#1556495 COPY_INSTEAD_OF_MOVE cid#1556497 COPY_INSTEAD_OF_MOVE cid#1556501 COPY_INSTEAD_OF_MOVE cid#1556503 COPY_INSTEAD_OF_MOVE cid#1556520 COPY_INSTEAD_OF_MOVE cid#1556523 COPY_INSTEAD_OF_MOVE cid#1556562 COPY_INSTEAD_OF_MOVE cid#1556573 COPY_INSTEAD_OF_MOVE cid#1556576 COPY_INSTEAD_OF_MOVE cid#1556598 COPY_INSTEAD_OF_MOVE cid#1556615 COPY_INSTEAD_OF_MOVE cid#1556626 COPY_INSTEAD_OF_MOVE cid#1556671 COPY_INSTEAD_OF_MOVE cid#1556689 COPY_INSTEAD_OF_MOVE cid#1556701 COPY_INSTEAD_OF_MOVE cid#1556713 COPY_INSTEAD_OF_MOVE cid#1556758 COPY_INSTEAD_OF_MOVE cid#1556759 COPY_INSTEAD_OF_MOVE cid#1556788 COPY_INSTEAD_OF_MOVE cid#1556811 COPY_INSTEAD_OF_MOVE cid#1556821 COPY_INSTEAD_OF_MOVE cid#1556824 COPY_INSTEAD_OF_MOVE cid#1556825 COPY_INSTEAD_OF_MOVE cid#1556862 COPY_INSTEAD_OF_MOVE Change-Id: I4925a79688a983bb07252600430039ec0bcb75b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175678 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins