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

Side by Side Diff: ui/views/mus/text_input_client_impl.h

Issue 2539453002: IME for Mus: Add ui.mojom.CompositionText and its struct traits. (Closed)
Patch Set: cleanup. Created 4 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
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 UI_VIEWS_MUS_TEXT_INPUT_CLIENT_IMPL_H_ 5 #ifndef UI_VIEWS_MUS_TEXT_INPUT_CLIENT_IMPL_H_
6 #define UI_VIEWS_MUS_TEXT_INPUT_CLIENT_IMPL_H_ 6 #define UI_VIEWS_MUS_TEXT_INPUT_CLIENT_IMPL_H_
7 7
8 #include "mojo/public/cpp/bindings/binding.h" 8 #include "mojo/public/cpp/bindings/binding.h"
9 #include "services/ui/public/interfaces/ime.mojom.h" 9 #include "services/ui/public/interfaces/ime/ime.mojom.h"
10 #include "ui/base/ime/composition_text.h"
10 11
11 namespace ui { 12 namespace ui {
12 class TextInputClient; 13 class TextInputClient;
13 } 14 }
14 15
15 namespace views { 16 namespace views {
16 17
17 // TextInputClientImpl receieves updates from IME drivers over Mojo IPC, and 18 // TextInputClientImpl receieves updates from IME drivers over Mojo IPC, and
18 // notifies the underlying ui::TextInputClient accordingly. 19 // notifies the underlying ui::TextInputClient accordingly.
19 class TextInputClientImpl : public ui::mojom::TextInputClient { 20 class TextInputClientImpl : public ui::mojom::TextInputClient {
20 public: 21 public:
21 explicit TextInputClientImpl(ui::TextInputClient* text_input_client); 22 explicit TextInputClientImpl(ui::TextInputClient* text_input_client);
22 ~TextInputClientImpl() override; 23 ~TextInputClientImpl() override;
23 24
24 ui::mojom::TextInputClientPtr CreateInterfacePtrAndBind(); 25 ui::mojom::TextInputClientPtr CreateInterfacePtrAndBind();
25 26
26 private: 27 private:
27 // ui::mojom::TextInputClient: 28 // ui::mojom::TextInputClient:
28 void OnCompositionEvent(ui::mojom::CompositionEventPtr event) override; 29 void SetCompositionText(const ui::CompositionText& composition) override;
30 void ConfirmCompositionText() override;
31 void ClearCompositionText() override;
32 void InsertText(const std::string& text) override;
33 void InsertChar(std::unique_ptr<ui::Event> event) override;
29 34
30 ui::TextInputClient* text_input_client_; 35 ui::TextInputClient* text_input_client_;
31 mojo::Binding<ui::mojom::TextInputClient> binding_; 36 mojo::Binding<ui::mojom::TextInputClient> binding_;
32 37
33 DISALLOW_COPY_AND_ASSIGN(TextInputClientImpl); 38 DISALLOW_COPY_AND_ASSIGN(TextInputClientImpl);
34 }; 39 };
35 40
36 } // namespace views 41 } // namespace views
37 42
38 #endif // UI_VIEWS_MUS_TEXT_INPUT_CLIENT_IMPL_H_ 43 #endif // UI_VIEWS_MUS_TEXT_INPUT_CLIENT_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698