From 2c932cee5deeb5d54ce6f0f176212ac9aeda2c99 Mon Sep 17 00:00:00 2001 From: Eston Bond Date: Tue, 7 Dec 2010 14:04:06 -0800 Subject: [PATCH] Get dialogs working in IE --- lib/gollum/frontend/public/css/dialog.css | 14 +++--- .../public/javascript/gollum.dialog.js | 48 ++++++++++++------- 2 files changed, 36 insertions(+), 26 deletions(-) mode change 100644 => 100755 lib/gollum/frontend/public/javascript/gollum.dialog.js diff --git a/lib/gollum/frontend/public/css/dialog.css b/lib/gollum/frontend/public/css/dialog.css index a383f4c3..99a3ecb9 100755 --- a/lib/gollum/frontend/public/css/dialog.css +++ b/lib/gollum/frontend/public/css/dialog.css @@ -1,12 +1,11 @@ /* @control dialog */ #gollum-dialog-dialog { - display: none; - top: 50%; - left: 50%; + display: block; overflow: visible; position: absolute; - z-index: 1000; + top: 50%; + left: 50%; } #gollum-dialog-dialog.active { @@ -14,14 +13,12 @@ } #gollum-dialog-dialog-inner { - background: transparent; margin: 0 0 0 -225px; position: relative; width: 450px; - z-index: 1000; border: 7px solid #999; - border: 7px solid rgba(0, 0, 0, 0.3); + border: 7px solid rgba(0, 0, 0, 0.3); border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; @@ -32,7 +29,6 @@ overflow: hidden; padding: 1em; - filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f7f7f7', endColorstr='#ffffff'); background: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#ffffff)); background: -moz-linear-gradient(top, #f7f7f7, #ffffff); } @@ -53,8 +49,10 @@ } #gollum-dialog-dialog-body fieldset { + display: block; border: 0; margin: 0; + overflow: hidden; padding: 0; } diff --git a/lib/gollum/frontend/public/javascript/gollum.dialog.js b/lib/gollum/frontend/public/javascript/gollum.dialog.js old mode 100644 new mode 100755 index ef20a195..99cf0890 --- a/lib/gollum/frontend/public/javascript/gollum.dialog.js +++ b/lib/gollum/frontend/public/javascript/gollum.dialog.js @@ -81,6 +81,7 @@ 'class="minibutton">Cancel' + 'OK' + + '' + '' + '' + ''; @@ -110,12 +111,17 @@ }, hide: function() { - $('#gollum-dialog-dialog').animate({ opacity: 0 }, { - duration: 200, - complete: function() { - $('#gollum-dialog-dialog').removeClass('active'); - } - }); + if ( $.browser.msie ) { + $('#gollum-dialog-dialog').hide().removeClass('active'); + $('select').css('visibility', 'visible'); + } else { + $('#gollum-dialog-dialog').animate({ opacity: 0 }, { + duration: 200, + complete: function() { + $('#gollum-dialog-dialog').removeClass('active'); + } + }); + } }, init: function( argObject ) { @@ -159,16 +165,23 @@ debug('Dialog: No markup to show. Please use init first.'); } else { debug('Showing dialog'); - $('#gollum-dialog-dialog').animate({ opacity: 0 }, { - duration: 1, - complete: function() { - $('#gollum-dialog-dialog').addClass('active'); - Dialog.position(); // position this thing - $('#gollum-dialog-dialog').animate({ opacity: 1 }, { - duration: 500 - }); - } - }); + if ( $.browser.msie ) { + $('#gollum-dialog.dialog').addClass('active'); + Dialog.position(); + $('select').css('visibility', 'hidden'); + } else { + $('#gollum-dialog.dialog').css('display', 'none'); + $('#gollum-dialog-dialog').animate({ opacity: 0 }, { + duration: 0, + complete: function() { + $('#gollum-dialog-dialog').css('display', 'block'); + Dialog.position(); // position this thing + $('#gollum-dialog-dialog').animate({ opacity: 1 }, { + duration: 500 + }); + } + }); + } } }, @@ -183,8 +196,7 @@ var debug = function(m) { if ( Dialog.debugOn - && typeof console != 'undefined' - && typeof console.log == 'function' ) { + && typeof console != 'undefined' ) { console.log( m ); } };