| Index: chrome/browser/android/webapk/webapk_installer.cc
|
| diff --git a/chrome/browser/android/webapk/webapk_installer.cc b/chrome/browser/android/webapk/webapk_installer.cc
|
| index 07c07cc1b186e29f27837258dd0063eba285c9b4..233e66d43a7534453545a9324f62cf43890c04a9 100644
|
| --- a/chrome/browser/android/webapk/webapk_installer.cc
|
| +++ b/chrome/browser/android/webapk/webapk_installer.cc
|
| @@ -147,17 +147,22 @@ WebApkInstaller::WebApkInstaller(const ShortcutInfo& shortcut_info,
|
|
|
| WebApkInstaller::~WebApkInstaller() {}
|
|
|
| -void WebApkInstaller::InstallAsync(content::BrowserContext* browser_context,
|
| - const FinishCallback& finish_callback) {
|
| +void WebApkInstaller::InstallAsync(
|
| + content::BrowserContext* browser_context,
|
| + const ShortcutHelper::WebApkPackageNameAvailableCallback& callback,
|
| + const FinishCallback& finish_callback) {
|
| InstallAsyncWithURLRequestContextGetter(
|
| Profile::FromBrowserContext(browser_context)->GetRequestContext(),
|
| + callback,
|
| finish_callback);
|
| }
|
|
|
| void WebApkInstaller::InstallAsyncWithURLRequestContextGetter(
|
| net::URLRequestContextGetter* request_context_getter,
|
| + const ShortcutHelper::WebApkPackageNameAvailableCallback& callback,
|
| const FinishCallback& finish_callback) {
|
| request_context_getter_ = request_context_getter;
|
| + package_available_callback_ = callback;
|
| finish_callback_ = finish_callback;
|
| task_type_ = INSTALL;
|
|
|
| @@ -250,6 +255,7 @@ void WebApkInstaller::OnURLFetchComplete(const net::URLFetcher* source) {
|
| OnFailure();
|
| return;
|
| }
|
| +
|
| OnGotWebApkDownloadUrl(signed_download_url, response->package_name());
|
| }
|
|
|
| @@ -375,6 +381,9 @@ void WebApkInstaller::OnWebApkMadeWorldReadable(
|
| return;
|
| }
|
|
|
| + if (package_available_callback_)
|
| + package_available_callback_.Run(package_name);
|
| +
|
| JNIEnv* env = base::android::AttachCurrentThread();
|
| base::android::ScopedJavaLocalRef<jstring> java_file_path =
|
| base::android::ConvertUTF8ToJavaString(env, file_path.value());
|
| @@ -405,7 +414,10 @@ void WebApkInstaller::OnSuccess() {
|
| }
|
|
|
| void WebApkInstaller::OnFailure() {
|
| - FinishCallback callback = finish_callback_;
|
| + ShortcutHelper::WebApkPackageNameAvailableCallback callback =
|
| + package_available_callback_;
|
| + FinishCallback finish_callback = finish_callback_;
|
| delete this;
|
| - callback.Run(false);
|
| + callback.Run("");
|
| + finish_callback.Run(false);
|
| }
|
|
|