#include "chrome/browser/chromeos/profiles/profile_helper.h"
#include "chrome/browser/extensions/extension_web_contents_observer.h"
#include "chrome/browser/media/media_stream_infobar_delegate.h"
+#include "chrome/browser/password_manager/chrome_password_manager_client.h"
#include "chrome/browser/password_manager/password_manager.h"
-#include "chrome/browser/password_manager/password_manager_delegate_impl.h"
#include "chrome/browser/renderer_preferences_util.h"
#include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h"
#include "chrome/common/render_messages.h"
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_view.h"
#include "content/public/browser/web_ui.h"
+#include "third_party/WebKit/public/web/WebInputEvent.h"
#include "ui/gfx/rect.h"
#include "ui/gfx/size.h"
#include "ui/views/controls/webview/webview.h"
const char kAccelNameKioskEnable[] = "kiosk_enable";
const char kAccelNameVersion[] = "version";
const char kAccelNameReset[] = "reset";
-const char kAccelNameLeft[] = "left";
-const char kAccelNameRight[] = "right";
+const char kAccelFocusPrev[] = "focus_prev";
+const char kAccelFocusNext[] = "focus_next";
const char kAccelNameDeviceRequisition[] = "device_requisition";
const char kAccelNameDeviceRequisitionRemora[] = "device_requisition_remora";
const char kAccelNameAppLaunchBailout[] = "app_launch_bailout";
kAccelNameReset;
accel_map_[ui::Accelerator(ui::VKEY_LEFT, ui::EF_NONE)] =
- kAccelNameLeft;
-
+ kAccelFocusPrev;
accel_map_[ui::Accelerator(ui::VKEY_RIGHT, ui::EF_NONE)] =
- kAccelNameRight;
+ kAccelFocusNext;
+
+ // Use KEY_RELEASED because Gaia consumes KEY_PRESSED for up/down key.
+ ui::Accelerator key_up(ui::VKEY_UP, ui::EF_NONE);
+ key_up.set_type(ui::ET_KEY_RELEASED);
+ ui::Accelerator key_down(ui::VKEY_DOWN, ui::EF_NONE);
+ key_down.set_type(ui::ET_KEY_RELEASED);
+ accel_map_[key_up] = kAccelFocusPrev;
+ accel_map_[key_down] = kAccelFocusNext;
accel_map_[ui::Accelerator(
ui::VKEY_D, ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN | ui::EF_SHIFT_DOWN)] =
WebContents* web_contents = webui_login_->GetWebContents();
// Create the password manager that is needed for the proxy.
- PasswordManagerDelegateImpl::CreateForWebContents(web_contents);
- PasswordManager::CreateForWebContentsAndDelegate(
- web_contents, PasswordManagerDelegateImpl::FromWebContents(web_contents));
+ ChromePasswordManagerClient::CreateForWebContents(web_contents);
// LoginHandlerViews uses a constrained window for the password manager view.
WebContentsModalDialogManager::CreateForWebContents(web_contents);
// Make sure error bubble is cleared on keyboard event. This is needed
// when the focus is inside an iframe. Only clear on KeyDown to prevent hiding
// an immediate authentication error (See crbug.com/103643).
- if (event.type == WebKit::WebInputEvent::KeyDown) {
+ if (event.type == blink::WebInputEvent::KeyDown) {
content::WebUI* web_ui = GetWebUI();
if (web_ui)
web_ui->CallJavascriptFunction("cr.ui.Oobe.clearErrors");
NOTREACHED() << "Media stream not allowed for WebUI";
}
+bool WebUILoginView::PreHandleGestureEvent(
+ content::WebContents* source,
+ const blink::WebGestureEvent& event) {
+ // Disable pinch zooming.
+ return event.type == blink::WebGestureEvent::GesturePinchBegin ||
+ event.type == blink::WebGestureEvent::GesturePinchUpdate ||
+ event.type == blink::WebGestureEvent::GesturePinchEnd;
+}
+
void WebUILoginView::DidFailProvisionalLoad(
int64 frame_id,
- const string16& frame_unique_name,
+ const base::string16& frame_unique_name,
bool is_main_frame,
const GURL& validated_url,
int error_code,
- const string16& error_description,
+ const base::string16& error_description,
content::RenderViewHost* render_view_host) {
- if (frame_unique_name != UTF8ToUTF16("gaia-frame"))
+ if (frame_unique_name != base::UTF8ToUTF16("gaia-frame"))
return;
- base::FundamentalValue error_value(-error_code);
GetWebUI()->CallJavascriptFunction("login.GaiaSigninScreen.onFrameError",
- error_value);
+ base::FundamentalValue(-error_code),
+ base::StringValue(validated_url.spec()));
}
void WebUILoginView::OnLoginPromptVisible() {