path: root/slideshow/source/engine/slideshowimpl.cxx
AgeCommit message (Collapse)AuthorFilesLines
2020-12-26tdf#134133 Check when the eventqueue needs to be emptied.Gülşah Köse1-0/+1
To fix tdf#131254, forceEmpty call removed without a control. Bug was related advance time setting. Now we control if slide has advance time setting. Change-Id: Ie83f4d7ff3e4bd0a744ca205173d747204918b39 Reviewed-on: Tested-by: Jenkins Reviewed-by: Gülşah Köse <>
2020-10-05try not to hog the CPU during slideshow animationsLuboš Luňák1-2/+11
Try to sleep for most of the busy-waiting loop. Seeing this CPU usage is annoying when profiling. Change-Id: Ia01b547b28a22ffcb0e841ea582c93891cf1c5c5 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <> Reviewed-by: Luboš Luňák <>
2020-08-29Fix typosAndrea Gelmini1-1/+1
Change-Id: I6517f3b68389c0f3581cc750c61b8e59d075d35e Reviewed-on: Tested-by: Jenkins Reviewed-by: Andrea Gelmini <>
2020-08-09make physics based animation effects part of the animation engineSarper Akdemir1-1/+7
Wiring up and creating required classes for physics based animation effects to be part of the animation engine. Creating a new animation node AnimationPhysicsNode for physics based animation effects and PhysicsAnimation class that inherits the NumberAnimation in the animation factory. Change-Id: I1f125df5324673e9937b8164c0fc267c9683afa0 Reviewed-on: Tested-by: Jenkins Reviewed-by: Thorsten Behrens <>
2020-07-16slideshow: create instances with uno constructorsNoel Grandin1-14/+27
See tdf#74608 for motivation. Change-Id: I0b0a74ec8133de55664e471fcf13d7c66f882b12 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2020-05-28Make loplugin:simplifypointertobool handle parenthesized expressionsStephan Bergmann1-1/+1 discussed as an open TODO in the commit message of fe6cce01c88d045a1fcf09acf049c34c22299b02 "Fix loplugin:simplifypointertobool for libstdc++ std::shared_ptr". The necessary changes across the code base have been done fully automatically with the rewriting plugin on Linux. (All those changes apparently involve uses of macro arguments wrapped in parentheses in the macro body, but always in conditionally-converted-to-bool contexts. In other contexts, such automatic rewriting would add the "bool" to the macro body, which would be wrong in general, but we apparently get away with that sloppy coding for now.) The parenExprs_ stack that fe6cce01c88d045a1fcf09acf049c34c22299b02 had introduced to treat such (then-undetected, it had turned out) parenthesized cases now turns out to not be needed after all. Change-Id: I2021f61c2e2805be7e18b38edf8744d186cac3cb Reviewed-on: Tested-by: Jenkins Reviewed-by: Stephan Bergmann <>
2020-05-26Fix loplugin:simplifypointertobool for libstdc++ std::shared_ptrStephan Bergmann1-1/+1
...where the get member function is defined on a std::__shared_ptr base class, so loplugin:simplifypointertobool used to miss those until now. (While e.g. using libc++ on macOS found those cases.) 366d08f2f6d4de922f6099c62bb81b49d89e0a68 "new loplugin:simplifypointertobool" was mistaken in breaking isSmartPointerType(const clang::Type* t) out of isSmartPointerType(const Expr* e); c874294ad9fb178df47c66875bfbdec466e39763 "Fix detection of std::unique_ptr/shared_ptr in loplugin:redundantpointerops" had introduced that indivisible two-step algorithm on purpose. The amount of additional hits (on Linux) apparently asked for turning loplugin:simplifypointertobool into a rewriting plugin. Which in turn showed that the naive adivce to just "drop the get()" is not sufficient in places that are not contextually converted to bool, as those places need to be wrapped in a bool(...) functional cast now. If the expression was already wrapped in parentheses, those could be reused as part of the functional cast, but implementing that showed that such cases are not yet found at all by the existing loplugin:simplifypointertobool. Lets leave that TODO for another commit. Besides the changes to compilerplugins/ itself, this change has been generated fully automatically with the rewriting plugin on Linux. Change-Id: I83107d6f634fc9ac232986f49044d7017df83e2a Reviewed-on: Reviewed-by: Noel Grandin <> Reviewed-by: Stephan Bergmann <> Tested-by: Jenkins
2020-05-08improve loplugin:referencecastingNoel Grandin1-1/+1
to catch a few more cases Change-Id: I0323fba51bb2b4ba255e1db5aa0d890c5c6a2e1b Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2020-04-30Fix typosAndrea Gelmini1-1/+1
Change-Id: I380b85646a62c4eafa40fdb5257060fac040feb6 Reviewed-on: Tested-by: Jenkins Reviewed-by: Julien Nabet <>
2020-04-25tdf#129898 Use layer DrawnInSlideshow in edit modeRegina Henschel1-10/+17
If 'Mouse pointer as pen' is set in slideshow settings, painting in slideshow becomes persistent. A layer DrawnInSlideshow is created for that purpose during slideshow. But that layer was not known to the view from where the slideshow was started. Generating a layer had been done regardless whether such layer already exists or not. That had produced several layers with identical name. That may not happen, because layers are identified by name. Change-Id: I2ba9bad5babe5a1bba3d1fc69d028d9037d2bd47 Reviewed-on: Tested-by: Jenkins Reviewed-by: Regina Henschel <>
2020-03-12Revert "loplugin:constfields in slideshow"Noel Grandin1-1/+1
This reverts commit 56940b766e5d52cb1c17b4250e4c7e2c375b7b65. Change-Id: I5b585ff44870193becc0770e6504ac645b254ef3 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2020-02-21Drop o3tl::optional wrapperStephan Bergmann1-4/+4 that macOS builds are guaranteed to have std::optional since 358146bbbd1b9775c12770fb5e497b6ec5adfc51 "Bump macOS build baseline to Xcode 11.3 and macOS 10.14.4". The change is done mostly mechanically with > for i in $(git grep -Fl optional); do > sed -i -e 's:<o3tl/optional\.hxx>\|\"o3tl/optional\.hxx\":<optional>:' \ > -e 's/\<o3tl::optional\>/std::optional/g' \ > -e 's/\<o3tl::make_optional\>/std::make_optional/g' "$i" > done > for i in $(git grep -Flw o3tl::nullopt); do > sed -i -e 's/\<o3tl::nullopt\>/std::nullopt/g' "$i" > done (though that causes some of the resulting #include <optional> to appear at different places relative to other includes than if they had been added manually), plus a few manual modifications: * adapt bin/find-unneeded-includes * adapt desktop/IwyuFilter_desktop.yaml * remove include/o3tl/optional.hxx * quote resulting "<"/">" as "&lt;"/"&gt;" in officecfg/registry/cppheader.xsl * and then solenv/clang-format/reformat-formatted-files Change-Id: I68833d9f7945e57aa2bc703349cbc5a56b342273 Reviewed-on: Tested-by: Jenkins Reviewed-by: Stephan Bergmann <>
2020-01-25loplugin:makeshared in slideshowNoel Grandin1-4/+4
Change-Id: I87dead1ed09aa50c939c03ae8ed3faf9300a8b4a Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2020-01-03tdf#42949 Fix IWYU warnings in slideshow/Gabor Kelemen1-25/+1
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Id1c207705b7aa9b057fb8207d735e376675c91d9 Reviewed-on: Tested-by: Jenkins Reviewed-by: Miklos Vajna <>
2019-12-22sal_Char->char in sfx2..slideshowNoel Grandin1-1/+1
Change-Id: I59667664fc097989e0a78d8876f2be8353911236 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-12-01Introduce o3tl::optional as an alias for std::optionalStephan Bergmann1-4/+4
...with a boost::optional fallback for Xcode < 10 (as std::optional is only available starting with Xcode 10 according to <>, and our baseline for iOS and macOS is still Xcode 9.3 according to And mechanically rewrite all code to use o3tl::optional instead of boost::optional. One immediate benefit is that disabling -Wmaybe-uninitialized for GCC as per fed7c3deb3f4ec81f78967c2d7f3c4554398cb9d "Slience bogus -Werror=maybe-uninitialized" should no longer be necessary (and whose check happened to no longer trigger for GCC 10 trunk, even though that compiler would still emit bogus -Wmaybe-uninitialized for uses of boost::optional under --enable-optimized, which made me ponder whether this switch from boost::optional to std::optional would be a useful thing to do; I keep that check for now, though, and will only remove it in a follow up commit). Another longer-term benefit is that the code is now already in good shape for an eventual switch to std::optional (a switch we would have done anyway once we no longer need to support Xcode < 10). Only desktop/qa/desktop_lib/test_desktop_lib.cxx heavily uses boost::property_tree::ptree::get_child_optional returning boost::optional, so let it keep using boost::optional for now. After a number of preceding commits have paved the way for this change, this commit is completely mechanical, done with > git ls-files -z | grep -vz -e '^bin/find-unneeded-includes$' -e '^$' -e '^desktop/qa/desktop_lib/test_desktop_lib.cxx$' -e '^dictionaries$' -e '^external/' -e '^helpcontent2$' -e '^include/IwyuFilter_include.yaml$' -e '^sc/IwyuFilter_sc.yaml$' -e '^solenv/gdb/boost/$' -e '^solenv/vs/LibreOffice.natvis$' -e '^translations$' -e '\.svg$' | xargs -0 sed -i -E -e 's|\<boost(/optional)?/optional\.hpp\>|o3tl/optional.hxx|g' -e 's/\<boost(\s*)::(\s*)(make_)?optional\>/o3tl\1::\2\3optional/g' -e 's/\<boost(\s*)::(\s*)none\>/o3tl\1::\2nullopt/g' (before committing include/o3tl/optional.hxx, and relying on some GNU features). It excludes some files where mention of boost::optional et al should apparently not be changed (and the sub-repo directory stubs). It turned out that all uses of boost::none across the code base were in combination with boost::optional, so had all to be rewritten as o3tl::nullopt. Change-Id: Ibfd9f4b3d5a8aee6e6eed310b988c4e5ffd8b11b Reviewed-on: Tested-by: Jenkins Reviewed-by: Stephan Bergmann <>
2019-10-19loplugin:virtualdead unused param in Animation::prefetchNoel Grandin1-3/+1
Change-Id: I7eaf01548567ce560b0e32f222880d21b966c78d Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-10-19loplugin:virtualdead unused params in ShapeListenerEventHandlerNoel Grandin1-4/+2
Change-Id: Ied95fd01912737ba1ae73fb1fea6ddd57eb8a14d Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-09-27loplugin:virtualdead in slideshowNoel Grandin1-2/+0
Change-Id: Ie158b76e6d552b1189173e30fbea5a43a774180b Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-08-16use more TOOLS_WARN_EXCEPTIONNoel Grandin1-1/+1
Change-Id: Ic21ea11ff106e0732bb8fa600ef39a549d7bda86 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-08-12Fix typosAndrea Gelmini1-1/+1
Change-Id: Ic431ef6c3555f02fbc204a5b0af5f9bfe62f4a30 Reviewed-on: Tested-by: Jenkins Reviewed-by: Julien Nabet <>
2019-07-21loplugin:referencecasting in slideshow..svtoolsNoel Grandin1-4/+3
Change-Id: Id0f0332d5d66c0bce309643bf42059b9bdc7d448 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-05-13fix wrong SET/QUERY flags passed to uno::ReferenceNoel Grandin1-1/+1
By creating deleted methods for the wrong calls. Avoids the compiler needing to construct a temporary Change-Id: I3b8c648d6bb22d22827bf74f21ea5a2a17fc0f6a Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-04-16loplugin:sequentialassign in sfx2..solenvNoel Grandin1-2/+1
Change-Id: I57e11d45aad48713b7c6802e2b6976fd916fc6ba Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-02-22loplugin:unusedfields in slideshowNoel Grandin1-8/+4
Change-Id: I98d599c40e36906022fc5d0b1d992a42c3d784ce Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-02-19pretty up logging of exceptionsNoel Grandin1-1/+1
Add exceptionToString() and getCaughtExceptionAsString() methods in tools. Use the new methods in DbgUnhandledException() Add special-case case code for most of the exceptions that contain extra fields, so all of the relevant data ends up in the log Change-Id: I376f6549b4d7bd480202f8bff17a454657c75ece Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-02-04tdf#44223 allow slideshow to play embedded media.Mark Hung1-1/+45
Implement MediaFileManager that create the temp media file for package urls when making slideshow. Change-Id: I10a5ddc405928b4322ad72eb603508faf25bf0db Reviewed-on: Tested-by: Jenkins Reviewed-by: Mark Hung <>
2018-11-29Simplify containers iterations in slideshow, sot, starmath, stocArkadiy Illarionov1-20/+8
Use range-based loop or replace with STL functions Change-Id: I94792c28b283a0998bf813317e5beb37d93e0c23 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2018-11-10Replace deprecated boost::optional::reset(val) with operator =Mike Kaganski1-5/+5
Change-Id: I7340a561e0df0c781fd834388deb4b9f83800f9b Reviewed-on: Tested-by: Jenkins Reviewed-by: Mike Kaganski <>
2018-10-09loplugin:constfields in slideshowNoel Grandin1-1/+1
Change-Id: Ieeda808ad8e7fe500a2142c779529ca190725f6a Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2018-07-31Add missing sal/log.hxx headersGabor Kelemen1-0/+1
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 sfx2 to starmath Change-Id: I40ee7bfae6efdadd862319b7b693ad22c648e1c4 Reviewed-on: Tested-by: Jenkins Reviewed-by: Miklos Vajna <>
2018-06-05tdf#42949 remove unused compheler includes ..Jochen Nitschke1-1/+0
and fix the fallout Change-Id: I15bc5d626f4d157cbc69a87392078b41e621d14e Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Miklos Vajna <>
2018-04-17Fix typosAndrea Gelmini1-2/+2
Change-Id: If89ec640901253121529c09aef4537c6b13cee1d Reviewed-on: Reviewed-by: Julien Nabet <> Tested-by: Jenkins <>
2018-04-15remove some unused comphelper includesJochen Nitschke1-1/+0
and fix the fallout Change-Id: I5d0c2040f57a3ac354a7e277592da31d09a5f359 Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Jochen Nitschke <>
2018-01-17Fix typosAndrea Gelmini1-2/+2
Change-Id: Id1c7ddf6c49ec709e38947a82731fe31a64aad04 Reviewed-on: Reviewed-by: Julien Nabet <> Tested-by: Julien Nabet <>
2018-01-12More loplugin:cstylecast: slideshowStephan Bergmann1-1/+1
auto-rewrite with <> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: Ic7cd4389d4965fb53f44e34082c92a7a2ce247fc
2017-12-11loplugin:salcall fix functionsNoel Grandin1-1/+1
since cdecl is the default calling convention on Windows for such functions, the annotation is redundant. Change-Id: I1a85fa27e5ac65ce0e04a19bde74c90800ffaa2d Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Noel Grandin <>
2017-11-20look for =() in loplugin:unnecessaryparenNoel Grandin1-2/+2
Change-Id: I4f9b71ff7767e90987bb40358fc46ed5d1d571d0 Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Noel Grandin <>
2017-10-23loplugin:includeform: slideshowStephan Bergmann1-19/+19
Change-Id: Idbfda5c87dafd6f5f76f724030f0a153398d7ab3
2017-09-26Rename the basegfx::tools namespace to basegfx::utilsTor Lillqvist1-1/+1
Reduce potential confusion with the global tools namespace. Will hopefully make it possible to remove the annoying initial :: when referring to the global tools namespace. Unless we have even more tools subnamespaces somewhere. Thorsten said it was OK. Change-Id: Id088dfe8f4244cb79df9aa988995b31a1758c996 Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Tor Lillqvist <>
2017-08-11convert std::map::insert to std::map::emplace IINoel Grandin1-6/+3
Change-Id: Ief8bd59c903625ba65b75114b7b52c3b7ecbd331 Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Noel Grandin <>
2017-07-06use more begin()/end() for SequenceNoel Grandin1-2/+2
Change-Id: I399be6b6ef7a6ce01e883569a177c0969bc29c69
2017-05-28remove unnecessary use of OString::getStrNoel Grandin1-5/+2
Change-Id: I0490efedf459190521f4339854b3394d57765fdb Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Noel Grandin <>
2017-05-07revert OSL_ASSERT changesChris Sherlock1-4/+4
Change-Id: I365d140446bd2a62cf8256acbfdd53fe72987380
2017-05-07tdf#43157: convert slideshow module away from OSL_ASSERT to assertChris Sherlock1-4/+4
Change-Id: I6a067922bd701387172d94713ec05fc3313de19c
2017-03-26Fix typosAndrea Gelmini1-1/+1
Change-Id: I5518e764fd8349c476e79bb888e93a1dab01ed1d Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Julien Nabet <>
2017-02-06Add missing #includesStephan Bergmann1-0/+1
...and remove some unncessary using directives/declarations, in preparation of removing now-unnecessary #includes from cppumaker-generated files, post e57ca02849c3d87142ff5ff9099a212e72b8139c "Remove dynamic exception specifications". Change-Id: Iaf1f268871e2ee1d1c76cf90f03557527ebc9067
2017-01-26Remove dynamic exception specificationsStephan Bergmann1-47/+20
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at <> "Dynamic Exception Specifications" for details. Most changes have been done automatically by the rewriting loplugin:dynexcspec (after enabling the rewriting mode, to be committed shortly). The way it only removes exception specs from declarations if it also sees a definition, it identified some dead declarations-w/o-definitions (that have been removed manually) and some cases where a definition appeared in multiple include files (which have also been cleaned up manually). There's also been cases of macro paramters (that were used to abstract over exception specs) that have become unused now (and been removed). Furthermore, some code needed to be cleaned up manually (avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no configurations available that would actually build that code. Missing @throws documentation has not been applied in such manual clean-up. Change-Id: I3408691256c9b0c12bc5332de976743626e13960 Reviewed-on: Tested-by: Jenkins <> Reviewed-by: Stephan Bergmann <>
2016-12-11OSL_TRACE -> SAL in sfx2..svxNoel Grandin1-20/+20
Change-Id: I78cf8058a5682baa3d7b00a25feeb2d28fb3e66e Reviewed-on: Reviewed-by: Noel Grandin <> Tested-by: Noel Grandin <>
2016-08-31slideshow: stop whining about PresenterCanvas' lack of XUpdatableMichael Stahl1-3/+6
Change-Id: I1e447f5eccb41325d96e9c4cb1598a05e702badc