diff options
author | Kenny Root <kenny@the-b.org> | 2009-08-08 05:51:24 +0000 |
---|---|---|
committer | Kenny Root <kenny@the-b.org> | 2009-08-08 05:51:24 +0000 |
commit | e04c843239dd3fe688d8e46c736940dac6d02f64 (patch) | |
tree | 704b28376479c45930340fbe1b94f0558ae8aa4e /src | |
parent | 0406fca7d12e2f7ca4946717cfac670b1f26ad8d (diff) | |
download | connectbot-e04c843239dd3fe688d8e46c736940dac6d02f64.tar.gz connectbot-e04c843239dd3fe688d8e46c736940dac6d02f64.tar.bz2 connectbot-e04c843239dd3fe688d8e46c736940dac6d02f64.zip |
Fix cursor positioning at EOL
The cursor should appear to stay at the end of the line until the next
character typed would cause it to wrap to the next line.
git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@383 df292f66-193f-0410-a5fc-6d59da041ff2
Diffstat (limited to 'src')
-rw-r--r-- | src/org/connectbot/TerminalView.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/org/connectbot/TerminalView.java b/src/org/connectbot/TerminalView.java index 5eb7e24..217e16e 100644 --- a/src/org/connectbot/TerminalView.java +++ b/src/org/connectbot/TerminalView.java @@ -148,13 +148,19 @@ public class TerminalView extends View implements FontSizeChangedListener { canvas.drawBitmap(bridge.bitmap, 0, 0, paint); // also draw cursor if visible - if(bridge.buffer.isCursorVisible()) { + if (bridge.buffer.isCursorVisible()) { + int cursorColumn = bridge.buffer.getCursorColumn(); + int columns = bridge.buffer.getColumns(); + + if (cursorColumn == columns) + cursorColumn = columns - 1; + int currentAttribute = bridge.buffer.getAttributes( - bridge.buffer.getCursorColumn(), + cursorColumn, bridge.buffer.getCursorRow()); boolean onWideCharacter = (currentAttribute & VDUBuffer.FULLWIDTH) != 0; - int x = bridge.buffer.getCursorColumn() * bridge.charWidth; + int x = cursorColumn * bridge.charWidth; int y = (bridge.buffer.getCursorRow() + bridge.buffer.screenBase - bridge.buffer.windowBase) * bridge.charHeight; |