diff options
author | Kenny Root <kenny@the-b.org> | 2015-10-08 15:12:42 -0700 |
---|---|---|
committer | Kenny Root <kenny@the-b.org> | 2015-10-08 15:12:42 -0700 |
commit | 51f1da7c035d646612cff30d62530805ea67da59 (patch) | |
tree | d14a43337c60206d4613242cd7ebfdf04d593967 /app/src/main/java/de/mud/terminal/vt320.java | |
parent | 7daecb5d1e546efca204eb57593c324de0333376 (diff) | |
parent | b78b52d46c7797571b7819a2f2908f569eb97829 (diff) | |
download | connectbot-51f1da7c035d646612cff30d62530805ea67da59.tar.gz connectbot-51f1da7c035d646612cff30d62530805ea67da59.tar.bz2 connectbot-51f1da7c035d646612cff30d62530805ea67da59.zip |
Merge pull request #280 from jklein24/mousemodereset
Partial implementation of DCESAVE for mouse reporting
Diffstat (limited to 'app/src/main/java/de/mud/terminal/vt320.java')
-rw-r--r-- | app/src/main/java/de/mud/terminal/vt320.java | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/app/src/main/java/de/mud/terminal/vt320.java b/app/src/main/java/de/mud/terminal/vt320.java index dc95bea..3c929b2 100644 --- a/app/src/main/java/de/mud/terminal/vt320.java +++ b/app/src/main/java/de/mud/terminal/vt320.java @@ -672,6 +672,7 @@ public void setScreenSize(int c, int r, boolean broadcast) { boolean capslock = false; boolean numlock = false; int mouserpt = 0; + int mouserptSaved = 0; byte mousebut = 0; boolean useibmcharset = false; @@ -2197,9 +2198,20 @@ public void setScreenSize(int c, int r, boolean broadcast) { DCEvars[DCEvar] = 0; term_state = TSTATE_DCEQ; break; - case 's': // XTERM_SAVE missing! - if (true || debug > 1) - debug("ESC [ ? " + DCEvars[0] + " s unimplemented!"); + case 's': + for (int i = 0; i <= DCEvar; i++) { + switch (DCEvars[i]) { + case 9: + case 1000: + case 1001: + case 1002: + case 1003: + mouserptSaved = mouserpt; + break; + default: + debug("ESC [ ? " + DCEvars[0] + " s, unimplemented!"); + } + } break; case 'r': // XTERM_RESTORE if (true || debug > 1) @@ -2227,7 +2239,7 @@ public void setScreenSize(int c, int r, boolean broadcast) { case 1001: case 1002: case 1003: - mouserpt = DCEvars[i]; + mouserpt = mouserptSaved; break; default: debug("ESC [ ? " + DCEvars[0] + " r, unimplemented!"); |