introducing mbAlreadyStepped flag to make physics animation effects
aware that the lock was just obtained from another physics animation
which already stepped the time interval meant to be stepped through.
Change-Id: Id7c01c96e302d7da7aae785f56c09a9ddfe4bdf1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101665
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Adding a new animation effect preset in the Exciting sub category
of Exit category called Fall and fade out, which makes the shape
fall with a bounciness of 0.6 and fade out.
Change-Id: Id9fe29f98f276cdb9748f0eb787e03f68314097a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101660
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
fixes the case when a physics animation preset is imported it
doesn't have any information about start velocity, density or
bounciness paramaters.
Change-Id: Ic817afb211597ad553ccc3a43fe24bfbebadbc43
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101656
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
fixes the bug where an animation effect doesn't start on it's original location
and collides with everything as if it was moving from the original location to
wherever the animation effect starts in a single step.
Change-Id: Icd2919bcad665f8a1839a57642694d98ff73afca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101425
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Making box2d world only stay populated when there's an animation
effect going on. This makes it possible to get rid of big chunk
of sequential update implementation.
Change-Id: Iaf50d4871b2355035495618354f0ae09abe94164
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101304
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Group shapes are now considered as foreground objects.
Physics animations now do not create individual bodies
for shapes that are part of a group but instead create
one body that represent all of them.
Change-Id: I27819c853af75aff93636c99f216a67ef18791d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101174
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Adding new xml options to specify the starting velocity, bounciness,
and density of the rigid body that physics animation control.
Change-Id: Ifaba785e82c8ee17be00711a3e7a75257e7704ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101141
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
fixes a bug where if there is a sequence of animations between
two physics animations that change the position, rotation or visibility
of a shape - changes are not picked up by the latter physics animation.
Change-Id: Ie8bb8b32588f4c7bf16317b5229adc5b0334d192
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100715
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Jenkins
Makes it possible to add activities that will be processed last in the queue.
Makes physics animation effects queued this way.
And fixes the bug that makes physics animation effects appear
out of sync for a frame with the shapes that other in parallel
animation effects control.
Change-Id: I92d436aced6ef3ee2c8b0bf0167c1f7e642ba3b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100713
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Jenkins
Makes it possible to represent complex shapes of LibreOffice
in physics animation effects by closely approximating their geometry.
Therefore enables more convincing animation effects.
Change-Id: I807bbde92c143b8c96792b3d8bf9603a31216486
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100432
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Makes physics based animation effects importable and exportable
on content.xml. Uses one new xml token animatePhysics.
Also adds a new animation preset called Physics Basic that is
available under Emphasis animation effect category.
Change-Id: I38b0511f973668655cff78becebe3f1e628d9083
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100247
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
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: https://gerrit.libreoffice.org/c/core/+/100151
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
mbIsForeground is a flag that is set false if a shape is known to
not belong to the foreground.
It is set to false while shapes are being imported and the shape
belongs to the master slide or is a group shape, right now.
Change-Id: Id9738fc943f32a1e1a6e1888d179e69fd60bd022
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95968
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Refactoring XShapeHash in layermanager as XShapeToShapeMap
and XShapeHash in targetpropertiescreator as XShapeToNamedValuesMap.
This refactoring describes what the types are more clearly and
stops violating one define rule in the desired implementation.
And adding getter getXShapeToShapeMap to ShapeManager to enable
Animation::start() to access Shapes and XShapes of the current
slide.
Change-Id: I78d510ae43888fd6cf0f037e224b24f91b263b00
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95967
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Adding two patches to static external library box2d
getting rid of strict aliasing error and ignoring
-Wshadow in b2Draw.h to get rid of errors while building.
Change-Id: I5752eb484d6aafe057c9102b1ed87aaf31d6555c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96559
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Bundled box2d with the build system of LO as a static library.
If --with-system-box2d was specified checks for instance box2d in
the system, defines SYSTEM_BOX2D and uses the library from the system.
Change-Id: Ifb05912f2acaff273b25abebafc5af1cac3afec4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94103
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Added m_nSelectHeight and m_nSelectWidth to ScFillSeriesDlg
class for deriving missing box if other two boxes are full.
CheckValues() mimics behaviour of previous check functions with
added functionality of calculating missing start or increment values
(end value was already handled in previous check functions) in linear
fill mode if it is possible to calculate them from other two values.
Change-Id: If30d96f1b5f7e1bb88f473d7c0c5c2802ba6f225
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87841
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
Introduced two new handlers to SvxMenuConfigPage and SvxToolbarConfigPage.
Each handler is connected to connect_popup_menu() call of corresponding list.
All of the context menus use entrycontextmenu.ui
Change-Id: I309672c41631b7acb58209b01efbe24c0bb0d947
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88676
Reviewed-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Reviewed-by: Muhammet Kara <muhammet.kara@collabora.com>
Tested-by: Jenkins