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

Side by Side Diff: chrome/browser/android/logo_bridge.cc

Issue 2237943002: Remove now-unnecessary .obj() in Java method calls. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@switch-context
Patch Set: Rebase *again* :( Created 4 years, 4 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "chrome/browser/android/logo_bridge.h" 5 #include "chrome/browser/android/logo_bridge.h"
6 6
7 #include <jni.h> 7 #include <jni.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/android/jni_android.h" 10 #include "base/android/jni_android.h"
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 j_on_click_url = ConvertUTF8ToJavaString(env, logo->metadata.on_click_url); 45 j_on_click_url = ConvertUTF8ToJavaString(env, logo->metadata.on_click_url);
46 46
47 ScopedJavaLocalRef<jstring> j_alt_text; 47 ScopedJavaLocalRef<jstring> j_alt_text;
48 if (!logo->metadata.alt_text.empty()) 48 if (!logo->metadata.alt_text.empty())
49 j_alt_text = ConvertUTF8ToJavaString(env, logo->metadata.alt_text); 49 j_alt_text = ConvertUTF8ToJavaString(env, logo->metadata.alt_text);
50 50
51 ScopedJavaLocalRef<jstring> j_animated_url; 51 ScopedJavaLocalRef<jstring> j_animated_url;
52 if (!logo->metadata.animated_url.empty()) 52 if (!logo->metadata.animated_url.empty())
53 j_animated_url = ConvertUTF8ToJavaString(env, logo->metadata.animated_url); 53 j_animated_url = ConvertUTF8ToJavaString(env, logo->metadata.animated_url);
54 54
55 return Java_LogoBridge_createLogo(env, j_bitmap.obj(), j_on_click_url.obj(), 55 return Java_LogoBridge_createLogo(env, j_bitmap, j_on_click_url, j_alt_text,
56 j_alt_text.obj(), j_animated_url.obj()); 56 j_animated_url);
57 } 57 }
58 58
59 class LogoObserverAndroid : public search_provider_logos::LogoObserver { 59 class LogoObserverAndroid : public search_provider_logos::LogoObserver {
60 public: 60 public:
61 LogoObserverAndroid(base::WeakPtr<LogoBridge> logo_bridge, 61 LogoObserverAndroid(base::WeakPtr<LogoBridge> logo_bridge,
62 JNIEnv* env, 62 JNIEnv* env,
63 jobject j_logo_observer) 63 jobject j_logo_observer)
64 : logo_bridge_(logo_bridge) { 64 : logo_bridge_(logo_bridge) {
65 j_logo_observer_.Reset(env, j_logo_observer); 65 j_logo_observer_.Reset(env, j_logo_observer);
66 } 66 }
67 67
68 ~LogoObserverAndroid() override {} 68 ~LogoObserverAndroid() override {}
69 69
70 // seach_provider_logos::LogoObserver: 70 // seach_provider_logos::LogoObserver:
71 void OnLogoAvailable(const search_provider_logos::Logo* logo, 71 void OnLogoAvailable(const search_provider_logos::Logo* logo,
72 bool from_cache) override { 72 bool from_cache) override {
73 if (!logo_bridge_) 73 if (!logo_bridge_)
74 return; 74 return;
75 75
76 JNIEnv* env = base::android::AttachCurrentThread(); 76 JNIEnv* env = base::android::AttachCurrentThread();
77 ScopedJavaLocalRef<jobject> j_logo = ConvertLogoToJavaObject(env, logo); 77 ScopedJavaLocalRef<jobject> j_logo = ConvertLogoToJavaObject(env, logo);
78 Java_LogoObserver_onLogoAvailable( 78 Java_LogoObserver_onLogoAvailable(env, j_logo_observer_, j_logo,
79 env, j_logo_observer_.obj(), j_logo.obj(), from_cache); 79 from_cache);
80 } 80 }
81 81
82 void OnObserverRemoved() override { delete this; } 82 void OnObserverRemoved() override { delete this; }
83 83
84 private: 84 private:
85 // The associated LogoBridge. We won't call back to Java if the LogoBridge has 85 // The associated LogoBridge. We won't call back to Java if the LogoBridge has
86 // been destroyed. 86 // been destroyed.
87 base::WeakPtr<LogoBridge> logo_bridge_; 87 base::WeakPtr<LogoBridge> logo_bridge_;
88 88
89 base::android::ScopedJavaGlobalRef<jobject> j_logo_observer_; 89 base::android::ScopedJavaGlobalRef<jobject> j_logo_observer_;
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 base::TimeTicks::Now() - animated_logo_download_start_time_); 157 base::TimeTicks::Now() - animated_logo_download_start_time_);
158 158
159 std::string response; 159 std::string response;
160 source->GetResponseAsString(&response); 160 source->GetResponseAsString(&response);
161 JNIEnv* env = base::android::AttachCurrentThread(); 161 JNIEnv* env = base::android::AttachCurrentThread();
162 162
163 ScopedJavaLocalRef<jbyteArray> j_bytes = 163 ScopedJavaLocalRef<jbyteArray> j_bytes =
164 ToJavaByteArray(env, reinterpret_cast<const uint8_t*>(response.data()), 164 ToJavaByteArray(env, reinterpret_cast<const uint8_t*>(response.data()),
165 response.length()); 165 response.length());
166 ScopedJavaLocalRef<jobject> j_gif_image = 166 ScopedJavaLocalRef<jobject> j_gif_image =
167 Java_LogoBridge_createGifImage(env, j_bytes.obj()); 167 Java_LogoBridge_createGifImage(env, j_bytes);
168 Java_AnimatedLogoCallback_onAnimatedLogoAvailable(env, j_callback_.obj(), 168 Java_AnimatedLogoCallback_onAnimatedLogoAvailable(env, j_callback_,
169 j_gif_image.obj()); 169 j_gif_image);
170 ClearFetcher(); 170 ClearFetcher();
171 } 171 }
172 172
173 void LogoBridge::ClearFetcher() { 173 void LogoBridge::ClearFetcher() {
174 fetcher_.reset(); 174 fetcher_.reset();
175 j_callback_.Reset(); 175 j_callback_.Reset();
176 } 176 }
177 177
178 // static 178 // static
179 bool RegisterLogoBridge(JNIEnv* env) { 179 bool RegisterLogoBridge(JNIEnv* env) {
180 return RegisterNativesImpl(env); 180 return RegisterNativesImpl(env);
181 } 181 }
OLDNEW
« no previous file with comments | « chrome/browser/android/location_settings_impl.cc ('k') | chrome/browser/android/mojo/chrome_interface_registrar_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698