From c3080a04019a7c15ad5bb47634be15aae97240d7 Mon Sep 17 00:00:00 2001
From: Angie Byron <webchick@24967.no-reply.drupal.org>
Date: Tue, 15 Dec 2009 05:28:59 +0000
Subject: [PATCH] #659486 by Kiphaas7 and xmacinfo: Add back the 'loading'
 image to the Overlay in a way that does not kill performance.

---
 modules/overlay/overlay-parent.css | 4 ++++
 modules/overlay/overlay-parent.js  | 6 ++++++
 2 files changed, 10 insertions(+)

diff --git a/modules/overlay/overlay-parent.css b/modules/overlay/overlay-parent.css
index 115977b7a3af..70959766b5bb 100644
--- a/modules/overlay/overlay-parent.css
+++ b/modules/overlay/overlay-parent.css
@@ -67,10 +67,14 @@
   margin: 0;
   padding: 0;
   overflow: visible;
+  background: #fff url(images/loading.gif) no-repeat 50% 50%;
   -webkit-box-shadow: 8px 8px 8px rgba(0,0,0,.5);
   -moz-box-shadow: 8px 8px 8px rgba(0,0,0,.5);
   box-shadow: 8px 8px 8px rgba(0,0,0,.5);
 }
+.overlay-loaded #overlay-container {
+  background: none;
+}
 .overlay #overlay-element {
   overflow: hidden;
 }
diff --git a/modules/overlay/overlay-parent.js b/modules/overlay/overlay-parent.js
index 88dd43aa1035..c79276f823cd 100644
--- a/modules/overlay/overlay-parent.js
+++ b/modules/overlay/overlay-parent.js
@@ -254,6 +254,12 @@ Drupal.overlay.create = function () {
 Drupal.overlay.load = function (url) {
   var self = this;
   var iframe = self.iframe.$element.get(0);
+  
+  // Add a loaded class to the overlay once the iframe is loaded.
+  $(iframe).load(function () {
+    $('.overlay').addClass('overlay-loaded');
+  });
+  
   // Get the document object of the iframe window.
   // @see http://xkr.us/articles/dom/iframe-document/
   var doc = (iframe.contentWindow || iframe.contentDocument);
-- 
GitLab