Author: tveronezi
Date: Wed Oct 17 23:28:08 2012
New Revision: 1399481

URL: http://svn.apache.org/viewvc?rev=1399481&view=rev
Log:
Call 'preventDefault' only if the event is consumed. In other words, give my 
'copy-paste' feature back. :O)

Modified:
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/ApplicationChannel.js
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/view/ApplicationView.js

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/ApplicationChannel.js
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/ApplicationChannel.js?rev=1399481&r1=1399480&r2=1399481&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/ApplicationChannel.js
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/ApplicationChannel.js
 Wed Oct 17 23:28:08 2012
@@ -103,7 +103,9 @@ TOMEE.ApplicationChannel = (function () 
             );
 
             if (!listeners[messageKey]) {
-                return;
+                return {
+                    consumed: false
+                };
             }
 
             var myListeners = listeners[messageKey];
@@ -115,6 +117,10 @@ TOMEE.ApplicationChannel = (function () 
             }
 
             myListeners.fire(safeParamsObj);
+
+            return {
+                consumed: true
+            };
         }
 
         return {
@@ -139,7 +145,7 @@ TOMEE.ApplicationChannel = (function () 
             getChannel(name).unbind(key, callback);
         },
         send:function (name, key, data) {
-            getChannel(name).send(key, data);
+            return getChannel(name).send(key, data);
         }
     };
 })();
\ No newline at end of file

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/view/ApplicationView.js
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/view/ApplicationView.js?rev=1399481&r1=1399480&r2=1399481&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/view/ApplicationView.js
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/app/js/view/ApplicationView.js
 Wed Oct 17 23:28:08 2012
@@ -23,7 +23,7 @@ TOMEE.ApplicationView = function () {
         panelMap = {
             'console':TOMEE.ApplicationTabConsole(),
             'log':TOMEE.ApplicationTabLog(),
-            'webservices': TOMEE.ApplicationTabWebservices()
+            'webservices':TOMEE.ApplicationTabWebservices()
         },
         selected = null,
         container = $(TOMEE.ApplicationTemplates.getValue('application', {})),
@@ -60,12 +60,20 @@ TOMEE.ApplicationView = function () {
     });
 
     myWindow.on('keyup', function (ev) {
+        var result = {
+            consumed:false
+        };
+
         if (ev.keyCode === 18) { //ALT
-            channel.send('ui-actions', 'window-alt-released', {});
+            result = channel.send('ui-actions', 'window-alt-released', {});
         } else if (ev.keyCode === 17) { //CONTROL
-            channel.send('ui-actions', 'window-ctrl-released', {});
+            result = channel.send('ui-actions', 'window-ctrl-released', {});
         } else if (ev.keyCode === 16) { //SHIFT
-            channel.send('ui-actions', 'window-shift-released', {});
+            result = channel.send('ui-actions', 'window-shift-released', {});
+        }
+
+        if (result.consumed) {
+            ev.preventDefault();
         }
     });
 
@@ -92,8 +100,10 @@ TOMEE.ApplicationView = function () {
         }
         key.push(keyStr);
 
-        channel.send('ui-actions', 'window-' + key.join('-') + '-pressed', {});
-        ev.preventDefault();
+        var result = channel.send('ui-actions', 'window-' + key.join('-') + 
'-pressed', {});
+        if (result.consumed) {
+            ev.preventDefault();
+        }
     });
 
 


Reply via email to