summaryrefslogtreecommitdiffstats
path: root/chrome/common
diff options
context:
space:
mode:
authorjcivelli@google.com <jcivelli@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-07 17:03:12 +0000
committerjcivelli@google.com <jcivelli@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-07 17:03:12 +0000
commit3e2b375b56172a400f75060bd2a827375ea44fea (patch)
tree59f9864d0cf85c5901d686e3757940f8db561328 /chrome/common
parent0d0524fea0ce2adb9aa132f90b63c7deb5410b1f (diff)
downloadchromium_src-3e2b375b56172a400f75060bd2a827375ea44fea.zip
chromium_src-3e2b375b56172a400f75060bd2a827375ea44fea.tar.gz
chromium_src-3e2b375b56172a400f75060bd2a827375ea44fea.tar.bz2
Adding the new WebPopupType to the RenderWidget creation.
BUG=None TEST=Tests that all popups (select popup, autofill, browser actions, bookmark bubble...) work as expected and get the focus correctly. Review URL: http://codereview.chromium.org/1523013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43845 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common')
-rw-r--r--chrome/common/render_messages_internal.h2
-rw-r--r--chrome/common/webkit_param_traits.h19
2 files changed, 20 insertions, 1 deletions
diff --git a/chrome/common/render_messages_internal.h b/chrome/common/render_messages_internal.h
index 68d69d0..eb84df0 100644
--- a/chrome/common/render_messages_internal.h
+++ b/chrome/common/render_messages_internal.h
@@ -953,7 +953,7 @@ IPC_BEGIN_MESSAGES(ViewHost)
// contains the widget being created.
IPC_SYNC_MESSAGE_CONTROL2_1(ViewHostMsg_CreateWidget,
int /* opener_id */,
- bool /* focus on show */,
+ WebKit::WebPopupType /* popup type */,
int /* route_id */)
// These two messages are sent to the parent RenderViewHost to display the
diff --git a/chrome/common/webkit_param_traits.h b/chrome/common/webkit_param_traits.h
index 5dfd90d..270c2f7 100644
--- a/chrome/common/webkit_param_traits.h
+++ b/chrome/common/webkit_param_traits.h
@@ -32,6 +32,7 @@
#include "third_party/WebKit/WebKit/chromium/public/WebFindOptions.h"
#include "third_party/WebKit/WebKit/chromium/public/WebInputEvent.h"
#include "third_party/WebKit/WebKit/chromium/public/WebMediaPlayerAction.h"
+#include "third_party/WebKit/WebKit/chromium/public/WebPopupType.h"
#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h"
#include "third_party/WebKit/WebKit/chromium/public/WebTextDirection.h"
@@ -136,6 +137,24 @@ struct ParamTraits<WebKit::WebConsoleMessage::Level> {
};
template <>
+struct ParamTraits<WebKit::WebPopupType> {
+ typedef WebKit::WebPopupType param_type;
+ static void Write(Message* m, const param_type& p) {
+ WriteParam(m, static_cast<int>(p));
+ }
+ static bool Read(const Message* m, void** iter, param_type* r) {
+ int value;
+ if (!ReadParam(m, iter, &value))
+ return false;
+ *r = static_cast<param_type>(value);
+ return true;
+ }
+ static void Log(const param_type& p, std::wstring* l) {
+ LogParam(static_cast<int>(p), l);
+ }
+};
+
+template <>
struct ParamTraits<WebKit::WebFindOptions> {
typedef WebKit::WebFindOptions param_type;
static void Write(Message* m, const param_type& p) {