Skip to content

Commit 973b9cc

Browse files
author
Philipp
committed
Fixed autoplay issue for iOS
1 parent 74ed86f commit 973b9cc

File tree

6 files changed

+124
-103
lines changed

6 files changed

+124
-103
lines changed

demo/public/js/app.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/index.common.js

Lines changed: 57 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1489,6 +1489,17 @@ module.exports = function (bitmap, value) {
14891489
};
14901490

14911491

1492+
/***/ }),
1493+
1494+
/***/ "6094":
1495+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
1496+
1497+
"use strict";
1498+
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_fc38aede_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("d2b2");
1499+
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_fc38aede_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_fc38aede_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
1500+
/* unused harmony reexport * */
1501+
/* unused harmony default export */ var _unused_webpack_default_export = (_node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_fc38aede_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
1502+
14921503
/***/ }),
14931504

14941505
/***/ "60ae":
@@ -1813,17 +1824,6 @@ module.exports = function (NAME) {
18131824
module.exports = {};
18141825

18151826

1816-
/***/ }),
1817-
1818-
/***/ "76ae":
1819-
/***/ (function(module, __webpack_exports__, __webpack_require__) {
1820-
1821-
"use strict";
1822-
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_5eaa139b_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("d66b");
1823-
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_5eaa139b_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_5eaa139b_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
1824-
/* unused harmony reexport * */
1825-
/* unused harmony default export */ var _unused_webpack_default_export = (_node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_index_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VideoPlayer_vue_vue_type_style_index_0_id_5eaa139b_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
1826-
18271827
/***/ }),
18281828

18291829
/***/ "77b2":
@@ -2729,21 +2729,6 @@ module.exports = function (argument) {
27292729
};
27302730

27312731

2732-
/***/ }),
2733-
2734-
/***/ "a876":
2735-
/***/ (function(module, exports, __webpack_require__) {
2736-
2737-
exports = module.exports = __webpack_require__("2350")(false);
2738-
// imports
2739-
2740-
2741-
// module
2742-
exports.push([module.i, ".video-wrapper[data-v-5eaa139b]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;position:absolute;overflow:hidden;z-index:0}.fade[data-v-5eaa139b]{backface-visibility:hidden}.fade-enter-active[data-v-5eaa139b],.fade-leave-active[data-v-5eaa139b]{transition:opacity 1s}.fade-enter[data-v-5eaa139b],.fade-leave-to[data-v-5eaa139b]{opacity:0}video[data-v-5eaa139b]{visibility:visible;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:100%;width:100%}", ""]);
2743-
2744-
// exports
2745-
2746-
27472732
/***/ }),
27482733

27492734
/***/ "ac1f":
@@ -3197,6 +3182,21 @@ exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
31973182
} : nativePropertyIsEnumerable;
31983183

31993184

3185+
/***/ }),
3186+
3187+
/***/ "d2b2":
3188+
/***/ (function(module, exports, __webpack_require__) {
3189+
3190+
// style-loader: Adds some css to the DOM by adding a <style> tag
3191+
3192+
// load the styles
3193+
var content = __webpack_require__("f70c");
3194+
if(typeof content === 'string') content = [[module.i, content, '']];
3195+
if(content.locals) module.exports = content.locals;
3196+
// add the styles to the DOM
3197+
var add = __webpack_require__("499e").default
3198+
var update = add("62e8aa78", content, true, {"sourceMap":false,"shadowMode":false});
3199+
32003200
/***/ }),
32013201

32023202
/***/ "d44e":
@@ -3215,21 +3215,6 @@ module.exports = function (it, TAG, STATIC) {
32153215
};
32163216

32173217

3218-
/***/ }),
3219-
3220-
/***/ "d66b":
3221-
/***/ (function(module, exports, __webpack_require__) {
3222-
3223-
// style-loader: Adds some css to the DOM by adding a <style> tag
3224-
3225-
// load the styles
3226-
var content = __webpack_require__("a876");
3227-
if(typeof content === 'string') content = [[module.i, content, '']];
3228-
if(content.locals) module.exports = content.locals;
3229-
// add the styles to the DOM
3230-
var add = __webpack_require__("499e").default
3231-
var update = add("5a4848a4", content, true, {"sourceMap":false,"shadowMode":false});
3232-
32333218
/***/ }),
32343219

32353220
/***/ "d784":
@@ -3531,6 +3516,21 @@ module.exports = Array.isArray || function isArray(arg) {
35313516
})(document);
35323517

35333518

3519+
/***/ }),
3520+
3521+
/***/ "f70c":
3522+
/***/ (function(module, exports, __webpack_require__) {
3523+
3524+
exports = module.exports = __webpack_require__("2350")(false);
3525+
// imports
3526+
3527+
3528+
// module
3529+
exports.push([module.i, ".video-wrapper[data-v-fc38aede]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;position:absolute;overflow:hidden;z-index:0}.fade[data-v-fc38aede]{backface-visibility:hidden}.fade-enter-active[data-v-fc38aede],.fade-leave-active[data-v-fc38aede]{transition:opacity 1s}.fade-enter[data-v-fc38aede],.fade-leave-to[data-v-fc38aede]{opacity:0}video[data-v-fc38aede]{visibility:visible;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:100%;width:100%}", ""]);
3530+
3531+
// exports
3532+
3533+
35343534
/***/ }),
35353535

35363536
/***/ "f772":
@@ -3775,12 +3775,12 @@ var exists = function exists(obj, key) {
37753775
"default": ''
37763776
}
37773777
}, playerProps));
3778-
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2dd602f9-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/VideoPlayer.vue?vue&type=template&id=5eaa139b&scoped=true&
3779-
var VideoPlayervue_type_template_id_5eaa139b_scoped_true_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{"name":"fade"}},[_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.showVideo),expression:"showVideo"}],staticClass:"video-wrapper"},[_c('video',{ref:"video",style:(_vm.styleObject),attrs:{"playsinline":"","loop":_vm.loop,"preload":_vm.preload},domProps:{"muted":_vm.muted}},[_c('source',{attrs:{"src":_vm.src,"type":_vm.getMediaType(_vm.src)}})])])])}
3780-
var VideoPlayervue_type_template_id_5eaa139b_scoped_true_staticRenderFns = []
3778+
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2dd602f9-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/VideoPlayer.vue?vue&type=template&id=fc38aede&scoped=true&
3779+
var VideoPlayervue_type_template_id_fc38aede_scoped_true_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{"name":"fade"}},[_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.showVideo),expression:"showVideo"}],staticClass:"video-wrapper"},[_c('video',{ref:"video",style:(_vm.styleObject),attrs:{"autoplay":"","playsinline":"","loop":_vm.loop,"preload":_vm.preload},domProps:{"muted":_vm.muted}},[_c('source',{attrs:{"src":_vm.src,"type":_vm.getMediaType(_vm.src)}})])])])}
3780+
var VideoPlayervue_type_template_id_fc38aede_scoped_true_staticRenderFns = []
37813781

37823782

3783-
// CONCATENATED MODULE: ./src/components/VideoPlayer.vue?vue&type=template&id=5eaa139b&scoped=true&
3783+
// CONCATENATED MODULE: ./src/components/VideoPlayer.vue?vue&type=template&id=fc38aede&scoped=true&
37843784

37853785
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js
37863786
var es_regexp_exec = __webpack_require__("ac1f");
@@ -3819,6 +3819,7 @@ var web_timers = __webpack_require__("4795");
38193819
//
38203820
//
38213821
//
3822+
//
38223823

38233824
/* harmony default export */ var VideoPlayervue_type_script_lang_js_ = ({
38243825
props: playerProps,
@@ -3844,6 +3845,9 @@ var web_timers = __webpack_require__("4795");
38443845
}
38453846
},
38463847
methods: {
3848+
pause: function pause() {
3849+
this.$refs.video.pause();
3850+
},
38473851
load: function load() {
38483852
var _this = this;
38493853

@@ -3873,6 +3877,9 @@ var web_timers = __webpack_require__("4795");
38733877
return !!this.$refs.video.canPlayType;
38743878
},
38753879
videoReady: function videoReady() {
3880+
// Unfortunately we have the iOS bug, that we need to set autoplay always to true.
3881+
// That means we need to first pause the video, and later check if we want to autoplay or not
3882+
this.pause();
38763883
this.$emit('ready');
38773884
},
38783885
videoError: function videoError() {
@@ -3892,8 +3899,8 @@ var web_timers = __webpack_require__("4795");
38923899
});
38933900
// CONCATENATED MODULE: ./src/components/VideoPlayer.vue?vue&type=script&lang=js&
38943901
/* harmony default export */ var components_VideoPlayervue_type_script_lang_js_ = (VideoPlayervue_type_script_lang_js_);
3895-
// EXTERNAL MODULE: ./src/components/VideoPlayer.vue?vue&type=style&index=0&id=5eaa139b&scoped=true&lang=css&
3896-
var VideoPlayervue_type_style_index_0_id_5eaa139b_scoped_true_lang_css_ = __webpack_require__("76ae");
3902+
// EXTERNAL MODULE: ./src/components/VideoPlayer.vue?vue&type=style&index=0&id=fc38aede&scoped=true&lang=css&
3903+
var VideoPlayervue_type_style_index_0_id_fc38aede_scoped_true_lang_css_ = __webpack_require__("6094");
38973904

38983905
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
38993906
/* globals __VUE_SSR_CONTEXT__ */
@@ -4001,11 +4008,11 @@ function normalizeComponent (
40014008

40024009
var component = normalizeComponent(
40034010
components_VideoPlayervue_type_script_lang_js_,
4004-
VideoPlayervue_type_template_id_5eaa139b_scoped_true_render,
4005-
VideoPlayervue_type_template_id_5eaa139b_scoped_true_staticRenderFns,
4011+
VideoPlayervue_type_template_id_fc38aede_scoped_true_render,
4012+
VideoPlayervue_type_template_id_fc38aede_scoped_true_staticRenderFns,
40064013
false,
40074014
null,
4008-
"5eaa139b",
4015+
"fc38aede",
40094016
null
40104017

40114018
)

0 commit comments

Comments
 (0)