blob: 8fcb635b38ea5ae1ca9ccd9f561c3b9064ead911 [file] [log] [blame]
[email protected]caf706f2010-10-26 17:54:081// Copyright (c) 2010 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_RENDERER_EXTERNAL_POPUP_MENU_H_
6#define CHROME_RENDERER_EXTERNAL_POPUP_MENU_H_
7
8#include "base/basictypes.h"
9#include "third_party/WebKit/WebKit/chromium/public/WebExternalPopupMenu.h"
10#include "third_party/WebKit/WebKit/chromium/public/WebPopupMenuInfo.h"
11
12class RenderView;
13namespace WebKit {
14class WebExternalPopupMenuClient;
15}
16
17class ExternalPopupMenu : public WebKit::WebExternalPopupMenu {
18 public:
19 ExternalPopupMenu(RenderView* render_view,
20 const WebKit::WebPopupMenuInfo& popup_menu_info,
21 WebKit::WebExternalPopupMenuClient* popup_menu_client);
22
23 // Called when the user has selected an item. |selected_item| is -1 if the
24 // user canceled the popup.
25 void DidSelectItem(int selected_index);
26
27 // WebKit::WebExternalPopupMenu implementation:
28 virtual void show(const WebKit::WebRect& bounds);
29 virtual void close();
30
31 private:
32 RenderView* render_view_;
33 WebKit::WebPopupMenuInfo popup_menu_info_;
34 WebKit::WebExternalPopupMenuClient* popup_menu_client_;
35
36 DISALLOW_COPY_AND_ASSIGN(ExternalPopupMenu);
37};
38
39#endif // CHROME_RENDERER_EXTERNAL_POPUP_MENU_H_
40