Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1045)

Side by Side Diff: content/shell/android/java/src/org/chromium/content_shell/Shell.java

Issue 275733002: Remove all external references to ContentView from Tab/Shell/etc. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/public/android/java/src/org/chromium/content/browser/JellyBeanContentView.java ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.content_shell; 5 package org.chromium.content_shell;
6 6
7 import android.content.Context; 7 import android.content.Context;
8 import android.graphics.drawable.ClipDrawable; 8 import android.graphics.drawable.ClipDrawable;
9 import android.text.TextUtils; 9 import android.text.TextUtils;
10 import android.util.AttributeSet; 10 import android.util.AttributeSet;
(...skipping 26 matching lines...) Expand all
37 37
38 private static final long COMPLETED_PROGRESS_TIMEOUT_MS = 200; 38 private static final long COMPLETED_PROGRESS_TIMEOUT_MS = 200;
39 39
40 private final Runnable mClearProgressRunnable = new Runnable() { 40 private final Runnable mClearProgressRunnable = new Runnable() {
41 @Override 41 @Override
42 public void run() { 42 public void run() {
43 mProgressDrawable.setLevel(0); 43 mProgressDrawable.setLevel(0);
44 } 44 }
45 }; 45 };
46 46
47 private ContentView mContentView;
48 private ContentViewCore mContentViewCore; 47 private ContentViewCore mContentViewCore;
49 private ContentViewClient mContentViewClient; 48 private ContentViewClient mContentViewClient;
50 private EditText mUrlTextView; 49 private EditText mUrlTextView;
51 private ImageButton mPrevButton; 50 private ImageButton mPrevButton;
52 private ImageButton mNextButton; 51 private ImageButton mNextButton;
53 52
54 private ClipDrawable mProgressDrawable; 53 private ClipDrawable mProgressDrawable;
55 54
56 private long mNativeShell; 55 private long mNativeShell;
57 private ContentViewRenderView mContentViewRenderView; 56 private ContentViewRenderView mContentViewRenderView;
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 mUrlTextView.setOnEditorActionListener(new OnEditorActionListener() { 142 mUrlTextView.setOnEditorActionListener(new OnEditorActionListener() {
144 @Override 143 @Override
145 public boolean onEditorAction(TextView v, int actionId, KeyEvent eve nt) { 144 public boolean onEditorAction(TextView v, int actionId, KeyEvent eve nt) {
146 if ((actionId != EditorInfo.IME_ACTION_GO) && (event == null || 145 if ((actionId != EditorInfo.IME_ACTION_GO) && (event == null ||
147 event.getKeyCode() != KeyEvent.KEYCODE_ENTER || 146 event.getKeyCode() != KeyEvent.KEYCODE_ENTER ||
148 event.getAction() != KeyEvent.ACTION_DOWN)) { 147 event.getAction() != KeyEvent.ACTION_DOWN)) {
149 return false; 148 return false;
150 } 149 }
151 loadUrl(mUrlTextView.getText().toString()); 150 loadUrl(mUrlTextView.getText().toString());
152 setKeyboardVisibilityForUrl(false); 151 setKeyboardVisibilityForUrl(false);
153 mContentView.requestFocus(); 152 mContentViewCore.getContainerView().requestFocus();
154 return true; 153 return true;
155 } 154 }
156 }); 155 });
157 mUrlTextView.setOnFocusChangeListener(new OnFocusChangeListener() { 156 mUrlTextView.setOnFocusChangeListener(new OnFocusChangeListener() {
158 @Override 157 @Override
159 public void onFocusChange(View v, boolean hasFocus) { 158 public void onFocusChange(View v, boolean hasFocus) {
160 setKeyboardVisibilityForUrl(hasFocus); 159 setKeyboardVisibilityForUrl(hasFocus);
161 mNextButton.setVisibility(hasFocus ? GONE : VISIBLE); 160 mNextButton.setVisibility(hasFocus ? GONE : VISIBLE);
162 mPrevButton.setVisibility(hasFocus ? GONE : VISIBLE); 161 mPrevButton.setVisibility(hasFocus ? GONE : VISIBLE);
163 if (!hasFocus) { 162 if (!hasFocus) {
(...skipping 12 matching lines...) Expand all
176 public void loadUrl(String url) { 175 public void loadUrl(String url) {
177 if (url == null) return; 176 if (url == null) return;
178 177
179 if (TextUtils.equals(url, mContentViewCore.getUrl())) { 178 if (TextUtils.equals(url, mContentViewCore.getUrl())) {
180 mContentViewCore.reload(true); 179 mContentViewCore.reload(true);
181 } else { 180 } else {
182 mContentViewCore.loadUrl(new LoadUrlParams(sanitizeUrl(url))); 181 mContentViewCore.loadUrl(new LoadUrlParams(sanitizeUrl(url)));
183 } 182 }
184 mUrlTextView.clearFocus(); 183 mUrlTextView.clearFocus();
185 // TODO(aurimas): Remove this when crbug.com/174541 is fixed. 184 // TODO(aurimas): Remove this when crbug.com/174541 is fixed.
186 mContentView.clearFocus(); 185 mContentViewCore.getContainerView().clearFocus();
187 mContentView.requestFocus(); 186 mContentViewCore.getContainerView().requestFocus();
188 } 187 }
189 188
190 /** 189 /**
191 * Given an URL, this performs minimal sanitizing to ensure it will be valid . 190 * Given an URL, this performs minimal sanitizing to ensure it will be valid .
192 * @param url The url to be sanitized. 191 * @param url The url to be sanitized.
193 * @return The sanitized URL. 192 * @return The sanitized URL.
194 */ 193 */
195 public static String sanitizeUrl(String url) { 194 public static String sanitizeUrl(String url) {
196 if (url == null) return url; 195 if (url == null) return url;
197 if (url.startsWith("www.") || url.indexOf(":") == -1) url = "http://" + url; 196 if (url.startsWith("www.") || url.indexOf(":") == -1) url = "http://" + url;
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 } 239 }
241 240
242 @SuppressWarnings("unused") 241 @SuppressWarnings("unused")
243 @CalledByNative 242 @CalledByNative
244 private void setIsLoading(boolean loading) { 243 private void setIsLoading(boolean loading) {
245 mLoading = loading; 244 mLoading = loading;
246 } 245 }
247 246
248 /** 247 /**
249 * Initializes the ContentView based on the native tab contents pointer pass ed in. 248 * Initializes the ContentView based on the native tab contents pointer pass ed in.
250 * @param nativeTabContents The pointer to the native tab contents object. 249 * @param nativeWebContents The pointer to the native tab contents object.
251 */ 250 */
252 @SuppressWarnings("unused") 251 @SuppressWarnings("unused")
253 @CalledByNative 252 @CalledByNative
254 private void initFromNativeTabContents(long nativeTabContents) { 253 private void initFromNativeTabContents(long nativeWebContents) {
255 mContentView = ContentView.newInstance(getContext(), nativeTabContents, mWindow); 254 Context context = getContext();
256 mContentViewCore = mContentView.getContentViewCore(); 255 mContentViewCore = new ContentViewCore(context);
256 ContentView cv = ContentView.newInstance(context, mContentViewCore);
257 mContentViewCore.initialize(cv, cv, nativeWebContents, mWindow);
257 mContentViewCore.setContentViewClient(mContentViewClient); 258 mContentViewCore.setContentViewClient(mContentViewClient);
258 259
259 if (getParent() != null) mContentViewCore.onShow(); 260 if (getParent() != null) mContentViewCore.onShow();
260 if (mContentViewCore.getUrl() != null) mUrlTextView.setText(mContentView Core.getUrl()); 261 if (mContentViewCore.getUrl() != null) mUrlTextView.setText(mContentView Core.getUrl());
261 ((FrameLayout) findViewById(R.id.contentview_holder)).addView(mContentVi ew, 262 ((FrameLayout) findViewById(R.id.contentview_holder)).addView(cv,
262 new FrameLayout.LayoutParams( 263 new FrameLayout.LayoutParams(
263 FrameLayout.LayoutParams.MATCH_PARENT, 264 FrameLayout.LayoutParams.MATCH_PARENT,
264 FrameLayout.LayoutParams.MATCH_PARENT)); 265 FrameLayout.LayoutParams.MATCH_PARENT));
265 mContentView.requestFocus(); 266 cv.requestFocus();
266 mContentViewRenderView.setCurrentContentViewCore(mContentViewCore); 267 mContentViewRenderView.setCurrentContentViewCore(mContentViewCore);
267 } 268 }
268 269
269 /** 270 /**
270 * @return The {@link ViewGroup} currently shown by this Shell. 271 * @return The {@link ViewGroup} currently shown by this Shell.
271 */ 272 */
272 public ViewGroup getContentView() { 273 public ViewGroup getContentView() {
273 return mContentView; 274 return mContentViewCore.getContainerView();
274 } 275 }
275 276
276 /** 277 /**
277 * @return The {@link ContentViewCore} currently managing the view shown by this Shell. 278 * @return The {@link ContentViewCore} currently managing the view shown by this Shell.
278 */ 279 */
279 public ContentViewCore getContentViewCore() { 280 public ContentViewCore getContentViewCore() {
280 return mContentViewCore; 281 return mContentViewCore;
281 } 282 }
282 283
283 private void setKeyboardVisibilityForUrl(boolean visible) { 284 private void setKeyboardVisibilityForUrl(boolean visible) {
284 InputMethodManager imm = (InputMethodManager) getContext().getSystemServ ice( 285 InputMethodManager imm = (InputMethodManager) getContext().getSystemServ ice(
285 Context.INPUT_METHOD_SERVICE); 286 Context.INPUT_METHOD_SERVICE);
286 if (visible) { 287 if (visible) {
287 imm.showSoftInput(mUrlTextView, InputMethodManager.SHOW_IMPLICIT); 288 imm.showSoftInput(mUrlTextView, InputMethodManager.SHOW_IMPLICIT);
288 } else { 289 } else {
289 imm.hideSoftInputFromWindow(mUrlTextView.getWindowToken(), 0); 290 imm.hideSoftInputFromWindow(mUrlTextView.getWindowToken(), 0);
290 } 291 }
291 } 292 }
292 293
293 private static native void nativeCloseShell(long shellPtr); 294 private static native void nativeCloseShell(long shellPtr);
294 } 295 }
OLDNEW
« no previous file with comments | « content/public/android/java/src/org/chromium/content/browser/JellyBeanContentView.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698