Commit f1237949 authored by dpapad's avatar dpapad Committed by Commit Bot

Settings: Check-in reset_page/ Polymer3 port.

The Polymer2 version is no longer used, and therefore there is
no need to keep auto-generating the P3 version from P2 at build time.

This is one of many CLs to check-in the Polymer3 version of Settings.

Bug: 1069258
Change-Id: I0879a049b645d5c68890326a81a7761358a6d6fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2142108
Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
Auto-Submit: dpapad <dpapad@chromium.org>
Reviewed-by: default avatarRebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#759161}
parent 0fd0af6d
......@@ -79,7 +79,6 @@ group("closure_compile") {
"prefs:closure_compile",
"printing_page:closure_compile",
"privacy_page:closure_compile",
"reset_page:closure_compile",
"safety_check_page:closure_compile",
"search_engines_page:closure_compile",
"search_page:closure_compile",
......
......@@ -52,6 +52,7 @@ polymer_modulizer("basic_page") {
js_file = "basic_page.js"
html_file = "basic_page.html"
html_type = "dom-module"
migrated_imports = settings_migrated_imports
auto_imports = settings_auto_imports + [
"chrome/browser/resources/settings/page_visibility.html|PageVisibility",
"chrome/browser/resources/settings/route.html|routes",
......
......@@ -40,7 +40,7 @@ import './a11y_page/a11y_page.m.js';
import './downloads_page/downloads_page.m.js';
import './languages_page/languages_page.m.js';
import './printing_page/printing_page.m.js';
import './reset_page/reset_page.m.js';
import './reset_page/reset_page.js';
// <if expr="not chromeos">
import './system_page/system_page.m.js';
// </if>
......
......@@ -4,10 +4,11 @@
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/polymer/polymer.gni")
import("//ui/webui/resources/tools/js_modulizer.gni")
import("../settings.gni")
js_type_check("closure_compile") {
js_type_check("closure_compile_module") {
is_polymer3 = true
closure_flags = settings_closure_flags
deps = [
":reset_browser_proxy",
":reset_page",
......@@ -16,64 +17,13 @@ js_type_check("closure_compile") {
]
}
js_library("reset_page") {
deps = [
":reset_profile_dialog",
"..:route",
"..:router",
"//ui/webui/resources/cr_elements/cr_lazy_render:cr_lazy_render",
"//ui/webui/resources/js:assert",
"//ui/webui/resources/js:cr",
"//ui/webui/resources/js:load_time_data",
"//ui/webui/resources/js/cr/ui:focus_without_ink",
]
}
js_library("reset_browser_proxy") {
deps = [ "//ui/webui/resources/js:cr" ]
externs_list = [ "$externs_path/chrome_send.js" ]
}
js_library("reset_profile_dialog") {
deps = [
":reset_browser_proxy",
"..:route",
"//ui/webui/resources/js:load_time_data",
"//ui/webui/resources/js:web_ui_listener_behavior",
]
}
js_library("reset_profile_banner") {
deps = [
":reset_browser_proxy",
"..:route",
"..:router",
"//ui/webui/resources/cr_elements/cr_dialog",
"//ui/webui/resources/js:load_time_data",
"//ui/webui/resources/js:web_ui_listener_behavior",
]
}
js_type_check("closure_compile_module") {
is_polymer3 = true
deps = [
":reset_browser_proxy.m",
":reset_page.m",
":reset_profile_banner.m",
":reset_profile_dialog.m",
]
}
js_library("reset_browser_proxy.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/reset_page/reset_browser_proxy.m.js" ]
deps = [ "//ui/webui/resources/js:cr.m" ]
extra_deps = [ ":modulize" ]
}
js_library("reset_page.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/reset_page/reset_page.m.js" ]
js_library("reset_page") {
deps = [
":reset_profile_dialog.m",
":reset_profile_dialog",
"..:route.m",
"..:router.m",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
......@@ -84,10 +34,9 @@ js_library("reset_page.m") {
extra_deps = [ ":reset_page_module" ]
}
js_library("reset_profile_banner.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/reset_page/reset_profile_banner.m.js" ]
js_library("reset_profile_banner") {
deps = [
":reset_browser_proxy.m",
":reset_browser_proxy",
"..:route.m",
"..:router.m",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
......@@ -96,10 +45,9 @@ js_library("reset_profile_banner.m") {
extra_deps = [ ":reset_profile_banner_module" ]
}
js_library("reset_profile_dialog.m") {
sources = [ "$root_gen_dir/chrome/browser/resources/settings/reset_page/reset_profile_dialog.m.js" ]
js_library("reset_profile_dialog") {
deps = [
":reset_browser_proxy.m",
":reset_browser_proxy",
"..:route.m",
"..:router.m",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
......@@ -111,7 +59,6 @@ js_library("reset_profile_dialog.m") {
group("polymer3_elements") {
public_deps = [
":modulize",
":reset_page_module",
":reset_profile_banner_module",
":reset_profile_dialog_module",
......@@ -121,41 +68,17 @@ group("polymer3_elements") {
polymer_modulizer("reset_page") {
js_file = "reset_page.js"
html_file = "reset_page.html"
html_type = "dom-module"
namespace_rewrites = settings_namespace_rewrites
auto_imports = settings_auto_imports + [
"ui/webui/resources/html/assert.html|assert",
"chrome/browser/resources/settings/reset_page/reset_browser_proxy.html|ResetBrowserProxyImpl",
"chrome/browser/resources/settings/router.html|Router,Route,RouteObserverBehavior",
"chrome/browser/resources/settings/route.html|routes",
]
html_type = "v3-ready"
}
polymer_modulizer("reset_profile_banner") {
js_file = "reset_profile_banner.js"
html_file = "reset_profile_banner.html"
html_type = "dom-module"
namespace_rewrites = settings_namespace_rewrites
auto_imports = settings_auto_imports + [
"chrome/browser/resources/settings/reset_page/reset_browser_proxy.html|ResetBrowserProxyImpl",
"chrome/browser/resources/settings/router.html|Router",
"chrome/browser/resources/settings/route.html|routes",
]
html_type = "v3-ready"
}
polymer_modulizer("reset_profile_dialog") {
js_file = "reset_profile_dialog.js"
html_file = "reset_profile_dialog.html"
html_type = "dom-module"
namespace_rewrites = settings_namespace_rewrites
auto_imports = settings_auto_imports + [
"chrome/browser/resources/settings/reset_page/reset_browser_proxy.html|ResetBrowserProxyImpl,ResetBrowserProxy",
"chrome/browser/resources/settings/router.html|Router",
"chrome/browser/resources/settings/route.html|routes",
]
}
js_modulizer("modulize") {
input_files = [ "reset_browser_proxy.js" ]
namespace_rewrites = settings_namespace_rewrites
html_type = "v3-ready"
}
......@@ -3,12 +3,11 @@
// found in the LICENSE file.
// clang-format off
// #import {addSingletonGetter, sendWithPromise} from 'chrome://resources/js/cr.m.js';
import {addSingletonGetter, sendWithPromise} from 'chrome://resources/js/cr.m.js';
// clang-format on
cr.define('settings', function() {
/** @interface */
/* #export */ class ResetBrowserProxy {
export class ResetBrowserProxy {
/**
* @param {boolean} sendSettings Whether the user gave consent to upload
* broken settings to Google for analysis.
......@@ -16,7 +15,6 @@ cr.define('settings', function() {
* @return {!Promise} A promise firing once resetting has completed.
*/
performResetProfileSettings(sendSettings, requestOrigin) {}
/**
* A method to be called when the reset profile dialog is hidden.
*/
......@@ -59,12 +57,12 @@ cr.define('settings', function() {
}
/**
* @implements {settings.ResetBrowserProxy}
* @implements {ResetBrowserProxy}
*/
/* #export */ class ResetBrowserProxyImpl {
export class ResetBrowserProxyImpl {
/** @override */
performResetProfileSettings(sendSettings, requestOrigin) {
return cr.sendWithPromise(
return sendWithPromise(
'performResetProfileSettings', sendSettings, requestOrigin);
}
......@@ -85,7 +83,7 @@ cr.define('settings', function() {
/** @override */
showReportedSettings() {
cr.sendWithPromise('getReportedSettings').then(function(settings) {
sendWithPromise('getReportedSettings').then(function(settings) {
const output = settings.map(function(entry) {
return entry.key + ': ' + entry.value.replace(/\n/g, ', ');
});
......@@ -99,7 +97,7 @@ cr.define('settings', function() {
/** @override */
getTriggeredResetToolName() {
return cr.sendWithPromise('getTriggeredResetToolName');
return sendWithPromise('getTriggeredResetToolName');
}
// <if expr="chromeos">
......@@ -115,11 +113,4 @@ cr.define('settings', function() {
// </if>
}
cr.addSingletonGetter(ResetBrowserProxyImpl);
// #cr_define_end
return {
ResetBrowserProxy: ResetBrowserProxy,
ResetBrowserProxyImpl: ResetBrowserProxyImpl,
};
});
addSingletonGetter(ResetBrowserProxyImpl);
<link rel="import" href="chrome://resources/html/polymer.html">
<link rel="import" href="chrome://resources/cr_elements/cr_lazy_render/cr_lazy_render.html">
<link rel="import" href="chrome://resources/html/assert.html">
<link rel="import" href="chrome://resources/html/cr/ui/focus_without_ink.html">
<link rel="import" href="../i18n_setup.html">
<link rel="import" href="reset_profile_dialog.html">
<link rel="import" href="../route.html">
<link rel="import" href="../router.html">
<link rel="import" href="../settings_page/settings_animated_pages.html">
<link rel="import" href="../settings_shared_css.html">
<if expr="_google_chrome and is_win">
<link rel="import" href="../chrome_cleanup_page/chrome_cleanup_page.html">
<link rel="import" href="../incompatible_applications_page/incompatible_applications_page.html">
</if>
<dom-module id="settings-reset-page">
<template>
<style include="settings-shared"></style>
<settings-animated-pages id="reset-pages" section="reset">
<div route-path="default">
......@@ -67,6 +48,3 @@
</template>
</if>
</settings-animated-pages>
</template>
<script src="reset_page.js"></script>
</dom-module>
......@@ -7,10 +7,31 @@
* 'settings-reset-page' is the settings page containing reset
* settings.
*/
import 'chrome://resources/cr_elements/cr_lazy_render/cr_lazy_render.m.js';
import './reset_profile_dialog.js';
import '../settings_page/settings_animated_pages.m.js';
import '../settings_shared_css.m.js';
// <if expr="_google_chrome and is_win">
import '../chrome_cleanup_page/chrome_cleanup_page.m.js';
import '../incompatible_applications_page/incompatible_applications_page.m.js';
// </if>
import {assert} from 'chrome://resources/js/assert.m.js';
import {focusWithoutInk} from 'chrome://resources/js/cr/ui/focus_without_ink.m.js';
import {html, Polymer} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import {loadTimeData} from '../i18n_setup.m.js';
import {routes} from '../route.m.js';
import {Route, RouteObserverBehavior, Router} from '../router.m.js';
Polymer({
is: 'settings-reset-page',
behaviors: [settings.RouteObserverBehavior],
_template: html`{__html_template__}`,
behaviors: [RouteObserverBehavior],
properties: {
/** Preferences state. */
......@@ -28,16 +49,16 @@ Polymer({
},
/**
* settings.RouteObserverBehavior
* @param {!settings.Route} route
* RouteObserverBehavior
* @param {!Route} route
* @protected
*/
currentRouteChanged(route) {
const lazyRender =
/** @type {!CrLazyRenderElement} */ (this.$.resetProfileDialog);
if (route == settings.routes.TRIGGERED_RESET_DIALOG ||
route == settings.routes.RESET_DIALOG) {
if (route == routes.TRIGGERED_RESET_DIALOG ||
route == routes.RESET_DIALOG) {
/** @type {!SettingsResetProfileDialogElement} */ (lazyRender.get())
.show();
} else {
......@@ -51,26 +72,25 @@ Polymer({
/** @private */
onShowResetProfileDialog_() {
settings.Router.getInstance().navigateTo(
settings.routes.RESET_DIALOG, new URLSearchParams('origin=userclick'));
Router.getInstance().navigateTo(
routes.RESET_DIALOG, new URLSearchParams('origin=userclick'));
},
/** @private */
onResetProfileDialogClose_() {
settings.Router.getInstance().navigateToPreviousRoute();
cr.ui.focusWithoutInk(assert(this.$.resetProfile));
Router.getInstance().navigateToPreviousRoute();
focusWithoutInk(assert(this.$.resetProfile));
},
// <if expr="_google_chrome and is_win">
/** @private */
onChromeCleanupTap_() {
settings.Router.getInstance().navigateTo(settings.routes.CHROME_CLEANUP);
Router.getInstance().navigateTo(routes.CHROME_CLEANUP);
},
/** @private */
onIncompatibleApplicationsTap_() {
settings.Router.getInstance().navigateTo(
settings.routes.INCOMPATIBLE_APPLICATIONS);
Router.getInstance().navigateTo(routes.INCOMPATIBLE_APPLICATIONS);
},
// </if>
});
<link rel="import" href="chrome://resources/html/polymer.html">
<link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html">
<link rel="import" href="chrome://resources/cr_elements/cr_dialog/cr_dialog.html">
<link rel="import" href="reset_browser_proxy.html">
<link rel="import" href="../route.html">
<link rel="import" href="../router.html">
<dom-module id="settings-reset-profile-banner">
<template>
<style include="settings-shared"></style>
<cr-dialog id="dialog" close-text="$i18n{close}" ignore-popstate>
<div slot="title">$i18n{resetAutomatedDialogTitle}</div>
......@@ -28,6 +18,3 @@
</cr-button>
</div>
</cr-dialog>
</template>
<script src="reset_profile_banner.js"></script>
</dom-module>
......@@ -7,10 +7,22 @@
* 'settings-reset-profile-banner' is the banner shown for prompting the user to
* clear profile settings.
*/
import 'chrome://resources/cr_elements/cr_button/cr_button.m.js';
import 'chrome://resources/cr_elements/cr_dialog/cr_dialog.m.js';
import {html, Polymer} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import {routes} from '../route.m.js';
import {Router} from '../router.m.js';
import {ResetBrowserProxyImpl} from './reset_browser_proxy.js';
Polymer({
// TODO(dpapad): Rename to settings-reset-warning-dialog.
is: 'settings-reset-profile-banner',
_template: html`{__html_template__}`,
listeners: {
'cancel': 'onCancel_',
},
......@@ -27,12 +39,12 @@ Polymer({
/** @private */
onCancel_() {
settings.ResetBrowserProxyImpl.getInstance().onHideResetProfileBanner();
ResetBrowserProxyImpl.getInstance().onHideResetProfileBanner();
},
/** @private */
onResetTap_() {
this.$.dialog.close();
settings.Router.getInstance().navigateTo(settings.routes.RESET_DIALOG);
Router.getInstance().navigateTo(routes.RESET_DIALOG);
},
});
<link rel="import" href="chrome://resources/html/polymer.html">
<link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html">
<link rel="import" href="chrome://resources/cr_elements/cr_checkbox/cr_checkbox.html">
<link rel="import" href="chrome://resources/cr_elements/cr_dialog/cr_dialog.html">
<link rel="import" href="chrome://resources/html/action_link.html">
<link rel="import" href="chrome://resources/cr_elements/action_link_css.html">
<link rel="import" href="chrome://resources/html/web_ui_listener_behavior.html">
<link rel="import" href="chrome://resources/polymer/v1_0/paper-spinner/paper-spinner-lite.html">
<link rel="import" href="reset_browser_proxy.html">
<link rel="import" href="../i18n_setup.html">
<link rel="import" href="../route.html">
<link rel="import" href="../router.html">
<link rel="import" href="../settings_shared_css.html">
<dom-module id="settings-reset-profile-dialog">
<template>
<style include="settings-shared action-link">
paper-spinner-lite {
margin: 0 8px;
......@@ -55,6 +38,3 @@
$i18nRaw{resetPageFeedback}</cr-checkbox>
</div>
</cr-dialog>
</template>
<script src="reset_profile_dialog.js"></script>
</dom-module>
......@@ -10,9 +10,28 @@
* circumstances. See triggered_profile_resetter.h for when the triggered
* variant will be used.
*/
import 'chrome://resources/cr_elements/cr_button/cr_button.m.js';
import 'chrome://resources/cr_elements/cr_checkbox/cr_checkbox.m.js';
import 'chrome://resources/cr_elements/cr_dialog/cr_dialog.m.js';
import 'chrome://resources/js/action_link.js';
import 'chrome://resources/cr_elements/action_link_css.m.js';
import 'chrome://resources/polymer/v3_0/paper-spinner/paper-spinner-lite.js';
import '../settings_shared_css.m.js';
import {WebUIListenerBehavior} from 'chrome://resources/js/web_ui_listener_behavior.m.js';
import {html, Polymer} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import {loadTimeData} from '../i18n_setup.m.js';
import {routes} from '../route.m.js';
import {Router} from '../router.m.js';
import {ResetBrowserProxy, ResetBrowserProxyImpl} from './reset_browser_proxy.js';
Polymer({
is: 'settings-reset-profile-dialog',
_template: html`{__html_template__}`,
behaviors: [WebUIListenerBehavior],
properties: {
......@@ -41,7 +60,7 @@ Polymer({
},
},
/** @private {?settings.ResetBrowserProxy} */
/** @private {?ResetBrowserProxy} */
browserProxy_: null,
/**
......@@ -70,7 +89,7 @@ Polymer({
/** @override */
ready() {
this.browserProxy_ = settings.ResetBrowserProxyImpl.getInstance();
this.browserProxy_ = ResetBrowserProxyImpl.getInstance();
this.addEventListener('cancel', () => {
this.browserProxy_.onHideResetProfileDialog();
......@@ -89,8 +108,8 @@ Polymer({
},
show() {
this.isTriggered_ = settings.Router.getInstance().getCurrentRoute() ==
settings.routes.TRIGGERED_RESET_DIALOG;
this.isTriggered_ =
Router.getInstance().getCurrentRoute() == routes.TRIGGERED_RESET_DIALOG;
if (this.isTriggered_) {
this.browserProxy_.getTriggeredResetToolName().then(name => {
this.resetRequestOrigin_ = 'triggeredreset';
......@@ -103,7 +122,7 @@ Polymer({
// with the startup URL chrome://settings/resetProfileSettings#cct.
const origin = window.location.hash.slice(1).toLowerCase() == 'cct' ?
'cct' :
settings.Router.getInstance().getQueryParameters().get('origin');
Router.getInstance().getQueryParameters().get('origin');
this.resetRequestOrigin_ = origin || '';
this.showDialog_();
}
......
......@@ -2,6 +2,8 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//third_party/closure_compiler/compile_js.gni")
# Common namespace rewrites for all polymer_modulizer() or js_modulizer()
# targets in Settings.
settings_namespace_rewrites = [
......@@ -134,3 +136,12 @@ settings_auto_imports = [
"chrome/browser/resources/settings/printing_page/printing_browser_proxy.html|PrintingBrowserProxyImpl",
"chrome/browser/resources/settings/site_settings/site_settings_behavior.html|SiteSettingsBehavior",
]
settings_closure_flags =
default_closure_args + [
"js_module_root=../../chrome/browser/resources/settings/",
"js_module_root=./gen/chrome/browser/resources/settings/",
]
settings_migrated_imports =
[ "chrome/browser/resources/settings/reset_page/reset_profile_banner.html" ]
......@@ -32,7 +32,7 @@ export {PluralStringProxyImpl} from './plural_string_proxy.m.js';
export {prefToString, stringToPrefValue} from './prefs/pref_util.m.js';
export {CrSettingsPrefs} from './prefs/prefs_types.m.js';
export {PrivacyPageBrowserProxyImpl, SecureDnsMode, SecureDnsUiManagementMode} from './privacy_page/privacy_page_browser_proxy.m.js';
export {ResetBrowserProxyImpl} from './reset_page/reset_browser_proxy.m.js';
export {ResetBrowserProxyImpl} from './reset_page/reset_browser_proxy.js';
export {buildRouter, routes} from './route.m.js';
export {Route, Router} from './router.m.js';
export {SafetyCheckBrowserProxy, SafetyCheckBrowserProxyImpl, SafetyCheckCallbackConstants, SafetyCheckExtensionsStatus, SafetyCheckPasswordsStatus, SafetyCheckSafeBrowsingStatus, SafetyCheckUpdatesStatus} from './safety_check_page/safety_check_browser_proxy.m.js';
......
......@@ -536,22 +536,21 @@
file="${root_gen_dir}/chrome/browser/resources/settings/privacy_page/security_keys_subpage.m.js"
use_base_dir="false"
type="BINDATA" />
<include name="IDR_SETTINGS_RESET_PAGE_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_page.m.js"
<include name="IDR_SETTINGS_RESET_PAGE_RESET_PAGE_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_page.js"
use_base_dir="false"
preprocess="true"
type="BINDATA" />
<include name="IDR_SETTINGS_RESET_PROFILE_DIALOG_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_profile_dialog.m.js"
<include name="IDR_SETTINGS_RESET_PAGE_RESET_PROFILE_DIALOG_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_profile_dialog.js"
use_base_dir="false"
type="BINDATA" />
<include name="IDR_SETTINGS_RESET_PROFILE_BANNER_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_profile_banner.m.js"
<include name="IDR_SETTINGS_RESET_PAGE_RESET_PROFILE_BANNER_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_profile_banner.js"
use_base_dir="false"
type="BINDATA"/>
<include name="IDR_SETTINGS_RESET_BROWSER_PROXY_M_JS"
file="${root_gen_dir}/chrome/browser/resources/settings/reset_page/reset_browser_proxy.m.js"
use_base_dir="false"
<include name="IDR_SETTINGS_RESET_PAGE_RESET_BROWSER_PROXY_JS"
file="reset_page/reset_browser_proxy.js"
preprocess="true"
type="BINDATA" />
<include name="IDR_SETTINGS_ROUTE_M_JS"
......
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