Merge "fix SOX in clearFocus" into honeycomb
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 7333f3f..e79ea58 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -906,6 +906,9 @@
<!-- Access point for RLZ tracking. -->
<string name="rlz_access_point">Y1</string>
+ <!-- Title for a dialog asking the user which account to sync their bookmarks to [CHAR LIMIT=32] -->
+ <string name="account_chooser_dialog_title" msgid="4833571985009544332">Choose account</string>
+
<!-- Title for a dialog asking the user what they want to do with their bookmarks when adding a sync account [CHAR-LIMIT=32] -->
<string name="import_bookmarks_dialog_title">Sync with Google account</string>
diff --git a/src/com/android/browser/BrowserBookmarksPage.java b/src/com/android/browser/BrowserBookmarksPage.java
index f20583a..7475237 100644
--- a/src/com/android/browser/BrowserBookmarksPage.java
+++ b/src/com/android/browser/BrowserBookmarksPage.java
@@ -394,6 +394,8 @@
mCrumbs.setController(null);
mCrumbs = null;
getLoaderManager().destroyLoader(LOADER_BOOKMARKS);
+ mAdapter = null;
+ CombinedBookmarkHistoryView.getIconListenerSet().removeListener(this);
}
@Override
diff --git a/src/com/android/browser/TabScrollView.java b/src/com/android/browser/TabScrollView.java
index 09dddee..d0648b7 100644
--- a/src/com/android/browser/TabScrollView.java
+++ b/src/com/android/browser/TabScrollView.java
@@ -28,7 +28,6 @@
*/
public class TabScrollView extends HorizontalScrollView {
- private Context mContext;
private LinearLayout mContentView;
private int mSelected;
private int mAnimationDuration;
@@ -62,13 +61,12 @@
}
private void init(Context ctx) {
- mContext = ctx;
mAnimationDuration = ctx.getResources().getInteger(
R.integer.tab_animation_duration);
mTabOverlap = (int) ctx.getResources().getDimension(R.dimen.tab_overlap);
setHorizontalScrollBarEnabled(false);
setOverScrollMode(OVER_SCROLL_NEVER);
- mContentView = new TabLayout(mContext);
+ mContentView = new TabLayout(ctx);
mContentView.setOrientation(LinearLayout.HORIZONTAL);
mContentView.setLayoutParams(
new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
@@ -189,6 +187,21 @@
return getScrollX();
}
+ @Override
+ protected void onScrollChanged(int l, int t, int oldl, int oldt) {
+ super.onScrollChanged(l, t, oldl, oldt);
+
+ // TabViews base their drawing based on their absolute position within the
+ // window. When hardware accelerated, we need to recreate their display list
+ // when they scroll
+ if (isHardwareAccelerated()) {
+ int count = mContentView.getChildCount();
+ for (int i = 0; i < count; i++) {
+ mContentView.getChildAt(i).invalidate();
+ }
+ }
+ }
+
class TabLayout extends LinearLayout {
public TabLayout(Context context) {
diff --git a/src/com/android/browser/preferences/GeneralPreferencesFragment.java b/src/com/android/browser/preferences/GeneralPreferencesFragment.java
index 2735166..b6228dc 100644
--- a/src/com/android/browser/preferences/GeneralPreferencesFragment.java
+++ b/src/com/android/browser/preferences/GeneralPreferencesFragment.java
@@ -224,7 +224,7 @@
mDialog = new AlertDialog.Builder(getActivity())
.setIcon(android.R.drawable.ic_dialog_alert)
- .setTitle("Choose account") // STOPSHIP localize
+ .setTitle(R.string.account_chooser_dialog_title)
.setSingleChoiceItems(accountNames, curAccountOffset, this)
.create();
return mDialog;