Changeset 73435 in spip-zone


Ignore:
Timestamp:
Jun 9, 2013, 11:57:12 PM (6 years ago)
Author:
kent1@…
Message:

Ne pas retailler le media si on est en fullscreen

On met à fullscreen avant de retailler les controles

Petites améliorations diverses

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/mediaspip_player/trunk/javascript/mediaspip_player.js

    r73433 r73435  
    137137                        options = $.extend(defaults, options);
    138138                       
    139                         var media = $(this), id = $(this)[0], playable = false;
     139                        var media = $(this), id = media[0], playable = id.isFullScreen = false;
    140140
    141141                        if(media.is(':hidden')) media.show();
     
    544544                                                media.animate({width:'100%'},'fast').ms_resize_controls();
    545545                                        }
    546                                         var handler_media_resize = function(){
    547                                                 wrapper.css({width:'auto'}).css({height:(wrapper.width()/id.ratio)+'px'});
    548                                                 media.ms_resize_controls();
    549                                         }
    550                                         $(window).unbind('resize',handler_media_resize).resize(handler_media_resize);
     546                                        var handler_media_resize = function(){
     547                                                if(!id.isFullScreen){
     548                                                        wrapper.css({width:'auto'}).css({height:(wrapper.width()/id.ratio)+'px'});
     549                                                        media.ms_resize_controls();
     550                                                }
     551                                        }
     552                                        $(window).unbind('resize',handler_media_resize).bind('resize',handler_media_resize);
    551553                                }else if(!media.hasClass('noresize') && (options.movieSize != 'noresize')){
    552554                                        /**
     
    862864                ms_fullscreen : function(){
    863865                        if($(this)[0].controls) return;
    864                         var media = $(this),
    865                                 id = media[0],
    866                                 wrapper = media.parent(),
    867                                 id_wrapper = wrapper[0];
     866                        var media = $(this), id = media[0], wrapper = media.parent(), id_wrapper = wrapper[0];
    868867                        if(id.mediacanplay){
    869868                                if(!id.isFullScreen){
     
    872871                                        id_wrapper.origWidth = wrapper.width();
    873872                                        id_wrapper.origHeight = wrapper.height();
     873                                        id.isFullScreen = true;
    874874                                        if (fullScreenApi.supportsFullScreen)
    875875                                                media.ms_fullscreen_resize();
     
    878878                                                media.ms_fullscreen_resize();
    879879                                                var handler_fullscreen_resize = function(){ media.ms_fullscreen_resize(); }
    880                                                 $(window).unbind('resize',handler_fullscreen_resize).resize(handler_fullscreen_resize);
    881                                         }
    882                                         id.isFullScreen = true;
     880                                                $(window).unbind('resize',handler_fullscreen_resize).bind('resize',handler_fullscreen_resize);
     881                                        }
    883882                                }else{
    884883                                        if (fullScreenApi.supportsFullScreen) {
     
    897896                                                wrapper.bind('ms_fullscreen_resize',handler_resize);
    898897                                                var media_handler_resize = function(){
    899                                                         media.animate({width:$(this)[0].videoOrigWidth+'px',height:$(this)[0].videoOrigHeight+'px',left:'0',top:'0'},500,function(){
     898                                                        media.animate({width:id.videoOrigWidth+'px',height:id.videoOrigHeight+'px',left:'0',top:'0'},500,function(){
    900899                                                                media.ms_resize_controls();
    901900                                                        });
     
    917916                        var media = $(this), id = media[0], wrapper = media.parent(), id_wrapper = wrapper[0];
    918917       
    919                         wrapper.find('span.fullwindow_button').attr('title',ms_player_lang.bouton_fullscreen_full);
     918                        wrapper.css({width:'100%',height:'100%',left:'0',top:'0'}).addClass('media_wrapper_full').find('.controls').removeClass('small')
     919                                .find('span.fullwindow_button').attr('title',ms_player_lang.bouton_fullscreen_full);
    920920                       
    921921                        if (fullScreenApi.supportsFullScreen) {
    922922                                (fullScreenApi.prefix === '') ? id_wrapper.requestFullScreen() : id_wrapper[fullScreenApi.prefix + 'RequestFullScreen']();
    923                                 wrapper.css({width:'100%',height:'100%',left:'0',top:'0'}).addClass('media_wrapper_full').find('.controls').removeClass('small');
    924                                 media.ms_resize_controls();
    925923                        }else{
    926924                                var window_width = window.innerWidth,
     
    928926                                        ratio = (window_height/id.videoHeight),
    929927                                        width_final = (id.videoWidth*ratio).toFixed();
    930                                 wrapper.css({width:'100%',height:'100%',left:'0',top:'0'}).addClass('media_wrapper_full').find('.controls').removeClass('small');
    931928                                if(width_final > window_width){
    932                                         var ratio = (window_width/$(this)[0].videoWidth),
    933                                                 height_final = ($(this)[0].videoHeight*ratio).toFixed(),
     929                                        var ratio = (window_width/id.videoWidth),
     930                                                height_final = (id.videoHeight*ratio).toFixed(),
    934931                                                top = ((window_height-height_final)/2).toFixed();
    935932                                        $(this).css({position:'absolute',width:window_width+'px',height:height_final+'px',top:top+'px',left:'0'});
     
    938935                                        media.css({position:'auto',width:width_final+'px',height:window_height+'px',left:left+'px',top:'0'});
    939936                                }
    940                                 media.ms_resize_controls();
    941                         }
     937                        }
     938                        media.ms_resize_controls();
    942939                },
    943940       
Note: See TracChangeset for help on using the changeset viewer.