diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/org/connectbot/ConsoleActivity.java | 24 | ||||
-rw-r--r-- | src/org/connectbot/service/TerminalKeyListener.java | 14 |
2 files changed, 32 insertions, 6 deletions
diff --git a/src/org/connectbot/ConsoleActivity.java b/src/org/connectbot/ConsoleActivity.java index aeb0e67..d376c94 100644 --- a/src/org/connectbot/ConsoleActivity.java +++ b/src/org/connectbot/ConsoleActivity.java @@ -52,19 +52,20 @@ import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; +import android.view.MenuItem.OnMenuItemClickListener; import android.view.MotionEvent; import android.view.View; -import android.view.ViewConfiguration; -import android.view.Window; -import android.view.WindowManager; -import android.view.MenuItem.OnMenuItemClickListener; import android.view.View.OnClickListener; import android.view.View.OnKeyListener; import android.view.View.OnTouchListener; +import android.view.ViewConfiguration; +import android.view.Window; +import android.view.WindowManager; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.view.inputmethod.InputMethodManager; import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; @@ -74,8 +75,6 @@ import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.Toast; import android.widget.ViewFlipper; -import android.widget.AdapterView.OnItemClickListener; - import de.mud.terminal.vt320; public class ConsoleActivity extends Activity { @@ -440,6 +439,19 @@ public class ConsoleActivity extends Activity { } }); + final ImageView tabButton = (ImageView) findViewById(R.id.button_tab); + tabButton.setOnClickListener(new OnClickListener() { + public void onClick(View view) { + View flip = findCurrentView(R.id.console_flip); + if (flip == null) return; + TerminalView terminal = (TerminalView)flip; + + TerminalKeyListener handler = terminal.bridge.getKeyHandler(); + handler.sendTab(); + hideEmulatedKeys(); + } + }); + actionBar = ActionBarWrapper.getActionBar(this); actionBar.setDisplayHomeAsUpEnabled(true); if (titleBarHide) { diff --git a/src/org/connectbot/service/TerminalKeyListener.java b/src/org/connectbot/service/TerminalKeyListener.java index 13e8dd1..cc85268 100644 --- a/src/org/connectbot/service/TerminalKeyListener.java +++ b/src/org/connectbot/service/TerminalKeyListener.java @@ -485,6 +485,20 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha ((vt320)buffer).keyTyped(vt320.KEY_ESCAPE, ' ', 0); } + public void sendTab() { + try { + bridge.transport.write(0x09); + } catch (IOException e) { + Log.e(TAG, "Problem while trying to send TAB press.", e); + try { + bridge.transport.flush(); + } catch (IOException ioe) { + Log.d(TAG, "Our transport was closed, dispatching disconnect event"); + bridge.dispatchDisconnect(false); + } + } + } + /** * @param key * @return successful |