diff --git a/js/makegrid.js b/js/makegrid.js index 93c175d2a8..ea381f90c5 100644 --- a/js/makegrid.js +++ b/js/makegrid.js @@ -194,6 +194,9 @@ function PMA_makegrid(t, enableResize, enableReorder, enableVisib, enableGridEdi g.reposDrop(); g.colRsz = false; $(g.cRsz).find('div').removeClass('colborder_active'); + if($('#sticky_columns').length !== 0) { + rearrangeStickyColumns(); + } } else if (g.colReorder) { // shift columns if (g.colReorder.newn != g.colReorder.n) { @@ -220,6 +223,9 @@ function PMA_makegrid(t, enableResize, enableReorder, enableVisib, enableGridEdi $(g.cPointer).css('visibility', 'hidden'); g.colReorder = false; + if($('#sticky_columns').length !== 0) { + rearrangeStickyColumns(); + } } $(document.body).css('cursor', 'inherit').noSelect(false); }, diff --git a/js/sql.js b/js/sql.js index 1eb6cd3d83..64db28261d 100644 --- a/js/sql.js +++ b/js/sql.js @@ -161,6 +161,7 @@ AJAX.registerOnload('sql.js', function () { } //add sticky columns div initStickyColumns(); + rearrangeStickyColumns(); //adjust sticky columns on scroll $(window).bind('scroll', function() { handleStickyColumns(); @@ -533,6 +534,21 @@ function initStickyColumns() { } } +/* + * Arrange/Rearrange columns in sticky header + */ +function rearrangeStickyColumns() { + var $sticky_columns = $("#sticky_columns"); + var $originalHeader = $("#table_results > thead"); + var $originalColumns = $originalHeader.find("tr:first").children(); + var $clonedHeader = $originalHeader.clone(); + // clone width per cell + $clonedHeader.find("tr:first").children().width(function(i,val) { + return $originalColumns.eq(i).width(); + }); + $sticky_columns.empty().append($clonedHeader); +} + /* * Adjust sticky columns on horizontal/vertical scroll */ @@ -556,14 +572,6 @@ function handleStickyColumns() { } $sticky_columns.show(); } else { - var $originalHeader = $("#table_results > thead"); - var $originalColumns = $originalHeader.find("tr:first").children(); - var $clonedHeader = $originalHeader.clone(); - // clone width per cell - $clonedHeader.find("tr:first").children().width(function(i,val) { - return $originalColumns.eq(i).width(); - }); - $sticky_columns.empty().append($clonedHeader); $sticky_columns.hide(); } }