summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortorne <torne@chromium.org>2015-12-14 03:52:14 -0800
committerCommit bot <commit-bot@chromium.org>2015-12-14 11:53:19 +0000
commit57e0d78549bf760b4d586f8b4f8ecbe04b8c969a (patch)
tree932107e35d0784acb632e4e9e38ba7f363537296
parente31bc047f078171d9b142b0c969910b993f3e52a (diff)
downloadchromium_src-57e0d78549bf760b4d586f8b4f8ecbe04b8c969a.zip
chromium_src-57e0d78549bf760b4d586f8b4f8ecbe04b8c969a.tar.gz
chromium_src-57e0d78549bf760b4d586f8b4f8ecbe04b8c969a.tar.bz2
Pass method parameters as JavaParamRef in chrome/browser (part 1).
Pass all object parameters to JNI methods in JavaParamRef<> wrappers. This matches previous changes made to do this for JNI non-method functions. BUG=506850 TBR=sdefresne@chromium.org Review URL: https://codereview.chromium.org/1510303002 Cr-Commit-Position: refs/heads/master@{#365004}
-rw-r--r--chrome/browser/history/android/sqlite_cursor.cc47
-rw-r--r--chrome/browser/history/android/sqlite_cursor.h44
-rw-r--r--chrome/browser/media/android/remote/remote_media_player_bridge.cc44
-rw-r--r--chrome/browser/media/android/remote/remote_media_player_bridge.h35
-rw-r--r--chrome/browser/media/android/router/media_router_android.cc33
-rw-r--r--chrome/browser/media/android/router/media_router_android.h33
-rw-r--r--chrome/browser/media/android/router/media_router_dialog_controller_android.cc11
-rw-r--r--chrome/browser/media/android/router/media_router_dialog_controller_android.h12
-rw-r--r--chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.cc64
-rw-r--r--chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.h87
-rw-r--r--chrome/browser/notifications/notification_ui_manager_android.cc12
-rw-r--r--chrome/browser/notifications/notification_ui_manager_android.h26
-rw-r--r--chrome/browser/permissions/permission_update_infobar_delegate_android.cc4
-rw-r--r--chrome/browser/permissions/permission_update_infobar_delegate_android.h5
-rw-r--r--chrome/browser/prerender/external_prerender_handler_android.cc22
-rw-r--r--chrome/browser/prerender/external_prerender_handler_android.h14
-rw-r--r--chrome/browser/profiles/profile_android.cc16
-rw-r--r--chrome/browser/profiles/profile_android.h16
-rw-r--r--chrome/browser/search_engines/template_url_service_android.cc70
-rw-r--r--chrome/browser/search_engines/template_url_service_android.h59
-rw-r--r--chrome/browser/speech/tts_android.cc18
-rw-r--r--chrome/browser/speech/tts_android.h15
-rw-r--r--chrome/browser/spellchecker/spellchecker_session_bridge_android.cc6
-rw-r--r--chrome/browser/spellchecker/spellchecker_session_bridge_android.h9
24 files changed, 449 insertions, 253 deletions
diff --git a/chrome/browser/history/android/sqlite_cursor.cc b/chrome/browser/history/android/sqlite_cursor.cc
index 7b3fa9b..e60bebb 100644
--- a/chrome/browser/history/android/sqlite_cursor.cc
+++ b/chrome/browser/history/android/sqlite_cursor.cc
@@ -60,7 +60,7 @@ bool SQLiteCursor::RegisterSqliteCursor(JNIEnv* env) {
return RegisterNativesImpl(env);
}
-jint SQLiteCursor::GetCount(JNIEnv* env, jobject obj) {
+jint SQLiteCursor::GetCount(JNIEnv* env, const JavaParamRef<jobject>& obj) {
// Moves to maxium possible position so we will reach the last row, then finds
// out the total number of rows.
int current_position = position_;
@@ -70,34 +70,43 @@ jint SQLiteCursor::GetCount(JNIEnv* env, jobject obj) {
return count;
}
-ScopedJavaLocalRef<jobjectArray> SQLiteCursor::GetColumnNames(JNIEnv* env,
- jobject obj) {
+ScopedJavaLocalRef<jobjectArray> SQLiteCursor::GetColumnNames(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return base::android::ToJavaArrayOfStrings(env, column_names_);
}
-ScopedJavaLocalRef<jstring> SQLiteCursor::GetString(JNIEnv* env,
- jobject obj,
- jint column) {
+ScopedJavaLocalRef<jstring> SQLiteCursor::GetString(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
base::string16 value = statement_->statement()->ColumnString16(column);
return ScopedJavaLocalRef<jstring>(env,
env->NewString(value.data(), value.size()));
}
-jlong SQLiteCursor::GetLong(JNIEnv* env, jobject obj, jint column) {
+jlong SQLiteCursor::GetLong(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
return statement_->statement()->ColumnInt64(column);
}
-jint SQLiteCursor::GetInt(JNIEnv* env, jobject obj, jint column) {
+jint SQLiteCursor::GetInt(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
return statement_->statement()->ColumnInt(column);
}
-jdouble SQLiteCursor::GetDouble(JNIEnv* env, jobject obj, jint column) {
+jdouble SQLiteCursor::GetDouble(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
return statement_->statement()->ColumnDouble(column);
}
-ScopedJavaLocalRef<jbyteArray> SQLiteCursor::GetBlob(JNIEnv* env,
- jobject obj,
- jint column) {
+ScopedJavaLocalRef<jbyteArray> SQLiteCursor::GetBlob(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
std::vector<unsigned char> blob;
// Assume the client will only get favicon using GetBlob.
@@ -110,11 +119,15 @@ ScopedJavaLocalRef<jbyteArray> SQLiteCursor::GetBlob(JNIEnv* env,
return base::android::ToJavaByteArray(env, &blob[0], blob.size());
}
-jboolean SQLiteCursor::IsNull(JNIEnv* env, jobject obj, jint column) {
+jboolean SQLiteCursor::IsNull(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
return NULL_TYPE == GetColumnTypeInternal(column) ? JNI_TRUE : JNI_FALSE;
}
-jint SQLiteCursor::MoveTo(JNIEnv* env, jobject obj, jint pos) {
+jint SQLiteCursor::MoveTo(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint pos) {
BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
base::Bind(&SQLiteCursor::RunMoveStatementOnUIThread,
base::Unretained(this), pos));
@@ -125,11 +138,13 @@ jint SQLiteCursor::MoveTo(JNIEnv* env, jobject obj, jint pos) {
return position_;
}
-jint SQLiteCursor::GetColumnType(JNIEnv* env, jobject obj, jint column) {
+jint SQLiteCursor::GetColumnType(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint column) {
return GetColumnTypeInternal(column);
}
-void SQLiteCursor::Destroy(JNIEnv* env, jobject obj) {
+void SQLiteCursor::Destroy(JNIEnv* env, const JavaParamRef<jobject>& obj) {
// We do our best to cleanup when Destroy() is called from Java's finalize()
// where the UI message loop might stop running or in the process of shutting
// down, as the whole process will be destroyed soon, it's fine to leave some
diff --git a/chrome/browser/history/android/sqlite_cursor.h b/chrome/browser/history/android/sqlite_cursor.h
index c828ad2..f93514a 100644
--- a/chrome/browser/history/android/sqlite_cursor.h
+++ b/chrome/browser/history/android/sqlite_cursor.h
@@ -80,45 +80,59 @@ class SQLiteCursor {
// JNI methods -----------------------------------------------------------
// Returns the result row count.
- jint GetCount(JNIEnv* env, jobject obj);
+ jint GetCount(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj);
// Returns the result's columns' name.
base::android::ScopedJavaLocalRef<jobjectArray> GetColumnNames(
JNIEnv* env,
- jobject obj);
+ const base::android::JavaParamRef<jobject>& obj);
// Returns the given column value as jstring.
- base::android::ScopedJavaLocalRef<jstring> GetString(JNIEnv* env,
- jobject obj,
- jint column);
+ base::android::ScopedJavaLocalRef<jstring> GetString(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Returns the given column value as jlong.
- jlong GetLong(JNIEnv* env, jobject obj, jint column);
+ jlong GetLong(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Returns the given column value as int.
- jint GetInt(JNIEnv* env, jobject obj, jint column);
+ jint GetInt(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Returns the given column value as double.
- jdouble GetDouble(JNIEnv* env, jobject obj, jint column);
+ jdouble GetDouble(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Returns the given column value as jbyteArray.
- base::android::ScopedJavaLocalRef<jbyteArray> GetBlob(JNIEnv* env,
- jobject obj,
- jint column);
+ base::android::ScopedJavaLocalRef<jbyteArray> GetBlob(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Return JNI_TRUE if the give column value is NULL, JNI_FALSE otherwise.
- jboolean IsNull(JNIEnv* env, jobject obj, jint column);
+ jboolean IsNull(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Moves the cursor to |pos|, returns new position.
// If the returned position is not equal to |pos|, then the cursor points to
// the last row.
- jint MoveTo(JNIEnv* env, jobject obj, jint pos);
+ jint MoveTo(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint pos);
// Returns the type of column.
- jint GetColumnType(JNIEnv* env, jobject obj, jint column);
+ jint GetColumnType(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint column);
// Called from Java to relase this object.
- void Destroy(JNIEnv* env, jobject obj);
+ void Destroy(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj);
private:
FRIEND_TEST_ALL_PREFIXES(SQLiteCursorTest, Run);
diff --git a/chrome/browser/media/android/remote/remote_media_player_bridge.cc b/chrome/browser/media/android/remote/remote_media_player_bridge.cc
index 4efd11b..5d3d788 100644
--- a/chrome/browser/media/android/remote/remote_media_player_bridge.cc
+++ b/chrome/browser/media/android/remote/remote_media_player_bridge.cc
@@ -120,19 +120,23 @@ void RemoteMediaPlayerBridge::OnTimeUpdateTimerFired() {
player_id(), GetCurrentTime(), base::TimeTicks::Now());
}
-void RemoteMediaPlayerBridge::PauseLocal(JNIEnv* env, jobject obj) {
+void RemoteMediaPlayerBridge::PauseLocal(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
local_player_->Pause(true);
static_cast<RemoteMediaPlayerManager*>(manager())->OnPaused(player_id());
}
-jint RemoteMediaPlayerBridge::GetLocalPosition(JNIEnv* env, jobject obj) {
+jint RemoteMediaPlayerBridge::GetLocalPosition(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
base::TimeDelta time = local_player_->GetCurrentTime();
return static_cast<jint>(time.InMilliseconds());
}
-void RemoteMediaPlayerBridge::OnCastStarting(JNIEnv* env,
- jobject obj,
- jstring casting_message) {
+void RemoteMediaPlayerBridge::OnCastStarting(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& casting_message) {
static_cast<RemoteMediaPlayerManager*>(manager())->SwitchToRemotePlayer(
player_id(), ConvertJavaStringToUTF8(env, casting_message));
if (!time_update_timer_.IsRunning()) {
@@ -143,7 +147,8 @@ void RemoteMediaPlayerBridge::OnCastStarting(JNIEnv* env,
}
}
-void RemoteMediaPlayerBridge::OnCastStopping(JNIEnv* env, jobject obj) {
+void RemoteMediaPlayerBridge::OnCastStopping(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
static_cast<RemoteMediaPlayerManager*>(manager())
->SwitchToLocalPlayer(player_id());
}
@@ -169,32 +174,40 @@ void RemoteMediaPlayerBridge::SetVideoSurface(gfx::ScopedJavaSurface surface) {
}
base::android::ScopedJavaLocalRef<jstring> RemoteMediaPlayerBridge::GetFrameUrl(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return ConvertUTF8ToJavaString(env, frame_url().spec());
}
-void RemoteMediaPlayerBridge::OnPlaying(JNIEnv* env, jobject obj) {
+void RemoteMediaPlayerBridge::OnPlaying(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
static_cast<RemoteMediaPlayerManager *>(manager())->OnPlaying(player_id());
}
-void RemoteMediaPlayerBridge::OnPaused(JNIEnv* env, jobject obj) {
+void RemoteMediaPlayerBridge::OnPaused(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
static_cast<RemoteMediaPlayerManager *>(manager())->OnPaused(player_id());
}
-void RemoteMediaPlayerBridge::OnRouteUnselected(JNIEnv* env, jobject obj) {
+void RemoteMediaPlayerBridge::OnRouteUnselected(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
casting_message_.reset();
static_cast<RemoteMediaPlayerManager *>(manager())->OnRemoteDeviceUnselected(
player_id());
}
-void RemoteMediaPlayerBridge::OnPlaybackFinished(JNIEnv* env, jobject obj) {
+void RemoteMediaPlayerBridge::OnPlaybackFinished(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
static_cast<RemoteMediaPlayerManager *>(manager())->OnRemotePlaybackFinished(
player_id());
}
-void RemoteMediaPlayerBridge::OnRouteAvailabilityChanged(JNIEnv* env,
- jobject obj,
- jboolean available) {
+void RemoteMediaPlayerBridge::OnRouteAvailabilityChanged(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jboolean available) {
static_cast<RemoteMediaPlayerManager *>(manager())->
OnRouteAvailabilityChanged(player_id(), available);
}
@@ -370,7 +383,8 @@ void RemoteMediaPlayerBridge::Initialize() {
}
base::android::ScopedJavaLocalRef<jstring> RemoteMediaPlayerBridge::GetTitle(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
base::string16 title;
content::ContentViewCore* core =
static_cast<RemoteMediaPlayerManager*>(manager())->GetContentViewCore();
diff --git a/chrome/browser/media/android/remote/remote_media_player_bridge.h b/chrome/browser/media/android/remote/remote_media_player_bridge.h
index ea21de7..893d0ff 100644
--- a/chrome/browser/media/android/remote/remote_media_player_bridge.h
+++ b/chrome/browser/media/android/remote/remote_media_player_bridge.h
@@ -56,17 +56,30 @@ class RemoteMediaPlayerBridge : public media::MediaPlayerAndroid {
// JNI functions
base::android::ScopedJavaLocalRef<jstring> GetFrameUrl(
- JNIEnv* env, jobject obj);
- void OnPlaying(JNIEnv* env, jobject obj);
- void OnPaused(JNIEnv* env, jobject obj);
- void OnRouteUnselected(JNIEnv* env, jobject obj);
- void OnPlaybackFinished(JNIEnv* env, jobject obj);
- void OnRouteAvailabilityChanged(JNIEnv* env, jobject obj, jboolean available);
- base::android::ScopedJavaLocalRef<jstring> GetTitle(JNIEnv* env, jobject obj);
- void PauseLocal(JNIEnv* env, jobject obj);
- jint GetLocalPosition(JNIEnv* env, jobject obj);
- void OnCastStarting(JNIEnv* env, jobject obj, jstring casting_message);
- void OnCastStopping(JNIEnv* env, jobject obj);
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void OnPlaying(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj);
+ void OnPaused(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj);
+ void OnRouteUnselected(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void OnPlaybackFinished(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void OnRouteAvailabilityChanged(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jboolean available);
+ base::android::ScopedJavaLocalRef<jstring> GetTitle(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void PauseLocal(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj);
+ jint GetLocalPosition(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void OnCastStarting(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& casting_message);
+ void OnCastStopping(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Wrappers for calls to Java used by the remote media player manager
void RequestRemotePlayback();
diff --git a/chrome/browser/media/android/router/media_router_android.cc b/chrome/browser/media/android/router/media_router_android.cc
index a3e6e8a..ea91893 100644
--- a/chrome/browser/media/android/router/media_router_android.cc
+++ b/chrome/browser/media/android/router/media_router_android.cc
@@ -314,8 +314,8 @@ void MediaRouterAndroid::UnregisterLocalMediaRoutesObserver(
void MediaRouterAndroid::OnSinksReceived(
JNIEnv* env,
- jobject obj,
- jstring jsource_urn,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jsource_urn,
jint jcount) {
std::vector<MediaSink> sinks_converted;
sinks_converted.reserve(jcount);
@@ -342,9 +342,9 @@ void MediaRouterAndroid::OnSinksReceived(
void MediaRouterAndroid::OnRouteCreated(
JNIEnv* env,
- jobject obj,
- jstring jmedia_route_id,
- jstring jsink_id,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jmedia_route_id,
+ const JavaParamRef<jstring>& jsink_id,
jint jroute_request_id,
jboolean jis_local) {
MediaRouteRequest* request = route_requests_.Lookup(jroute_request_id);
@@ -369,8 +369,8 @@ void MediaRouterAndroid::OnRouteCreated(
void MediaRouterAndroid::OnRouteRequestError(
JNIEnv* env,
- jobject obj,
- jstring jerror_text,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jerror_text,
jint jroute_request_id) {
MediaRouteRequest* request = route_requests_.Lookup(jroute_request_id);
if (!request)
@@ -384,9 +384,10 @@ void MediaRouterAndroid::OnRouteRequestError(
route_requests_.Remove(jroute_request_id);
}
-void MediaRouterAndroid::OnRouteClosed(JNIEnv* env,
- jobject obj,
- jstring jmedia_route_id) {
+void MediaRouterAndroid::OnRouteClosed(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jmedia_route_id) {
MediaRoute::Id route_id = ConvertJavaStringToUTF8(env, jmedia_route_id);
for (auto it = active_routes_.begin(); it != active_routes_.end(); ++it)
if (it->media_route_id() == route_id) {
@@ -398,16 +399,20 @@ void MediaRouterAndroid::OnRouteClosed(JNIEnv* env,
OnRoutesUpdated(active_routes_));
}
-void MediaRouterAndroid::OnMessageSentResult(
- JNIEnv* env, jobject obj, jboolean jsuccess, jint jcallback_id) {
+void MediaRouterAndroid::OnMessageSentResult(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jboolean jsuccess,
+ jint jcallback_id) {
SendRouteMessageCallback* callback = message_callbacks_.Lookup(jcallback_id);
callback->Run(jsuccess);
message_callbacks_.Remove(jcallback_id);
}
// Notifies the media router about a message received from the media route.
-void MediaRouterAndroid::OnMessage(
- JNIEnv* env, jobject obj, jstring jmedia_route_id, jstring jmessage) {
+void MediaRouterAndroid::OnMessage(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jmedia_route_id,
+ const JavaParamRef<jstring>& jmessage) {
MediaRoute::Id route_id = ConvertJavaStringToUTF8(env, jmedia_route_id);
auto* observer_list = messages_observers_.get(route_id);
if (!observer_list)
diff --git a/chrome/browser/media/android/router/media_router_android.h b/chrome/browser/media/android/router/media_router_android.h
index a2d9b52..25a325a 100644
--- a/chrome/browser/media/android/router/media_router_android.h
+++ b/chrome/browser/media/android/router/media_router_android.h
@@ -57,35 +57,44 @@ class MediaRouterAndroid : public MediaRouterBase {
// Notifies the media router that information about sinks is received for
// a specific source URN.
- void OnSinksReceived(
- JNIEnv* env, jobject obj, jstring jsource_urn, jint jcount);
+ void OnSinksReceived(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jsource_urn,
+ jint jcount);
// Notifies the media router about a successful route creation.
void OnRouteCreated(
JNIEnv* env,
- jobject obj,
- jstring jmedia_route_id,
- jstring jmedia_sink_id,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jmedia_route_id,
+ const base::android::JavaParamRef<jstring>& jmedia_sink_id,
jint jroute_request_id,
jboolean jis_local);
// Notifies the media router that route creation or joining failed.
void OnRouteRequestError(
JNIEnv* env,
- jobject obj,
- jstring jerror_text,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jerror_text,
jint jroute_request_id);
// Notifies the media router when the route was closed.
- void OnRouteClosed(JNIEnv* env, jobject obj, jstring jmedia_route_id);
+ void OnRouteClosed(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jmedia_route_id);
// Notifies the media router about the result of sending a message.
- void OnMessageSentResult(
- JNIEnv* env, jobject obj, jboolean jsuccess, jint jcallback_id);
+ void OnMessageSentResult(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jboolean jsuccess,
+ jint jcallback_id);
// Notifies the media router about a message received from the media route.
- void OnMessage(
- JNIEnv* env, jobject obj, jstring jmedia_route_id, jstring jmessage);
+ void OnMessage(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jmedia_route_id,
+ const base::android::JavaParamRef<jstring>& jmessage);
private:
friend class MediaRouterFactory;
diff --git a/chrome/browser/media/android/router/media_router_dialog_controller_android.cc b/chrome/browser/media/android/router/media_router_dialog_controller_android.cc
index cbff49e..86ab932 100644
--- a/chrome/browser/media/android/router/media_router_dialog_controller_android.cc
+++ b/chrome/browser/media/android/router/media_router_dialog_controller_android.cc
@@ -36,7 +36,9 @@ MediaRouterDialogControllerAndroid::GetOrCreateForWebContents(
}
void MediaRouterDialogControllerAndroid::OnSinkSelected(
- JNIEnv* env, jobject obj, jstring jsink_id) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jsink_id) {
scoped_ptr<CreatePresentationConnectionRequest> create_connection_request =
TakeCreateConnectionRequest();
const PresentationRequest& presentation_request =
@@ -61,8 +63,8 @@ void MediaRouterDialogControllerAndroid::OnSinkSelected(
void MediaRouterDialogControllerAndroid::OnRouteClosed(
JNIEnv* env,
- jobject obj,
- jstring jmedia_route_id) {
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jmedia_route_id) {
std::string media_route_id = ConvertJavaStringToUTF8(env, jmedia_route_id);
MediaRouter* router = MediaRouterFactory::GetApiForBrowserContext(
@@ -74,7 +76,8 @@ void MediaRouterDialogControllerAndroid::OnRouteClosed(
}
void MediaRouterDialogControllerAndroid::OnDialogCancelled(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
CancelPresentationRequest();
}
diff --git a/chrome/browser/media/android/router/media_router_dialog_controller_android.h b/chrome/browser/media/android/router/media_router_dialog_controller_android.h
index cbd5928..40c8c02 100644
--- a/chrome/browser/media/android/router/media_router_dialog_controller_android.h
+++ b/chrome/browser/media/android/router/media_router_dialog_controller_android.h
@@ -32,12 +32,18 @@ class MediaRouterDialogControllerAndroid
// The methods called by the Java counterpart.
// Notifies the controller that user has selected a sink with |jsink_id|.
- void OnSinkSelected(JNIEnv* env, jobject obj, jstring jsink_id);
+ void OnSinkSelected(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jsink_id);
// Notifies the controller that user chose to close the route.
- void OnRouteClosed(JNIEnv* env, jobject obj, jstring jmedia_route_id);
+ void OnRouteClosed(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jmedia_route_id);
// Notifies the controller that the dialog has been closed without the user
// taking any action (e.g. closing the route or selecting a sink).
- void OnDialogCancelled(JNIEnv* env, jobject obj);
+ void OnDialogCancelled(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
private:
friend class content::WebContentsUserData<MediaRouterDialogControllerAndroid>;
diff --git a/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.cc b/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.cc
index cbd5130..6090293 100644
--- a/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.cc
+++ b/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.cc
@@ -32,76 +32,90 @@ DataReductionProxySettingsAndroid::~DataReductionProxySettingsAndroid() {
}
jboolean DataReductionProxySettingsAndroid::IsDataReductionProxyAllowed(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->Allowed();
}
jboolean DataReductionProxySettingsAndroid::IsDataReductionProxyPromoAllowed(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->PromoAllowed();
}
jboolean DataReductionProxySettingsAndroid::IsIncludedInAltFieldTrial(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return false;
}
jboolean DataReductionProxySettingsAndroid::IsDataReductionProxyEnabled(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->IsDataReductionProxyEnabled();
}
jboolean DataReductionProxySettingsAndroid::CanUseDataReductionProxy(
- JNIEnv* env, jobject obj, jstring url) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& url) {
return Settings()->CanUseDataReductionProxy(
GURL(base::android::ConvertJavaStringToUTF16(env, url)));
}
jboolean DataReductionProxySettingsAndroid::WasLoFiModeActiveOnMainFrame(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->WasLoFiModeActiveOnMainFrame();
}
jboolean DataReductionProxySettingsAndroid::WasLoFiLoadImageRequestedBefore(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->WasLoFiLoadImageRequestedBefore();
}
void DataReductionProxySettingsAndroid::SetLoFiLoadImageRequested(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
Settings()->SetLoFiLoadImageRequested();
}
jboolean DataReductionProxySettingsAndroid::IsDataReductionProxyManaged(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->IsDataReductionProxyManaged();
}
void DataReductionProxySettingsAndroid::IncrementLoFiSnackbarShown(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
Settings()->IncrementLoFiSnackbarShown();
}
void DataReductionProxySettingsAndroid::IncrementLoFiUserRequestsForImages(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
Settings()->IncrementLoFiUserRequestsForImages();
}
void DataReductionProxySettingsAndroid::SetDataReductionProxyEnabled(
JNIEnv* env,
- jobject obj,
+ const JavaParamRef<jobject>& obj,
jboolean enabled) {
Settings()->SetDataReductionProxyEnabled(enabled);
}
jlong DataReductionProxySettingsAndroid::GetDataReductionLastUpdateTime(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->GetDataReductionLastUpdateTime();
}
base::android::ScopedJavaLocalRef<jobject>
-DataReductionProxySettingsAndroid::GetContentLengths(JNIEnv* env,
- jobject obj) {
+DataReductionProxySettingsAndroid::GetContentLengths(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
int64 original_content_length;
int64 received_content_length;
int64 last_update_internal;
@@ -118,20 +132,23 @@ DataReductionProxySettingsAndroid::GetContentLengths(JNIEnv* env,
ScopedJavaLocalRef<jlongArray>
DataReductionProxySettingsAndroid::GetDailyOriginalContentLengths(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return GetDailyContentLengths(
env, data_reduction_proxy::prefs::kDailyHttpOriginalContentLength);
}
ScopedJavaLocalRef<jlongArray>
DataReductionProxySettingsAndroid::GetDailyReceivedContentLengths(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return GetDailyContentLengths(
env, data_reduction_proxy::prefs::kDailyHttpReceivedContentLength);
}
jboolean DataReductionProxySettingsAndroid::IsDataReductionProxyUnreachable(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return Settings()->IsDataReductionProxyUnreachable();
}
@@ -160,7 +177,7 @@ DataReductionProxySettingsAndroid::GetDailyContentLengths(
ScopedJavaLocalRef<jstring> DataReductionProxySettingsAndroid::GetHttpProxyList(
JNIEnv* env,
- jobject obj) {
+ const JavaParamRef<jobject>& obj) {
data_reduction_proxy::DataReductionProxyEventStore* event_store =
Settings()->GetEventStore();
if (!event_store)
@@ -170,7 +187,9 @@ ScopedJavaLocalRef<jstring> DataReductionProxySettingsAndroid::GetHttpProxyList(
}
ScopedJavaLocalRef<jstring>
-DataReductionProxySettingsAndroid::GetHttpsProxyList(JNIEnv* env, jobject obj) {
+DataReductionProxySettingsAndroid::GetHttpsProxyList(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
data_reduction_proxy::DataReductionProxyEventStore* event_store =
Settings()->GetEventStore();
if (!event_store)
@@ -188,8 +207,9 @@ DataReductionProxySettings* DataReductionProxySettingsAndroid::Settings() {
}
ScopedJavaLocalRef<jstring>
-DataReductionProxySettingsAndroid::GetLastBypassEvent(JNIEnv* env,
- jobject obj) {
+DataReductionProxySettingsAndroid::GetLastBypassEvent(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
data_reduction_proxy::DataReductionProxyEventStore* event_store =
Settings()->GetEventStore();
if (!event_store)
diff --git a/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.h b/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.h
index e79be28..2512284 100644
--- a/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.h
+++ b/chrome/browser/net/spdyproxy/data_reduction_proxy_settings_android.h
@@ -34,34 +34,67 @@ class DataReductionProxySettingsAndroid {
void InitDataReductionProxySettings(Profile* profile);
// JNI wrapper interfaces to the indentically-named superclass methods.
- jboolean IsDataReductionProxyAllowed(JNIEnv* env, jobject obj);
- jboolean IsDataReductionProxyPromoAllowed(JNIEnv* env, jobject obj);
- jboolean IsIncludedInAltFieldTrial(JNIEnv* env, jobject obj);
- jboolean IsDataReductionProxyEnabled(JNIEnv* env, jobject obj);
- jboolean CanUseDataReductionProxy(JNIEnv* env, jobject obj, jstring url);
- jboolean WasLoFiModeActiveOnMainFrame(JNIEnv* env, jobject obj);
- jboolean WasLoFiLoadImageRequestedBefore(JNIEnv* env, jobject obj);
- void SetLoFiLoadImageRequested(JNIEnv* env, jobject obj);
- jboolean IsDataReductionProxyManaged(JNIEnv* env, jobject obj);
- void IncrementLoFiSnackbarShown(JNIEnv* env, jobject obj);
- void IncrementLoFiUserRequestsForImages(JNIEnv* env, jobject obj);
- void SetDataReductionProxyEnabled(JNIEnv* env, jobject obj, jboolean enabled);
-
- jlong GetDataReductionLastUpdateTime(JNIEnv* env, jobject obj);
- ScopedJavaLocalRef<jlongArray> GetDailyOriginalContentLengths(JNIEnv* env,
- jobject obj);
- ScopedJavaLocalRef<jlongArray> GetDailyReceivedContentLengths(JNIEnv* env,
- jobject obj);
+ jboolean IsDataReductionProxyAllowed(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsDataReductionProxyPromoAllowed(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsIncludedInAltFieldTrial(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsDataReductionProxyEnabled(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean CanUseDataReductionProxy(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& url);
+ jboolean WasLoFiModeActiveOnMainFrame(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean WasLoFiLoadImageRequestedBefore(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void SetLoFiLoadImageRequested(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsDataReductionProxyManaged(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void IncrementLoFiSnackbarShown(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void IncrementLoFiUserRequestsForImages(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void SetDataReductionProxyEnabled(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jboolean enabled);
+
+ jlong GetDataReductionLastUpdateTime(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ ScopedJavaLocalRef<jlongArray> GetDailyOriginalContentLengths(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ ScopedJavaLocalRef<jlongArray> GetDailyReceivedContentLengths(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Return a Java |ContentLengths| object wrapping the results of a call to
// DataReductionProxySettings::GetContentLengths.
- base::android::ScopedJavaLocalRef<jobject> GetContentLengths(JNIEnv* env,
- jobject obj);
+ base::android::ScopedJavaLocalRef<jobject> GetContentLengths(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Determines whether the data reduction proxy is unreachable. This is
// done by keeping a count of requests which go through proxy vs those
// which should have gone through the proxy based on the config.
- jboolean IsDataReductionProxyUnreachable(JNIEnv* env, jobject obj);
+ jboolean IsDataReductionProxyUnreachable(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
ScopedJavaLocalRef<jstring> GetTokenForAuthChallenge(JNIEnv* env,
jobject obj,
@@ -70,15 +103,21 @@ class DataReductionProxySettingsAndroid {
// Returns a Java string of the Data Reduction Proxy proxy list for HTTP
// origins as a semi-colon delimited list.
- ScopedJavaLocalRef<jstring> GetHttpProxyList(JNIEnv* env, jobject obj);
+ ScopedJavaLocalRef<jstring> GetHttpProxyList(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Returns a Java string of the Data Reduction Proxy proxy list for HTTPS
// origins as a semi-colon delimited list.
- ScopedJavaLocalRef<jstring> GetHttpsProxyList(JNIEnv* env, jobject obj);
+ ScopedJavaLocalRef<jstring> GetHttpsProxyList(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Returns a Java string of the last Data Reduction Proxy bypass event as
// a JSON object.
- ScopedJavaLocalRef<jstring> GetLastBypassEvent(JNIEnv* env, jobject obj);
+ ScopedJavaLocalRef<jstring> GetLastBypassEvent(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Registers the native methods to be call from Java.
static bool Register(JNIEnv* env);
diff --git a/chrome/browser/notifications/notification_ui_manager_android.cc b/chrome/browser/notifications/notification_ui_manager_android.cc
index 9943969..cf2b78a 100644
--- a/chrome/browser/notifications/notification_ui_manager_android.cc
+++ b/chrome/browser/notifications/notification_ui_manager_android.cc
@@ -55,10 +55,10 @@ NotificationUIManagerAndroid::~NotificationUIManagerAndroid() {
bool NotificationUIManagerAndroid::OnNotificationClicked(
JNIEnv* env,
- jobject java_object,
+ const JavaParamRef<jobject>& java_object,
jlong persistent_notification_id,
- jstring java_origin,
- jstring java_tag,
+ const JavaParamRef<jstring>& java_origin,
+ const JavaParamRef<jstring>& java_tag,
jint action_index) {
GURL origin(ConvertJavaStringToUTF8(env, java_origin));
std::string tag = ConvertJavaStringToUTF8(env, java_tag);
@@ -80,10 +80,10 @@ bool NotificationUIManagerAndroid::OnNotificationClicked(
bool NotificationUIManagerAndroid::OnNotificationClosed(
JNIEnv* env,
- jobject java_object,
+ const JavaParamRef<jobject>& java_object,
jlong persistent_notification_id,
- jstring java_origin,
- jstring java_tag,
+ const JavaParamRef<jstring>& java_origin,
+ const JavaParamRef<jstring>& java_tag,
jboolean by_user) {
GURL origin(ConvertJavaStringToUTF8(env, java_origin));
std::string tag = ConvertJavaStringToUTF8(env, java_tag);
diff --git a/chrome/browser/notifications/notification_ui_manager_android.h b/chrome/browser/notifications/notification_ui_manager_android.h
index 41a0af3..33f37f3 100644
--- a/chrome/browser/notifications/notification_ui_manager_android.h
+++ b/chrome/browser/notifications/notification_ui_manager_android.h
@@ -30,20 +30,22 @@ class NotificationUIManagerAndroid : public NotificationUIManager {
~NotificationUIManagerAndroid() override;
// Called by the Java implementation when the notification has been clicked.
- bool OnNotificationClicked(JNIEnv* env,
- jobject java_object,
- jlong persistent_notification_id,
- jstring java_origin,
- jstring java_tag,
- jint action_index);
+ bool OnNotificationClicked(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& java_object,
+ jlong persistent_notification_id,
+ const base::android::JavaParamRef<jstring>& java_origin,
+ const base::android::JavaParamRef<jstring>& java_tag,
+ jint action_index);
// Called by the Java implementation when the notification has been closed.
- bool OnNotificationClosed(JNIEnv* env,
- jobject java_object,
- jlong persistent_notification_id,
- jstring java_origin,
- jstring java_tag,
- jboolean by_user);
+ bool OnNotificationClosed(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& java_object,
+ jlong persistent_notification_id,
+ const base::android::JavaParamRef<jstring>& java_origin,
+ const base::android::JavaParamRef<jstring>& java_tag,
+ jboolean by_user);
// NotificationUIManager implementation.
void Add(const Notification& notification, Profile* profile) override;
diff --git a/chrome/browser/permissions/permission_update_infobar_delegate_android.cc b/chrome/browser/permissions/permission_update_infobar_delegate_android.cc
index 4a876d1..1999ae0 100644
--- a/chrome/browser/permissions/permission_update_infobar_delegate_android.cc
+++ b/chrome/browser/permissions/permission_update_infobar_delegate_android.cc
@@ -119,7 +119,9 @@ bool PermissionUpdateInfoBarDelegate::RegisterPermissionUpdateInfoBarDelegate(
}
void PermissionUpdateInfoBarDelegate::OnPermissionResult(
- JNIEnv* env, jobject obj, jboolean all_permissions_granted) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jboolean all_permissions_granted) {
base::ResetAndReturn(&callback_).Run(all_permissions_granted);
infobar()->RemoveSelf();
}
diff --git a/chrome/browser/permissions/permission_update_infobar_delegate_android.h b/chrome/browser/permissions/permission_update_infobar_delegate_android.h
index dc3b1cb..34db3c7 100644
--- a/chrome/browser/permissions/permission_update_infobar_delegate_android.h
+++ b/chrome/browser/permissions/permission_update_infobar_delegate_android.h
@@ -55,8 +55,9 @@ class PermissionUpdateInfoBarDelegate : public ConfirmInfoBarDelegate {
static bool RegisterPermissionUpdateInfoBarDelegate(JNIEnv* env);
- void OnPermissionResult(
- JNIEnv* env, jobject obj, jboolean all_permissions_granted);
+ void OnPermissionResult(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jboolean all_permissions_granted);
private:
PermissionUpdateInfoBarDelegate(
diff --git a/chrome/browser/prerender/external_prerender_handler_android.cc b/chrome/browser/prerender/external_prerender_handler_android.cc
index e02dfee..8714710 100644
--- a/chrome/browser/prerender/external_prerender_handler_android.cc
+++ b/chrome/browser/prerender/external_prerender_handler_android.cc
@@ -22,14 +22,15 @@ using base::android::ConvertJavaStringToUTF16;
namespace prerender {
-bool ExternalPrerenderHandlerAndroid::AddPrerender(JNIEnv* env,
- jobject obj,
- jobject jprofile,
- jobject jweb_contents,
- jstring jurl,
- jstring jreferrer,
- jint width,
- jint height) {
+bool ExternalPrerenderHandlerAndroid::AddPrerender(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jobject>& jprofile,
+ const JavaParamRef<jobject>& jweb_contents,
+ const JavaParamRef<jstring>& jurl,
+ const JavaParamRef<jstring>& jreferrer,
+ jint width,
+ jint height) {
Profile* profile = ProfileAndroid::FromProfileAndroid(jprofile);
GURL url = GURL(ConvertJavaStringToUTF16(env, jurl));
@@ -60,8 +61,9 @@ bool ExternalPrerenderHandlerAndroid::AddPrerender(JNIEnv* env,
return true;
}
-void ExternalPrerenderHandlerAndroid::CancelCurrentPrerender(JNIEnv* env,
- jobject object) {
+void ExternalPrerenderHandlerAndroid::CancelCurrentPrerender(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& object) {
if (!prerender_handle_)
return;
prerender_handle_->OnCancel();
diff --git a/chrome/browser/prerender/external_prerender_handler_android.h b/chrome/browser/prerender/external_prerender_handler_android.h
index 329dac4..4430cbc 100644
--- a/chrome/browser/prerender/external_prerender_handler_android.h
+++ b/chrome/browser/prerender/external_prerender_handler_android.h
@@ -28,16 +28,18 @@ class ExternalPrerenderHandlerAndroid {
// Add a prerender with the given url and referrer on the PrerenderManager of
// the given profile. This is restricted to a single prerender at a time.
bool AddPrerender(JNIEnv* env,
- jobject obj,
- jobject profile,
- jobject jweb_contents,
- jstring url,
- jstring referrer,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jobject>& profile,
+ const base::android::JavaParamRef<jobject>& jweb_contents,
+ const base::android::JavaParamRef<jstring>& url,
+ const base::android::JavaParamRef<jstring>& referrer,
jint width,
jint height);
// Cancel the prerender associated with the prerender_handle_
- void CancelCurrentPrerender(JNIEnv* env, jobject object);
+ void CancelCurrentPrerender(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& object);
// Whether the PrerenderManager associated with the given profile has any
// prerenders for the url.
diff --git a/chrome/browser/profiles/profile_android.cc b/chrome/browser/profiles/profile_android.cc
index 9c92901..2ec4bbb 100644
--- a/chrome/browser/profiles/profile_android.cc
+++ b/chrome/browser/profiles/profile_android.cc
@@ -65,14 +65,16 @@ ScopedJavaLocalRef<jobject> ProfileAndroid::GetLastUsedProfile(JNIEnv* env,
return ScopedJavaLocalRef<jobject>(profile_android->obj_);
}
-void ProfileAndroid::DestroyWhenAppropriate(JNIEnv* env, jobject obj) {
+void ProfileAndroid::DestroyWhenAppropriate(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
// Don't delete the Profile directly because the corresponding
// RenderViewHost might not be deleted yet.
ProfileDestroyer::DestroyProfileWhenAppropriate(profile_);
}
base::android::ScopedJavaLocalRef<jobject> ProfileAndroid::GetOriginalProfile(
- JNIEnv* env, jobject obj) {
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
ProfileAndroid* original_profile = ProfileAndroid::FromProfile(
profile_->GetOriginalProfile());
DCHECK(original_profile);
@@ -80,18 +82,22 @@ base::android::ScopedJavaLocalRef<jobject> ProfileAndroid::GetOriginalProfile(
}
base::android::ScopedJavaLocalRef<jobject>
-ProfileAndroid::GetOffTheRecordProfile(JNIEnv* env, jobject obj) {
+ProfileAndroid::GetOffTheRecordProfile(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
ProfileAndroid* otr_profile = ProfileAndroid::FromProfile(
profile_->GetOffTheRecordProfile());
DCHECK(otr_profile);
return otr_profile->GetJavaObject();
}
-jboolean ProfileAndroid::HasOffTheRecordProfile(JNIEnv* env, jobject obj) {
+jboolean ProfileAndroid::HasOffTheRecordProfile(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return profile_->HasOffTheRecordProfile();
}
-jboolean ProfileAndroid::IsOffTheRecord(JNIEnv* env, jobject obj) {
+jboolean ProfileAndroid::IsOffTheRecord(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return profile_->IsOffTheRecord();
}
diff --git a/chrome/browser/profiles/profile_android.h b/chrome/browser/profiles/profile_android.h
index e6ed2c8..b7a55d3 100644
--- a/chrome/browser/profiles/profile_android.h
+++ b/chrome/browser/profiles/profile_android.h
@@ -26,11 +26,13 @@ class ProfileAndroid : public base::SupportsUserData::Data {
jclass clazz);
// Destroys this Profile when possible.
- void DestroyWhenAppropriate(JNIEnv* env, jobject obj);
+ void DestroyWhenAppropriate(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Return the original profile.
base::android::ScopedJavaLocalRef<jobject> GetOriginalProfile(
- JNIEnv* env, jobject obj);
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Return the incognito profile.
//
@@ -38,13 +40,17 @@ class ProfileAndroid : public base::SupportsUserData::Data {
// exist. If this isn't what you want, you need to check
// HasOffTheRecordProfile() first.
base::android::ScopedJavaLocalRef<jobject> GetOffTheRecordProfile(
- JNIEnv* env, jobject obj);
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Return whether an off the record profile exists.
- jboolean HasOffTheRecordProfile(JNIEnv* env, jobject obj);
+ jboolean HasOffTheRecordProfile(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
// Whether this profile is off the record.
- jboolean IsOffTheRecord(JNIEnv* env, jobject obj);
+ jboolean IsOffTheRecord(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
explicit ProfileAndroid(Profile* profile);
~ProfileAndroid() override;
diff --git a/chrome/browser/search_engines/template_url_service_android.cc b/chrome/browser/search_engines/template_url_service_android.cc
index 8ab11e0..8e88588 100644
--- a/chrome/browser/search_engines/template_url_service_android.cc
+++ b/chrome/browser/search_engines/template_url_service_android.cc
@@ -44,13 +44,14 @@ TemplateUrlServiceAndroid::~TemplateUrlServiceAndroid() {
template_url_service_->RemoveObserver(this);
}
-void TemplateUrlServiceAndroid::Load(JNIEnv* env, jobject obj) {
+void TemplateUrlServiceAndroid::Load(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
template_url_service_->Load();
}
void TemplateUrlServiceAndroid::SetUserSelectedDefaultSearchProvider(
JNIEnv* env,
- jobject obj,
+ const JavaParamRef<jobject>& obj,
jint selected_index) {
std::vector<TemplateURL*> template_urls =
template_url_service_->GetTemplateURLs();
@@ -64,8 +65,9 @@ void TemplateUrlServiceAndroid::SetUserSelectedDefaultSearchProvider(
template_url_service_->SetUserSelectedDefaultSearchProvider(template_url);
}
-jint TemplateUrlServiceAndroid::GetDefaultSearchProvider(JNIEnv* env,
- jobject obj) {
+jint TemplateUrlServiceAndroid::GetDefaultSearchProvider(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
std::vector<TemplateURL*> template_urls =
template_url_service_->GetTemplateURLs();
TemplateURL* default_search_provider =
@@ -77,21 +79,26 @@ jint TemplateUrlServiceAndroid::GetDefaultSearchProvider(JNIEnv* env,
return -1;
}
-jboolean TemplateUrlServiceAndroid::IsLoaded(JNIEnv* env, jobject obj) {
+jboolean TemplateUrlServiceAndroid::IsLoaded(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return template_url_service_->loaded();
}
-jint TemplateUrlServiceAndroid::GetTemplateUrlCount(JNIEnv* env, jobject obj) {
+jint TemplateUrlServiceAndroid::GetTemplateUrlCount(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return template_url_service_->GetTemplateURLs().size();
}
-jboolean TemplateUrlServiceAndroid::IsSearchProviderManaged(JNIEnv* env,
- jobject obj) {
+jboolean TemplateUrlServiceAndroid::IsSearchProviderManaged(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
return template_url_service_->is_default_search_managed();
}
-jboolean TemplateUrlServiceAndroid::IsSearchByImageAvailable(JNIEnv* env,
- jobject obj) {
+jboolean TemplateUrlServiceAndroid::IsSearchByImageAvailable(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
const TemplateURL* default_search_provider =
template_url_service_->GetDefaultSearchProvider();
return default_search_provider &&
@@ -100,8 +107,9 @@ jboolean TemplateUrlServiceAndroid::IsSearchByImageAvailable(JNIEnv* env,
template_url_service_->search_terms_data());
}
-jboolean TemplateUrlServiceAndroid::IsDefaultSearchEngineGoogle(JNIEnv* env,
- jobject obj) {
+jboolean TemplateUrlServiceAndroid::IsDefaultSearchEngineGoogle(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
TemplateURL* default_search_provider =
template_url_service_->GetDefaultSearchProvider();
return default_search_provider &&
@@ -110,9 +118,10 @@ jboolean TemplateUrlServiceAndroid::IsDefaultSearchEngineGoogle(JNIEnv* env,
}
base::android::ScopedJavaLocalRef<jobject>
-TemplateUrlServiceAndroid::GetPrepopulatedTemplateUrlAt(JNIEnv* env,
- jobject obj,
- jint index) {
+TemplateUrlServiceAndroid::GetPrepopulatedTemplateUrlAt(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint index) {
TemplateURL* template_url = template_url_service_->GetTemplateURLs()[index];
if (!IsPrepopulatedTemplate(template_url) &&
!template_url->created_by_policy())
@@ -149,9 +158,10 @@ void TemplateUrlServiceAndroid::OnTemplateURLServiceChanged() {
}
base::android::ScopedJavaLocalRef<jstring>
-TemplateUrlServiceAndroid::GetUrlForSearchQuery(JNIEnv* env,
- jobject obj,
- jstring jquery) {
+TemplateUrlServiceAndroid::GetUrlForSearchQuery(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jquery) {
const TemplateURL* default_provider =
template_url_service_->GetDefaultSearchProvider();
@@ -171,9 +181,10 @@ TemplateUrlServiceAndroid::GetUrlForSearchQuery(JNIEnv* env,
}
base::android::ScopedJavaLocalRef<jstring>
-TemplateUrlServiceAndroid::GetUrlForVoiceSearchQuery(JNIEnv* env,
- jobject obj,
- jstring jquery) {
+TemplateUrlServiceAndroid::GetUrlForVoiceSearchQuery(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jquery) {
base::string16 query(base::android::ConvertJavaStringToUTF16(env, jquery));
std::string url;
@@ -188,10 +199,11 @@ TemplateUrlServiceAndroid::GetUrlForVoiceSearchQuery(JNIEnv* env,
}
base::android::ScopedJavaLocalRef<jstring>
-TemplateUrlServiceAndroid::ReplaceSearchTermsInUrl(JNIEnv* env,
- jobject obj,
- jstring jquery,
- jstring jcurrent_url) {
+TemplateUrlServiceAndroid::ReplaceSearchTermsInUrl(
+ JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jquery,
+ const JavaParamRef<jstring>& jcurrent_url) {
TemplateURL* default_provider =
template_url_service_->GetDefaultSearchProvider();
@@ -212,9 +224,9 @@ TemplateUrlServiceAndroid::ReplaceSearchTermsInUrl(JNIEnv* env,
base::android::ScopedJavaLocalRef<jstring>
TemplateUrlServiceAndroid::GetUrlForContextualSearchQuery(
JNIEnv* env,
- jobject obj,
- jstring jquery,
- jstring jalternate_term,
+ const JavaParamRef<jobject>& obj,
+ const JavaParamRef<jstring>& jquery,
+ const JavaParamRef<jstring>& jalternate_term,
jboolean jshould_prefetch) {
base::string16 query(base::android::ConvertJavaStringToUTF16(env, jquery));
std::string url;
@@ -246,7 +258,7 @@ TemplateUrlServiceAndroid::GetUrlForContextualSearchQuery(
base::android::ScopedJavaLocalRef<jstring>
TemplateUrlServiceAndroid::GetSearchEngineUrlFromTemplateUrl(
JNIEnv* env,
- jobject obj,
+ const JavaParamRef<jobject>& obj,
jint index) {
TemplateURL* template_url = template_url_service_->GetTemplateURLs()[index];
std::string url(template_url->url_ref().ReplaceSearchTerms(
diff --git a/chrome/browser/search_engines/template_url_service_android.h b/chrome/browser/search_engines/template_url_service_android.h
index 091ccd9..0ba635f 100644
--- a/chrome/browser/search_engines/template_url_service_android.h
+++ b/chrome/browser/search_engines/template_url_service_android.h
@@ -21,40 +21,53 @@ class TemplateUrlServiceAndroid : public TemplateURLServiceObserver {
public:
TemplateUrlServiceAndroid(JNIEnv* env, jobject obj);
- void Load(JNIEnv* env, jobject obj);
- void SetUserSelectedDefaultSearchProvider(JNIEnv* env,
- jobject obj,
- jint selected_index);
- jint GetDefaultSearchProvider(JNIEnv* env, jobject obj);
- jint GetTemplateUrlCount(JNIEnv* env, jobject obj);
- jboolean IsLoaded(JNIEnv* env, jobject obj);
- base::android::ScopedJavaLocalRef<jobject>
- GetPrepopulatedTemplateUrlAt(JNIEnv* env, jobject obj, jint index);
- jboolean IsSearchProviderManaged(JNIEnv* env, jobject obj);
- jboolean IsSearchByImageAvailable(JNIEnv* env, jobject obj);
- jboolean IsDefaultSearchEngineGoogle(JNIEnv* env, jobject obj);
+ void Load(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj);
+ void SetUserSelectedDefaultSearchProvider(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint selected_index);
+ jint GetDefaultSearchProvider(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jint GetTemplateUrlCount(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsLoaded(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ base::android::ScopedJavaLocalRef<jobject> GetPrepopulatedTemplateUrlAt(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint index);
+ jboolean IsSearchProviderManaged(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsSearchByImageAvailable(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ jboolean IsDefaultSearchEngineGoogle(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
base::android::ScopedJavaLocalRef<jstring> GetUrlForSearchQuery(
JNIEnv* env,
- jobject obj,
- jstring jquery);
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jquery);
base::android::ScopedJavaLocalRef<jstring> GetUrlForVoiceSearchQuery(
JNIEnv* env,
- jobject obj,
- jstring jquery);
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jquery);
base::android::ScopedJavaLocalRef<jstring> ReplaceSearchTermsInUrl(
JNIEnv* env,
- jobject obj,
- jstring jquery,
- jstring jcurrent_url);
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jquery,
+ const base::android::JavaParamRef<jstring>& jcurrent_url);
base::android::ScopedJavaLocalRef<jstring> GetUrlForContextualSearchQuery(
JNIEnv* env,
- jobject obj,
- jstring jquery,
- jstring jalternate_term,
+ const base::android::JavaParamRef<jobject>& obj,
+ const base::android::JavaParamRef<jstring>& jquery,
+ const base::android::JavaParamRef<jstring>& jalternate_term,
jboolean jshould_prefetch);
base::android::ScopedJavaLocalRef<jstring> GetSearchEngineUrlFromTemplateUrl(
JNIEnv* env,
- jobject obj,
+ const base::android::JavaParamRef<jobject>& obj,
jint index);
static bool Register(JNIEnv* env);
diff --git a/chrome/browser/speech/tts_android.cc b/chrome/browser/speech/tts_android.cc
index e8ec307..3d22831 100644
--- a/chrome/browser/speech/tts_android.cc
+++ b/chrome/browser/speech/tts_android.cc
@@ -100,23 +100,27 @@ void TtsPlatformImplAndroid::GetVoices(
}
}
-void TtsPlatformImplAndroid::VoicesChanged(JNIEnv* env, jobject obj) {
+void TtsPlatformImplAndroid::VoicesChanged(JNIEnv* env,
+ const JavaParamRef<jobject>& obj) {
TtsController::GetInstance()->VoicesChanged();
}
-void TtsPlatformImplAndroid::OnEndEvent(
- JNIEnv* env, jobject obj, jint utterance_id) {
+void TtsPlatformImplAndroid::OnEndEvent(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint utterance_id) {
SendFinalTtsEvent(utterance_id, TTS_EVENT_END,
static_cast<int>(utterance_.size()));
}
-void TtsPlatformImplAndroid::OnErrorEvent(
- JNIEnv* env, jobject obj, jint utterance_id) {
+void TtsPlatformImplAndroid::OnErrorEvent(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint utterance_id) {
SendFinalTtsEvent(utterance_id, TTS_EVENT_ERROR, 0);
}
-void TtsPlatformImplAndroid::OnStartEvent(
- JNIEnv* env, jobject obj, jint utterance_id) {
+void TtsPlatformImplAndroid::OnStartEvent(JNIEnv* env,
+ const JavaParamRef<jobject>& obj,
+ jint utterance_id) {
if (utterance_id != utterance_id_)
return;
diff --git a/chrome/browser/speech/tts_android.h b/chrome/browser/speech/tts_android.h
index f38d674..19ef66d 100644
--- a/chrome/browser/speech/tts_android.h
+++ b/chrome/browser/speech/tts_android.h
@@ -26,10 +26,17 @@ class TtsPlatformImplAndroid : public TtsPlatformImpl {
void GetVoices(std::vector<VoiceData>* out_voices) override;
// Methods called from Java via JNI.
- void VoicesChanged(JNIEnv* env, jobject obj);
- void OnEndEvent(JNIEnv* env, jobject obj, jint utterance_id);
- void OnErrorEvent(JNIEnv* env, jobject obj, jint utterance_id);
- void OnStartEvent(JNIEnv* env, jobject obj, jint utterance_id);
+ void VoicesChanged(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+ void OnEndEvent(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint utterance_id);
+ void OnErrorEvent(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint utterance_id);
+ void OnStartEvent(JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj,
+ jint utterance_id);
// Static functions.
static TtsPlatformImplAndroid* GetInstance();
diff --git a/chrome/browser/spellchecker/spellchecker_session_bridge_android.cc b/chrome/browser/spellchecker/spellchecker_session_bridge_android.cc
index cf02f8c..c10fedf 100644
--- a/chrome/browser/spellchecker/spellchecker_session_bridge_android.cc
+++ b/chrome/browser/spellchecker/spellchecker_session_bridge_android.cc
@@ -62,9 +62,9 @@ void SpellCheckerSessionBridge::RequestTextCheck(int route_id,
void SpellCheckerSessionBridge::ProcessSpellCheckResults(
JNIEnv* env,
- jobject jobj,
- jintArray offset_array,
- jintArray length_array) {
+ const JavaParamRef<jobject>& jobj,
+ const JavaParamRef<jintArray>& offset_array,
+ const JavaParamRef<jintArray>& length_array) {
std::vector<int> offsets;
std::vector<int> lengths;
diff --git a/chrome/browser/spellchecker/spellchecker_session_bridge_android.h b/chrome/browser/spellchecker/spellchecker_session_bridge_android.h
index 23353bb..6c56fae 100644
--- a/chrome/browser/spellchecker/spellchecker_session_bridge_android.h
+++ b/chrome/browser/spellchecker/spellchecker_session_bridge_android.h
@@ -29,10 +29,11 @@ class SpellCheckerSessionBridge {
// Receives information from Java side about the typos in a given string
// of text, processes these and sends them to the renderer.
- void ProcessSpellCheckResults(JNIEnv* env,
- jobject jobj,
- jintArray offset_array,
- jintArray length_array);
+ void ProcessSpellCheckResults(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& jobj,
+ const base::android::JavaParamRef<jintArray>& offset_array,
+ const base::android::JavaParamRef<jintArray>& length_array);
// Sets the handle to the Java SpellCheckerSessionBridge object to null,
// marking the Java object for garbage collection.