summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host
diff options
context:
space:
mode:
authorjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-18 18:54:35 +0000
committerjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-18 18:54:35 +0000
commit130efb094a3c96bda00da28615b5c1e0481b7218 (patch)
treef8bb5604c20d811f4073a85ab4385eaced96918b /chrome/browser/renderer_host
parent997e22224e1062a4cd39373057a68879a1d7a3ac (diff)
downloadchromium_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')
-rw-r--r--chrome/browser/renderer_host/render_view_host.cc4
-rw-r--r--chrome/browser/renderer_host/render_view_host.h1
-rw-r--r--chrome/browser/renderer_host/render_view_host_delegate.h3
-rw-r--r--chrome/browser/renderer_host/render_widget_host.cc4
-rw-r--r--chrome/browser/renderer_host/render_widget_host.h2
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.