Chromium Code Reviews| Index: chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
| diff --git a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
| index 9efae546cc454471732adae2f27b24c30607005e..15e4d803c0fca1d3b2e41f822ec698b1507b0d2d 100644 |
| --- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
| +++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
| @@ -92,7 +92,9 @@ |
| #include "components/version_info/version_info.h" |
| #include "content/public/browser/render_frame_host.h" |
| #include "content/public/browser/web_contents.h" |
| +#include "content/public/common/service_manager_connection.h" |
| #include "google_apis/gaia/gaia_auth_util.h" |
| +#include "services/service_manager/public/cpp/connector.h" |
| #include "third_party/cros_system_api/dbus/service_constants.h" |
| #include "ui/base/ime/chromeos/ime_keyboard.h" |
| #include "ui/base/ime/chromeos/input_method_descriptor.h" |
| @@ -265,6 +267,8 @@ SigninScreenHandler::SigninScreenHandler( |
| ->CapsLockIsEnabled()), |
| proxy_auth_dialog_reload_times_(kMaxGaiaReloadForProxyAuthDialog), |
| gaia_screen_handler_(gaia_screen_handler), |
| + touch_view_binding_(this), |
| + touch_view_enabled_(false), |
| histogram_helper_(new ErrorScreensHistogramHelper("Signin")), |
| weak_factory_(this) { |
| DCHECK(network_state_informer_.get()); |
| @@ -291,12 +295,16 @@ SigninScreenHandler::SigninScreenHandler( |
| if (keyboard) |
| keyboard->AddObserver(this); |
| + service_manager::Connector* connector = |
| + content::ServiceManagerConnection::GetForProcess()->GetConnector(); |
| if (!chrome::IsRunningInMash()) { |
| - max_mode_delegate_.reset(new TouchViewControllerDelegate()); |
| - max_mode_delegate_->AddObserver(this); |
| + connector->ConnectToInterface("content_browser", &touch_view_manager_ptr_); |
| } else { |
| - NOTIMPLEMENTED(); |
|
James Cook
2016/12/01 16:55:09
Hooray!
|
| + connector->ConnectToInterface("ash", &touch_view_manager_ptr_); |
| } |
| + |
| + touch_view_manager_ptr_->AddObserver( |
| + touch_view_binding_.CreateInterfacePtrAndBind()); |
| } |
| SigninScreenHandler::~SigninScreenHandler() { |
| @@ -313,10 +321,6 @@ SigninScreenHandler::~SigninScreenHandler() { |
| if (delegate_) |
| delegate_->SetWebUIHandler(nullptr); |
| network_state_informer_->RemoveObserver(this); |
| - if (max_mode_delegate_) { |
| - max_mode_delegate_->RemoveObserver(this); |
| - max_mode_delegate_.reset(nullptr); |
| - } |
| proximity_auth::ScreenlockBridge::Get()->SetLockHandler(nullptr); |
| proximity_auth::ScreenlockBridge::Get()->SetFocusedUser(EmptyAccountId()); |
| } |
| @@ -1066,12 +1070,9 @@ void SigninScreenHandler::SuspendDone(const base::TimeDelta& sleep_duration) { |
| } |
| } |
| -void SigninScreenHandler::OnMaximizeModeStarted() { |
| - CallJS("login.AccountPickerScreen.setTouchViewState", true); |
| -} |
| - |
| -void SigninScreenHandler::OnMaximizeModeEnded() { |
| - CallJS("login.AccountPickerScreen.setTouchViewState", false); |
| +void SigninScreenHandler::OnTouchViewChanged(bool enabled) { |
| + touch_view_enabled_ = enabled; |
| + CallJS("login.AccountPickerScreen.setTouchViewState", enabled); |
| } |
| bool SigninScreenHandler::ShouldLoadGaia() const { |
| @@ -1423,10 +1424,7 @@ void SigninScreenHandler::HandleLaunchArcKioskApp( |
| } |
| void SigninScreenHandler::HandleGetTouchViewState() { |
| - if (max_mode_delegate_) { |
| - CallJS("login.AccountPickerScreen.setTouchViewState", |
| - max_mode_delegate_->IsMaximizeModeEnabled()); |
| - } |
| + CallJS("login.AccountPickerScreen.setTouchViewState", touch_view_enabled_); |
| } |
| void SigninScreenHandler::HandleLogRemoveUserWarningShown() { |