Skip to content

Commit

Permalink
Move classes into browser services intents module.
Browse files Browse the repository at this point in the history
Bug: 1178911

Change-Id: Ib1c862354b4fc88bc097164449e41d2ebfb00178
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2718166
Reviewed-by: Michael van Ouwerkerk <mvanouwerkerk@chromium.org>
Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
Reviewed-by: Filip Gorski <fgorski@chromium.org>
Reviewed-by: Peter Conn <peconn@chromium.org>
Auto-Submit: Michael van Ouwerkerk <mvanouwerkerk@chromium.org>
Commit-Queue: Michael van Ouwerkerk <mvanouwerkerk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#858348}
  • Loading branch information
mvano authored and Chromium LUCI CQ committed Feb 27, 2021
1 parent ba4d74e commit c63f020
Show file tree
Hide file tree
Showing 122 changed files with 377 additions and 195 deletions.
4 changes: 3 additions & 1 deletion chrome/android/BUILD.gn
Expand Up @@ -298,6 +298,7 @@ android_library("chrome_java") {
"//chrome/android/webapk/libs/common:common_java",
"//chrome/android/webapk/libs/common:splash_java",
"//chrome/android/webapk/libs/runtime_library:webapk_service_aidl_java",
"//chrome/browser/android/browserservices/intents:java",
"//chrome/browser/android/browserservices/verification:java",
"//chrome/browser/android/crypto:java",
"//chrome/browser/android/lifecycle:java",
Expand Down Expand Up @@ -727,7 +728,6 @@ java_cpp_enum("chrome_android_java_enums_srcjar") {
"//chrome/browser/android/tab_android.h",
"//chrome/browser/android/webapk/webapk_install_service.h",
"//chrome/browser/android/webapk/webapk_installer.h",
"//chrome/browser/android/webapk/webapk_types.h",
"//chrome/browser/download/android/download_open_source.h",
"//chrome/browser/installable/installed_webapp_geolocation_bridge.cc",
"//chrome/browser/installable/quality_enforcer.cc",
Expand Down Expand Up @@ -817,6 +817,7 @@ junit_binary("chrome_junit_tests") {
"//chrome/android/webapk/libs/common:common_java",
"//chrome/android/webapk/libs/common:splash_java",
"//chrome/android/webapk/test:junit_test_support",
"//chrome/browser/android/browserservices/intents:java",
"//chrome/browser/android/browserservices/verification:java",
"//chrome/browser/android/lifecycle:java",
"//chrome/browser/banners/android:java",
Expand Down Expand Up @@ -1073,6 +1074,7 @@ android_library("chrome_test_java") {
"//chrome/android/features/tab_ui:java_resources",
"//chrome/android/webapk/libs/client:client_java",
"//chrome/android/webapk/libs/common:common_java",
"//chrome/browser/android/browserservices/intents:java",
"//chrome/browser/android/browserservices/verification:java",
"//chrome/browser/android/browserservices/verification:javatests",
"//chrome/browser/android/crypto:java",
Expand Down
8 changes: 1 addition & 7 deletions chrome/android/chrome_java_sources.gni
Expand Up @@ -175,7 +175,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/bookmarkswidget/BookmarkWidgetProvider.java",
"java/src/org/chromium/chrome/browser/bookmarkswidget/BookmarkWidgetProxy.java",
"java/src/org/chromium/chrome/browser/bookmarkswidget/BookmarkWidgetServiceImpl.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesIntentDataProvider.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesMetrics.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesStore.java",
"java/src/org/chromium/chrome/browser/browserservices/ClearDataDialogActivity.java",
Expand Down Expand Up @@ -423,7 +422,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/customtabs/ClientManager.java",
"java/src/org/chromium/chrome/browser/customtabs/CloseButtonNavigator.java",
"java/src/org/chromium/chrome/browser/customtabs/CloseButtonVisibilityManager.java",
"java/src/org/chromium/chrome/browser/customtabs/CustomButtonParams.java",
"java/src/org/chromium/chrome/browser/customtabs/CustomButtonParamsImpl.java",
"java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java",
"java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java",
"java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java",
Expand Down Expand Up @@ -1422,23 +1421,20 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/webapps/SameTaskWebApkActivity.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkActivityCoordinator.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkActivityLifecycleUmaTracker.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkExtras.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkHandlerDelegate.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkInstallService.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkIntentDataProviderFactory.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkOfflineDialog.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkPostShareTargetNavigator.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkServiceClient.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkShareTarget.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkShareTargetUtil.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkSplashNetworkErrorObserver.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkUkmRecorder.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcher.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkUpdateManager.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkUpdateTask.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkVersionManager.java",
"java/src/org/chromium/chrome/browser/webapps/WebDisplayMode.java",
"java/src/org/chromium/chrome/browser/webapps/WebappActionsNotificationManager.java",
"java/src/org/chromium/chrome/browser/webapps/WebappActiveTabUmaTracker.java",
"java/src/org/chromium/chrome/browser/webapps/WebappActivity.java",
Expand All @@ -1448,8 +1444,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/webapps/WebappDataStorage.java",
"java/src/org/chromium/chrome/browser/webapps/WebappDeferredStartupWithStorageHandler.java",
"java/src/org/chromium/chrome/browser/webapps/WebappDirectoryManager.java",
"java/src/org/chromium/chrome/browser/webapps/WebappExtras.java",
"java/src/org/chromium/chrome/browser/webapps/WebappIcon.java",
"java/src/org/chromium/chrome/browser/webapps/WebappInfo.java",
"java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java",
"java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProviderFactory.java",
Expand Down
Expand Up @@ -7,9 +7,7 @@
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.text.TextUtils;
import android.util.Base64;

import androidx.annotation.VisibleForTesting;
Expand All @@ -18,8 +16,9 @@
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.task.AsyncTask;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.webapps.WebDisplayMode;
import org.chromium.chrome.browser.browserservices.intents.BitmapHelper;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebDisplayMode;
import org.chromium.chrome.browser.webapps.WebappActivity;
import org.chromium.chrome.browser.webapps.WebappAuthenticator;
import org.chromium.chrome.browser.webapps.WebappDataStorage;
Expand All @@ -29,7 +28,6 @@
import org.chromium.components.webapps.WebappsUtils;
import org.chromium.content_public.common.ScreenOrientationConstants;

import java.io.ByteArrayOutputStream;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
Expand Down Expand Up @@ -135,7 +133,7 @@ protected Intent doInBackground() {
// Encoding {@link icon} as a string and computing the mac are expensive.

// Encode the icon as a base64 string (Launcher drops Bitmaps in the Intent).
String encodedIcon = encodeBitmapAsString(icon);
String encodedIcon = BitmapHelper.encodeBitmapAsString(icon);

// TODO(http://crbug.com/1000046): Use action which does not require mac on O+
Intent shortcutIntent = createWebappShortcutIntent(id, url, scopeUrl, name,
Expand Down Expand Up @@ -210,7 +208,7 @@ private static void storeWebappSplashImage(final String id, final Bitmap splashI
new AsyncTask<String>() {
@Override
protected String doInBackground() {
return encodeBitmapAsString(splashImage);
return BitmapHelper.encodeBitmapAsString(splashImage);
}

@Override
Expand Down Expand Up @@ -318,31 +316,6 @@ static String[] getOriginsWithInstalledWebApksOrTwas() {
return originSet.toArray(output);
}

/**
* Compresses a bitmap into a PNG and converts into a Base64 encoded string.
* The encoded string can be decoded using {@link decodeBitmapFromString(String)}.
* @param bitmap The Bitmap to compress and encode.
* @return the String encoding the Bitmap.
*/
public static String encodeBitmapAsString(Bitmap bitmap) {
if (bitmap == null) return "";
ByteArrayOutputStream output = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, output);
return Base64.encodeToString(output.toByteArray(), Base64.DEFAULT);
}

/**
* Decodes a Base64 string into a Bitmap. Used to decode Bitmaps encoded by
* {@link encodeBitmapAsString(Bitmap)}.
* @param encodedString the Base64 String to decode.
* @return the Bitmap which was encoded by the String.
*/
public static Bitmap decodeBitmapFromString(String encodedString) {
if (TextUtils.isEmpty(encodedString)) return null;
byte[] decoded = Base64.decode(encodedString, Base64.DEFAULT);
return BitmapFactory.decodeByteArray(decoded, 0, decoded.length);
}

/**
* @return String that can be used to verify that a WebappActivity is being started by Chrome.
*/
Expand Down
Expand Up @@ -28,6 +28,7 @@
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.SwipeRefreshHandler;
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
import org.chromium.chrome.browser.browserservices.intents.WebDisplayMode;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.fullscreen.FullscreenManager;
import org.chromium.chrome.browser.fullscreen.FullscreenOptions;
Expand All @@ -45,7 +46,6 @@
import org.chromium.chrome.browser.tabmodel.TabModel;
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.tabmodel.TabModelUtils;
import org.chromium.chrome.browser.webapps.WebDisplayMode;
import org.chromium.content_public.browser.WebContents;
import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.modaldialog.DialogDismissalCause;
Expand Down
Expand Up @@ -32,7 +32,7 @@
import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge.BookmarkItem;
import org.chromium.chrome.browser.bookmarks.bottomsheet.BookmarkBottomSheetCoordinator;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider.CustomTabsUiType;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider.CustomTabsUiType;
import org.chromium.chrome.browser.customtabs.CustomTabIntentDataProvider;
import org.chromium.chrome.browser.document.ChromeLauncherActivity;
import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
Expand Down
Expand Up @@ -17,6 +17,7 @@
import org.chromium.base.Promise;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.ui.controller.Verifier;
import org.chromium.chrome.browser.browserservices.ui.controller.trustedwebactivity.ClientPackageNameProvider;
import org.chromium.chrome.browser.browserservices.verification.OriginVerifierStatics;
Expand Down
Expand Up @@ -8,10 +8,10 @@
import android.os.Build;
import android.os.Bundle;

import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebApkExtras;
import org.chromium.chrome.browser.customtabs.CustomTabsConnection;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.webapps.WebApkExtras;
import org.chromium.chrome.browser.webapps.WebApkServiceClient;

import javax.inject.Inject;
Expand Down
Expand Up @@ -4,7 +4,7 @@

package org.chromium.chrome.browser.browserservices.trustedwebactivityui;

import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.trustedwebactivityui.sharing.TwaSharingController;
import org.chromium.chrome.browser.customtabs.content.CustomTabIntentHandlingStrategy;
import org.chromium.chrome.browser.customtabs.content.DefaultCustomTabIntentHandlingStrategy;
Expand Down
Expand Up @@ -8,7 +8,9 @@
import androidx.annotation.VisibleForTesting;

import org.chromium.cc.input.BrowserControlsState;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebDisplayMode;
import org.chromium.chrome.browser.browserservices.intents.WebappExtras;
import org.chromium.chrome.browser.customtabs.CloseButtonVisibilityManager;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
import org.chromium.chrome.browser.customtabs.content.TabObserverRegistrar;
Expand All @@ -17,8 +19,6 @@
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.state.CriticalPersistedTabData;
import org.chromium.chrome.browser.webapps.WebDisplayMode;
import org.chromium.chrome.browser.webapps.WebappExtras;
import org.chromium.components.security_state.ConnectionSecurityLevel;
import org.chromium.components.security_state.SecurityStateModel;

Expand Down
Expand Up @@ -14,17 +14,17 @@

import org.chromium.base.Function;
import org.chromium.base.Promise;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.TrustedWebActivityUmaRecorder;
import org.chromium.chrome.browser.browserservices.TrustedWebActivityUmaRecorder.ShareRequestMethod;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebApkExtras;
import org.chromium.chrome.browser.browserservices.intents.WebApkShareTarget;
import org.chromium.chrome.browser.browserservices.ui.controller.Verifier;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityNavigationController;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.webapps.WebApkExtras;
import org.chromium.chrome.browser.webapps.WebApkPostShareTargetNavigator;
import org.chromium.chrome.browser.webapps.WebApkShareTarget;

import java.util.ArrayList;
import java.util.Locale;
Expand Down
Expand Up @@ -10,7 +10,9 @@
import androidx.browser.trusted.TrustedWebActivityDisplayMode;
import androidx.browser.trusted.TrustedWebActivityDisplayMode.ImmersiveMode;

import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebDisplayMode;
import org.chromium.chrome.browser.browserservices.intents.WebappExtras;
import org.chromium.chrome.browser.browserservices.trustedwebactivityui.controller.TrustedWebActivityBrowserControlsVisibilityManager;
import org.chromium.chrome.browser.browserservices.ui.controller.CurrentPageVerifier;
import org.chromium.chrome.browser.browserservices.ui.controller.CurrentPageVerifier.VerificationStatus;
Expand All @@ -23,8 +25,6 @@
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
import org.chromium.chrome.browser.lifecycle.InflationObserver;
import org.chromium.chrome.browser.webapps.WebDisplayMode;
import org.chromium.chrome.browser.webapps.WebappExtras;

import javax.inject.Inject;

Expand Down
Expand Up @@ -10,7 +10,7 @@

import org.chromium.base.ObserverList;
import org.chromium.base.Promise;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
import org.chromium.chrome.browser.customtabs.content.TabObserverRegistrar;
import org.chromium.chrome.browser.customtabs.content.TabObserverRegistrar.CustomTabTabObserver;
Expand Down
Expand Up @@ -7,7 +7,7 @@
import android.os.Bundle;

import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.customtabs.CustomTabsConnection;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
Expand Down
Expand Up @@ -8,8 +8,8 @@
import androidx.browser.customtabs.CustomTabsService;

import org.chromium.base.Promise;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.BrowserServicesMetrics;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.ui.controller.Verifier;
import org.chromium.chrome.browser.browserservices.verification.OriginVerifier;
import org.chromium.chrome.browser.browserservices.verification.OriginVerifierFactory;
Expand Down
Expand Up @@ -4,9 +4,9 @@

package org.chromium.chrome.browser.browserservices.ui.controller.webapps;

import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebappExtras;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.webapps.WebappExtras;
import org.chromium.components.embedder_support.util.Origin;
import org.chromium.components.embedder_support.util.UrlUtilities;

Expand Down
Expand Up @@ -4,9 +4,9 @@

package org.chromium.chrome.browser.browserservices.ui.controller.webapps;

import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.WebappExtras;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.webapps.WebappExtras;
import org.chromium.components.embedder_support.util.UrlUtilities;

import javax.inject.Inject;
Expand Down
Expand Up @@ -6,7 +6,7 @@

import androidx.annotation.Nullable;

import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.ui.TrustedWebActivityModel;
import org.chromium.chrome.browser.browserservices.ui.controller.CurrentPageVerifier;
import org.chromium.chrome.browser.browserservices.ui.controller.DisclosureController;
Expand Down
Expand Up @@ -23,7 +23,7 @@
import androidx.browser.trusted.splashscreens.SplashScreenParamKey;

import org.chromium.base.IntentUtils;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.ui.splashscreen.SplashController;
import org.chromium.chrome.browser.browserservices.ui.splashscreen.SplashDelegate;
import org.chromium.chrome.browser.customtabs.TranslucentCustomTabActivity;
Expand Down

0 comments on commit c63f020

Please sign in to comment.