Commit bb94ec50 authored by dzhioev@chromium.org's avatar dzhioev@chromium.org

Added ability to use new GAIA endpoint on CrOS login screen.

This feature can be enabled with "enable-embedded-singin" command-line switch.

BUG=308312
TEST=manually
NOTRY=true

Review URL: https://codereview.chromium.org/296173008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272971 0039d316-1c4b-4281-b951-d872f2087c98
parent 9cb430b8
......@@ -256,12 +256,20 @@ login.createScreen('GaiaSigninScreen', 'gaia-signin', function() {
if (data.localizedStrings)
params.localizedStrings = data.localizedStrings;
if (data.useEmbedded)
params.gaiaPath = 'EmbeddedSignIn';
if (data.forceReload ||
JSON.stringify(this.gaiaAuthParams_) != JSON.stringify(params)) {
this.error_ = 0;
this.gaiaAuthHost_.load(data.useOffline ?
cr.login.GaiaAuthHost.AuthMode.OFFLINE :
cr.login.GaiaAuthHost.AuthMode.DEFAULT,
var authMode = cr.login.GaiaAuthHost.AuthMode.DEFAULT;
if (data.useOffline)
authMode = cr.login.GaiaAuthHost.AuthMode.OFFLINE;
else if (data.useEmbedded)
authMode = cr.login.GaiaAuthHost.AuthMode.DESKTOP;
this.gaiaAuthHost_.load(authMode,
params,
this.onAuthCompleted_.bind(this));
this.gaiaAuthParams_ = params;
......
......@@ -11,6 +11,7 @@
#include "chrome/browser/chromeos/login/users/user_manager.h"
#include "chrome/browser/chromeos/settings/cros_settings.h"
#include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h"
#include "chromeos/chromeos_switches.h"
#include "chromeos/settings/cros_settings_names.h"
#include "google_apis/gaia/gaia_switches.h"
#include "google_apis/gaia/gaia_urls.h"
......@@ -138,13 +139,17 @@ void GaiaScreenHandler::LoadGaia(const GaiaContext& context) {
params.Set("localizedStrings", localized_strings);
}
CommandLine* command_line = CommandLine::ForCurrentProcess();
const GURL gaia_url =
CommandLine::ForCurrentProcess()->HasSwitch(::switches::kGaiaUrl)
? GURL(CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
::switches::kGaiaUrl))
command_line->HasSwitch(::switches::kGaiaUrl)
? GURL(command_line->GetSwitchValueASCII(::switches::kGaiaUrl))
: GaiaUrls::GetInstance()->gaia_url();
params.SetString("gaiaUrl", gaia_url.spec());
if (command_line->HasSwitch(chromeos::switches::kEnableEmbeddedSignin))
params.SetBoolean("useEmbedded", true);
frame_state_ = FRAME_STATE_LOADING;
CallJS("loadAuthExtension", params);
}
......
......@@ -72,6 +72,10 @@ const char kEnableChromeVoxNext[] = "enable-chromevox-next";
// locate the device.
const char kEnableConsumerManagement[] = "enable-consumer-management";
// If this switch is set, Chrome OS login screen uses |EmbeddedSignin| endpoint
// of GAIA.
const char kEnableEmbeddedSignin[] = "enable-embedded-signin";
// Enables MTP support in Files.app.
const char kEnableFileManagerMTP[] = "enable-filemanager-mtp";
......
......@@ -39,6 +39,7 @@ CHROMEOS_EXPORT extern const char kDisableVolumeAdjustSound[];
CHROMEOS_EXPORT extern const char kEnableCarrierSwitching[];
CHROMEOS_EXPORT extern const char kEnableChromeVoxNext[];
CHROMEOS_EXPORT extern const char kEnableConsumerManagement[];
CHROMEOS_EXPORT extern const char kEnableEmbeddedSignin[];
CHROMEOS_EXPORT extern const char kEnableFileManagerMTP[];
CHROMEOS_EXPORT extern const char kEnableRollbackOption[];
CHROMEOS_EXPORT extern const char kEnableHIDDetectionOnOOBE[];
......
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