Index: content/shell/android/java/src/org/chromium/content_shell/Shell.java |
diff --git a/content/shell/android/java/src/org/chromium/content_shell/Shell.java b/content/shell/android/java/src/org/chromium/content_shell/Shell.java |
index ef42b2015781b828d26c32f2f02b8a8028671826..d9fd9f024c01bc014522d2a4f1d5ff839d60f58c 100644 |
--- a/content/shell/android/java/src/org/chromium/content_shell/Shell.java |
+++ b/content/shell/android/java/src/org/chromium/content_shell/Shell.java |
@@ -43,8 +43,8 @@ public class Shell extends LinearLayout { |
} |
}; |
- // TODO(jrg): a mContentView.destroy() call is needed, both upstream and downstream. |
private ContentView mContentView; |
+ private ContentViewCore mContentViewCore; |
private ContentViewClient mContentViewClient; |
private EditText mUrlTextView; |
private ImageButton mPrevButton; |
@@ -160,7 +160,7 @@ public class Shell extends LinearLayout { |
mNextButton.setVisibility(hasFocus ? GONE : VISIBLE); |
mPrevButton.setVisibility(hasFocus ? GONE : VISIBLE); |
if (!hasFocus) { |
- mUrlTextView.setText(mContentView.getUrl()); |
+ mUrlTextView.setText(mContentViewCore.getUrl()); |
} |
} |
}); |
@@ -175,10 +175,10 @@ public class Shell extends LinearLayout { |
public void loadUrl(String url) { |
if (url == null) return; |
- if (TextUtils.equals(url, mContentView.getUrl())) { |
- mContentView.getContentViewCore().reload(true); |
+ if (TextUtils.equals(url, mContentViewCore.getUrl())) { |
+ mContentViewCore.reload(true); |
} else { |
- mContentView.loadUrl(new LoadUrlParams(sanitizeUrl(url))); |
+ mContentViewCore.loadUrl(new LoadUrlParams(sanitizeUrl(url))); |
} |
mUrlTextView.clearFocus(); |
// TODO(aurimas): Remove this when crbug.com/174541 is fixed. |
@@ -202,7 +202,7 @@ public class Shell extends LinearLayout { |
mPrevButton.setOnClickListener(new OnClickListener() { |
@Override |
public void onClick(View v) { |
- if (mContentView.canGoBack()) mContentView.goBack(); |
+ if (mContentViewCore.canGoBack()) mContentViewCore.goBack(); |
} |
}); |
@@ -210,7 +210,7 @@ public class Shell extends LinearLayout { |
mNextButton.setOnClickListener(new OnClickListener() { |
@Override |
public void onClick(View v) { |
- if (mContentView.canGoForward()) mContentView.goForward(); |
+ if (mContentViewCore.canGoForward()) mContentViewCore.goForward(); |
} |
}); |
} |
@@ -252,15 +252,17 @@ public class Shell extends LinearLayout { |
@CalledByNative |
private void initFromNativeTabContents(long nativeTabContents) { |
mContentView = ContentView.newInstance(getContext(), nativeTabContents, mWindow); |
- mContentView.setContentViewClient(mContentViewClient); |
- if (getParent() != null) mContentView.onShow(); |
- if (mContentView.getUrl() != null) mUrlTextView.setText(mContentView.getUrl()); |
+ mContentViewCore = mContentView.getContentViewCore(); |
+ mContentViewCore.setContentViewClient(mContentViewClient); |
+ |
+ if (getParent() != null) mContentViewCore.onShow(); |
+ if (mContentViewCore.getUrl() != null) mUrlTextView.setText(mContentViewCore.getUrl()); |
((FrameLayout) findViewById(R.id.contentview_holder)).addView(mContentView, |
new FrameLayout.LayoutParams( |
FrameLayout.LayoutParams.MATCH_PARENT, |
FrameLayout.LayoutParams.MATCH_PARENT)); |
mContentView.requestFocus(); |
- mContentViewRenderView.setCurrentContentViewCore(mContentView.getContentViewCore()); |
+ mContentViewRenderView.setCurrentContentViewCore(mContentViewCore); |
} |
/** |
@@ -270,6 +272,13 @@ public class Shell extends LinearLayout { |
return mContentView; |
} |
+ /** |
+ * @return The {@link ContentViewCore} currently managing the view shown by this Shell. |
+ */ |
+ public ContentViewCore getContentViewCore() { |
+ return mContentViewCore; |
+ } |
+ |
private void setKeyboardVisibilityForUrl(boolean visible) { |
InputMethodManager imm = (InputMethodManager) getContext().getSystemService( |
Context.INPUT_METHOD_SERVICE); |