diff -r 539c9bee5372 -r 7623f9af9272 src/widgets/SlideVideoPlayer.js
--- a/src/widgets/SlideVideoPlayer.js Fri Sep 25 14:45:38 2015 +0200
+++ b/src/widgets/SlideVideoPlayer.js Fri Oct 02 11:27:17 2015 +0200
@@ -7,12 +7,16 @@
IriSP.Widgets.SlideVideoPlayer.prototype.defaults = {
+ playerModule: "HtmlPlayer",
+ // mode is either "sidebyside" or "pip"
+ mode: "sidebyside"
};
IriSP.Widgets.SlideVideoPlayer.prototype.template = '
\
-
\
-
\
-
\
+
\
+
\
+
\
+
\
';
IriSP.Widgets.SlideVideoPlayer.prototype.draw = function() {
@@ -23,24 +27,60 @@
_this.$.find(".Ldt-SlideVideoPlayer-panel.Ldt-SlideVideoPlayer-slide"),
{
type: "ImageDisplay",
- annotation_type: _this.annotation_type,
- width: '100%'
+ annotation_type: _this.annotation_type
},
"slide"
);
this.insertSubwidget(
_this.$.find(".Ldt-SlideVideoPlayer-panel.Ldt-SlideVideoPlayer-video"),
{
- type: "HtmlPlayer",
+ type: _this.playerModule,
video: _this.video,
width: '100%',
url_transform: _this.url_transform
},
"player"
- );
- // FIXME: this should be better implemented through a signal sent
- // when widgets are ready (and not just loaded)
- window.setTimeout(function () {
- _this.$.find(".Ldt-SlideVideoPlayer").split({ orientation: 'vertical' });
- }, 1000);
+ );
+
+ if (_this.mode == 'pip') {
+ _this.$.find(".Ldt-SlideVideoPlayer-panel").append('');
+ _this.$.on("click", ".Ldt-SlideVideoPlayer-pip-menu-toggle", function () {
+ _this.toggleMainDisplay();
+ });
+ window.setTimeout(function () {
+ _this.setMainDisplay('video');
+ }, 1500);
+ } else {
+ // Default : side by side
+ // FIXME: this should be better implemented through a signal sent
+ // when widgets are ready (and not just loaded)
+ window.setTimeout(function () {
+ _this.$.find(".Ldt-SlideVideoPlayer").touchSplit({ orientation: (screen.height > screen.width) ? 'vertical' : 'horizontal',
+ leftMin: 20,
+ topMin: 20
+ });
+ }, 1500);
+ }
+};
+
+IriSP.Widgets.SlideVideoPlayer.prototype.toggleMainDisplay = function() {
+ if (this.$.find(".Ldt-SlideVideoPlayer-panel.Ldt-SlideVideoPlayer-video").hasClass("Ldt-SlideVideoPlayer-pip-main")) {
+ this.setMainDisplay('slides');
+ } else {
+ this.setMainDisplay('video');
+ }
+};
+
+// Set main display (in case of a "switch" display mode)
+// main is either 'video' or 'slides'
+IriSP.Widgets.SlideVideoPlayer.prototype.setMainDisplay = function(video_or_slides) {
+ var main = this.$.find(".Ldt-SlideVideoPlayer-panel.Ldt-SlideVideoPlayer-video");
+ var pip = this.$.find(".Ldt-SlideVideoPlayer-panel.Ldt-SlideVideoPlayer-slide");
+ if (video_or_slides == 'slides') {
+ var temp = main;
+ main = pip;
+ pip = temp;
+ };
+ main.removeClass('Ldt-SlideVideoPlayer-pip-pip').addClass('Ldt-SlideVideoPlayer-pip-main');
+ pip.removeClass('Ldt-SlideVideoPlayer-pip-main').addClass('Ldt-SlideVideoPlayer-pip-pip');
}