Commit b76fd0e4 authored by ckitagawa's avatar ckitagawa Committed by Commit Bot

[Paint Preview] Modularize Java

This CL modularizes PaintPreview to be a separate java target.

See bug for design doc.

Bug: 1097799
Change-Id: Ie7045db6bd913bb65c6d94862fef56fcd660a60b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2257560Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Reviewed-by: default avatarDavid Trainor <dtrainor@chromium.org>
Reviewed-by: default avatarMehran Mahmoudi <mahmoudi@chromium.org>
Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org>
Cr-Commit-Position: refs/heads/master@{#783072}
parent 758d0394
......@@ -328,6 +328,7 @@ android_library("chrome_java") {
"//chrome/browser/notifications/chime/android:java",
"//chrome/browser/offline_pages/android:java",
"//chrome/browser/optimization_guide/android:java",
"//chrome/browser/paint_preview/android:java",
"//chrome/browser/performance_hints/android:java",
"//chrome/browser/preferences:java",
"//chrome/browser/profiles/android:java",
......@@ -951,6 +952,7 @@ android_library("chrome_test_java") {
"//chrome/browser/flags:java",
"//chrome/browser/fullscreen/android:java",
"//chrome/browser/offline_pages/android:java",
"//chrome/browser/paint_preview/android:java",
"//chrome/browser/password_manager/android_test_helpers:test_support_java",
"//chrome/browser/performance_hints/android:java",
"//chrome/browser/preferences:java",
......@@ -3074,10 +3076,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/omnibox/OmniboxViewUtil.java",
"java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java",
"java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteController.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoServiceFactory.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabServiceFactory.java",
"java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksReader.java",
"java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java",
"java/src/org/chromium/chrome/browser/password_manager/AccountChooserDialog.java",
......
......@@ -1184,15 +1184,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/page_info/ChromePageInfoControllerDelegate.java",
"java/src/org/chromium/chrome/browser/page_info/ChromePermissionParamsListBuilderDelegate.java",
"java/src/org/chromium/chrome/browser/page_info/SiteSettingsHelper.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewDemoManager.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewExperiments.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewHelper.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewTabHelper.java",
"java/src/org/chromium/chrome/browser/paint_preview/TabbedPaintPreviewPlayer.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoServiceFactory.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabServiceFactory.java",
"java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmark.java",
"java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksFaviconThrottle.java",
"java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java",
......
......@@ -1024,14 +1024,6 @@ static_library("browser") {
"page_load_metrics/observers/ukm_page_load_metrics_observer.h",
"page_load_metrics/page_load_metrics_initialize.cc",
"page_load_metrics/page_load_metrics_initialize.h",
"paint_preview/services/paint_preview_demo_service.cc",
"paint_preview/services/paint_preview_demo_service.h",
"paint_preview/services/paint_preview_demo_service_factory.cc",
"paint_preview/services/paint_preview_demo_service_factory.h",
"paint_preview/services/paint_preview_tab_service.cc",
"paint_preview/services/paint_preview_tab_service.h",
"paint_preview/services/paint_preview_tab_service_factory.cc",
"paint_preview/services/paint_preview_tab_service_factory.h",
"password_manager/account_storage/account_password_store_factory.cc",
"password_manager/account_storage/account_password_store_factory.h",
"password_manager/bulk_leak_check_service_factory.cc",
......@@ -2924,8 +2916,6 @@ static_library("browser") {
"//components/omnibox/browser",
"//components/page_info/android",
"//components/page_load_metrics/browser",
"//components/paint_preview/browser/android",
"//components/paint_preview/player/android",
"//components/password_manager/content/browser",
"//components/payments/content/android",
"//components/permissions/android:native",
......@@ -4791,9 +4781,17 @@ static_library("browser") {
if (enable_paint_preview) {
deps += [
"paint_preview:services",
"//components/paint_preview/browser",
"//components/paint_preview/common",
]
if (is_android) {
deps += [
"//components/paint_preview/browser/android",
"//components/paint_preview/player/android",
]
}
}
if (enable_captive_portal_detection) {
......
# Copyright 2020 The Chromium Authors.All rights reserved.
# Use of this source code is governed by a BSD - style license that can be
# found in the LICENSE file.
source_set("services") {
sources = [
"services/paint_preview_demo_service.cc",
"services/paint_preview_demo_service.h",
"services/paint_preview_demo_service_factory.cc",
"services/paint_preview_demo_service_factory.h",
"services/paint_preview_tab_service.cc",
"services/paint_preview_tab_service.h",
"services/paint_preview_tab_service_factory.cc",
"services/paint_preview_tab_service_factory.h",
]
deps = [
"//components/keyed_service/core",
"//components/paint_preview/browser",
"//components/paint_preview/common",
"//content/public/browser",
]
if (is_android) {
deps += [ "//chrome/browser/paint_preview/android:jni_headers" ]
}
}
include_rules = [
"+components/browser_ui/styles/android/java/src/org/chromium/components/browser_ui/styles/ChromeColors.java",
"+components/paint_preview/browser",
"+components/paint_preview/common",
"+components/paint_preview/player",
"+components/paint_preview/public",
"+components/services/paint_preview_compositor/public/mojom",
"+content/public/android/java/src/org/chromium/content_public/browser",
]
# Copyright 2020 The Chromium Authors.All rights reserved.
# Use of this source code is governed by a BSD - style license that can be
# found in the LICENSE file.
import("//build/config/android/rules.gni")
generate_jni("jni_headers") {
sources = [
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoServiceFactory.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabServiceFactory.java",
]
}
android_library("java") {
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
sources = [
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewDemoManager.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewExperiments.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewTabHelper.java",
"java/src/org/chromium/chrome/browser/paint_preview/TabbedPaintPreviewPlayer.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewDemoServiceFactory.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabService.java",
"java/src/org/chromium/chrome/browser/paint_preview/services/PaintPreviewTabServiceFactory.java",
]
deps = [
":java_resources",
"//base:base_java",
"//base:jni_java",
"//chrome/browser/flags:java",
"//chrome/browser/tab:java",
"//chrome/browser/tabmodel:java",
"//components/browser_ui/styles/android:java",
"//components/paint_preview/browser/android:java",
"//components/paint_preview/player/android:java",
"//content/public/android:content_java",
"//ui/android:ui_java",
"//url:gurl_java",
]
}
android_resources("java_resources") {
deps = [ "//chrome/browser/ui/android/strings:ui_strings_grd" ]
custom_package = "org.chromium.chrome.browser.paint_preview"
}
......@@ -7,12 +7,11 @@ package org.chromium.chrome.browser.paint_preview;
import android.view.View;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.paint_preview.services.PaintPreviewDemoService;
import org.chromium.chrome.browser.paint_preview.services.PaintPreviewDemoServiceFactory;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabThemeColorHelper;
import org.chromium.chrome.browser.tab.TabViewProvider;
import org.chromium.components.browser_ui.styles.ChromeColors;
import org.chromium.components.paintpreview.player.PlayerManager;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.content_public.browser.UiThreadTaskTraits;
......@@ -55,7 +54,7 @@ public class PaintPreviewDemoManager implements TabViewProvider {
PaintPreviewDemoManager.this::onLinkClicked,
PaintPreviewDemoManager.this::removePaintPreviewDemo,
PaintPreviewDemoManager.this::addPlayerView,
TabThemeColorHelper.getBackgroundColor(mTab),
ChromeColors.getPrimaryBackgroundColor(mTab.getContext().getResources(), false),
() -> {
Toast.makeText(mTab.getContext(),
R.string.paint_preview_demo_playback_failure,
......
......@@ -12,8 +12,8 @@ import org.chromium.base.UserData;
import org.chromium.chrome.browser.paint_preview.services.PaintPreviewTabService;
import org.chromium.chrome.browser.paint_preview.services.PaintPreviewTabServiceFactory;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabThemeColorHelper;
import org.chromium.chrome.browser.tab.TabViewProvider;
import org.chromium.components.browser_ui.styles.ChromeColors;
import org.chromium.components.paintpreview.player.PlayerManager;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.url.GURL;
......@@ -65,8 +65,8 @@ public class TabbedPaintPreviewPlayer implements TabViewProvider, UserData {
this::removePaintPreview, () -> {
mInitializing = false;
onShown.run();
}, TabThemeColorHelper.getBackgroundColor(mTab), this::removePaintPreview,
/*ignoreInitialScrollOffset=*/false);
}, ChromeColors.getPrimaryBackgroundColor(mTab.getContext().getResources(), false),
this::removePaintPreview, /*ignoreInitialScrollOffset=*/false);
mOnDismissed = onDismissed;
mTab.getTabViewManager().addTabViewProvider(this);
return true;
......
......@@ -19,7 +19,7 @@
#if defined(OS_ANDROID)
#include "base/android/callback_android.h"
#include "base/android/jni_string.h"
#include "chrome/android/chrome_jni_headers/PaintPreviewDemoService_jni.h"
#include "chrome/browser/paint_preview/android/jni_headers/PaintPreviewDemoService_jni.h"
using base::android::JavaParamRef;
using base::android::ScopedJavaGlobalRef;
......
......@@ -17,7 +17,7 @@
#if defined(OS_ANDROID)
#include "base/android/jni_android.h"
#include "base/android/scoped_java_ref.h"
#include "chrome/android/chrome_jni_headers/PaintPreviewDemoServiceFactory_jni.h"
#include "chrome/browser/paint_preview/android/jni_headers/PaintPreviewDemoServiceFactory_jni.h"
#include "chrome/browser/profiles/profile_key.h"
#include "chrome/browser/profiles/profile_manager.h"
#endif // defined(OS_ANDROID)
......
......@@ -21,7 +21,7 @@
#include "base/android/jni_array.h"
#include "base/android/jni_string.h"
#include "base/logging.h"
#include "chrome/android/chrome_jni_headers/PaintPreviewTabService_jni.h"
#include "chrome/browser/paint_preview/android/jni_headers/PaintPreviewTabService_jni.h"
#endif // defined(OS_ANDROID)
namespace paint_preview {
......
......@@ -12,7 +12,7 @@
#if defined(OS_ANDROID)
#include "base/android/jni_android.h"
#include "base/android/scoped_java_ref.h"
#include "chrome/android/chrome_jni_headers/PaintPreviewTabServiceFactory_jni.h"
#include "chrome/browser/paint_preview/android/jni_headers/PaintPreviewTabServiceFactory_jni.h"
#include "chrome/browser/profiles/profile_key.h"
#include "chrome/browser/profiles/profile_manager.h"
#endif // defined(OS_ANDROID)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment