Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Side by Side Diff: content/browser/browser_plugin/test_browser_plugin_guest.cc

Issue 103403006: Implement Input Method related WebPlugin interface for browser plugin (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Translate coordinates of parameter for ImeCompositionRangeChanged Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "content/browser/browser_plugin/test_browser_plugin_guest.h" 5 #include "content/browser/browser_plugin/test_browser_plugin_guest.h"
6 6
7 #include "base/test/test_timeouts.h" 7 #include "base/test/test_timeouts.h"
8 #include "content/browser/renderer_host/render_view_host_impl.h" 8 #include "content/browser/renderer_host/render_view_host_impl.h"
9 #include "content/browser/web_contents/web_contents_impl.h" 9 #include "content/browser/web_contents/web_contents_impl.h"
10 #include "content/common/browser_plugin/browser_plugin_messages.h" 10 #include "content/common/browser_plugin/browser_plugin_messages.h"
11 11
12 namespace content { 12 namespace content {
13 13
14 class BrowserPluginGuest; 14 class BrowserPluginGuest;
15 15
16 TestBrowserPluginGuest::TestBrowserPluginGuest( 16 TestBrowserPluginGuest::TestBrowserPluginGuest(
17 int instance_id, 17 int instance_id,
18 WebContentsImpl* web_contents) 18 WebContentsImpl* web_contents)
19 : BrowserPluginGuest(instance_id, false, web_contents, NULL), 19 : BrowserPluginGuest(instance_id, false, web_contents, NULL),
20 update_rect_count_(0), 20 update_rect_count_(0),
21 damage_buffer_call_count_(0), 21 damage_buffer_call_count_(0),
22 exit_observed_(false), 22 exit_observed_(false),
23 focus_observed_(false), 23 focus_observed_(false),
24 blur_observed_(false), 24 blur_observed_(false),
25 advance_focus_observed_(false), 25 advance_focus_observed_(false),
26 was_hidden_observed_(false), 26 was_hidden_observed_(false),
27 set_damage_buffer_observed_(false), 27 set_damage_buffer_observed_(false),
28 input_observed_(false), 28 input_observed_(false),
29 load_stop_observed_(false), 29 load_stop_observed_(false),
30 ime_cancel_observed_(false),
30 waiting_for_damage_buffer_with_size_(false), 31 waiting_for_damage_buffer_with_size_(false),
31 last_damage_buffer_size_(gfx::Size()) { 32 last_damage_buffer_size_(gfx::Size()) {
32 } 33 }
33 34
34 TestBrowserPluginGuest::~TestBrowserPluginGuest() { 35 TestBrowserPluginGuest::~TestBrowserPluginGuest() {
35 } 36 }
36 37
37 WebContentsImpl* TestBrowserPluginGuest::web_contents() const { 38 WebContentsImpl* TestBrowserPluginGuest::web_contents() const {
38 return static_cast<WebContentsImpl*>(BrowserPluginGuest::web_contents()); 39 return static_cast<WebContentsImpl*>(BrowserPluginGuest::web_contents());
39 } 40 }
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 last_view_size_observed_ = gfx::Size(); 175 last_view_size_observed_ = gfx::Size();
175 return; 176 return;
176 } 177 }
177 178
178 expected_auto_view_size_ = view_size; 179 expected_auto_view_size_ = view_size;
179 auto_view_size_message_loop_runner_ = new MessageLoopRunner(); 180 auto_view_size_message_loop_runner_ = new MessageLoopRunner();
180 auto_view_size_message_loop_runner_->Run(); 181 auto_view_size_message_loop_runner_->Run();
181 last_view_size_observed_ = gfx::Size(); 182 last_view_size_observed_ = gfx::Size();
182 } 183 }
183 184
185 void TestBrowserPluginGuest::WaitForImeCancel() {
186 if (ime_cancel_observed_) {
187 ime_cancel_observed_ = false;
188 return;
189 }
190
191 ime_cancel_message_loop_runner_ = new MessageLoopRunner();
192 ime_cancel_message_loop_runner_->Run();
193 ime_cancel_observed_ = false;
194 }
195
184 void TestBrowserPluginGuest::OnSetFocus(int instance_id, bool focused) { 196 void TestBrowserPluginGuest::OnSetFocus(int instance_id, bool focused) {
185 if (focused) { 197 if (focused) {
186 focus_observed_ = true; 198 focus_observed_ = true;
187 if (focus_message_loop_runner_.get()) 199 if (focus_message_loop_runner_.get())
188 focus_message_loop_runner_->Quit(); 200 focus_message_loop_runner_->Quit();
189 } else { 201 } else {
190 blur_observed_ = true; 202 blur_observed_ = true;
191 if (blur_message_loop_runner_.get()) 203 if (blur_message_loop_runner_.get())
192 blur_message_loop_runner_->Quit(); 204 blur_message_loop_runner_->Quit();
193 } 205 }
(...skipping 23 matching lines...) Expand all
217 } 229 }
218 230
219 void TestBrowserPluginGuest::DidStopLoading( 231 void TestBrowserPluginGuest::DidStopLoading(
220 RenderViewHost* render_view_host) { 232 RenderViewHost* render_view_host) {
221 BrowserPluginGuest::DidStopLoading(render_view_host); 233 BrowserPluginGuest::DidStopLoading(render_view_host);
222 load_stop_observed_ = true; 234 load_stop_observed_ = true;
223 if (load_stop_message_loop_runner_.get()) 235 if (load_stop_message_loop_runner_.get())
224 load_stop_message_loop_runner_->Quit(); 236 load_stop_message_loop_runner_->Quit();
225 } 237 }
226 238
239 void TestBrowserPluginGuest::OnImeCancelComposition() {
240 if (!ime_cancel_observed_) {
241 ime_cancel_observed_ = true;
242 if (ime_cancel_message_loop_runner_.get())
243 ime_cancel_message_loop_runner_->Quit();
244 }
245 BrowserPluginGuest::OnImeCancelComposition();
246 }
247
227 void TestBrowserPluginGuest::WasHidden() { 248 void TestBrowserPluginGuest::WasHidden() {
228 was_hidden_observed_ = true; 249 was_hidden_observed_ = true;
229 if (was_hidden_message_loop_runner_.get()) 250 if (was_hidden_message_loop_runner_.get())
230 was_hidden_message_loop_runner_->Quit(); 251 was_hidden_message_loop_runner_->Quit();
231 } 252 }
232 253
233 } // namespace content 254 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698