Merge "Fire 'appwidgetready' regardless sequence of executing injection scripts"
authorHOSEON LEE <hoseon46.lee@samsung.com>
Fri, 28 Jun 2013 01:23:46 +0000 (01:23 +0000)
committerGerrit Code Review <gerrit@gerrit.vlan144.tizendev.org>
Fri, 28 Jun 2013 01:23:46 +0000 (01:23 +0000)
src/Core/View/injection.js

index 0780755..0fb5660 100644 (file)
@@ -10,6 +10,14 @@ if (typeof window.tizen == 'undefined') {
 // For future, only window.appwidget will be used
 window.appwidget = new Object();
 
+
+window.appwidget.fireReadyEvent = function () {
+    // If every functionalities of appwidget are initialized, fire appwidget ready event
+    var readyevent = document.createEvent("CustomEvent");
+    readyevent.initCustomEvent("appwidgetready", true, true);
+    document.dispatchEvent(readyevent);
+};
+
 // these are functions for overriding standard javascript functions regarding event
 var original_addEventListener = window.addEventListener;
 var original_removeEventListener = window.removeEventListener;
@@ -30,6 +38,11 @@ window.addEventListener = function(event, callback, capture) {
     } else {
         original_addEventListener.call(window, event, callback, capture);
     }
+
+    if (e == 'appwidgetready') {
+        // fire ready event to content
+        setTimeout(window.appwidget.fireReadyEvent(), 0);
+    }
 };
 
 window.removeEventListener = function(event, callback, capture) {
@@ -111,8 +124,3 @@ if (!appTizenObject) {
     window.tizen.appwidget.scrollStart = window.appwidget.scrollStart;
     window.tizen.appwidget.scrollStop = window.appwidget.scrollStop;
 }
-
-// If every functionalities of appwidget are initialized, fire appwidget ready event
-var readyevent = document.createEvent("CustomEvent");
-readyevent.initCustomEvent("appwidgetready", true, true);
-document.dispatchEvent(readyevent);