Add actual setup flow logic to OOBE |
||||
Issue descriptionOnce a skeleton page has been added to OOBE (see issue 884061 ), we need to add the actual UI/logic/functionality into the flow. Tasks: (1) Add Mojo bindings to the OOBE. This requires making OobeUI (see [1]) derive from MojoWebUIController (see [2]) and having this class connect to the Mojo service. (2) Update the logic for the setup flow to make a call to the OOBE-specific Mojo API (see issue 884056 ). (3) Change the way that the flow completes. OOBE pages expect a special "user action" (see [3]) to communicate that a page has completed. [1] https://cs.chromium.org/chromium/src/chrome/browser/ui/webui/chromeos/login/oobe_ui.h [2] https://cs.chromium.org/chromium/src/ui/webui/mojo_web_ui_controller.h [3] https://cs.chromium.org/chromium/src/chrome/browser/chromeos/login/screens/base_screen.h?q=OnUserAction
,
Sep 21
,
Oct 1
,
Oct 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/36f28038d708bc1976b0c975de0ea95c747fa58b commit 36f28038d708bc1976b0c975de0ea95c747fa58b Author: Kyle Horimoto <khorimoto@google.com> Date: Thu Oct 04 16:21:30 2018 [CrOS MultiDevice] Only make setup flow Mojo connection when needed. Previously, the MultiDevice setup flow would make a connection to the Mojo service as soon as the flow was loaded. However, in OOBE mode, this means that the WebUI page requests a connection as soon as OOBE loads, which is before the user has signed in. Since the MultiDeviceSetup service is only created once the user has signed in, the strategy of connecting as soon as the page loads resulted in trying to connect to a service which had not yet been registered. This CL delays the process of connecting to the Mojo service; now, a connection is made only when the initializeSetupFlow() function is called or the "multidevice_setup.initializeSetupFlow" WebUI event is fired. Bug: 884065 Change-Id: I2dde7916ac400625677c45d6de1c0fc72afab976 Reviewed-on: https://chromium-review.googlesource.com/c/1259835 Commit-Queue: Kyle Horimoto <khorimoto@chromium.org> Reviewed-by: Ryan Hansberry <hansberry@chromium.org> Cr-Commit-Position: refs/heads/master@{#596697} [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/chrome/browser/resources/chromeos/multidevice_setup/BUILD.gn [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/chrome/browser/resources/chromeos/multidevice_setup/multidevice_setup_post_oobe.js [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/chrome/test/data/webui/multidevice_setup/integration_test.js [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/ui/webui/resources/cr_components/chromeos/multidevice_setup/BUILD.gn [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/ui/webui/resources/cr_components/chromeos/multidevice_setup/mojo_api.js [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/ui/webui/resources/cr_components/chromeos/multidevice_setup/multidevice_setup.html [modify] https://crrev.com/36f28038d708bc1976b0c975de0ea95c747fa58b/ui/webui/resources/cr_components/chromeos/multidevice_setup/multidevice_setup.js
,
Oct 5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b commit 6e7b93a4524a4ef2cc5302144f7ac5fc422c794b Author: Kyle Horimoto <khorimoto@google.com> Date: Fri Oct 05 17:17:20 2018 [CrOS MultiDevice] Add multi-device setup flow to OOBE/login. This CL replaces the placeholder setup page with the real page which includes the logic for choosing a multi-device host phone. As part of this CL, WizardController now decides whether or not to show the setup flow based on whether setup is applicable and needed for the GAIA account under question. Bug: 884065 Change-Id: I8f3be643b77890fb249516369d76f5c392a568a9 Reviewed-on: https://chromium-review.googlesource.com/c/1255591 Commit-Queue: Kyle Horimoto <khorimoto@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Cr-Commit-Position: refs/heads/master@{#597178} [modify] https://crrev.com/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b/chrome/browser/chromeos/login/wizard_controller.cc [modify] https://crrev.com/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b/chrome/browser/resources/chromeos/login/multidevice_setup_first_run.html [modify] https://crrev.com/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b/chrome/browser/resources/chromeos/login/multidevice_setup_first_run.js [modify] https://crrev.com/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b/chrome/browser/ui/webui/chromeos/login/multidevice_setup_screen_handler.cc [modify] https://crrev.com/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc [modify] https://crrev.com/6e7b93a4524a4ef2cc5302144f7ac5fc422c794b/chrome/browser/ui/webui/chromeos/login/oobe_ui.h
,
Oct 5
|
||||
►
Sign in to add a comment |
||||
Comment 1 by jlklein@chromium.org
, Sep 20