Commit 185367e7 authored by rbpotter's avatar rbpotter Committed by Commit Bot

Settings: Migrate basic_page/* to Polymer 3

Bug: 1026426
Change-Id: I0e085305564aaa6f1359ac11818de748b796d1d7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2088182Reviewed-by: default avatardpapad <dpapad@chromium.org>
Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#747805}
parent 7a13e264
...@@ -220,6 +220,7 @@ group("closure_compile_module") { ...@@ -220,6 +220,7 @@ group("closure_compile_module") {
"a11y_page:closure_compile_module", "a11y_page:closure_compile_module",
"about_page:closure_compile_module", "about_page:closure_compile_module",
"appearance_page:closure_compile_module", "appearance_page:closure_compile_module",
"basic_page:closure_compile_module",
"clear_browsing_data_dialog:closure_compile_module", "clear_browsing_data_dialog:closure_compile_module",
"controls:closure_compile_module", "controls:closure_compile_module",
"downloads_page:closure_compile_module", "downloads_page:closure_compile_module",
......
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
# found in the LICENSE file. # found in the LICENSE file.
import("//third_party/closure_compiler/compile_js.gni") import("//third_party/closure_compiler/compile_js.gni")
import("//tools/polymer/polymer.gni")
import("../settings.gni")
js_type_check("closure_compile") { js_type_check("closure_compile") {
deps = [ ":basic_page" ] deps = [ ":basic_page" ]
...@@ -22,28 +24,49 @@ js_library("basic_page") { ...@@ -22,28 +24,49 @@ js_library("basic_page") {
externs_list = [ "$externs_path/pending_polymer.js" ] externs_list = [ "$externs_path/pending_polymer.js" ]
} }
# TODO(crbug.com/1026426): Fix and enable. js_type_check("closure_compile_module") {
#js_type_check("closure_compile_module") { is_polymer3 = true
# is_polymer3 = true deps = [ ":basic_page.m" ]
# deps = [ ":basic_page.m" ] }
#}
js_library("basic_page.m") { js_library("basic_page.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/basic_page/basic_page.m.js" ] sources = [ "$root_gen_dir/chrome/browser/resources/settings/basic_page/basic_page.m.js" ]
deps = [ deps = [
# TODO: Fill those in. "..:page_visibility.m",
"..:route.m",
"..:router.m",
"..:search_settings.m",
"../chrome_cleanup_page:chrome_cleanup_proxy.m",
"../prefs:prefs_behavior.m",
"../settings_page:main_page_behavior.m",
"//ui/webui/resources/js:load_time_data.m",
] ]
extra_deps = [ ":basic_page_module" ] extra_deps = [ ":basic_page_module" ]
} }
import("//tools/polymer/polymer.gni")
group("polymer3_elements") { group("polymer3_elements") {
deps = [ ":basic_page_module" ] public_deps = [ ":basic_page_module" ]
} }
polymer_modulizer("basic_page") { polymer_modulizer("basic_page") {
js_file = "basic_page.js" js_file = "basic_page.js"
html_file = "basic_page.html" html_file = "basic_page.html"
html_type = "dom-module" html_type = "dom-module"
ignore_imports = [
"chrome/browser/resources/settings/autofill_page/autofill_page.html",
"chrome/browser/resources/settings/controls/settings_idle_load.html",
"chrome/browser/resources/settings/people_page/people_page.html",
"chrome/browser/resources/settings/privacy_page/privacy_page.html",
"chrome/browser/resources/settings/safety_check_page/safety_check_page.html",
]
auto_imports = settings_auto_imports + [
"chrome/browser/resources/settings/page_visibility.html|PageVisibility",
"chrome/browser/resources/settings/route.html|routes",
"chrome/browser/resources/settings/router.html|Route, Router, RouteObserverBehavior",
"chrome/browser/resources/settings/settings_page/main_page_behavior.html|MainPageBehavior",
"chrome/browser/resources/settings/search_settings.html|getSearchManager, SearchResult",
"ui/webui/resources/html/assert.html|assert",
"ui/webui/resources/html/polymer.html|beforeNextRender,html,Polymer",
]
namespace_rewrites = settings_namespace_rewrites
} }
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
<link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html"> <link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html">
<link rel="import" href="chrome://resources/cr_elements/hidden_style_css.html"> <link rel="import" href="chrome://resources/cr_elements/hidden_style_css.html">
<link rel="import" href="chrome://resources/cr_elements/shared_vars_css.html"> <link rel="import" href="chrome://resources/cr_elements/shared_vars_css.html">
<link rel="import" href="chrome://resources/html/assert.html">
<link rel="import" href="../appearance_page/appearance_page.html"> <link rel="import" href="../appearance_page/appearance_page.html">
<link rel="import" href="../privacy_page/privacy_page.html"> <link rel="import" href="../privacy_page/privacy_page.html">
<link rel="import" href="../safety_check_page/safety_check_page.html"> <link rel="import" href="../safety_check_page/safety_check_page.html">
...@@ -15,6 +16,8 @@ ...@@ -15,6 +16,8 @@
<link rel="import" href="../search_settings.html"> <link rel="import" href="../search_settings.html">
<link rel="import" href="../settings_page/main_page_behavior.html"> <link rel="import" href="../settings_page/main_page_behavior.html">
<link rel="import" href="../settings_page/settings_section.html"> <link rel="import" href="../settings_page/settings_section.html">
<link rel="import" href="../i18n_setup.html">
<link rel="import" href="../page_visibility.html">
<link rel="import" href="../route.html"> <link rel="import" href="../route.html">
<link rel="import" href="../router.html"> <link rel="import" href="../router.html">
<link rel="import" href="../settings_page_css.html"> <link rel="import" href="../settings_page_css.html">
......
...@@ -7,8 +7,6 @@ ...@@ -7,8 +7,6 @@
* 'settings-basic-page' is the settings page containing the actual settings. * 'settings-basic-page' is the settings page containing the actual settings.
*/ */
(function() { (function() {
'use strict';
// <if expr="chromeos"> // <if expr="chromeos">
const OS_BANNER_INTERACTION_METRIC_NAME = const OS_BANNER_INTERACTION_METRIC_NAME =
'ChromeOS.Settings.OsBannerInteraction'; 'ChromeOS.Settings.OsBannerInteraction';
...@@ -32,7 +30,9 @@ Polymer({ ...@@ -32,7 +30,9 @@ Polymer({
behaviors: [ behaviors: [
settings.MainPageBehavior, settings.MainPageBehavior,
settings.RouteObserverBehavior, settings.RouteObserverBehavior,
// <if expr="chromeos">
PrefsBehavior, PrefsBehavior,
// </if>
], ],
properties: { properties: {
......
...@@ -22,7 +22,7 @@ cr.define('settings', function() { ...@@ -22,7 +22,7 @@ cr.define('settings', function() {
* wasClearSearch: Boolean, * wasClearSearch: Boolean,
* }} * }}
*/ */
let SearchResult; /* #export */ let SearchResult;
/** /**
* A CSS attribute indicating that a node should be ignored during searching. * A CSS attribute indicating that a node should be ignored during searching.
......
...@@ -23,6 +23,7 @@ settings_namespace_rewrites = [ ...@@ -23,6 +23,7 @@ settings_namespace_rewrites = [
"settings.IncompatibleApplication|IncompatibleApplication", "settings.IncompatibleApplication|IncompatibleApplication",
"settings.LanguagesBrowserProxy|LanguagesBrowserProxy", "settings.LanguagesBrowserProxy|LanguagesBrowserProxy",
"settings.LifetimeBrowserProxy|LifetimeBrowserProxy", "settings.LifetimeBrowserProxy|LifetimeBrowserProxy",
"settings.MainPageBehavior|MainPageBehavior",
"settings.MinimumRoutes|MinimumRoutes", "settings.MinimumRoutes|MinimumRoutes",
"settings.OnStartupBrowserProxy|OnStartupBrowserProxy", "settings.OnStartupBrowserProxy|OnStartupBrowserProxy",
"settings.PageStatus|PageStatus", "settings.PageStatus|PageStatus",
...@@ -35,6 +36,7 @@ settings_namespace_rewrites = [ ...@@ -35,6 +36,7 @@ settings_namespace_rewrites = [
"settings.routes|routes", "settings.routes|routes",
"settings.SearchEnginesBrowserProxy|SearchEnginesBrowserProxy", "settings.SearchEnginesBrowserProxy|SearchEnginesBrowserProxy",
"settings.SearchRequest|SearchRequest", "settings.SearchRequest|SearchRequest",
"settings.SearchResult|SearchResult",
"settings.StartupUrlsPageBrowserProxy|StartupUrlsPageBrowserProxy", "settings.StartupUrlsPageBrowserProxy|StartupUrlsPageBrowserProxy",
"settings.StatusAction|StatusAction", "settings.StatusAction|StatusAction",
"settings.SyncBrowserProxy|SyncBrowserProxy", "settings.SyncBrowserProxy|SyncBrowserProxy",
......
...@@ -6,6 +6,7 @@ import './a11y_page/a11y_page.m.js'; ...@@ -6,6 +6,7 @@ import './a11y_page/a11y_page.m.js';
import './about_page/about_page.m.js'; import './about_page/about_page.m.js';
import './appearance_page/appearance_page.m.js'; import './appearance_page/appearance_page.m.js';
import './appearance_page/appearance_fonts_page.m.js'; import './appearance_page/appearance_fonts_page.m.js';
import './basic_page/basic_page.m.js';
import './clear_browsing_data_dialog/clear_browsing_data_dialog.m.js'; import './clear_browsing_data_dialog/clear_browsing_data_dialog.m.js';
import './controls/controlled_button.m.js'; import './controls/controlled_button.m.js';
import './controls/controlled_radio_button.m.js'; import './controls/controlled_radio_button.m.js';
......
...@@ -209,7 +209,7 @@ cr.define('settings', function() { ...@@ -209,7 +209,7 @@ cr.define('settings', function() {
// TODO(rbpotter): Fix this to work correctly in Polymer 3, instead of // TODO(rbpotter): Fix this to work correctly in Polymer 3, instead of
// just removing the importHref lines. // just removing the importHref lines.
const lazyLoadPathPrefix = const lazyLoadPathPrefix =
window.origin === 'chrome://settings' ? '' : '/chromeos'; window.location.origin === 'chrome://settings' ? '' : '/chromeos';
/* #ignore */ Polymer.importHref( /* #ignore */ Polymer.importHref(
/* #ignore */ `${lazyLoadPathPrefix}/lazy_load.html`, () => {}); /* #ignore */ `${lazyLoadPathPrefix}/lazy_load.html`, () => {});
......
...@@ -50,6 +50,11 @@ ...@@ -50,6 +50,11 @@
file="${root_gen_dir}/chrome/browser/resources/settings/appearance_page/home_url_input.m.js" file="${root_gen_dir}/chrome/browser/resources/settings/appearance_page/home_url_input.m.js"
use_base_dir="false" use_base_dir="false"
type="BINDATA" /> type="BINDATA" />
<include name="IDR_SETTINGS_BASIC_PAGE_BASIC_PAGE_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/basic_page/basic_page.m.js"
use_base_dir="false"
type="BINDATA"
preprocess="true" />
<if expr="is_win"> <if expr="is_win">
<include name="IDR_SETTINGS_CHROME_CLEANUP_PROXY_M_JS" <include name="IDR_SETTINGS_CHROME_CLEANUP_PROXY_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/chrome_cleanup_page/chrome_cleanup_proxy.m.js" file="${root_gen_dir}/chrome/browser/resources/settings/chrome_cleanup_page/chrome_cleanup_proxy.m.js"
......
...@@ -213,6 +213,7 @@ js2gtest("browser_tests_js_webui") { ...@@ -213,6 +213,7 @@ js2gtest("browser_tests_js_webui") {
"$root_gen_dir/chrome/test/data/webui/settings/about_page_tests.m.js", "$root_gen_dir/chrome/test/data/webui/settings/about_page_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/appearance_page_test.m.js", "$root_gen_dir/chrome/test/data/webui/settings/appearance_page_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/appearance_fonts_page_test.m.js", "$root_gen_dir/chrome/test/data/webui/settings/appearance_fonts_page_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/basic_page_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/checkbox_tests.m.js", "$root_gen_dir/chrome/test/data/webui/settings/checkbox_tests.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/clear_browsing_data_test.m.js", "$root_gen_dir/chrome/test/data/webui/settings/clear_browsing_data_test.m.js",
"$root_gen_dir/chrome/test/data/webui/settings/controlled_button_tests.m.js", "$root_gen_dir/chrome/test/data/webui/settings/controlled_button_tests.m.js",
......
...@@ -11,6 +11,7 @@ js_modulizer("modulize") { ...@@ -11,6 +11,7 @@ js_modulizer("modulize") {
"about_page_tests.js", "about_page_tests.js",
"appearance_fonts_page_test.js", "appearance_fonts_page_test.js",
"appearance_page_test.js", "appearance_page_test.js",
"basic_page_test.js",
"checkbox_tests.js", "checkbox_tests.js",
"clear_browsing_data_test.js", "clear_browsing_data_test.js",
"controlled_button_tests.js", "controlled_button_tests.js",
......
...@@ -4,6 +4,13 @@ ...@@ -4,6 +4,13 @@
/** @fileoverview Suite of tests for the Settings basic page. */ /** @fileoverview Suite of tests for the Settings basic page. */
// clang-format off
// #import 'chrome://settings/settings.js';
// #import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
// #import {isChromeOS} from 'chrome://resources/js/cr.m.js';
// #import {loadTimeData} from 'chrome://resources/js/load_time_data.m.js';
// clang-format on
// Register mocha tests. // Register mocha tests.
suite('SettingsBasicPage', function() { suite('SettingsBasicPage', function() {
let page = null; let page = null;
......
...@@ -460,3 +460,15 @@ TEST_F( ...@@ -460,3 +460,15 @@ TEST_F(
runMochaSuite('ClearBrowsingDataDesktop'); runMochaSuite('ClearBrowsingDataDesktop');
}); });
GEN('#endif'); GEN('#endif');
// eslint-disable-next-line no-var
var CrSettingsBasicPageV3Test = class extends CrSettingsV3BrowserTest {
/** @override */
get browsePreload() {
return 'chrome://settings/test_loader.html?module=settings/basic_page_test.m.js';
}
};
TEST_F('CrSettingsBasicPageV3Test', 'All', function() {
mocha.run();
});
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