WordPress.org

Make WordPress Core

Ticket #24804: 24804.pin-to-top.diff

File 24804.pin-to-top.diff, 5.2 KB (added by markjaquith, 9 months ago)
  • wp-admin/css/colors-classic.css

    table.diff .diff-addedline ins { 
    14851485        border: 1px solid #d1e5ee; 
    14861486} 
    14871487 
     1488.revisions-controls { 
     1489        background: #fff; 
     1490        background: -moz-linear-gradient(bottom,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 30px, rgba(255,255,255,1) 100%); 
     1491        background: -webkit-gradient(linear, left bottom, left top, color-stop(0%,rgba(255,255,255,1)), color-stop(30px,rgba(255,255,255,1)), color-stop(100%,rgba(255,255,255,1))); 
     1492        background: -webkit-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1493        background: -o-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1494        background: -ms-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1495        background: linear-gradient(to top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1496} 
     1497 
    14881498.revisions-tooltip, 
    14891499.revisions-tooltip-arrow span { 
    14901500        border-color: #d1e5ee; 
  • wp-admin/css/colors-fresh.css

    table.diff .diff-addedline ins { 
    13791379        border: 1px solid #dfdfdf; 
    13801380} 
    13811381 
     1382.revisions-controls { 
     1383        background: #fff; 
     1384        background: -moz-linear-gradient(bottom,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 30px, rgba(255,255,255,1) 100%); 
     1385        background: -webkit-gradient(linear, left bottom, left top, color-stop(0%,rgba(255,255,255,1)), color-stop(30px,rgba(255,255,255,1)), color-stop(100%,rgba(255,255,255,1))); 
     1386        background: -webkit-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1387        background: -o-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1388        background: -ms-linear-gradient(bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1389        background: linear-gradient(to top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%); 
     1390} 
     1391 
    13821392.revisions-tooltip, 
    13831393.revisions-tooltip-arrow span { 
    13841394        border-color: #d7d7d7; 
  • wp-admin/css/wp-admin.css

    td.plugin-title p { 
    35113511/*------------------------------------------------------------------------------ 
    35123512  11.2 - Post Revisions 
    35133513------------------------------------------------------------------------------*/ 
     3514.revisions { 
     3515        position: relative; 
     3516} 
     3517 
    35143518.revisions-control-frame, 
    35153519.revisions-diff-frame { 
    35163520        position: relative; 
    td.plugin-title p { 
    35193523.revisions-controls { 
    35203524        padding-top: 40px; 
    35213525        height: 100px; 
     3526        z-index: 1; 
    35223527} 
    35233528 
    35243529.revisions-controls input[type="checkbox"] { 
    td.plugin-title p { 
    35273532        vertical-align: text-bottom; 
    35283533} 
    35293534 
     3535.revisions.pinned .revisions-controls { 
     3536        position: fixed; 
     3537        top: 0; 
     3538        padding-bottom: 10px; 
     3539} 
     3540 
    35303541.revisions-tickmarks { 
    35313542        position: relative; 
    35323543        margin: 0 auto; 
    table.diff .diff-addedline ins { 
    37543765        transition:         left 15ms; 
    37553766} 
    37563767 
     3768.revisions.pinned .revisions-tooltip { 
     3769        display: none !important; 
     3770} 
     3771 
    37573772.comparing-two-revisions .revisions-tooltip { 
    37583773        bottom: 145px; 
    37593774} 
  • wp-admin/js/revisions.js

    window.wp = window.wp || {}; 
    531531                className: 'revisions-controls', 
    532532 
    533533                initialize: function() { 
     534                        _.bindAll( this, 'setWidth' ); 
     535 
    534536                        // Add the button view 
    535537                        this.views.add( new revisions.view.Buttons({ 
    536538                                model: this.model 
    window.wp = window.wp || {}; 
    573575                        this.views.add( new revisions.view.Meta({ 
    574576                                model: this.model 
    575577                        }) ); 
     578                }, 
     579 
     580                ready: function() { 
     581                        this.top = this.$el.offset().top; 
     582                        this.window = $(window); 
     583                        this.window.on( 'scroll.wp.revisions', {controls: this}, function(e) { 
     584                                var controls = e.data.controls; 
     585                                var container = controls.$el.parent(); 
     586                                var scrolled = controls.window.scrollTop(); 
     587                                var frame = controls.views.parent; 
     588 
     589                                if ( scrolled >= controls.top ) { 
     590                                        if ( ! frame.$el.hasClass('pinned') ) { 
     591                                                controls.setWidth(); 
     592                                                container.css('height', container.height() + 'px' ); 
     593                                                controls.window.on('resize.wp.revisions.pinning click.wp.revisions.pinning', {controls: controls}, function(e) { 
     594                                                        e.data.controls.setWidth(); 
     595                                                }); 
     596                                        } 
     597                                        frame.$el.addClass('pinned'); 
     598                                } else if ( frame.$el.hasClass('pinned') ) { 
     599                                        controls.window.off('.wp.revisions.pinning'); 
     600                                        controls.$el.css('width', 'auto'); 
     601                                        frame.$el.removeClass('pinned'); 
     602                                        container.css('height', 'auto'); 
     603                                        controls.top = controls.$el.offset().top; 
     604                                } else { 
     605                                        controls.top = controls.$el.offset().top; 
     606                                } 
     607                        }); 
     608                }, 
    576609 
     610                setWidth: function() { 
     611                        this.$el.css('width', this.$el.parent().width() + 'px'); 
    577612                } 
    578613        }); 
    579614