aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/org/connectbot/ConsoleActivity.java
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2015-08-31 09:34:45 -0700
committerKenny Root <kenny@the-b.org>2015-08-31 09:34:45 -0700
commitb515b3f4a88ad9e53e1c9741014f08bedc127a64 (patch)
treec17e931ebde9ca1c9323ff713ddc9ed798066730 /app/src/main/java/org/connectbot/ConsoleActivity.java
parent436e26d96bb071290d7e416927bda8aa57ef359d (diff)
parent6f2efee2c48907a50d88dfe31b80392aa60eb5bf (diff)
downloadconnectbot-b515b3f4a88ad9e53e1c9741014f08bedc127a64.tar.gz
connectbot-b515b3f4a88ad9e53e1c9741014f08bedc127a64.tar.bz2
connectbot-b515b3f4a88ad9e53e1c9741014f08bedc127a64.zip
Merge pull request #154 from alescdb/hscroll-reset-autohide
Reset virtual keyboard auto-hide timer on hscroll
Diffstat (limited to 'app/src/main/java/org/connectbot/ConsoleActivity.java')
-rw-r--r--app/src/main/java/org/connectbot/ConsoleActivity.java36
1 files changed, 27 insertions, 9 deletions
diff --git a/app/src/main/java/org/connectbot/ConsoleActivity.java b/app/src/main/java/org/connectbot/ConsoleActivity.java
index 4f8d301..6a6aa32 100644
--- a/app/src/main/java/org/connectbot/ConsoleActivity.java
+++ b/app/src/main/java/org/connectbot/ConsoleActivity.java
@@ -261,11 +261,11 @@ public class ConsoleActivity extends AppCompatActivity implements BridgeDisconne
return (true);
case MotionEvent.ACTION_CANCEL:
- keyRepeatHandler.removeCallbacks(this);
+ mHandler.removeCallbacks(this);
return (true);
case MotionEvent.ACTION_UP:
- keyRepeatHandler.removeCallbacks(this);
+ mHandler.removeCallbacks(this);
if (!mDown) {
onEmulatedKeyClicked(mView);
}
@@ -403,10 +403,12 @@ public class ConsoleActivity extends AppCompatActivity implements BridgeDisconne
booleanPromptGroup.setVisibility(View.GONE);
}
- private void showEmulatedKeys() {
+ private void showEmulatedKeys(boolean showActionBar) {
keyboardGroup.startAnimation(keyboard_fade_in);
keyboardGroup.setVisibility(View.VISIBLE);
- actionBar.show();
+ if (showActionBar) {
+ actionBar.show();
+ }
autoHideEmulatedKeys();
}
@@ -601,10 +603,10 @@ public class ConsoleActivity extends AppCompatActivity implements BridgeDisconne
}
});
+ final HorizontalScrollView keyboardScroll = (HorizontalScrollView) findViewById(R.id.keyboard_hscroll);
if (!hardKeyboard) {
// Show virtual keyboard and scroll back and forth
- final HorizontalScrollView keyboardScroll = (HorizontalScrollView) findViewById(R.id.keyboard_hscroll);
- showEmulatedKeys();
+ showEmulatedKeys(false);
keyboardScroll.postDelayed(new Runnable() {
@Override
public void run() {
@@ -621,11 +623,27 @@ public class ConsoleActivity extends AppCompatActivity implements BridgeDisconne
}
keyboardScroll.smoothScrollBy(-xscroll, 0);
}
- }, 1000);
+ }, 500);
}
- }, 1000);
+ }, 500);
}
+ // Reset keyboard auto-hide timer when scrolling
+ keyboardScroll.setOnTouchListener(
+ new OnTouchListener() {
+ public boolean onTouch(View v, MotionEvent event) {
+ switch (event.getAction()) {
+ case MotionEvent.ACTION_MOVE:
+ autoHideEmulatedKeys();
+ break;
+ case MotionEvent.ACTION_UP:
+ v.performClick();
+ return (true);
+ }
+ return (false);
+ }
+ });
+
tabs = (TabLayout) findViewById(R.id.tabs);
if (tabs != null)
setupTabLayoutWithViewPager();
@@ -793,7 +811,7 @@ public class ConsoleActivity extends AppCompatActivity implements BridgeDisconne
&& event.getEventTime() - event.getDownTime() < CLICK_TIME
&& Math.abs(event.getX() - lastX) < MAX_CLICK_DISTANCE
&& Math.abs(event.getY() - lastY) < MAX_CLICK_DISTANCE) {
- showEmulatedKeys();
+ showEmulatedKeys(true);
}
// pass any touch events back to detector