Merge "Always offer to restore"
diff --git a/src/com/android/browser/KeyChainLookup.java b/src/com/android/browser/KeyChainLookup.java
index 7f236e5..52be25a 100644
--- a/src/com/android/browser/KeyChainLookup.java
+++ b/src/com/android/browser/KeyChainLookup.java
@@ -18,8 +18,8 @@
import android.content.Context;
import android.os.AsyncTask;
-import android.os.RemoteException;
import android.security.KeyChain;
+import android.security.KeyChainException;
import android.webkit.ClientCertRequestHandler;
import java.security.PrivateKey;
import java.security.cert.X509Certificate;
@@ -42,7 +42,7 @@
} catch (InterruptedException e) {
mHandler.ignore();
return null;
- } catch (RemoteException e) {
+ } catch (KeyChainException e) {
mHandler.ignore();
return null;
}
diff --git a/src/com/android/browser/NavTabScroller.java b/src/com/android/browser/NavTabScroller.java
index bd26df7..312e2b8 100644
--- a/src/com/android/browser/NavTabScroller.java
+++ b/src/com/android/browser/NavTabScroller.java
@@ -197,17 +197,7 @@
int bottom = child.getBottom();
if (top <= midy && bottom >= midy) {
sel = i;
- } else {
- // check if on screen
- if (top > getScrollY() + getHeight() || bottom < getScrollY()) {
- if (!child.isPaused()) {
- child.pause();
- }
- } else {
- if (child.isPaused()) {
- child.resume();
- }
- }
+ break;
}
}
if (sel != -1) {
diff --git a/src/com/android/browser/NavTabView.java b/src/com/android/browser/NavTabView.java
index 061e024..f170b0f 100644
--- a/src/com/android/browser/NavTabView.java
+++ b/src/com/android/browser/NavTabView.java
@@ -198,7 +198,9 @@
@Override
public void onDetachedFromWindow() {
- mWebView.setProxyView(null);
+ if (mWebView != null) {
+ mWebView.setProxyView(null);
+ }
}
private static void removeFromParent(View v) {
diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java
index e517d76..89f567b 100644
--- a/src/com/android/browser/Tab.java
+++ b/src/com/android/browser/Tab.java
@@ -33,7 +33,7 @@
import android.os.Message;
import android.os.SystemClock;
import android.security.KeyChain;
-import android.security.KeyChainAliasResponse;
+import android.security.KeyChainAliasCallback;
import android.speech.RecognizerResultsIntent;
import android.util.Log;
import android.view.KeyEvent;
@@ -803,7 +803,7 @@
handler.ignore();
return;
}
- KeyChain.choosePrivateKeyAlias(mActivity, new KeyChainAliasResponse() {
+ KeyChain.choosePrivateKeyAlias(mActivity, new KeyChainAliasCallback() {
@Override public void alias(String alias) {
if (alias == null) {
handler.cancel();
@@ -811,7 +811,7 @@
}
new KeyChainLookup(mActivity, handler, alias).execute();
}
- });
+ }, null, null, null, -1);
}
/**
diff --git a/src/com/android/browser/TabControl.java b/src/com/android/browser/TabControl.java
index 0aaf3d6..1e21431 100644
--- a/src/com/android/browser/TabControl.java
+++ b/src/com/android/browser/TabControl.java
@@ -286,7 +286,11 @@
}
}
outState.putLongArray(POSITIONS, ids);
- final long cid = getCurrentTab().getId();
+ Tab current = getCurrentTab();
+ long cid = -1;
+ if (current != null) {
+ cid = current.getId();
+ }
outState.putLong(CURRENT, cid);
}