浏览代码

Opera 11 WebSockets and Opera '-' key mapping fix.

Opera 11 native WebSockets (if enabled) seems to have bad behavior for
the bufferedAmount so add change from websockify project to allow max
bufferedAmount (before send queue is delay) to be configured.

Also, Opera 11 and 10.60 behave like Mozilla regarding the '-' key so
translate it correctly.
Joel Martin 15 年之前
父节点
当前提交
7cc5fbc52e
共有 2 个文件被更改,包括 6 次插入3 次删除
  1. 2 2
      include/canvas.js
  2. 4 1
      include/websock.js

+ 2 - 2
include/canvas.js

@@ -770,8 +770,8 @@ function getKeysym(e) {
         case 186       : keysym = 59; break; // ;  (IE)
         case 187       : keysym = 61; break; // =  (IE)
         case 188       : keysym = 44; break; // ,  (Mozilla, IE)
-        case 109       :                     // -  (Mozilla)
-            if (Util.Engine.gecko) {
+        case 109       :                     // -  (Mozilla, Opera)
+            if (Util.Engine.gecko || Util.Engine.presto) {
                          keysym = 45; }
                                       break;
         case 189       : keysym = 45; break; // -  (IE)

+ 4 - 1
include/websock.js

@@ -169,7 +169,7 @@ function flush() {
     if (websocket.bufferedAmount !== 0) {
         Util.Debug("bufferedAmount: " + websocket.bufferedAmount);
     }
-    if (websocket.bufferedAmount < 1000) {
+    if (websocket.bufferedAmount < api.maxBufferedAmount) {
         //Util.Debug("arr: " + arr);
         //Util.Debug("sQ: " + sQ);
         if (sQ) {
@@ -281,6 +281,9 @@ function close() {
 }
 
 function constructor() {
+    // Configuration settings
+    api.maxBufferedAmount = 200;
+
     // Direct access to send and receive queues
     api.get_sQ       = get_sQ;
     api.get_rQ       = get_rQ;