diff options
author | jcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-18 18:54:35 +0000 |
---|---|---|
committer | jcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-18 18:54:35 +0000 |
commit | 130efb094a3c96bda00da28615b5c1e0481b7218 (patch) | |
tree | f8bb5604c20d811f4073a85ab4385eaced96918b /chrome/browser/renderer_host | |
parent | 997e22224e1062a4cd39373057a68879a1d7a3ac (diff) | |
download | chromium_src-130efb094a3c96bda00da28615b5c1e0481b7218.zip chromium_src-130efb094a3c96bda00da28615b5c1e0481b7218.tar.gz chromium_src-130efb094a3c96bda00da28615b5c1e0481b7218.tar.bz2 |
This CL makes the browser focus tests faster by replacing
some time-outs with notifications.
BUG=22065
TEST=Run the interactive tests, especially BrowserFocusTest*FocusTraversal*
These tests should run in few seconds.
Review URL: http://codereview.chromium.org/210013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26597 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host')
5 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc index 932bf89..63cc15e 100644 --- a/chrome/browser/renderer_host/render_view_host.cc +++ b/chrome/browser/renderer_host/render_view_host.cc @@ -1572,6 +1572,10 @@ void RenderViewHost::NotifyRendererResponsive() { delegate_->RendererResponsive(this); } +void RenderViewHost::OnMsgFocusedNodeChanged() { + delegate_->FocusedNodeChanged(); +} + gfx::Rect RenderViewHost::GetRootWindowResizerRect() const { return delegate_->GetRootWindowResizerRect(); } diff --git a/chrome/browser/renderer_host/render_view_host.h b/chrome/browser/renderer_host/render_view_host.h index 52a0c10..b7f2d86 100644 --- a/chrome/browser/renderer_host/render_view_host.h +++ b/chrome/browser/renderer_host/render_view_host.h @@ -452,6 +452,7 @@ class RenderViewHost : public RenderWidgetHost, virtual void OnUserGesture(); virtual void NotifyRendererUnresponsive(); virtual void NotifyRendererResponsive(); + virtual void OnMsgFocusedNodeChanged(); // IPC message handlers. void OnMsgShowView(int route_id, diff --git a/chrome/browser/renderer_host/render_view_host_delegate.h b/chrome/browser/renderer_host/render_view_host_delegate.h index c1e301c..74dc44e 100644 --- a/chrome/browser/renderer_host/render_view_host_delegate.h +++ b/chrome/browser/renderer_host/render_view_host_delegate.h @@ -544,6 +544,9 @@ class RenderViewHostDelegate { // The RenderView has inserted one css file into page. virtual void DidInsertCSS() {} + + // A different node in the page got focused. + virtual void FocusedNodeChanged() {} }; #endif // CHROME_BROWSER_RENDERER_HOST_RENDER_VIEW_HOST_DELEGATE_H_ diff --git a/chrome/browser/renderer_host/render_widget_host.cc b/chrome/browser/renderer_host/render_widget_host.cc index 05b90c98..2bdf11c 100644 --- a/chrome/browser/renderer_host/render_widget_host.cc +++ b/chrome/browser/renderer_host/render_widget_host.cc @@ -132,6 +132,7 @@ void RenderWidgetHost::OnMessageReceived(const IPC::Message &msg) { IPC_MESSAGE_HANDLER(ViewHostMsg_HandleInputEvent_ACK, OnMsgInputEventAck) IPC_MESSAGE_HANDLER(ViewHostMsg_Focus, OnMsgFocus) IPC_MESSAGE_HANDLER(ViewHostMsg_Blur, OnMsgBlur) + IPC_MESSAGE_HANDLER(ViewHostMsg_FocusedNodeChanged, OnMsgFocusedNodeChanged) IPC_MESSAGE_HANDLER(ViewHostMsg_SetCursor, OnMsgSetCursor) IPC_MESSAGE_HANDLER(ViewHostMsg_ImeUpdateStatus, OnMsgImeUpdateStatus) #if defined(OS_LINUX) @@ -778,6 +779,9 @@ void RenderWidgetHost::OnMsgBlur() { } } +void RenderWidgetHost::OnMsgFocusedNodeChanged() { +} + void RenderWidgetHost::OnMsgSetCursor(const WebCursor& cursor) { if (!view_) { return; diff --git a/chrome/browser/renderer_host/render_widget_host.h b/chrome/browser/renderer_host/render_widget_host.h index b76d4c7..a80d1fd 100644 --- a/chrome/browser/renderer_host/render_widget_host.h +++ b/chrome/browser/renderer_host/render_widget_host.h @@ -406,6 +406,8 @@ class RenderWidgetHost : public IPC::Channel::Listener, void OnMsgInputEventAck(const IPC::Message& message); void OnMsgFocus(); void OnMsgBlur(); + virtual void OnMsgFocusedNodeChanged(); + void OnMsgSetCursor(const WebCursor& cursor); // Using int instead of ViewHostMsg_ImeControl for control's type to avoid // having to bring in render_messages.h in a header file. |