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

Side by Side Diff: services/ui/ime/ime_server_impl.h

Issue 2473483008: IME for Mus: Use the catalog service to decide IME driver's name. (Closed)
Patch Set: Some cleanup. Created 4 years, 1 month 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
« no previous file with comments | « services/ui/ime/BUILD.gn ('k') | services/ui/ime/ime_server_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 SERVICES_UI_IME_IME_SERVER_IMPL_H_ 5 #ifndef SERVICES_UI_IME_IME_SERVER_IMPL_H_
6 #define SERVICES_UI_IME_IME_SERVER_IMPL_H_ 6 #define SERVICES_UI_IME_IME_SERVER_IMPL_H_
7 7
8 #include <utility> 8 #include <utility>
9 9
10 #include "mojo/public/cpp/bindings/binding_set.h" 10 #include "mojo/public/cpp/bindings/binding_set.h"
11 #include "services/catalog/public/interfaces/catalog.mojom.h"
11 #include "services/ui/public/interfaces/ime.mojom.h" 12 #include "services/ui/public/interfaces/ime.mojom.h"
12 13
13 namespace service_manager { 14 namespace service_manager {
14 class Connector; 15 class Connector;
15 } 16 }
16 17
17 namespace ui { 18 namespace ui {
18 19
19 class IMEServerImpl : public mojom::IMEServer { 20 class IMEServerImpl : public mojom::IMEServer {
20 public: 21 public:
21 IMEServerImpl(); 22 IMEServerImpl();
22 ~IMEServerImpl() override; 23 ~IMEServerImpl() override;
23 24
24 void Init(service_manager::Connector* connector); 25 void Init(service_manager::Connector* connector);
25 void AddBinding(mojom::IMEServerRequest request); 26 void AddBinding(mojom::IMEServerRequest request);
26 void OnDriverChanged(mojom::IMEDriverPtr driver); 27 void OnDriverChanged(mojom::IMEDriverPtr driver);
27 28
28 private: 29 private:
29 // mojom::IMEServer: 30 // mojom::IMEServer:
30 void StartSession(mojom::TextInputClientPtr client, 31 void StartSession(mojom::TextInputClientPtr client,
31 mojom::InputMethodRequest input_method) override; 32 mojom::InputMethodRequest input_method) override;
32 33
34 void OnGotCatalogEntries(std::vector<catalog::mojom::EntryPtr> entries);
35
36 service_manager::Connector* connector_;
37 catalog::mojom::CatalogPtr catalog_;
33 mojo::BindingSet<mojom::IMEServer> bindings_; 38 mojo::BindingSet<mojom::IMEServer> bindings_;
34 mojom::IMEDriverPtr driver_; 39 mojom::IMEDriverPtr driver_;
35 int current_id_; 40 int current_id_;
36 41
37 using PendingRequest = 42 using PendingRequest =
38 std::pair<mojom::TextInputClientPtr, mojom::InputMethodRequest>; 43 std::pair<mojom::TextInputClientPtr, mojom::InputMethodRequest>;
39 std::queue<PendingRequest> pending_requests_; 44 std::queue<PendingRequest> pending_requests_;
40 45
41 DISALLOW_COPY_AND_ASSIGN(IMEServerImpl); 46 DISALLOW_COPY_AND_ASSIGN(IMEServerImpl);
42 }; 47 };
43 48
44 } // namespace ui 49 } // namespace ui
45 50
46 #endif // SERVICES_UI_IME_IME_SERVER_IMPL_H_ 51 #endif // SERVICES_UI_IME_IME_SERVER_IMPL_H_
OLDNEW
« no previous file with comments | « services/ui/ime/BUILD.gn ('k') | services/ui/ime/ime_server_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698