From 8898881d66595f4252f24da4dbfddefc582a7d2a Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Wed, 16 Nov 2011 15:04:56 +0100 Subject: [PATCH] Improve back go home handling --- src/org/linphone/IncallActivity.java | 7 +------ src/org/linphone/LinphoneUtils.java | 4 ++-- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/org/linphone/IncallActivity.java b/src/org/linphone/IncallActivity.java index 853b6f5d0..437682923 100644 --- a/src/org/linphone/IncallActivity.java +++ b/src/org/linphone/IncallActivity.java @@ -920,15 +920,10 @@ public class IncallActivity extends ListActivity implements enterConferenceOnReturnFromUriPicker = false; } - @Override - public boolean onKeyUp(int keyCode, KeyEvent event) { - if (LinphoneUtils.onKeyBackGoHome(this, keyCode)) return true; - return super.onKeyUp(keyCode, event); - } - @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (LinphoneUtils.onKeyVolumeSoftAdjust(keyCode)) return true; + if (LinphoneUtils.onKeyBackGoHome(this, keyCode, event)) return true; return super.onKeyDown(keyCode, event); } diff --git a/src/org/linphone/LinphoneUtils.java b/src/org/linphone/LinphoneUtils.java index 43254625c..ef59af2b1 100644 --- a/src/org/linphone/LinphoneUtils.java +++ b/src/org/linphone/LinphoneUtils.java @@ -54,8 +54,8 @@ public final class LinphoneUtils { private static boolean preventVolumeBarToDisplay = false; - public static boolean onKeyBackGoHome(Activity activity, int keyCode) { - if (!(keyCode == KeyEvent.KEYCODE_BACK)) { + public static boolean onKeyBackGoHome(Activity activity, int keyCode, KeyEvent event) { + if (!(keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0)) { return false; // continue }