summaryrefslogtreecommitdiff
path: root/drawinglayer
AgeCommit message (Collapse)Author
2024-09-05drawinglayer: getHeight() -> getWidth()Xisco Fauli
Since 01ded1e6d362dbcd7148334c6965d6ad00981d4a "WMF tdf#55058 tdf#142722 Add implementation of BitBlt and StretchBlt" Change-Id: Ib99e940c954fe44f2dbee2b14dfa9d2c79468500 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172919 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
2024-09-05tdf#161724: Revert "tdf#153008 svx: impl crop for stretched bitmap fill"Xisco Fauli
This reverts commit c30c1d12f283e75fdcc5bb508a79a9d33a431d28. it even broke the original sample file reported in tdf#153008 See https://bug-attachments.documentfoundation.org/attachment.cgi?id=196248 The original issue was reported in tdf#95165 but it doesn't work in all cases, making it much worse in some cases where images become very stretched Reverting for now, specially towards libreoffice-24-8 and libreoffice-24-8-1 Change-Id: Ib94d2784d701d37853ce9b17135b36f26a5c084b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172913 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-09-04Typo mnClipRecurstionCount->mnClipRecursionCountJulien Nabet
Change-Id: I7ce859d402626da156ff36247d987a3fe3010e47 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172837 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-09-04Fix typoAndrea Gelmini
Change-Id: I24b0dc42a8b710aaa502f590a7071e463d1aeb14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172841 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-09-03tdf#160084 Simplify comparison for basegfx::fToolsBogdan Buzea
Change-Id: I5fc9823b6d0ca88505e8d4e6127fac7e776fa1a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171784 Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-09-03CairoSDPR: Fixed a problem with cairo_clip (see comments)Armin Le Grand (Collabora)
Change-Id: I14d477dbeb9a18cc6f9d750b5d1f837117c22eaf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172798 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-09-02CiaroSDPR: Small optimizationsArmin Le Grand (allotropia)
Change-Id: Iecfec4668a465cc2fd3687d66f67de6e0d1e33c3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172687 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-29tdf#161826 - Add uniform Glow effect for texts in shapesBalazs Varga
- Add new text Glow effect properties for shapes - Using TextGlowPrimitive for rendering uniform text glow in shapes - Add/allow new UI Glow Effect for texts in shapes on sidebar (Only for Impress/Draw and Calc) - Import/Export ooxml files with Glow effect on texts in shapes (Only PPTX/XLSX) - Import/Export odf files with Glow effect on texts in shapes - Add unit test for glow text attributes in ODF - Add uni tests for OOXML import/export Note: Also this patch effects on tdf#144061 - Effects: Allow GLOW to apply to Text (as we have for shapes) Change-Id: I16586c01654f197f532129e4e06aa2ef9f214395 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172216 Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de> Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2024-08-28CairoSDPR: Use integer & shifting in LuminanceToAlpha conversionArmin Le Grand (Collabora)
Change-Id: I8a6b6341295487d7590d166d327ea90b7d1315db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172480 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-28tdf#161983 Page background image follows scrolled viewNoel Grandin
regression from commit 2a9b53bb9f85c2869c779dde36a2d77353fef14b Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Thu Jun 27 10:18:15 2024 +0200 tdf#160345 Slow rendering of filled polygon Change-Id: I38abd82d33cc25a56a26d8ccac26fb5f90e9c0fb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172526 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-08-27CairoSDPR: Make using SDPR dependent of ExperimentalModeArmin Le Grand (Collabora)
Change-Id: Ia25fe2f3c5ff4904530ea8c296d10bbbe2823af5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172394 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-26cid#1618310 COPY_INSTEAD_OF_MOVECaolán McNamara
Change-Id: Ic53365af1b6e075016ba61c438e3bb7dd4c25f00 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172382 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-24Fix typoAndrea Gelmini
Change-Id: I26e273eccd4f1fcb525628a47a24c9a9f6f6f585 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172353 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2024-08-24CairoSDPR: Let VclPixelProcessor2D use RedLining decomposeArmin Le Grand (Collabora)
VclPixelProcessor2D used PRIMITIVE2D_ID_WRONGSPELLPRIMITIVE2D to render WrongSpellPrimitive2D using processWrongSpellPrimitive2D and there renderWrongSpellPrimitive2D. That again used DrawWaveLine at OutputDevice. This again does some very special things, e.g. it uses the set Font at the OutputDevice which hopefully is the one the redlining refers to (info from that has to be added to the WrongSpellPrimitive2D if needed, in this case the LogicalFontInstance's GetWavelineUnderlineSize result). It seems to rely on the Text being redlined being 'painted' directly before this. It also renders the WaveLine to a BitmapEx and does pixel- based operations on it (probably to 'clip' the WaveLine instead of adding needed partial curve geometry), and adds that BitmapData to a cache. It also mentions it 'make sure the waveline does not exceed the descent to avoid paint problems', probably because when not handling it as Primitive from a PrimitiveProcessor the invalidation Range will not fit (it still uses the getB2DRange of the WrongSpellPrimitive2D to do that part indirectly), so these regions will probably not always have fit. Nothing of this is needed, after I made the WrongSpellPrimitive2D to use view-independent (aka pixel- oriented scaling, fixed size) to behave like the current paint the VclPixelProcessor2D can just use the decompose and render the view-dependent and buffered visualization of the WaveLine. NOTE: It is not possible to completely get rid of OutputDevice::DrawWaveLine since it is used in some cases in Writer directly, also in ImpEditEngine::Paint when the EditEngine is painting directly (very rare now). NOTE: Also impCreateTextPortionPrimitive did swap start/end in preparationm to create a WrongSpellPrimitive2D (look for tdf#151968), this will no longer be needed. Change-Id: I31aec8ea9c2e3c574ad471082612a10d95810f3b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172331 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-23CairoSDPR: Adapt WrongSpell Primitive to View-IndependentArmin Le Grand (Collabora)
Change-Id: If739dd9f28f56874978c7b3a76e1234e5f430c9f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172319 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-23Fix typoAndrea Gelmini
Change-Id: I7db2f31467f79c05595cf0ac2fa8b1d457a4cc3a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172313 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-22CairoSDPR: Add support for SVG Gradient direct renderingArmin Le Grand (Collabora)
Change-Id: I7fb1c885e46a23e999ea4c98a73d3d526a2923e5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172245 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-21Fix typoAndrea Gelmini
Change-Id: I85261133e191b40de21fd25e9c34351f71a1a219 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172176 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-21cid#1555812 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1556056 COPY_INSTEAD_OF_MOVE cid#1556907 COPY_INSTEAD_OF_MOVE cid#1556957 COPY_INSTEAD_OF_MOVE cid#1556970 COPY_INSTEAD_OF_MOVE cid#1607095 COPY_INSTEAD_OF_MOVE Change-Id: I51112b3a63b8e9333e3eaaeb55b764e6c449a5ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172117 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-20doesn't look safe to move this dxarrayCaolán McNamara
given the use of rDXArray after move . Change-Id: I27ed26228bb4a43b6dcb6edb4586e0727389dcbb Change-Id: I66e0a6dd1837e598b620692b405bb32f79470e44 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172116 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-08-20CairoSDPR: Finetuning some Cairo-ValuesArmin Le Grand (Collabora)
Experimented with painting 'problematic' bitmaps e.g. RGBA 1xN or Nx1 pixels -> Cairo paints out of bounds (?), so had to clip that. For more info, see added code comments. Change-Id: I4dcd488e5e0c692e236136a216ad7b460d681233 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172112 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-19CairoSDPR: Make PixelSnap better alignedArmin Le Grand (Collabora)
Change-Id: I64ca3e6bd0690ea14e95f3ed0969c320a45f30d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172043 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-19cid#1557694 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1557162 COPY_INSTEAD_OF_MOVE cid#1556896 COPY_INSTEAD_OF_MOVE cid#1556893 COPY_INSTEAD_OF_MOVE cid#1556873 COPY_INSTEAD_OF_MOVE cid#1556872 COPY_INSTEAD_OF_MOVE cid#1556789 COPY_INSTEAD_OF_MOVE cid#1556570 COPY_INSTEAD_OF_MOVE cid#1556519 COPY_INSTEAD_OF_MOVE cid#1556516 COPY_INSTEAD_OF_MOVE cid#1556451 COPY_INSTEAD_OF_MOVE cid#1556396 COPY_INSTEAD_OF_MOVE cid#1556237 COPY_INSTEAD_OF_MOVE cid#1556113 COPY_INSTEAD_OF_MOVE cid#1556094 COPY_INSTEAD_OF_MOVE cid#1555991 COPY_INSTEAD_OF_MOVE cid#1555982 COPY_INSTEAD_OF_MOVE cid#1555885 COPY_INSTEAD_OF_MOVE cid#1555702 COPY_INSTEAD_OF_MOVE cid#1555610 COPY_INSTEAD_OF_MOVE cid#1555450 COPY_INSTEAD_OF_MOVE cid#1555327 COPY_INSTEAD_OF_MOVE cid#1555145 COPY_INSTEAD_OF_MOVE Change-Id: I38cc1a38e8cb2c33f33e0fc3afd34a0fb39e5ec1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172028 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-19Fix typoAndrea Gelmini
Change-Id: I0c09927dd928281a9a006bd03872b5484d6151ea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171963 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-18cid#1557699 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1557435 COPY_INSTEAD_OF_MOVE cid#1557307 COPY_INSTEAD_OF_MOVE cid#1557209 COPY_INSTEAD_OF_MOVE cid#1557192 COPY_INSTEAD_OF_MOVE cid#1557184 COPY_INSTEAD_OF_MOVE cid#1557183 COPY_INSTEAD_OF_MOVE cid#1557171 COPY_INSTEAD_OF_MOVE cid#1557150 COPY_INSTEAD_OF_MOVE cid#1557148 COPY_INSTEAD_OF_MOVE cid#1557123 COPY_INSTEAD_OF_MOVE cid#1557118 COPY_INSTEAD_OF_MOVE cid#1557116 COPY_INSTEAD_OF_MOVE cid#1557103 COPY_INSTEAD_OF_MOVE cid#1557078 COPY_INSTEAD_OF_MOVE cid#1557075 COPY_INSTEAD_OF_MOVE cid#1557071 COPY_INSTEAD_OF_MOVE cid#1557070 COPY_INSTEAD_OF_MOVE cid#1557067 COPY_INSTEAD_OF_MOVE cid#1557049 COPY_INSTEAD_OF_MOVE cid#1557046 COPY_INSTEAD_OF_MOVE cid#1557042 COPY_INSTEAD_OF_MOVE cid#1557036 COPY_INSTEAD_OF_MOVE cid#1557030 COPY_INSTEAD_OF_MOVE cid#1557024 COPY_INSTEAD_OF_MOVE cid#1557012 COPY_INSTEAD_OF_MOVE cid#1557009 COPY_INSTEAD_OF_MOVE cid#1557008 COPY_INSTEAD_OF_MOVE cid#1557004 COPY_INSTEAD_OF_MOVE cid#1556999 COPY_INSTEAD_OF_MOVE cid#1556992 COPY_INSTEAD_OF_MOVE cid#1556987 COPY_INSTEAD_OF_MOVE cid#1556984 COPY_INSTEAD_OF_MOVE cid#1556981 COPY_INSTEAD_OF_MOVE Change-Id: Id2687aa282f4e2d4b8053b73c7aa1a74a9516b16 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171974 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16CairoSDPR: Add support for Relief for Text RenderingArmin Le Grand (Collabora)
Change-Id: Idcb33e0f799b2219a4e737d0421bc21d85b5c7aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171915 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2024-08-16Fix typoAndrea Gelmini
Change-Id: I2439bdbaf57e3ac96b11951b9b936c19871f202a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171935 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2024-08-16Fix typoAndrea Gelmini
Change-Id: I7097a6bc16902814bcd27b7487f96952817c96f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171936 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-16cid#1557618 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1557535 COPY_INSTEAD_OF_MOVE cid#1557520 COPY_INSTEAD_OF_MOVE cid#1557513 COPY_INSTEAD_OF_MOVE cid#1557503 COPY_INSTEAD_OF_MOVE cid#1557487 COPY_INSTEAD_OF_MOVE cid#1557483 COPY_INSTEAD_OF_MOVE cid#1557479 COPY_INSTEAD_OF_MOVE cid#1557474 COPY_INSTEAD_OF_MOVE cid#1557461 COPY_INSTEAD_OF_MOVE cid#1557446 COPY_INSTEAD_OF_MOVE cid#1557445 COPY_INSTEAD_OF_MOVE cid#1557441 COPY_INSTEAD_OF_MOVE cid#1557435 COPY_INSTEAD_OF_MOVE cid#1557433 COPY_INSTEAD_OF_MOVE cid#1557429 COPY_INSTEAD_OF_MOVE cid#1557375 COPY_INSTEAD_OF_MOVE cid#1557372 COPY_INSTEAD_OF_MOVE cid#1557356 COPY_INSTEAD_OF_MOVE cid#1557350 COPY_INSTEAD_OF_MOVE cid#1557344 COPY_INSTEAD_OF_MOVE cid#1557339 COPY_INSTEAD_OF_MOVE cid#1557332 COPY_INSTEAD_OF_MOVE cid#1557330 COPY_INSTEAD_OF_MOVE cid#1557328 COPY_INSTEAD_OF_MOVE cid#1557323 COPY_INSTEAD_OF_MOVE cid#1557315 COPY_INSTEAD_OF_MOVE cid#1557313 COPY_INSTEAD_OF_MOVE cid#1557304 COPY_INSTEAD_OF_MOVE cid#1557297 COPY_INSTEAD_OF_MOVE cid#1557291 COPY_INSTEAD_OF_MOVE cid#1557290 COPY_INSTEAD_OF_MOVE cid#1557271 COPY_INSTEAD_OF_MOVE cid#1557266 COPY_INSTEAD_OF_MOVE cid#1557262 COPY_INSTEAD_OF_MOVE cid#1557259 COPY_INSTEAD_OF_MOVE cid#1557246 COPY_INSTEAD_OF_MOVE cid#1557242 COPY_INSTEAD_OF_MOVE cid#1557241 COPY_INSTEAD_OF_MOVE cid#1557236 COPY_INSTEAD_OF_MOVE cid#1557228 COPY_INSTEAD_OF_MOVE cid#1557225 COPY_INSTEAD_OF_MOVE cid#1557221 COPY_INSTEAD_OF_MOVE cid#1557217 COPY_INSTEAD_OF_MOVE cid#1557213 COPY_INSTEAD_OF_MOVE cid#1557211 COPY_INSTEAD_OF_MOVE cid#1557209 COPY_INSTEAD_OF_MOVE cid#1557205 COPY_INSTEAD_OF_MOVE cid#1557204 COPY_INSTEAD_OF_MOVE cid#1557193 COPY_INSTEAD_OF_MOVE cid#1556082 COPY_INSTEAD_OF_MOVE Change-Id: I07f195a79a69d4bac0d14317854efc88d6fe94d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171927 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16cid#1616498 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1616499 COPY_INSTEAD_OF_MOVE Change-Id: I21b089cab036902a7ba5b725a6eae0f1212f2b31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171923 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-15CairoSDPR: Add outline to direct text renderingArmin Le Grand (Collabora)
Change-Id: I8c8820066a402653bf0f49bd78a98be692530e42 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171892 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-14Fix typoAndrea Gelmini
Change-Id: I26e89e37c6606221f95105e7104355113fe5febf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171864 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-14CairoSDPR: Handle EmphasisMarksArmin Le Grand (Collabora)
Handling EmphasisMarks for direct text rendering was a hard task - the EmphasisMark stuff is deeply buried in vcl (would have needed to move quite some includes from vcl to public) and thus hard to use. It is also quite old (tools Polygon, Rectangle). It was missing in the decomposition of the TextDecoratedPortionPrimitive2D (for good reason), but is needed now. I found a way using a callback lambda function to create the needed geometry in vcl and hand back the needed data to the caller, in this case to the decomposition. Adding it to the decomposition of TextDecoratedPortionPrimitive2D also guarantees that other renderers/usages will do the correct thing and all will look identical. Interestingly EmphasisMarks were never added to Metafiles (see OutputDevice::ImplDrawEmphasisMarks) so they were not 'missing' in Metafile-based exports. But for SDPRs they have to work. I added another encapsulating TextHierarchyPrimitive to encapsulate primitives that do represent EmphasisMarks and added to ignore these in the VclMetafileProcessor2D (as needed). Change-Id: I5b5c1528d86a123df2beb57d8366f05aa71e77cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171826 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-11cid#1558088 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1558080 COPY_INSTEAD_OF_MOVE cid#1558077 COPY_INSTEAD_OF_MOVE cid#1558055 COPY_INSTEAD_OF_MOVE cid#1558043 COPY_INSTEAD_OF_MOVE cid#1558039 COPY_INSTEAD_OF_MOVE cid#1558015 COPY_INSTEAD_OF_MOVE cid#1558014 COPY_INSTEAD_OF_MOVE cid#1558009 COPY_INSTEAD_OF_MOVE cid#1558002 COPY_INSTEAD_OF_MOVE cid#1557998 COPY_INSTEAD_OF_MOVE cid#1557996 COPY_INSTEAD_OF_MOVE cid#1557990 COPY_INSTEAD_OF_MOVE cid#1557986 COPY_INSTEAD_OF_MOVE cid#1557980 COPY_INSTEAD_OF_MOVE cid#1557971 COPY_INSTEAD_OF_MOVE cid#1557968 COPY_INSTEAD_OF_MOVE cid#1557967 COPY_INSTEAD_OF_MOVE cid#1557961 COPY_INSTEAD_OF_MOVE cid#1557959 COPY_INSTEAD_OF_MOVE cid#1557958 COPY_INSTEAD_OF_MOVE cid#1557956 COPY_INSTEAD_OF_MOVE cid#1557953 COPY_INSTEAD_OF_MOVE cid#1557949 COPY_INSTEAD_OF_MOVE cid#1557947 COPY_INSTEAD_OF_MOVE cid#1557940 COPY_INSTEAD_OF_MOVE cid#1557931 COPY_INSTEAD_OF_MOVE cid#1557930 COPY_INSTEAD_OF_MOVE cid#1557915 COPY_INSTEAD_OF_MOVE cid#1557913 COPY_INSTEAD_OF_MOVE cid#1557910 COPY_INSTEAD_OF_MOVE cid#1557886 COPY_INSTEAD_OF_MOVE cid#1557884 COPY_INSTEAD_OF_MOVE cid#1557880 COPY_INSTEAD_OF_MOVE cid#1557875 COPY_INSTEAD_OF_MOVE cid#1557871 COPY_INSTEAD_OF_MOVE cid#1557862 COPY_INSTEAD_OF_MOVE cid#1557847 COPY_INSTEAD_OF_MOVE cid#1557845 COPY_INSTEAD_OF_MOVE cid#1557844 COPY_INSTEAD_OF_MOVE cid#1557843 COPY_INSTEAD_OF_MOVE cid#1557838 COPY_INSTEAD_OF_MOVE cid#1557835 COPY_INSTEAD_OF_MOVE cid#1557834 COPY_INSTEAD_OF_MOVE cid#1557828 COPY_INSTEAD_OF_MOVE cid#1557823 COPY_INSTEAD_OF_MOVE cid#1557817 COPY_INSTEAD_OF_MOVE cid#1557813 COPY_INSTEAD_OF_MOVE cid#1557812 COPY_INSTEAD_OF_MOVE Change-Id: I55d4a920daa2d148683419169eb828325fd3c757 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171732 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-11Fix typoAndrea Gelmini
Change-Id: Id434deda33cc74903183b636e6da4d016e174df7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171715 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-09CairoSDPR: Support TextDecorationArmin Le Grand (Collabora)
Change-Id: I923069582bb7c5022cfbff7e869c1d577a9123ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171691 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2024-08-09Fix typoAndrea Gelmini
Change-Id: Ib6f651bd8ddbb406b7b41710cd9b522011315b66 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171656 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2024-08-09Fix typoAndrea Gelmini
Change-Id: Ib0d3d4b35c6b63189f3fa6b68c73c87f8f3f99dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171657 Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net> Tested-by: Jenkins
2024-08-09Fix typoAndrea Gelmini
Change-Id: Idff087ba5ed07ac914c8c4c568db65ef9397623c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171654 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2024-08-09Fix typoAndrea Gelmini
Change-Id: I0c2b998511ef417818e7813ae6c87d71de55c963 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171655 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2024-08-08CairoSDPR: Support ColorPolygon with AlphaGradientArmin Le Grand (Collabora)
Cairo can render RGBA gradients directly and the CairoSDPR supports that. If we have a PolyPolygon filled with single color combined with a gradient alpha the renderer could map RGB to that color and combine with the real alpha gradient steps. To support that I added another Primitive called PolyPolygonAlphaGradientPrimitive2D. It decomposes as needed (TransparencePrimitive2D if needed), so no other renderers have to be touched. The Cairo renderer supports it directly, though, what makes it much faster. Change-Id: Ie90c8bd84d6458d12443db815ced55bdea93c15c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171628 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-06CairoSDPR: Support TextBackgroundFillArmin Le Grand (Collabora)
Change-Id: Ifa00a230ad88d49ccda7c7f47b3d87870d4dfc3c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171489 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2024-08-06Fix typoAndrea Gelmini
Change-Id: Ia32b0224be6cda50ece367b9bc30813ce62f5655 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171504 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-06cid#1555415 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1555430 COPY_INSTEAD_OF_MOVE cid#1555497 COPY_INSTEAD_OF_MOVE cid#1555542 COPY_INSTEAD_OF_MOVE cid#1555543 COPY_INSTEAD_OF_MOVE cid#1555564 COPY_INSTEAD_OF_MOVE cid#1555593 COPY_INSTEAD_OF_MOVE cid#1555602 COPY_INSTEAD_OF_MOVE cid#1555610 COPY_INSTEAD_OF_MOVE cid#1555667 COPY_INSTEAD_OF_MOVE cid#1555693 COPY_INSTEAD_OF_MOVE cid#1555719 COPY_INSTEAD_OF_MOVE cid#1555757 COPY_INSTEAD_OF_MOVE cid#1555795 COPY_INSTEAD_OF_MOVE cid#1555826 COPY_INSTEAD_OF_MOVE cid#1555847 COPY_INSTEAD_OF_MOVE cid#1555851 COPY_INSTEAD_OF_MOVE cid#1555863 COPY_INSTEAD_OF_MOVE cid#1555865 COPY_INSTEAD_OF_MOVE cid#1555867 COPY_INSTEAD_OF_MOVE cid#1555869 COPY_INSTEAD_OF_MOVE cid#1555879 COPY_INSTEAD_OF_MOVE cid#1555890 COPY_INSTEAD_OF_MOVE cid#1555893 COPY_INSTEAD_OF_MOVE cid#1555900 COPY_INSTEAD_OF_MOVE cid#1555922 COPY_INSTEAD_OF_MOVE cid#1555925 COPY_INSTEAD_OF_MOVE Change-Id: I5d362a09e80eecd282e63c745bfe26eac2631a0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171492 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-08-05Fix typoAndrea Gelmini
Change-Id: I38f2c4a86ac65e3e7014108153b937eb6f755371 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171495 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2024-08-05CairoSDPR: direct text rendering using CairoArmin Le Grand (Collabora)
I have added basic support for the text primitives (TextSimplePortionPrimitive2D) to the SDPR Cairo renderer. It can now basically render Text using a fallback to the already existing CairoTextRender. NOTE: This is not yet complete, but for discussion. Change-Id: I9b0c7b6bb4892905576593ef4e2b4071c7663c63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171429 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-02tdf#162259: correctly handle font width on WindowsMike Kaganski
Unlike other platforms, on Windows, the font width is not relative to font height, but to average width of font's glyphs. This is mentioned in LogicalFontInstance::GetScale. 1. In VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D, when calculating the correction for width / height (introduced in commit cc3663bbaed4f65d64154e5f9abb51a5f622f710, 2024-04-20), the already applied X scale is now calculated using unscaled font's width. 2. Commit 8557ea84c9336ba8061246f1f46ddb6e02f413a1 (Exclude getHScale from DirectWrite font rendering, 2024-04-08) was effectively reverted, because I was wrong assuming that the code there was unnecessary. 3. Commit 2092df2a9044f1c2ae4379f48a3201e5867575a8 (tdf#161154: pass "scaling is done externally" information down the stack, 2024-05-18) was also reverted. Change-Id: I8cff39b67a6efd380f7807f5655f401bdb62cc3a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171382 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-08-02Fix wrong / misleading uses of fTools::(more|less|equal) with literal 0Mike Kaganski
These will never compare with tolerance (the zero is a special case in rtl_math_approxEqual used internally), so the calls like those don't do what they appear to do in these cases. Change-Id: I495ac92b7f45637e118e4fdc04bb6fad6fff31ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171391 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-08-01CairoSDPR: Simplify EditEngine text decompositionArmin Le Grand (Collabora)
The EditEngine decomposes it's content mainly to Prmitives (there is still a direct paint mode used in rare remaining cases which we not yet got rid of). For TABs the special case for 'extended' TABs (see format/paragraph/Tabs, FillCharacter) was handed through all layers using method DrawingTab, put into a DrawPortionInfo and held at the text primitive (TextSimplePortionPrimitive2D). While for direct paint the expansion was already done in ImpEditEngine::Paint anyways (and always painted, independent from bStripOnly what was unneccessary and I corrected that, too) it had to be done for text paint in VclProcessor2D for each repaint. This is not needed, so now the extended text created in EditEngine decompose gets used. This makes a lot of stuff simpler, including EditEngine/Outliner and some involved classes. If it somehow should show that it might be necessary to do that for each paint it should be done in the obvious way then - using an own primitive that creates the expansin in the decomposition (and buffers it). Change-Id: Ieb02219142af8f6bee01dcd658e08b185a4212cb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171380 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-07-31cid#1555587 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1555589 COPY_INSTEAD_OF_MOVE cid#1555593 COPY_INSTEAD_OF_MOVE cid#1555596 COPY_INSTEAD_OF_MOVE cid#1555602 COPY_INSTEAD_OF_MOVE cid#1555608 COPY_INSTEAD_OF_MOVE cid#1555610 COPY_INSTEAD_OF_MOVE cid#1555620 COPY_INSTEAD_OF_MOVE cid#1555623 COPY_INSTEAD_OF_MOVE cid#1555625 COPY_INSTEAD_OF_MOVE cid#1555626 COPY_INSTEAD_OF_MOVE cid#1555634 COPY_INSTEAD_OF_MOVE cid#1555638 COPY_INSTEAD_OF_MOVE cid#1555667 COPY_INSTEAD_OF_MOVE cid#1555682 COPY_INSTEAD_OF_MOVE cid#1555686 COPY_INSTEAD_OF_MOVE cid#1555702 COPY_INSTEAD_OF_MOVE cid#1555710 COPY_INSTEAD_OF_MOVE cid#1555750 COPY_INSTEAD_OF_MOVE cid#1555752 COPY_INSTEAD_OF_MOVE cid#1555761 COPY_INSTEAD_OF_MOVE cid#1555762 COPY_INSTEAD_OF_MOVE cid#1555771 COPY_INSTEAD_OF_MOVE cid#1555772 COPY_INSTEAD_OF_MOVE cid#1555784 COPY_INSTEAD_OF_MOVE cid#1555785 COPY_INSTEAD_OF_MOVE Change-Id: Ib9724230c05b2027b4edf64e6a0bb5e22a270a88 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171274 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>