]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Update FileSaver.js v2014-08-29.
authorXhmikosR <xhmikosr@users.sourceforge.net>
Fri, 25 Jul 2014 05:40:14 +0000 (08:40 +0300)
committerXhmikosR <xhmikosr@gmail.com>
Thu, 9 Oct 2014 05:16:32 +0000 (08:16 +0300)
Gruntfile.js
docs/assets/js/vendor/FileSaver.js [moved from docs/assets/js/vendor/filesaver.js with 94% similarity]

index 08da04ce567409204ca179465f1765e841d7bf30..e945b9d4805b7e8eb3a72f3fc9229f643bea9061 100644 (file)
@@ -129,7 +129,7 @@ module.exports = function (grunt) {
           'docs/assets/js/vendor/jszip.min.js',
           'docs/assets/js/vendor/uglify.min.js',
           'docs/assets/js/vendor/Blob.js',
-          'docs/assets/js/vendor/filesaver.js',
+          'docs/assets/js/vendor/FileSaver.js',
           'docs/assets/js/raw-files.min.js',
           'docs/assets/js/src/customizer.js'
         ],
similarity index 94%
rename from docs/assets/js/vendor/filesaver.js
rename to docs/assets/js/vendor/FileSaver.js
index e7c05d593fd9068dd13fa45e87cf51020e68c8a4..1095873014f48647bea070c6ce8287c1abac5612 100644 (file)
@@ -1,6 +1,6 @@
 /* FileSaver.js
  * A saveAs() FileSaver implementation.
- * 2014-07-21
+ * 2014-08-29
  *
  * By Eli Grey, http://eligrey.com
  * License: X11/MIT
@@ -31,7 +31,7 @@ var saveAs = saveAs
                        return view.URL || view.webkitURL || view;
                }
                , save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a")
-               , can_use_save_link = !view.externalHost && "download" in save_link
+               , can_use_save_link = "download" in save_link
                , click = function(node) {
                        var event = doc.createEvent("MouseEvents");
                        event.initMouseEvent(
@@ -53,13 +53,18 @@ var saveAs = saveAs
                // the reasoning behind the timeout and revocation flow
                , arbitrary_revoke_timeout = 10
                , revoke = function(file) {
-                       setTimeout(function() {
+                       var revoker = function() {
                                if (typeof file === "string") { // file is an object URL
                                        get_URL().revokeObjectURL(file);
                                } else { // file is a File
                                        file.remove();
                                }
-                       }, arbitrary_revoke_timeout);
+                       };
+                       if (view.chrome) {
+                               revoker();
+                       } else {
+                               setTimeout(revoker, arbitrary_revoke_timeout);
+                       }
                }
                , dispatch = function(filesaver, event_types, event) {
                        event_types = [].concat(event_types);
@@ -95,7 +100,11 @@ var saveAs = saveAs
                                        if (target_view) {
                                                target_view.location.href = object_url;
                                        } else {
-                                               view.open(object_url, "_blank");
+                                               var new_tab = view.open(object_url, "_blank");
+                                               if (new_tab == undefined && typeof safari !== "undefined") {
+                                                       //Apple do not allow window.open, see http://bit.ly/1kZffRI
+                                                       view.location.href = object_url
+                                               }
                                        }
                                        filesaver.readyState = filesaver.DONE;
                                        dispatch_all();