summaryrefslogtreecommitdiff
path: root/canvas
AgeCommit message (Collapse)Author
2018-09-10No more need for extra local variablesStephan Bergmann
...after 453fde35bb838febf73bfda0bd981ee270c9b12e "BitmapFilter::execute can be const". This reverts the call-site changes of bce47223099bb3349d96af9d6b1fe88bcdd539df "clang-tidy bugprone-use-after-move in BitmapFilter::Filter" again. Change-Id: I5ce4eb7ddce90fb779ddfb1c5864fd4785708175 Reviewed-on: https://gerrit.libreoffice.org/60255 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-09-06clang-tidy bugprone-use-after-move in BitmapFilter::FilterNoel Grandin
which necesitated changing the API and hence the call sites Change-Id: Id417a235bf9b2bf1a3d152dc6600c0635486cafa Reviewed-on: https://gerrit.libreoffice.org/60086 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-09-06loplugin:simplifyconstruct in canvas..cuiNoel Grandin
Change-Id: I02eba1df117a9d0df42bcac13c3251cb4fa6da14 Reviewed-on: https://gerrit.libreoffice.org/60074 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-04Use more basegfx deg<->rad functions, instead of direct formulasMike Kaganski
Also make the functions constexpr. Due to slight changes in floating-point arithmetics (90.0 instead of 180.0, M_PI2 instead of M_PI resp.), results might differ in last digits (usually 17th decimal digit). This has lead to need to tweak char2dump's PieChartTest unit test. Change-Id: I20323dd7dab27e4deb408ea4181e390cc05e7cd3 Reviewed-on: https://gerrit.libreoffice.org/58583 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-07-27Remove unused type declaration CanvasRefMuhammet Kara
Change-Id: Ie40652fbe13c6bc4bd7486ed0a132db62648689c Reviewed-on: https://gerrit.libreoffice.org/58201 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-22fix oss-fuzz buildCaolán McNamara
Change-Id: I166d5f675d1b807e023cc19f72071fc77d3dd036 Reviewed-on: https://gerrit.libreoffice.org/57823 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-07-20tdf#118107 canvas opengl: avoid assertion failure with negative widthsMiklos Vajna
In case an Impress shape has a "Fade in and Swivel" animation attached, canvas calls OutputDevice::DrawBitmapEx() with a negative width. This results in a call to OutputDevice::DrawDeviceAlphaBitmap(), which asserts that the height/width is not negative. Fix the problem by transforming the bitmap before calling OutputDevice::DrawBitmapEx() in the GL case, similarly to how "complex" transformations are handled already. Change-Id: I65ccc8a984132c5921d6096bfe9c7a8fcfacd8dd Reviewed-on: https://gerrit.libreoffice.org/57774 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins
2018-07-19loplugin:constantparamNoel Grandin
Change-Id: I8e2e9009f0a70d2fa390e03688a988ac935d5f36 Reviewed-on: https://gerrit.libreoffice.org/57643 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-09Add missing sal/log.hxx headersGabor Kelemen
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it. This is a continuation of commit 6ff2d84ade299cb3d14d4110e4cf1a4b8070c030 to be able to remove those unneeded includes. This commit adds missing headers to every file found by: grep -FwL sal/log.hxx $(git grep -Elw 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF|SAL_DETAIL_LOG_STREAM|SAL_WHERE|SAL_STREAM|SAL_DEBUG') to directories from a* to configmgr Change-Id: I6ea1a7f992b1f835f5bac7a725e1135abee3f85a Reviewed-on: https://gerrit.libreoffice.org/57170 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-07-08tdf#84323 - sal - add sane sleep interface: cleanup osl_waitThreadKevin Dubrulle
Replace osl_waitThread by osl::Thread::wait. Use std::chrono instead of TimeValue. Change-Id: I71691d014feeeb0c5d0ba29d048bda8e25e6e7dd Reviewed-on: https://gerrit.libreoffice.org/57130 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-06-21use more OutputDevice::GetBitmapExNoel Grandin
instead of GetBitmap Change-Id: Ib43cfaf3c91968d623e5a24f44539368da28d36f Reviewed-on: https://gerrit.libreoffice.org/55190 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-06-05tdf#42949 remove unused compheler includes ..Jochen Nitschke
and fix the fallout Change-Id: I15bc5d626f4d157cbc69a87392078b41e621d14e Reviewed-on: https://gerrit.libreoffice.org/54882 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-05-31move some CanvasHelper::implDrawBitmap inside vclNoel Grandin
part of making mask and alpha internal details of Bitmap/BitmapEx Change-Id: I87ca24af18a29f5eb8a5761c5d95ae2806d97e77 Reviewed-on: https://gerrit.libreoffice.org/55078 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Jenkins <ci@libreoffice.org>
2018-05-30fix "vcl: move Bitmap::MakeMonochrome() to BitmapMonochromeFilter"Noel Grandin
commit 1f6af5c409105562edf2a034f4841c1aeb5a38b5 "vcl: move Bitmap::MakeMonochrome() to BitmapMonochromeFilter" seems to have dropped a line of code which means the filtering doesn't actually have an effect. Change-Id: If46c15bd9ab9d4e3911bdb9baf3091889b1f634d Reviewed-on: https://gerrit.libreoffice.org/55071 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2018-05-22loplugin:unusedfields in avmedia..comphelperNoel Grandin
Change-Id: I74f125103b67c506d9bb67537e4c4cd3f8f871da Reviewed-on: https://gerrit.libreoffice.org/54641 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-05-13vcl: move Bitmap::MakeMonochrome() to BitmapMonochromeFilterChris Sherlock
Change-Id: Iefe5be4349475a4aa0138534cf6bfe87ff7df245 Reviewed-on: https://gerrit.libreoffice.org/53280 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-05-12make Bitmap/BitmapEx constructors explicitNoel Grandin
and add BitmapEx::operator=(Bitmap const &) Image::Image(Bitmap const &) to lessen the fallout Change-Id: Iff5fab88d167a7be739c370c9933d36c297bc61c Reviewed-on: https://gerrit.libreoffice.org/54162 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-15remove some unused comphelper includesJochen Nitschke
and fix the fallout Change-Id: I5d0c2040f57a3ac354a7e277592da31d09a5f359 Reviewed-on: https://gerrit.libreoffice.org/52894 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2018-04-07Revert "long->sal_Int32 in tools/gen.hxx"Stephan Bergmann
This reverts commit 8bc951daf79decbd8a599a409c6d33c5456710e0. As discussed at <https://lists.freedesktop.org/archives/libreoffice/2018-April/079955.html> "long->sal_Int32 in tools/gen.hxx", that commit caused lots of problems with signed integer overflow, and the original plan was to redo it to consistently use sal_Int64 instead of sal_Int32. <https://gerrit.libreoffice.org/#/c/52471/> "sal_Int32->sal_Int64 in tools/gen.hxx" tried that. However, it failed miserably on Windows, causing odd failures like not writing out Pictures/*.svm streams out into .odp during CppunitTest_sd_export_ooxml2. So the next best approach is to just revert the original commit, at least for now. Includes revert of follow-up 8c50aff2175e85c54957d98ce32af40a3a87e168 "Fix Library_vclplug_qt5". Change-Id: Ia8bf34272d1ed38aac00e5d07a9d13fb03f439ae Reviewed-on: https://gerrit.libreoffice.org/52532 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-04-03long->sal_Int32 in tools/gen.hxxNoel Grandin
which triggered a lot of changes in sw/ Change-Id: Ia2aa22ea3f76463a85ea077a411246fcfed00bf6 Reviewed-on: https://gerrit.libreoffice.org/48806 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-28tdf#116646 Slideshows with transitions page swap rendering issuesNoel Grandin
regression from commit 5b75a1697250d8b2b6003c37067f39270a5ad828 move cairo extract bitmap code from canvas to vcl Change-Id: Ic8d7cd9d54010ae272073877da18a985e931e22a Reviewed-on: https://gerrit.libreoffice.org/52005 Tested-by: Jenkins <ci@libreoffice.org> Tested-by: Xisco Faulí <xiscofauli@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-20drop unnecessary includesCaolán McNamara
Change-Id: I1a817d5575bbd57ecaa874a27158b9218e4210cc Reviewed-on: https://gerrit.libreoffice.org/51603 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-19move bitmap copy code from CanvasBitmapHelper to vclNoel Grandin
part of making GetAlpha/GetMask an internal detail of vcl Change-Id: Ie1740df3d6435d9f0f2de3297e7f224d2c6b3cc5 Reviewed-on: https://gerrit.libreoffice.org/51436 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-19move pixel color extracting from canvas to BitmapExNoel Grandin
part of making GetAlpha/GetMask an internal detail of vcl Change-Id: I874a68f340cd3074cfbeb6303f52adeeb13e56a5 Reviewed-on: https://gerrit.libreoffice.org/51435 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-16move cairo extract bitmap code from canvas to vclNoel Grandin
part of making GetMask/GetAlpha an internal detail of vcl Change-Id: I45c2e9fdae08d7f444a64e8e04a6f65bb525cbd1 Reviewed-on: https://gerrit.libreoffice.org/51417 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-14loplugin:unusedmethodsNoel Grandin
Change-Id: I7c780be3e2740fd9b03c39ebe16935d61caf4f7e Reviewed-on: https://gerrit.libreoffice.org/51257 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-13loplugin:unusedmethods remove unused code from canvasNoel Grandin
which my plugin had previously been ignoring. Since that time, the plugin has gotten a little smarter, and makes less mistakes. Change-Id: Id791c932fd056ae7da833436c4dd2600b69a0bfa Reviewed-on: https://gerrit.libreoffice.org/51212 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-13make transformBitmap code from canvas to vclNoel Grandin
part of making ScopedWriteAccess an internal detail of vcl Change-Id: Ida03bc73fe746cde97f6fcb5cde2f066b63d92e9 Reviewed-on: https://gerrit.libreoffice.org/51216 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Jenkins <ci@libreoffice.org>
2018-03-13rename some mpOutdev fields to mpOutdevProviderNoel Grandin
to help my little brain keep the two things distinct Change-Id: Iaf866c410b3ce3c4720d5efff4497507f1bd57c5 Reviewed-on: https://gerrit.libreoffice.org/51210 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-11Move (and rename) graphic stuff from svtools to vclTomaž Vajngerl
This is preparing to change how GraphicManager works where it won't base itself around GraphicObject anymore but Graphic. No functional or cosmetic change was made to the classes, only changes that were needed because of the move and rename. The only thing that wasn't moved is the GraphicRenderer as it is not needed in vcl for now (but makes sense to move it in the future to keep graphic stuff together). grfmgr was renamed to GraphicObject as the GraphicManager will be changed a lot and most likely moved out, so the name grfmgr won't make any sense anymore. All the UNO implementations were renamed with a prefix Uno and used the same name as the class name. This is made to be more specific which are the Uno objects (for example graphic.cxx contained the implementation of XGraphic, which is similar to graph.cxx contains Graphic). Change-Id: I54a2fa6c7e997469aaa7770db05244adb9f64137 Reviewed-on: https://gerrit.libreoffice.org/51068 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-03-10move canvas helper code into vclNoel Grandin
part of making BitmapWriteAccess an internal feature of vcl Change-Id: Iee94f47e120d82a23e57342952d04e9b2792cd1a Reviewed-on: https://gerrit.libreoffice.org/50999 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Jenkins <ci@libreoffice.org>
2018-03-08VCL canvas: fix another clipping mistake (related: tdf#115142)Thorsten Behrens
Follow-up to 5d710cf7dda27e78f237211fd92418be4dd1c551 - setupOutDevState() tends to set a clip, better not overwrite that. Change-Id: I52aa7db3ef12e9c2902016460e1bf4914328dc7c Reviewed-on: https://gerrit.libreoffice.org/50920 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-03-08loplugin:constantparam in canvas..comphelperNoel Grandin
Change-Id: Ia666cb46c409852a13789389c032f0ce4377c0d5 Reviewed-on: https://gerrit.libreoffice.org/50927 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-07VCL canvas: fix clipping of gradients (related: tdf#115142)Michael Stahl
When using the presenter console, the secondary screen has a small view of the current slide, which is called a "Pane" in sdext. Clipping for this is done by sd::presenter::PresenterCanvas, which wraps the full-screen VCL canvas and has a MergeViewState() to intersect the clip region. The VCL canvas has a bug in its gradientFill() implemenation where it overrides the existing clip on the OutputDevice instead of intersecting it. This properly fixes the bug that was wrongly and badly attempted to be fixed by commit 99e373cd4c78084ded349f3e3de7b0504af2dd90. Change-Id: Id02678c2f134fe7b190866d6a6fff5b2e5e3aaff
2018-03-07use more Color in UnoControls..canvasNoel Grandin
Change-Id: I8dda18f9630b4e59ead83fa7471525bdf4eaeda0 Reviewed-on: https://gerrit.libreoffice.org/50863 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-28convert COL_ constants to be of type ColorNoel Grandin
Change-Id: I0e25c8950ac26b851ff42f71e1471fcbe4770d48 Reviewed-on: https://gerrit.libreoffice.org/50373 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-27remove unused vclunohelper.hxx includesJochen Nitschke
Change-Id: I68178379e5493d0e738861a4dce5aa6e4b58cd22 Reviewed-on: https://gerrit.libreoffice.org/50393 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-27replace Color(COL_*) with COL_*Noel Grandin
using git grep -lwP "Color\s*\(\s*(COL_\w+)\s*\)" | xargs perl -pi -e "s/Color\s*\(\s*(COL_\w+)\s*\)//g" and then some manual fixup where the resulting expression no longer compiled Change-Id: I0e268d78611c3be40bba9f60ecfdc087a36c0df4 Reviewed-on: https://gerrit.libreoffice.org/50372 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-27Use for-range loops (canvas)Julien Nabet
Change-Id: I6a3b0b7bd6d4d3f432877e9fab0aadc041a4e8e9 Reviewed-on: https://gerrit.libreoffice.org/50389 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-02-26vcl: Bitmap::MakeMono() -> Bitmap::MakeMonochrome()Chris Sherlock
Change-Id: I6b5259d56e8fe5855f8a1125bb87a3dea8e5f425 Reviewed-on: https://gerrit.libreoffice.org/50301 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-26ColorData->Color in variousNoel Grandin
Change-Id: I22018b6a535224316d93bfd621771248b873a218 Reviewed-on: https://gerrit.libreoffice.org/50167 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-16Revert "loplugin:changetoolsgen in canvas..cui" and reapplyNoel Grandin
because I (a) forgot to insert parentheses which changes the meaning of some expressions and (b) I now use the AdjustFoo calls when changing unary operations, which reads much better This reverts commit f841dada1a5018897cce29ccf972da33ece4738c. Change-Id: Iff19e1fc99812c086b0a39b71a3f67b98e2f9c8f Reviewed-on: https://gerrit.libreoffice.org/49841 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-15move cairo surface code from canvas to BitmapToolsNoel Grandin
part of making Bitmap an implementation detail of vcl/ Change-Id: Ic4b8d114a8091041374a083b3b7ca2fa68757ab1 Reviewed-on: https://gerrit.libreoffice.org/49719 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-14loplugin:changetoolsgen in canvas..cuiNoel Grandin
Change-Id: I4e320055a3dbe4159c2aa2714e1ee98182e1e80a Reviewed-on: https://gerrit.libreoffice.org/49642 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-07use scanline when reading pixel dataNoel Grandin
extracts code from the innermost part of fairly hot loops And add a GetIndexFromData method to make the call sites a little easier to read. Change-Id: I4ce5c5a687ecdb6982562a0aafce8513d86f9107 Reviewed-on: https://gerrit.libreoffice.org/49337 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-06convert SetPixel->SetPixelOnDataNoel Grandin
by extracting out the Y scanline computation from the innermost loop. Inspired by commit 078d01c1b6cb9bbd80aeadc49a71cc817413164c. Change-Id: Ic3c1827c01ed3aec629975749a551c7a68ae4a5e Reviewed-on: https://gerrit.libreoffice.org/48926 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-05vcl: remove BitmapColor Color() operatorChris Sherlock
BitmapColor has a Color() operator. However, this is confusing and tends to hide that the two classes aren't the same. I have converted this to GetColor(). Change-Id: I0be2dcb3fc420e7be9c8d04330e7a3fe69a5412a Reviewed-on: https://gerrit.libreoffice.org/48245 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2018-02-01canvas: MSVC: pragma warning: make more specific, remove obsoleteMike Kaganski
Change-Id: I0d23c789dd3cbb21a18383988dd6b24318fda225 Reviewed-on: https://gerrit.libreoffice.org/48959 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-01-25loplugin:unused-returns in basegfx..cppcanvasNoel Grandin
Change-Id: I32dc8c92871c8349651d2f4204a332d387e6e1b2 Reviewed-on: https://gerrit.libreoffice.org/48428 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-23More loplugin:cstylecast on WindowsStephan Bergmann
Automatic rewrite (of loplugin:cstylecast and loplugin:unnecessaryparen) after cab0427cadddb3aaf1349c66f2fa13a4234ba4b2 "Enable loplugin:cstylecast for some more cases" and a409d32e7f6fc09e041079d6dbc3c927497adfed "More loplugin:cstylecast" Change-Id: Ib3355159dd08333e1b7a8d091caf2069cdcc7862 Reviewed-on: https://gerrit.libreoffice.org/48317 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>