aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/org/connectbot/ConsoleActivity.java
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2015-08-11 14:43:47 -0500
committerKenny Root <kenny@the-b.org>2015-08-11 14:43:47 -0500
commit71b553c6edc0a7ed65821201d993881b7e7204c8 (patch)
treef2a6934bdc75905b9b2fc18ffccfdd2207d799bb /app/src/main/java/org/connectbot/ConsoleActivity.java
parentef3b005fdb3db2f42632bc304bef6b424b748d6d (diff)
parent0a1d2a02f96a7201424ea6b2dc918e987f630c15 (diff)
downloadconnectbot-71b553c6edc0a7ed65821201d993881b7e7204c8.tar.gz
connectbot-71b553c6edc0a7ed65821201d993881b7e7204c8.tar.bz2
connectbot-71b553c6edc0a7ed65821201d993881b7e7204c8.zip
Merge pull request #122 from alescdb/kdb-reset-autohide
Reset autohide timer when an arrow button is clicked to allow multiple click
Diffstat (limited to 'app/src/main/java/org/connectbot/ConsoleActivity.java')
-rw-r--r--app/src/main/java/org/connectbot/ConsoleActivity.java142
1 files changed, 62 insertions, 80 deletions
diff --git a/app/src/main/java/org/connectbot/ConsoleActivity.java b/app/src/main/java/org/connectbot/ConsoleActivity.java
index 351ec27..727749d 100644
--- a/app/src/main/java/org/connectbot/ConsoleActivity.java
+++ b/app/src/main/java/org/connectbot/ConsoleActivity.java
@@ -206,6 +206,58 @@ public class ConsoleActivity extends Activity {
}
};
+ protected OnClickListener emulatedKeysListener = new OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ onEmulatedKeyClicked(v);
+ }
+ };
+
+ private void onEmulatedKeyClicked(View v) {
+ View flip = findCurrentView(R.id.console_flip);
+ if (flip == null)
+ return;
+
+ TerminalView terminal = (TerminalView) flip;
+ TerminalKeyListener handler = terminal.bridge.getKeyHandler();
+ boolean hideKeys = true;
+
+ switch (v.getId()) {
+ case R.id.button_ctrl:
+ handler.metaPress(TerminalKeyListener.OUR_CTRL_ON, true);
+ break;
+ case R.id.button_esc:
+ handler.sendEscape();
+ break;
+ case R.id.button_tab:
+ handler.sendTab();
+ break;
+ case R.id.button_up:
+ handler.sendPressedKey(vt320.KEY_UP);
+ hideKeys = false;
+ break;
+ case R.id.button_down:
+ handler.sendPressedKey(vt320.KEY_DOWN);
+ hideKeys = false;
+ break;
+ case R.id.button_left:
+ handler.sendPressedKey(vt320.KEY_LEFT);
+ hideKeys = false;
+ break;
+ case R.id.button_right:
+ handler.sendPressedKey(vt320.KEY_RIGHT);
+ hideKeys = false;
+ break;
+ }
+
+ if (hideKeys)
+ hideEmulatedKeys();
+ else
+ autoHideEmulatedKeys();
+
+ terminal.bridge.tryKeyVibrate();
+ }
+
/**
* @param bridge
*/
@@ -244,7 +296,10 @@ public class ConsoleActivity extends Activity {
keyboardGroup.startAnimation(keyboard_fade_in);
keyboardGroup.setVisibility(View.VISIBLE);
actionBar.show();
+ autoHideEmulatedKeys();
+ }
+ private void autoHideEmulatedKeys() {
if (keyboardGroupHider != null)
handler.removeCallbacks(keyboardGroupHider);
keyboardGroupHider = new Runnable() {
@@ -387,86 +442,13 @@ public class ConsoleActivity extends Activity {
}
});
- final Button ctrlButton = (Button) findViewById(R.id.button_ctrl);
- ctrlButton.setOnClickListener(new OnClickListener() {
- public void onClick(View view) {
- TerminalView terminal = adapter.getCurrentTerminalView();
- if (terminal == null) return;
-
- TerminalKeyListener handler = terminal.bridge.getKeyHandler();
- handler.metaPress(TerminalKeyListener.OUR_CTRL_ON, true);
- hideEmulatedKeys();
- }
- });
-
- final Button escButton = (Button) findViewById(R.id.button_esc);
- escButton.setOnClickListener(new OnClickListener() {
- public void onClick(View view) {
- TerminalView terminal = adapter.getCurrentTerminalView();
- if (terminal == null) return;
-
- TerminalKeyListener handler = terminal.bridge.getKeyHandler();
- handler.sendEscape();
- hideEmulatedKeys();
- }
- });
-
- final Button tabButton = (Button) findViewById(R.id.button_tab);
- tabButton.setOnClickListener(new OnClickListener() {
- public void onClick(View view) {
- TerminalView terminal = adapter.getCurrentTerminalView();
- if (terminal == null) return;
-
- TerminalKeyListener handler = terminal.bridge.getKeyHandler();
- handler.sendTab();
- hideEmulatedKeys();
- }
- });
- final Button upButton = (Button) findViewById(R.id.button_up);
- upButton.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.sendPressedKey(vt320.KEY_UP);
- }
- });
- final Button dnButton = (Button) findViewById(R.id.button_down);
- dnButton.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.sendPressedKey(vt320.KEY_DOWN);
- }
- });
- final Button leftButton = (Button) findViewById(R.id.button_left);
- leftButton.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.sendPressedKey(vt320.KEY_LEFT);
- }
- });
- final Button rightButton = (Button) findViewById(R.id.button_right);
- rightButton.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.sendPressedKey(vt320.KEY_RIGHT);
- }
- });
+ findViewById(R.id.button_ctrl).setOnClickListener(emulatedKeysListener);
+ findViewById(R.id.button_esc).setOnClickListener(emulatedKeysListener);
+ findViewById(R.id.button_tab).setOnClickListener(emulatedKeysListener);
+ findViewById(R.id.button_up).setOnClickListener(emulatedKeysListener);
+ findViewById(R.id.button_down).setOnClickListener(emulatedKeysListener);
+ findViewById(R.id.button_left).setOnClickListener(emulatedKeysListener);
+ findViewById(R.id.button_right).setOnClickListener(emulatedKeysListener);
actionBar = ActionBarWrapper.getActionBar(this);
actionBar.setDisplayHomeAsUpEnabled(true);