Roo.js
[roojs1] / Roo.js
diff --git a/Roo.js b/Roo.js
index e7a52ce..bff21f1 100644 (file)
--- a/Roo.js
+++ b/Roo.js
@@ -60,15 +60,15 @@ Roo.apply = function(o, c, defaults){
         isWindows = (ua.indexOf("windows") != -1 || ua.indexOf("win32") != -1),
         isMac = (ua.indexOf("macintosh") != -1 || ua.indexOf("mac os x") != -1),
         isLinux = (ua.indexOf("linux") != -1),
-        isSecure = window.location.href.toLowerCase().indexOf("https") === 0;
-
+        isSecure = window.location.href.toLowerCase().indexOf("https") === 0,
+        isTouch =  'ontouchstart' in window || window.DocumentTouch && document instanceof DocumentTouch;
     // remove css image flicker
        if(isIE && !isIE7){
         try{
             document.execCommand("BackgroundImageCache", false, true);
         }catch(e){}
     }
-
+    
     Roo.apply(Roo, {
         /**
          * True if the browser is in strict mode
@@ -90,7 +90,7 @@ Roo.apply = function(o, c, defaults){
          * @type Boolean
          */
         
-        debug: false,
+        debug: true,
 
         /**
          * True to automatically uncache orphaned Roo.Elements periodically (defaults to true)
@@ -120,7 +120,7 @@ Roo.apply = function(o, c, defaults){
         BLANK_IMAGE_URL : "http:/"+"/localhost/s.gif",
 
         emptyFn : function(){},
-
+        
         /**
          * Copies all the properties of config to obj if they don't already exist.
          * @param {Object} obj The receiver of the properties
@@ -336,16 +336,16 @@ Roo.factory(conf, Roo.data);
             }
             var buf = [];
             for(var key in o){
-                var ov = o[key], k = encodeURIComponent(key);
+                var ov = o[key], k = Roo.encodeURIComponent(key);
                 var type = typeof ov;
                 if(type == 'undefined'){
                     buf.push(k, "=&");
                 }else if(type != "function" && type != "object"){
-                    buf.push(k, "=", encodeURIComponent(ov), "&");
+                    buf.push(k, "=", Roo.encodeURIComponent(ov), "&");
                 }else if(ov instanceof Array){
                     if (ov.length) {
                            for(var i = 0, len = ov.length; i < len; i++) {
-                               buf.push(k, "=", encodeURIComponent(ov[i] === undefined ? '' : ov[i]), "&");
+                               buf.push(k, "=", Roo.encodeURIComponent(ov[i] === undefined ? '' : ov[i]), "&");
                            }
                        } else {
                            buf.push(k, "=&");
@@ -397,9 +397,7 @@ Roo.factory(conf, Roo.data);
                     bs[1] = 0x80 | (c & 0x3F);
                 }else{
                         // 1 byte
-                     bs[0] = c;
-                     buffer += data.charAt(i);
-                     continue;
+                    bs[0] = c;
                 }
                 for(var j=0; j<bs.length; j++){
                     var b = bs[j];
@@ -408,7 +406,7 @@ Roo.factory(conf, Roo.data);
                     buffer += '%'+hex;
                }
             }
-            return encodeURIComponent(buffer);    
+            return buffer;    
              
         },
 
@@ -617,6 +615,8 @@ Roo.factory(conf, Roo.data);
         isLinux : isLinux,
         /** @type Boolean */
         isMac : isMac,
+        /** @type Boolean */
+        isTouch : isTouch,
 
         /**
          * By default, Ext intelligently decides whether floating elements should be shimmed. If you are using flash,