summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2021-03-17 15:57:21 +0100
committerAndras Timar <andras.timar@collabora.com>2021-03-18 16:06:33 +0100
commitc23509b64468e4ebf0d72a1412c238a093b37cf4 (patch)
tree9fe18e0194c94f16e674b67effed529a7c7fb9d8
parentc7411af8f56c5120c3571e2bf0bce86e9c6b4559 (diff)
Polyfill presentation_engine.js for IE11
IE11 doesn't support: Array.includes, String.startsWith and Math.trunc Change-Id: I71c5810ad9230988453f70e880f46869728f49c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112645 Tested-by: Andras Timar <andras.timar@collabora.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
-rw-r--r--filter/source/svg/presentation_engine.js23
1 files changed, 16 insertions, 7 deletions
diff --git a/filter/source/svg/presentation_engine.js b/filter/source/svg/presentation_engine.js
index 7f3cb48bcfbf..0babb0083cc8 100644
--- a/filter/source/svg/presentation_engine.js
+++ b/filter/source/svg/presentation_engine.js
@@ -32,6 +32,15 @@ var abs = Math.abs;
var now = Date.now;
/**
+ * polyfill for IE11
+ */
+if (!Math.trunc) {
+ Math.trunc = function (v) {
+ return v < 0 ? Math.ceil(v) : Math.floor(v);
+ };
+}
+
+/**
* set a timeout with a given scope
* @param {Function} fn
* @param {Number} timeout
@@ -5393,9 +5402,9 @@ function getTextFieldType ( elem )
function isTextFieldByClassName ( sClassName )
{
return sClassName === aDateTimeClassName || sClassName === aFooterClassName
- || sClassName === aHeaderClassName || sClassName.startsWith( aSlideNumberClassName )
- || sClassName.startsWith( aDateClassName ) || sClassName.startsWith( aTimeClassName )
- || sClassName.startsWith( aSlideNameClassName );
+ || sClassName === aHeaderClassName || sClassName.indexOf( aSlideNumberClassName ) == 0
+ || sClassName.indexOf( aDateClassName ) == 0 || sClassName.indexOf( aTimeClassName ) == 0
+ || sClassName.indexOf( aSlideNameClassName ) == 0;
}
/** Class MasterPage
@@ -5819,7 +5828,7 @@ MasterPageView.prototype.createElement = function()
for( ; i < aBackgroundObjectSubGroupIdList.length; ++i )
{
sId = aBackgroundObjectSubGroupIdList[i];
- if( sId.startsWith( aSlideNumberClassName ) )
+ if( sId.indexOf( aSlideNumberClassName ) == 0 )
{
// Slide Number Field
// The cloned element is appended directly to the field group element
@@ -5873,9 +5882,9 @@ MasterPageView.prototype.createElement = function()
aTextFieldHandlerSet, sMasterSlideId );
}
}
- else if( sId.startsWith( aDateClassName )
- || sId.startsWith( aTimeClassName )
- || sId.startsWith( aSlideNameClassName ) )
+ else if( sId.indexOf( aDateClassName ) == 0
+ || sId.indexOf( aTimeClassName ) == 0
+ || sId.indexOf( aSlideNameClassName ) == 0 )
{
this.initTextFieldHandler( sId, aPlaceholderShapeSet,
aTextFieldContentProviderSet, aDefsElement,