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

Side by Side Diff: content/public/android/java/src/org/chromium/content/browser/framehost/NavigationControllerImpl.java

Issue 406023002: Restructuring NavigationController functionalities from ContentViewCore to NavigationController (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 5 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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.browser.framehost; 5 package org.chromium.content.browser.framehost;
6 6
7 import android.graphics.Bitmap;
8
7 import org.chromium.base.CalledByNative; 9 import org.chromium.base.CalledByNative;
8 import org.chromium.base.JNINamespace; 10 import org.chromium.base.JNINamespace;
11 import org.chromium.content_public.browser.LoadUrlParams;
9 import org.chromium.content_public.browser.NavigationController; 12 import org.chromium.content_public.browser.NavigationController;
13 import org.chromium.content_public.browser.NavigationEntry;
14 import org.chromium.content_public.browser.NavigationHistory;
10 15
11 /** 16 /**
12 * The NavigationControllerImpl Java wrapper to allow communicating with the nat ive 17 * The NavigationControllerImpl Java wrapper to allow communicating with the nat ive
13 * NavigationControllerImpl object. 18 * NavigationControllerImpl object.
14 */ 19 */
15 @JNINamespace("content") 20 @JNINamespace("content")
16 // TODO(tedchoc): Remove the package restriction once this class moves to a non- public content 21 // TODO(tedchoc): Remove the package restriction once this class moves to a non- public content
17 // package whose visibility will be enforced via DEPS. 22 // package whose visibility will be enforced via DEPS.
18 /* package */ class NavigationControllerImpl implements NavigationController { 23 /* package */ class NavigationControllerImpl implements NavigationController {
19 24
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 } 119 }
115 } 120 }
116 121
117 @Override 122 @Override
118 public void continuePendingReload() { 123 public void continuePendingReload() {
119 if (mNativeNavigationControllerAndroid != 0) { 124 if (mNativeNavigationControllerAndroid != 0) {
120 nativeContinuePendingReload(mNativeNavigationControllerAndroid); 125 nativeContinuePendingReload(mNativeNavigationControllerAndroid);
121 } 126 }
122 } 127 }
123 128
129 @Override
130 public void loadUrl(LoadUrlParams params) {
131 if (mNativeNavigationControllerAndroid != 0) {
132 nativeLoadUrl(
133 mNativeNavigationControllerAndroid,
134 params.getUrl(),
135 params.getLoadUrlType(), params.getTransitionType(),
136 params.getReferrer() != null ? params.getReferrer().getUrl() : null,
137 params.getReferrer() != null ? params.getReferrer().getPolic y() : 0,
138 params.getUserAgentOverrideOption(),
139 params.getExtraHeadersString(),
140 params.getPostData(),
141 params.getBaseUrl(),
142 params.getVirtualUrlForDataUrl(),
143 params.getCanLoadLocalResources(),
144 params.getIsRendererInitiated());
145 }
146 }
147
148 @Override
149 public void clearHistory() {
150 if (mNativeNavigationControllerAndroid != 0) {
151 nativeClearHistory(mNativeNavigationControllerAndroid);
152 }
153 }
154
155 @Override
156 public NavigationHistory getNavigationHistory() {
157 if (mNativeNavigationControllerAndroid == 0) return null;
158 NavigationHistory history = new NavigationHistory();
159 int currentIndex = nativeGetNavigationHistory(
160 mNativeNavigationControllerAndroid, history);
161 history.setCurrentEntryIndex(currentIndex);
162 return history;
163 }
164
165 @Override
166 public NavigationHistory getDirectedNavigationHistory(boolean isForward, int itemLimit) {
167 if (mNativeNavigationControllerAndroid == 0) return null;
168 NavigationHistory history = new NavigationHistory();
169 nativeGetDirectedNavigationHistory(mNativeNavigationControllerAndroid,
170 history, isForward, itemLimit);
171 return history;
172 }
173
174 @Override
175 public String getOriginalUrlForVisibleNavigationEntry() {
176 if (mNativeNavigationControllerAndroid == 0) return null;
177 return nativeGetOriginalUrlForVisibleNavigationEntry(mNativeNavigationCo ntrollerAndroid);
178 }
179
180 /**
181 * Callback factory method for nativeGetNavigationHistory().
182 */
183 @CalledByNative
184 private void addToNavigationHistory(Object history, int index, String url,
185 String virtualUrl,String originalUrl, String title, Bitmap favicon ) {
186 NavigationEntry entry = new NavigationEntry(index, url, virtualUrl,
187 originalUrl, title, favicon);
188 ((NavigationHistory) history).addEntry(entry);
189 }
190
191 @Override
192 public void clearSslPreferences() {
193 if (mNativeNavigationControllerAndroid != 0) {
194 nativeClearSslPreferences(mNativeNavigationControllerAndroid);
195 }
196 }
197
198 @Override
199 public boolean getUseDesktopUserAgent() {
200 if (mNativeNavigationControllerAndroid == 0) return false;
201 return nativeGetUseDesktopUserAgent(mNativeNavigationControllerAndroid);
202 }
203
204 @Override
205 public void setUseDesktopUserAgent(boolean override, boolean reloadOnChange) {
206 if (mNativeNavigationControllerAndroid != 0) {
207 nativeSetUseDesktopUserAgent(mNativeNavigationControllerAndroid,
208 override, reloadOnChange);
209 }
210 }
211
124 private native boolean nativeCanGoBack(long nativeNavigationControllerAndroi d); 212 private native boolean nativeCanGoBack(long nativeNavigationControllerAndroi d);
125 private native boolean nativeCanGoForward(long nativeNavigationControllerAnd roid); 213 private native boolean nativeCanGoForward(long nativeNavigationControllerAnd roid);
126 private native void nativeLoadIfNecessary(long nativeNavigationControllerAnd roid); 214 private native void nativeLoadIfNecessary(long nativeNavigationControllerAnd roid);
127 private native void nativeRequestRestoreLoad(long nativeNavigationController Android); 215 private native void nativeRequestRestoreLoad(long nativeNavigationController Android);
128 private native boolean nativeCanGoToOffset( 216 private native boolean nativeCanGoToOffset(
129 long nativeNavigationControllerAndroid, int offset); 217 long nativeNavigationControllerAndroid, int offset);
130 private native void nativeGoBack(long nativeNavigationControllerAndroid); 218 private native void nativeGoBack(long nativeNavigationControllerAndroid);
131 private native void nativeGoForward(long nativeNavigationControllerAndroid); 219 private native void nativeGoForward(long nativeNavigationControllerAndroid);
132 private native void nativeGoToOffset(long nativeNavigationControllerAndroid, int offset); 220 private native void nativeGoToOffset(long nativeNavigationControllerAndroid, int offset);
133 private native void nativeGoToNavigationIndex( 221 private native void nativeGoToNavigationIndex(
134 long nativeNavigationControllerAndroid, int index); 222 long nativeNavigationControllerAndroid, int index);
135 private native void nativeCancelPendingReload(long nativeNavigationControlle rAndroid); 223 private native void nativeCancelPendingReload(long nativeNavigationControlle rAndroid);
136 private native void nativeContinuePendingReload(long nativeNavigationControl lerAndroid); 224 private native void nativeContinuePendingReload(long nativeNavigationControl lerAndroid);
137 private native void nativeReload(long nativeNavigationControllerAndroid, 225 private native void nativeReload(long nativeNavigationControllerAndroid,
138 boolean checkForRepost); 226 boolean checkForRepost);
139 private native void nativeReloadIgnoringCache(long nativeNavigationControlle rAndroid, 227 private native void nativeReloadIgnoringCache(long nativeNavigationControlle rAndroid,
140 boolean checkForRepost); 228 boolean checkForRepost);
229 private native void nativeLoadUrl(
230 long nativeNavigationControllerAndroid,
231 String url,
232 int loadUrlType,
233 int transitionType,
234 String referrerUrl,
235 int referrerPolicy,
236 int uaOverrideOption,
237 String extraHeaders,
238 byte[] postData,
239 String baseUrlForDataUrl,
240 String virtualUrlForDataUrl,
241 boolean canLoadLocalResources,
242 boolean isRendererInitiated);
243 private native void nativeClearHistory(long nativeNavigationControllerAndroi d);
244 private native int nativeGetNavigationHistory(long nativeNavigationControlle rAndroid,
245 Object history);
246 private native void nativeGetDirectedNavigationHistory(long nativeNavigation ControllerAndroid,
247 NavigationHistory history, boolean isForward, int itemLimit);
248 private native String nativeGetOriginalUrlForVisibleNavigationEntry(
249 long nativeNavigationControllerAndroid);
250 private native void nativeClearSslPreferences(long nativeNavigationControlle rAndroid);
251 private native boolean nativeGetUseDesktopUserAgent(long nativeNavigationCon trollerAndroid);
252 private native void nativeSetUseDesktopUserAgent(long nativeNavigationContro llerAndroid,
253 boolean override, boolean reloadOnChange);
141 } 254 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698