diff options
author | Mark Hung <marklh9@gmail.com> | 2020-12-19 21:38:55 +0800 |
---|---|---|
committer | Mark Hung <marklh9@gmail.com> | 2020-12-24 14:02:57 +0100 |
commit | 765b13b67e46aa8c8618fdad8582f8586bffce9e (patch) | |
tree | 03374ded24911c4566dd145a43135c27cd4dd6f9 /sd/source | |
parent | f2835d3a2bf3037bfe8a0c891715b0c6350b07e8 (diff) |
tdf#138937 don't use attributes that depend on preset data
if preset data is not found. Curve, polygon, and free form
motion paths do not have preset data. Create the path
in these cases as well.
Change-Id: Idd3b24b81a15de53e302e8cb7f3636d72e10b4da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108022
Tested-by: Jenkins
Reviewed-by: Mark Hung <marklh9@gmail.com>
Diffstat (limited to 'sd/source')
-rw-r--r-- | sd/source/ui/animations/CustomAnimationPane.cxx | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx index 95a0eb941597..d9f86d628f6e 100644 --- a/sd/source/ui/animations/CustomAnimationPane.cxx +++ b/sd/source/ui/animations/CustomAnimationPane.cxx @@ -1816,14 +1816,14 @@ void CustomAnimationPane::onAdd() if (nEntryData) pDescriptor = *reinterpret_cast<CustomAnimationPresetPtr*>(nEntryData); - const double fDuration = pDescriptor->getDuration(); - mxCBXDuration->set_value(fDuration*100.0, FieldUnit::NONE); - bool bHasSpeed = pDescriptor->getDuration() > 0.001; - mxCBXDuration->set_sensitive( bHasSpeed ); - mxFTDuration->set_sensitive( bHasSpeed ); - if( pDescriptor ) { + const double fDuration = pDescriptor->getDuration(); + mxCBXDuration->set_value(fDuration*100.0, FieldUnit::NONE); + bool bHasSpeed = pDescriptor->getDuration() > 0.001; + mxCBXDuration->set_sensitive( bHasSpeed ); + mxFTDuration->set_sensitive( bHasSpeed ); + mxCustomAnimationList->unselect_all(); // gather shapes from the selection @@ -1852,6 +1852,14 @@ void CustomAnimationPane::onAdd() } } + PathKind ePathKind = getCreatePathKind(); + + if (ePathKind != PathKind::NONE) + { + createPath( ePathKind, aTargets, 0.0 ); + updateMotionPathTags(); + } + mrBase.GetDocShell()->SetModified(); updateControls(); |