The branch, master has been updated
       via  a874856d01ea9e352a91746806b8dfbfefcba004 (commit)
      from  3289d84a03d72e34f451134524c5e337a8621ada (commit)


- Log -----------------------------------------------------------------
commit a874856d01ea9e352a91746806b8dfbfefcba004
Author: Piotr Przybylski <[email protected]>
Date:   Sun Dec 26 14:00:09 2010 +0100

    Fixes to "More" dropdown on Structure page:
    * hide using mouseleave for owning table cell instead of mouseleave on menu
    * links as blocks, so that they are as wide as possible

-----------------------------------------------------------------------

Summary of changes:
 js/functions.js                                |   94 +++++++++++++----------
 themes/darkblue_orange/css/theme_right.css.php |    4 +
 themes/original/css/theme_right.css.php        |    4 +
 3 files changed, 61 insertions(+), 41 deletions(-)

diff --git a/js/functions.js b/js/functions.js
index cba0853..409de9b 100644
--- a/js/functions.js
+++ b/js/functions.js
@@ -2135,40 +2135,50 @@ $(document).ready(function() {
      */
     // Remove the actions from the table cells (they are available by default 
for JavaScript-disabled browsers)
     // if the table is not a view or information_schema (otherwise there is 
only one action to hide and there's no point)
-    if($("input[type='hidden'][name='table_type']").attr("value") == "table") {
-         $("table[id='tablestructure'] td[class='browse']").remove();
-         $("table[id='tablestructure'] td[class='primary']").remove();
-         $("table[id='tablestructure'] td[class='unique']").remove();
-         $("table[id='tablestructure'] td[class='index']").remove();
-         $("table[id='tablestructure'] td[class='fulltext']").remove();
-         $("table[id='tablestructure'] th[class='action']").attr("colspan", 3);
-
-         // Display the "more" text
-         $("table[id='tablestructure'] td[class='more_opts']").show()
-
-         // Position the dropdown
-         $.each($(".structure_actions_dropdown"), function() {
-              // The top offset must be set for IE even if it didn't change
-             var cell_right_edge_offset = $(this).parent().offset().left + 
$(this).parent().innerWidth();
-             var left_offset = cell_right_edge_offset - $(this).innerWidth();
-             var top_offset = $(this).parent().offset().top + 
$(this).parent().innerHeight();
-             $(this).offset({ top: top_offset, left: left_offset });
-         });
-
-         // A hack for IE6 to prevent the after_field select element from 
being displayed on top of the dropdown by
-         // positioning an iframe directly on top of it
-         
$("iframe[class='IE_hack']").width($("select[name='after_field']").width());
-         
$("iframe[class='IE_hack']").height($("select[name='after_field']").height());
-         $("iframe[class='IE_hack']").offset({ top: 
$("select[name='after_field']").offset().top, left: 
$("select[name='after_field']").offset().left });
-
-         // When "more" is hovered over, show the hidden actions
-         $("table[id='tablestructure'] td[class='more_opts']").mouseenter(
-             function() {
+    if($("input[type='hidden'][name='table_type']").val() == "table") {
+           var $table = $("table[id='tablestructure']");
+        $table.find("td[class='browse']").remove();
+        $table.find("td[class='primary']").remove();
+        $table.find("td[class='unique']").remove();
+        $table.find("td[class='index']").remove();
+        $table.find("td[class='fulltext']").remove();
+        $table.find("th[class='action']").attr("colspan", 3);
+
+        // Display the "more" text
+        $table.find("td[class='more_opts']").show();
+
+        // Position the dropdown
+        $(".structure_actions_dropdown").each(function() {
+             // The top offset must be set for IE even if it didn't change
+            var cell_right_edge_offset = $(this).parent().offset().left + 
$(this).parent().innerWidth();
+            var left_offset = cell_right_edge_offset - $(this).innerWidth();
+            var top_offset = $(this).parent().offset().top + 
$(this).parent().innerHeight();
+            $(this).offset({ top: top_offset, left: left_offset });
+        });
+
+        // A hack for IE6 to prevent the after_field select element from being 
displayed on top of the dropdown by
+        // positioning an iframe directly on top of it
+        var $after_field = $("select[name='after_field']");
+           $("iframe[class='IE_hack']")
+                   .width($after_field.width())
+            .height($after_field.height())
+            .offset({
+                top: $after_field.offset().top,
+                left: $after_field.offset().left
+            });
+
+        // When "more" is hovered over, show the hidden actions
+        $table.find("td[class='more_opts']")
+                   .mouseenter(function() {
                 if($.browser.msie && $.browser.version == "6.0") {
-                    $("iframe[class='IE_hack']").show();
-                    
$("iframe[class='IE_hack']").width($("select[name='after_field']").width()+4);
-                    
$("iframe[class='IE_hack']").height($("select[name='after_field']").height()+4);
-                    $("iframe[class='IE_hack']").offset({ top: 
$("select[name='after_field']").offset().top, left: 
$("select[name='after_field']").offset().left});
+                    $("iframe[class='IE_hack']")
+                               .show()
+                        .width($after_field.width()+4)
+                        .height($after_field.height()+4)
+                        .offset({
+                            top: $after_field.offset().top,
+                            left: $after_field.offset().left
+                        });
                 }
                 $(".structure_actions_dropdown").hide(); // Hide all the other 
ones that may be open
                 $(this).children(".structure_actions_dropdown").show();
@@ -2176,15 +2186,17 @@ $(document).ready(function() {
                 if($.browser.msie) {
                     var left_offset_IE = $(this).offset().left + 
$(this).innerWidth() - 
$(this).children(".structure_actions_dropdown").innerWidth();
                     var top_offset_IE = $(this).offset().top + 
$(this).innerHeight();
-                    $(this).children(".structure_actions_dropdown").offset({ 
top: top_offset_IE, left: left_offset_IE });
+                    $(this).children(".structure_actions_dropdown").offset({
+                           top: top_offset_IE,
+                           left: left_offset_IE });
                 }
-         });
-         $(".structure_actions_dropdown").mouseleave(function() {
-              $(this).hide();
-              if($.browser.msie && $.browser.version == "6.0") {
-                  $("iframe[class='IE_hack']").hide();
-              }
-         });
+            })
+            .mouseleave(function() {
+                $(this).children(".structure_actions_dropdown").hide();
+                if($.browser.msie && $.browser.version == "6.0") {
+                    $("iframe[class='IE_hack']").hide();
+                }
+            });
     }
 });
 
diff --git a/themes/darkblue_orange/css/theme_right.css.php 
b/themes/darkblue_orange/css/theme_right.css.php
index 438e04d..f5ac595 100644
--- a/themes/darkblue_orange/css/theme_right.css.php
+++ b/themes/darkblue_orange/css/theme_right.css.php
@@ -1610,6 +1610,10 @@ a.close_enum_editor {
     display: none;
 }
 
+.structure_actions_dropdown a {
+    display: block;
+}
+
 td.more_opts {
     display: none;
     white-space: nowrap;
diff --git a/themes/original/css/theme_right.css.php 
b/themes/original/css/theme_right.css.php
index 450c91d..2e5d6f6 100644
--- a/themes/original/css/theme_right.css.php
+++ b/themes/original/css/theme_right.css.php
@@ -1551,6 +1551,10 @@ a.close_enum_editor {
     z-index: 100;
 }
 
+.structure_actions_dropdown a {
+    display: block;
+}
+
 td.more_opts {
     display: none;
     white-space: nowrap;


hooks/post-receive
-- 
phpMyAdmin

------------------------------------------------------------------------------
Learn how Oracle Real Application Clusters (RAC) One Node allows customers
to consolidate database storage, standardize their database environment, and, 
should the need arise, upgrade to a full multi-node Oracle RAC database 
without downtime or disruption
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
Phpmyadmin-git mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/phpmyadmin-git

Reply via email to