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

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

Issue 2714633003: Adds more metadata to the about:webapks page (Closed)
Patch Set: Created 3 years, 10 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 #include "chrome/browser/android/shortcut_helper.h" 5 #include "chrome/browser/android/shortcut_helper.h"
6 6
7 #include <jni.h> 7 #include <jni.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/android/jni_android.h" 10 #include "base/android/jni_android.h"
(...skipping 302 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 DCHECK(jsplash_image_callback); 313 DCHECK(jsplash_image_callback);
314 base::Closure* splash_image_callback = 314 base::Closure* splash_image_callback =
315 reinterpret_cast<base::Closure*>(jsplash_image_callback); 315 reinterpret_cast<base::Closure*>(jsplash_image_callback);
316 splash_image_callback->Run(); 316 splash_image_callback->Run();
317 delete splash_image_callback; 317 delete splash_image_callback;
318 } 318 }
319 319
320 void OnWebApksRetrieved(JNIEnv* env, 320 void OnWebApksRetrieved(JNIEnv* env,
321 const JavaParamRef<jclass>& clazz, 321 const JavaParamRef<jclass>& clazz,
322 const jlong jcallback_pointer, 322 const jlong jcallback_pointer,
323 const JavaParamRef<jobjectArray>& jnames,
323 const JavaParamRef<jobjectArray>& jshort_names, 324 const JavaParamRef<jobjectArray>& jshort_names,
324 const JavaParamRef<jobjectArray>& jpackage_names, 325 const JavaParamRef<jobjectArray>& jpackage_names,
325 const JavaParamRef<jintArray>& jshell_apk_versions, 326 const JavaParamRef<jintArray>& jshell_apk_versions,
326 const JavaParamRef<jintArray>& jversion_codes) { 327 const JavaParamRef<jintArray>& jversion_codes,
328 const JavaParamRef<jobjectArray>& juris,
329 const JavaParamRef<jobjectArray>& jscopes,
330 const JavaParamRef<jobjectArray>& jmanifest_urls,
331 const JavaParamRef<jobjectArray>& jmanifest_start_urls,
332 const JavaParamRef<jintArray>& jdisplay_modes,
333 const JavaParamRef<jintArray>& jorientations,
334 const JavaParamRef<jlongArray>& jtheme_colors,
335 const JavaParamRef<jlongArray>& jbackground_colors) {
327 DCHECK(jcallback_pointer); 336 DCHECK(jcallback_pointer);
337 std::vector<std::string> names;
338 base::android::AppendJavaStringArrayToStringVector(env, jnames, &names);
328 std::vector<std::string> short_names; 339 std::vector<std::string> short_names;
329 base::android::AppendJavaStringArrayToStringVector(env, jshort_names, 340 base::android::AppendJavaStringArrayToStringVector(env, jshort_names,
330 &short_names); 341 &short_names);
331 std::vector<std::string> package_names; 342 std::vector<std::string> package_names;
332 base::android::AppendJavaStringArrayToStringVector(env, jpackage_names, 343 base::android::AppendJavaStringArrayToStringVector(env, jpackage_names,
333 &package_names); 344 &package_names);
334 std::vector<int> shell_apk_versions; 345 std::vector<int> shell_apk_versions;
335 base::android::JavaIntArrayToIntVector(env, jshell_apk_versions, 346 base::android::JavaIntArrayToIntVector(env, jshell_apk_versions,
336 &shell_apk_versions); 347 &shell_apk_versions);
337 std::vector<int> version_codes; 348 std::vector<int> version_codes;
338 base::android::JavaIntArrayToIntVector(env, jversion_codes, &version_codes); 349 base::android::JavaIntArrayToIntVector(env, jversion_codes, &version_codes);
350 std::vector<std::string> uris;
351 base::android::AppendJavaStringArrayToStringVector(env, juris, &uris);
352 std::vector<std::string> scopes;
353 base::android::AppendJavaStringArrayToStringVector(env, jscopes, &scopes);
354 std::vector<std::string> manifest_urls;
355 base::android::AppendJavaStringArrayToStringVector(env, jmanifest_urls,
356 &manifest_urls);
357 std::vector<std::string> manifest_start_urls;
358 base::android::AppendJavaStringArrayToStringVector(env, jmanifest_start_urls,
359 &manifest_start_urls);
360 std::vector<int> display_modes;
361 base::android::JavaIntArrayToIntVector(env, jdisplay_modes, &display_modes);
362 std::vector<int> orientations;
363 base::android::JavaIntArrayToIntVector(env, jorientations, &orientations);
364 std::vector<int64_t> theme_colors;
365 base::android::JavaLongArrayToInt64Vector(env, jtheme_colors, &theme_colors);
366 std::vector<int64_t> background_colors;
367 base::android::JavaLongArrayToInt64Vector(env, jbackground_colors,
368 &background_colors);
339 369
370 DCHECK(short_names.size() == names.size());
340 DCHECK(short_names.size() == package_names.size()); 371 DCHECK(short_names.size() == package_names.size());
341 DCHECK(short_names.size() == shell_apk_versions.size()); 372 DCHECK(short_names.size() == shell_apk_versions.size());
342 DCHECK(short_names.size() == version_codes.size()); 373 DCHECK(short_names.size() == version_codes.size());
374 DCHECK(short_names.size() == uris.size());
375 DCHECK(short_names.size() == scopes.size());
376 DCHECK(short_names.size() == manifest_urls.size());
377 DCHECK(short_names.size() == manifest_start_urls.size());
378 DCHECK(short_names.size() == display_modes.size());
379 DCHECK(short_names.size() == orientations.size());
380 DCHECK(short_names.size() == theme_colors.size());
381 DCHECK(short_names.size() == background_colors.size());
pkotwicz 2017/02/27 20:50:58 I don't think that the DCHECKs are useful. If the
343 382
344 std::vector<WebApkInfo> webapk_list; 383 std::vector<WebApkInfo> webapk_list;
345 webapk_list.reserve(short_names.size()); 384 webapk_list.reserve(short_names.size());
346 for (size_t i = 0; i < short_names.size(); ++i) { 385 for (size_t i = 0; i < short_names.size(); ++i) {
347 webapk_list.push_back(WebApkInfo(std::move(short_names[i]), 386 webapk_list.push_back(WebApkInfo(
348 std::move(package_names[i]), 387 std::move(names[i]), std::move(short_names[i]),
349 shell_apk_versions[i], version_codes[i])); 388 std::move(package_names[i]), shell_apk_versions[i], version_codes[i],
389 std::move(uris[i]), std::move(scopes[i]), std::move(manifest_urls[i]),
390 std::move(manifest_start_urls[i]),
391 static_cast<blink::WebDisplayMode>(std::move(display_modes[i])),
392 static_cast<blink::WebScreenOrientationLockType>(
393 std::move(orientations[i])),
394 std::move(theme_colors[i]), std::move(background_colors[i])));
350 } 395 }
351 396
352 ShortcutHelper::WebApkInfoCallback* webapk_list_callback = 397 ShortcutHelper::WebApkInfoCallback* webapk_list_callback =
353 reinterpret_cast<ShortcutHelper::WebApkInfoCallback*>(jcallback_pointer); 398 reinterpret_cast<ShortcutHelper::WebApkInfoCallback*>(jcallback_pointer);
354 webapk_list_callback->Run(webapk_list); 399 webapk_list_callback->Run(webapk_list);
355 delete webapk_list_callback; 400 delete webapk_list_callback;
356 } 401 }
357 402
358 bool ShortcutHelper::RegisterShortcutHelper(JNIEnv* env) { 403 bool ShortcutHelper::RegisterShortcutHelper(JNIEnv* env) {
359 return RegisterNativesImpl(env); 404 return RegisterNativesImpl(env);
360 } 405 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698