diff --git a/filter/source/svg/presentation_engine.js b/filter/source/svg/presentation_engine.js index e46607f809fd..884d3430f4bd 100644 --- a/filter/source/svg/presentation_engine.js +++ b/filter/source/svg/presentation_engine.js @@ -4434,6 +4434,7 @@ var aOOOAttrUsePositionedChars = 'use-positioned-chars'; var aOOOAttrSlide = 'slide'; var aOOOAttrMaster = 'master'; +var aOOOAttrDisplayName = 'display-name'; var aOOOAttrSlideDuration = 'slide-duration'; var aOOOAttrHasTransition = 'has-transition'; var aOOOAttrHasCustomBackground = 'has-custom-background'; @@ -4460,6 +4461,7 @@ var aFooterClassName = 'Footer'; var aHeaderClassName = 'Header'; var aDateClassName = 'Date'; var aTimeClassName = 'Time'; +var aSlideNameClassName='SlideName'; // Creating a namespace dictionary. var NSS = {}; @@ -5030,6 +5032,8 @@ function MetaSlide( sMetaSlideId, aMetaDoc ) else this.nSlideNumber= -1; + this.slideName = this.element.getAttributeNS( NSS['ooo'], aOOOAttrDisplayName ); + // Each slide element is double wrapped by elements. // The outer element is responsible for // the slide element visibility. In fact the visibility attribute has @@ -5099,6 +5103,7 @@ function MetaSlide( sMetaSlideId, aMetaDoc ) this.aTextFieldContentProviderSet[aHeaderClassName] = this.initFixedTextFieldContentProvider( aOOOAttrHeaderField ); this.aTextFieldContentProviderSet[aDateClassName] = this.theMetaDoc.aCurrentDateProvider; this.aTextFieldContentProviderSet[aTimeClassName] = this.theMetaDoc.aCurrentTimeProvider; + this.aTextFieldContentProviderSet[aSlideNameClassName] = new FixedTextProvider( this.slideName ); // We init the slide duration when automatic slide transition is enabled this.fDuration = this.initSlideDuration(); @@ -5254,7 +5259,7 @@ initDateTimeFieldContentProvider : function( aOOOAttrDateTimeField ) var sClassName = getClassAttribute( aTextFieldElem ); if( sClassName == 'FixedDateTimeField' ) { - aTextField = new FixedTextProvider( aTextFieldElem ); + aTextField = new FixedTextByElementProvider( aTextFieldElem ); this.bIsDateTimeVariable = false; } else if( sClassName == 'VariableDateTimeField' ) @@ -5284,7 +5289,7 @@ initFixedTextFieldContentProvider : function( aOOOAttribute ) { var aTextFieldElem = document.getElementById( sTextFieldId ); this.theMetaDoc.aTextFieldContentProviderSet[ nIndex ] - = new FixedTextProvider( aTextFieldElem ); + = new FixedTextByElementProvider( aTextFieldElem ); } return this.theMetaDoc.aTextFieldContentProviderSet[ nIndex ]; }, @@ -5378,6 +5383,8 @@ function getTextFieldType ( elem ) sFieldType = aDateClassName; else if (sContent === '