OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_BASE_IME_REMOTE_INPUT_METHOD_WIN_H_ | 5 #ifndef UI_BASE_IME_REMOTE_INPUT_METHOD_WIN_H_ |
6 #define UI_BASE_IME_REMOTE_INPUT_METHOD_WIN_H_ | 6 #define UI_BASE_IME_REMOTE_INPUT_METHOD_WIN_H_ |
7 | 7 |
8 #include <Windows.h> | 8 #include <Windows.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 14 matching lines...) Expand all Loading... |
25 class InputMethod; | 25 class InputMethod; |
26 struct CompositionText; | 26 struct CompositionText; |
27 | 27 |
28 // RemoteInputMethodWin is a special implementation of ui::InputMethod that | 28 // RemoteInputMethodWin is a special implementation of ui::InputMethod that |
29 // works as a proxy of an IME handler running in the metro_driver process. | 29 // works as a proxy of an IME handler running in the metro_driver process. |
30 // RemoteInputMethodWin works as follows. | 30 // RemoteInputMethodWin works as follows. |
31 // - Any action to RemoteInputMethodWin should be delegated to the | 31 // - Any action to RemoteInputMethodWin should be delegated to the |
32 // metro_driver process via RemoteInputMethodDelegateWin. | 32 // metro_driver process via RemoteInputMethodDelegateWin. |
33 // - Data retrieval from RemoteInputMethodPrivateWin is implemented with | 33 // - Data retrieval from RemoteInputMethodPrivateWin is implemented with |
34 // data cache. Whenever the IME state in the metro_driver process is changed, | 34 // data cache. Whenever the IME state in the metro_driver process is changed, |
35 // RemoteRootWindowHostWin, which receives IPCs from metro_driver process, | 35 // RemoteWindowTreeHostWin, which receives IPCs from metro_driver process, |
36 // will call RemoteInputMethodPrivateWin::OnCandidatePopupChanged and/or | 36 // will call RemoteInputMethodPrivateWin::OnCandidatePopupChanged and/or |
37 // RemoteInputMethodPrivateWin::OnInputSourceChanged accordingly so that | 37 // RemoteInputMethodPrivateWin::OnInputSourceChanged accordingly so that |
38 // the state cache should be updated. | 38 // the state cache should be updated. |
39 // - Some IPC messages that represent actions to TextInputClient should be | 39 // - Some IPC messages that represent actions to TextInputClient should be |
40 // delegated to RemoteInputMethodPrivateWin so that RemoteInputMethodWin can | 40 // delegated to RemoteInputMethodPrivateWin so that RemoteInputMethodWin can |
41 // work as a real proxy. | 41 // work as a real proxy. |
42 | 42 |
43 // Returns true if |widget| requires RemoteInputMethodWin. | 43 // Returns true if |widget| requires RemoteInputMethodWin. |
44 bool IsRemoteInputMethodWinRequired(gfx::AcceleratedWidget widget); | 44 bool IsRemoteInputMethodWinRequired(gfx::AcceleratedWidget widget); |
45 | 45 |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 // type of the focused text input client is TEXT_INPUT_TYPE_NONE. | 91 // type of the focused text input client is TEXT_INPUT_TYPE_NONE. |
92 virtual void OnTextCommitted(const base::string16& text) = 0; | 92 virtual void OnTextCommitted(const base::string16& text) = 0; |
93 | 93 |
94 private: | 94 private: |
95 DISALLOW_COPY_AND_ASSIGN(RemoteInputMethodPrivateWin); | 95 DISALLOW_COPY_AND_ASSIGN(RemoteInputMethodPrivateWin); |
96 }; | 96 }; |
97 | 97 |
98 } // namespace ui | 98 } // namespace ui |
99 | 99 |
100 #endif // UI_BASE_IME_REMOTE_INPUT_METHOD_WIN_H_ | 100 #endif // UI_BASE_IME_REMOTE_INPUT_METHOD_WIN_H_ |
OLD | NEW |