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

Side by Side Diff: chromeos/dbus/ibus/ibus_input_context_client.cc

Issue 10825154: Extends IBusContextClient to handle SetSurroundingText. (Closed) Base URL: http://git.chromium.org/chromium/src.git@surrounding_support
Patch Set: Address comments Created 8 years, 4 months 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
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 "chromeos/dbus/ibus/ibus_input_context_client.h" 5 #include "chromeos/dbus/ibus/ibus_input_context_client.h"
6 6
7 #include <string> 7 #include <string>
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "chromeos/dbus/ibus/ibus_constants.h" 10 #include "chromeos/dbus/ibus/ibus_constants.h"
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 proxy_->CallMethodWithErrorCallback( 176 proxy_->CallMethodWithErrorCallback(
177 &method_call, 177 &method_call,
178 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 178 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
179 base::Bind(&IBusInputContextClientImpl::OnProcessKeyEvent, 179 base::Bind(&IBusInputContextClientImpl::OnProcessKeyEvent,
180 callback, 180 callback,
181 error_callback), 181 error_callback),
182 base::Bind(&IBusInputContextClientImpl::OnProecessKeyEventFail, 182 base::Bind(&IBusInputContextClientImpl::OnProecessKeyEventFail,
183 error_callback)); 183 error_callback));
184 } 184 }
185 185
186 // IBusInputContextClient override.
187 void SetSurroundingText(const std::string& text,
188 uint32 start_index,
189 uint32 end_index) OVERRIDE {
190 dbus::MethodCall method_call(ibus::input_context::kServiceInterface,
191 ibus::input_context::kSetSurroundingText);
192 dbus::MessageWriter writer(&method_call);
193 ibus::AppendStringAsIBusText(text, &writer);
194 writer.AppendUint32(start_index);
195 writer.AppendUint32(end_index);
196 CallNoResponseMethod(&method_call,
197 ibus::input_context::kSetSurroundingText);
198 }
199
186 private: 200 private:
187 void CallNoResponseMethod(dbus::MethodCall* method_call, 201 void CallNoResponseMethod(dbus::MethodCall* method_call,
188 const std::string& method_name) { 202 const std::string& method_name) {
189 proxy_->CallMethodWithErrorCallback( 203 proxy_->CallMethodWithErrorCallback(
190 method_call, 204 method_call,
191 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 205 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
192 base::Bind(&IBusInputContextClientImpl::DefaultCallback, 206 base::Bind(&IBusInputContextClientImpl::DefaultCallback,
193 method_name), 207 method_name),
194 base::Bind(&IBusInputContextClientImpl::DefaultErrorCallback, 208 base::Bind(&IBusInputContextClientImpl::DefaultErrorCallback,
195 method_name)); 209 method_name));
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 virtual void Reset() OVERRIDE {} 417 virtual void Reset() OVERRIDE {}
404 virtual void SetCursorLocation(int32 x, int32 y, int32 w, int32 h) OVERRIDE {} 418 virtual void SetCursorLocation(int32 x, int32 y, int32 w, int32 h) OVERRIDE {}
405 virtual void ProcessKeyEvent( 419 virtual void ProcessKeyEvent(
406 uint32 keyval, 420 uint32 keyval,
407 uint32 keycode, 421 uint32 keycode,
408 uint32 state, 422 uint32 state,
409 const ProcessKeyEventCallback& callback, 423 const ProcessKeyEventCallback& callback,
410 const ErrorCallback& error_callback) OVERRIDE { 424 const ErrorCallback& error_callback) OVERRIDE {
411 callback.Run(false); 425 callback.Run(false);
412 } 426 }
427 void SetSurroundingText(const std::string& text,
428 uint32 start_index,
429 uint32 end_index) OVERRIDE {}
413 430
414 private: 431 private:
415 DISALLOW_COPY_AND_ASSIGN(IBusInputContextClientStubImpl); 432 DISALLOW_COPY_AND_ASSIGN(IBusInputContextClientStubImpl);
416 }; 433 };
417 434
418 } // namespace 435 } // namespace
419 436
420 /////////////////////////////////////////////////////////////////////////////// 437 ///////////////////////////////////////////////////////////////////////////////
421 // IBusInputContextClient 438 // IBusInputContextClient
422 439
423 IBusInputContextClient::IBusInputContextClient() {} 440 IBusInputContextClient::IBusInputContextClient() {}
424 441
425 IBusInputContextClient::~IBusInputContextClient() {} 442 IBusInputContextClient::~IBusInputContextClient() {}
426 443
427 // static 444 // static
428 IBusInputContextClient* IBusInputContextClient::Create( 445 IBusInputContextClient* IBusInputContextClient::Create(
429 DBusClientImplementationType type) { 446 DBusClientImplementationType type) {
430 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) { 447 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) {
431 return new IBusInputContextClientImpl(); 448 return new IBusInputContextClientImpl();
432 } 449 }
433 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); 450 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type);
434 return new IBusInputContextClientStubImpl(); 451 return new IBusInputContextClientStubImpl();
435 } 452 }
436 } // namespace chromeos 453 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/dbus/ibus/ibus_input_context_client.h ('k') | chromeos/dbus/ibus/ibus_input_context_client_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698