| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_RENDERER_CONTEXT_MENU_RENDER_VIEW_CONTEXT_MENU_TEST_UTIL_
H_ | 5 #ifndef CHROME_BROWSER_RENDERER_CONTEXT_MENU_RENDER_VIEW_CONTEXT_MENU_TEST_UTIL_
H_ |
| 6 #define CHROME_BROWSER_RENDERER_CONTEXT_MENU_RENDER_VIEW_CONTEXT_MENU_TEST_UTIL_
H_ | 6 #define CHROME_BROWSER_RENDERER_CONTEXT_MENU_RENDER_VIEW_CONTEXT_MENU_TEST_UTIL_
H_ |
| 7 | 7 |
| 8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
| 9 #include "chrome/browser/extensions/context_menu_matcher.h" | 9 #include "chrome/browser/extensions/context_menu_matcher.h" |
| 10 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" | 10 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" |
| 11 #include "url/gurl.h" | 11 #include "url/gurl.h" |
| 12 | 12 |
| 13 class Browser; | 13 class Browser; |
| 14 | 14 |
| 15 namespace content { | 15 namespace content { |
| 16 class WebContents; | 16 class WebContents; |
| 17 } | 17 } |
| 18 namespace ui { | 18 namespace ui { |
| 19 class MenuModel; | 19 class MenuModel; |
| 20 } | 20 } |
| 21 | 21 |
| 22 class TestRenderViewContextMenu : public RenderViewContextMenu { | 22 class TestRenderViewContextMenu : public RenderViewContextMenu { |
| 23 public: | 23 public: |
| 24 TestRenderViewContextMenu(content::RenderFrameHost* render_frame_host, | 24 TestRenderViewContextMenu(content::RenderFrameHost* render_frame_host, |
| 25 content::ContextMenuParams params); | 25 content::ContextMenuParams params); |
| 26 virtual ~TestRenderViewContextMenu(); | 26 ~TestRenderViewContextMenu() override; |
| 27 | 27 |
| 28 // Factory. | 28 // Factory. |
| 29 // This is a lightweight method to create a test RenderViewContextMenu | 29 // This is a lightweight method to create a test RenderViewContextMenu |
| 30 // instance. | 30 // instance. |
| 31 // Use the constructor if you want to create menu with fine-grained params. | 31 // Use the constructor if you want to create menu with fine-grained params. |
| 32 static TestRenderViewContextMenu* Create(content::WebContents* web_contents, | 32 static TestRenderViewContextMenu* Create(content::WebContents* web_contents, |
| 33 const GURL& page_url, | 33 const GURL& page_url, |
| 34 const GURL& link_url, | 34 const GURL& link_url, |
| 35 const GURL& frame_url); | 35 const GURL& frame_url); |
| 36 | 36 |
| 37 // Implementation of pure virtuals in RenderViewContextMenu. | 37 // Implementation of pure virtuals in RenderViewContextMenu. |
| 38 virtual bool GetAcceleratorForCommandId( | 38 bool GetAcceleratorForCommandId(int command_id, |
| 39 int command_id, | 39 ui::Accelerator* accelerator) override; |
| 40 ui::Accelerator* accelerator) override; | |
| 41 | 40 |
| 42 // Returns true if command specified by |command_id| is present | 41 // Returns true if command specified by |command_id| is present |
| 43 // in the menu. | 42 // in the menu. |
| 44 // List of command ids can be found in chrome/app/chrome_command_ids.h. | 43 // List of command ids can be found in chrome/app/chrome_command_ids.h. |
| 45 bool IsItemPresent(int command_id); | 44 bool IsItemPresent(int command_id); |
| 46 | 45 |
| 47 // Searches for an menu item with |command_id|. If it's found, the return | 46 // Searches for an menu item with |command_id|. If it's found, the return |
| 48 // value is true and the model and index where it appears in that model are | 47 // value is true and the model and index where it appears in that model are |
| 49 // returned in |found_model| and |found_index|. Otherwise returns false. | 48 // returned in |found_model| and |found_index|. Otherwise returns false. |
| 50 bool GetMenuModelAndItemIndex(int command_id, | 49 bool GetMenuModelAndItemIndex(int command_id, |
| 51 ui::MenuModel** found_model, | 50 ui::MenuModel** found_model, |
| 52 int* found_index); | 51 int* found_index); |
| 53 | 52 |
| 54 extensions::ContextMenuMatcher& extension_items() { return extension_items_; } | 53 extensions::ContextMenuMatcher& extension_items() { return extension_items_; } |
| 55 | 54 |
| 56 private: | 55 private: |
| 57 DISALLOW_COPY_AND_ASSIGN(TestRenderViewContextMenu); | 56 DISALLOW_COPY_AND_ASSIGN(TestRenderViewContextMenu); |
| 58 }; | 57 }; |
| 59 | 58 |
| 60 #endif // CHROME_BROWSER_RENDERER_CONTEXT_MENU_RENDER_VIEW_CONTEXT_MENU_TEST_UT
IL_H_ | 59 #endif // CHROME_BROWSER_RENDERER_CONTEXT_MENU_RENDER_VIEW_CONTEXT_MENU_TEST_UT
IL_H_ |
| OLD | NEW |