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 | 5 |
6 #include "chrome/browser/guest_view/web_view/chrome_web_view_guest_delegate.h" | 6 #include "chrome/browser/guest_view/web_view/chrome_web_view_guest_delegate.h" |
7 | 7 |
| 8 #include <memory> |
8 #include <utility> | 9 #include <utility> |
9 | 10 |
10 #include "base/memory/ptr_util.h" | 11 #include "base/memory/ptr_util.h" |
11 #include "build/build_config.h" | 12 #include "build/build_config.h" |
12 #include "chrome/browser/extensions/chrome_extension_web_contents_observer.h" | 13 #include "chrome/browser/extensions/chrome_extension_web_contents_observer.h" |
13 #include "chrome/browser/favicon/favicon_utils.h" | 14 #include "chrome/browser/favicon/favicon_utils.h" |
14 #include "chrome/browser/profiles/profile.h" | 15 #include "chrome/browser/profiles/profile.h" |
15 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" | 16 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" |
16 #include "chrome/browser/ui/ash/ash_util.h" | 17 #include "chrome/browser/ui/ash/ash_util.h" |
17 #include "chrome/browser/ui/pdf/chrome_pdf_web_contents_helper_client.h" | 18 #include "chrome/browser/ui/pdf/chrome_pdf_web_contents_helper_client.h" |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 base::Bind(&ChromeWebViewGuestDelegate::OnAccessibilityStatusChanged, | 87 base::Bind(&ChromeWebViewGuestDelegate::OnAccessibilityStatusChanged, |
87 weak_ptr_factory_.GetWeakPtr())); | 88 weak_ptr_factory_.GetWeakPtr())); |
88 #endif | 89 #endif |
89 } | 90 } |
90 | 91 |
91 // static | 92 // static |
92 std::unique_ptr<base::ListValue> ChromeWebViewGuestDelegate::MenuModelToValue( | 93 std::unique_ptr<base::ListValue> ChromeWebViewGuestDelegate::MenuModelToValue( |
93 const ui::SimpleMenuModel& menu_model) { | 94 const ui::SimpleMenuModel& menu_model) { |
94 std::unique_ptr<base::ListValue> items(new base::ListValue()); | 95 std::unique_ptr<base::ListValue> items(new base::ListValue()); |
95 for (int i = 0; i < menu_model.GetItemCount(); ++i) { | 96 for (int i = 0; i < menu_model.GetItemCount(); ++i) { |
96 base::DictionaryValue* item_value = new base::DictionaryValue(); | 97 std::unique_ptr<base::DictionaryValue> item_value( |
| 98 new base::DictionaryValue()); |
97 // TODO(lazyboy): We need to expose some kind of enum equivalent of | 99 // TODO(lazyboy): We need to expose some kind of enum equivalent of |
98 // |command_id| instead of plain integers. | 100 // |command_id| instead of plain integers. |
99 item_value->SetInteger(webview::kMenuItemCommandId, | 101 item_value->SetInteger(webview::kMenuItemCommandId, |
100 menu_model.GetCommandIdAt(i)); | 102 menu_model.GetCommandIdAt(i)); |
101 item_value->SetString(webview::kMenuItemLabel, menu_model.GetLabelAt(i)); | 103 item_value->SetString(webview::kMenuItemLabel, menu_model.GetLabelAt(i)); |
102 items->Append(item_value); | 104 items->Append(std::move(item_value)); |
103 } | 105 } |
104 return items; | 106 return items; |
105 } | 107 } |
106 | 108 |
107 void ChromeWebViewGuestDelegate::OnShowContextMenu(int request_id) { | 109 void ChromeWebViewGuestDelegate::OnShowContextMenu(int request_id) { |
108 if (!pending_menu_) | 110 if (!pending_menu_) |
109 return; | 111 return; |
110 | 112 |
111 // Make sure this was the correct request. | 113 // Make sure this was the correct request. |
112 if (request_id != pending_context_menu_request_id_) | 114 if (request_id != pending_context_menu_request_id_) |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 | 159 |
158 void ChromeWebViewGuestDelegate::SetContextMenuPosition( | 160 void ChromeWebViewGuestDelegate::SetContextMenuPosition( |
159 const gfx::Point& position) { | 161 const gfx::Point& position) { |
160 if (context_menu_position_ == nullptr) | 162 if (context_menu_position_ == nullptr) |
161 context_menu_position_.reset(new gfx::Point()); | 163 context_menu_position_.reset(new gfx::Point()); |
162 | 164 |
163 *context_menu_position_ = position; | 165 *context_menu_position_ = position; |
164 } | 166 } |
165 | 167 |
166 } // namespace extensions | 168 } // namespace extensions |
OLD | NEW |