OLD | NEW |
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" |
11 #include "chromeos/dbus/ibus/ibus_text.h" | 11 #include "chromeos/dbus/ibus/ibus_text.h" |
12 #include "dbus/bus.h" | 12 #include "dbus/bus.h" |
13 #include "dbus/message.h" | 13 #include "dbus/message.h" |
14 #include "dbus/object_path.h" | 14 #include "dbus/object_path.h" |
15 #include "dbus/object_proxy.h" | 15 #include "dbus/object_proxy.h" |
16 | 16 |
17 namespace chromeos { | 17 namespace chromeos { |
18 | 18 |
19 // TODO(nona): Remove after complete libibus removal. | 19 using chromeos::IBusText; |
20 using chromeos::ibus::IBusText; | |
21 | 20 |
22 namespace { | 21 namespace { |
23 | 22 |
24 // The IBusInputContextClient implementation. | 23 // The IBusInputContextClient implementation. |
25 class IBusInputContextClientImpl : public IBusInputContextClient { | 24 class IBusInputContextClientImpl : public IBusInputContextClient { |
26 public: | 25 public: |
27 IBusInputContextClientImpl() | 26 IBusInputContextClientImpl() |
28 : proxy_(NULL), | 27 : proxy_(NULL), |
29 is_xkb_layout_(true), | 28 is_xkb_layout_(true), |
30 weak_ptr_factory_(this) { | 29 weak_ptr_factory_(this) { |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 } | 135 } |
137 | 136 |
138 // IBusInputContextClient override. | 137 // IBusInputContextClient override. |
139 virtual void SetSurroundingText(const std::string& text, | 138 virtual void SetSurroundingText(const std::string& text, |
140 uint32 start_index, | 139 uint32 start_index, |
141 uint32 end_index) OVERRIDE { | 140 uint32 end_index) OVERRIDE { |
142 dbus::MethodCall method_call( | 141 dbus::MethodCall method_call( |
143 ibus::input_context::kServiceInterface, | 142 ibus::input_context::kServiceInterface, |
144 ibus::input_context::kSetSurroundingTextMethod); | 143 ibus::input_context::kSetSurroundingTextMethod); |
145 dbus::MessageWriter writer(&method_call); | 144 dbus::MessageWriter writer(&method_call); |
146 ibus::AppendStringAsIBusText(text, &writer); | 145 AppendStringAsIBusText(text, &writer); |
147 writer.AppendUint32(start_index); | 146 writer.AppendUint32(start_index); |
148 writer.AppendUint32(end_index); | 147 writer.AppendUint32(end_index); |
149 CallNoResponseMethod(&method_call, | 148 CallNoResponseMethod(&method_call, |
150 ibus::input_context::kSetSurroundingTextMethod); | 149 ibus::input_context::kSetSurroundingTextMethod); |
151 } | 150 } |
152 | 151 |
153 // IBusInputContextClient override. | 152 // IBusInputContextClient override. |
154 virtual void PropertyActivate(const std::string& key, | 153 virtual void PropertyActivate(const std::string& key, |
155 ibus::IBusPropertyState state) OVERRIDE { | 154 ibus::IBusPropertyState state) OVERRIDE { |
156 dbus::MethodCall method_call(ibus::input_context::kServiceInterface, | 155 dbus::MethodCall method_call(ibus::input_context::kServiceInterface, |
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
462 // static | 461 // static |
463 IBusInputContextClient* IBusInputContextClient::Create( | 462 IBusInputContextClient* IBusInputContextClient::Create( |
464 DBusClientImplementationType type) { | 463 DBusClientImplementationType type) { |
465 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) { | 464 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) { |
466 return new IBusInputContextClientImpl(); | 465 return new IBusInputContextClientImpl(); |
467 } | 466 } |
468 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); | 467 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); |
469 return new IBusInputContextClientDaemonlessImpl(); | 468 return new IBusInputContextClientDaemonlessImpl(); |
470 } | 469 } |
471 } // namespace chromeos | 470 } // namespace chromeos |
OLD | NEW |