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 #include "win8/metro_driver/ime/text_service.h" | 5 #include "win8/metro_driver/ime/text_service.h" |
6 | 6 |
7 #include <msctf.h> | 7 #include <msctf.h> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/win/scoped_variant.h" | 10 #include "base/win/scoped_variant.h" |
(...skipping 28 matching lines...) Expand all Loading... |
39 // only 4 messages are required to enable basic IME functionality. | 39 // only 4 messages are required to enable basic IME functionality. |
40 // | 40 // |
41 // metro_driver process -> browser process | 41 // metro_driver process -> browser process |
42 // Message Type: | 42 // Message Type: |
43 // - MetroViewerHostMsg_ImeCompositionChanged | 43 // - MetroViewerHostMsg_ImeCompositionChanged |
44 // - MetroViewerHostMsg_ImeTextCommitted | 44 // - MetroViewerHostMsg_ImeTextCommitted |
45 // Message Routing: | 45 // Message Routing: |
46 // TextServiceImpl | 46 // TextServiceImpl |
47 // -> ChromeAppViewAsh | 47 // -> ChromeAppViewAsh |
48 // -- (process boundary) -- | 48 // -- (process boundary) -- |
49 // -> RemoteRootWindowHostWin | 49 // -> RemoteWindowTreeHostWin |
50 // -> RemoteInputMethodWin | 50 // -> RemoteInputMethodWin |
51 // | 51 // |
52 // browser process -> metro_driver process | 52 // browser process -> metro_driver process |
53 // Message Type: | 53 // Message Type: |
54 // - MetroViewerHostMsg_ImeCancelComposition | 54 // - MetroViewerHostMsg_ImeCancelComposition |
55 // - MetroViewerHostMsg_ImeTextInputClientUpdated | 55 // - MetroViewerHostMsg_ImeTextInputClientUpdated |
56 // Message Routing: | 56 // Message Routing: |
57 // RemoteInputMethodWin | 57 // RemoteInputMethodWin |
58 // -> RemoteRootWindowHostWin | 58 // -> RemoteWindowTreeHostWin |
59 // -- (process boundary) -- | 59 // -- (process boundary) -- |
60 // -> ChromeAppViewAsh | 60 // -> ChromeAppViewAsh |
61 // -> TextServiceImpl | 61 // -> TextServiceImpl |
62 // | 62 // |
63 // Note that a keyevent may be forwarded through a different path. When a | 63 // Note that a keyevent may be forwarded through a different path. When a |
64 // keyevent is not handled by an IME, such keyevent and subsequent character | 64 // keyevent is not handled by an IME, such keyevent and subsequent character |
65 // events will be sent from the metro_driver process to the browser process as | 65 // events will be sent from the metro_driver process to the browser process as |
66 // following IPC messages. | 66 // following IPC messages. |
67 // - MetroViewerHostMsg_KeyDown | 67 // - MetroViewerHostMsg_KeyDown |
68 // - MetroViewerHostMsg_KeyUp | 68 // - MetroViewerHostMsg_KeyUp |
(...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
484 thread_manager->Deactivate(); | 484 thread_manager->Deactivate(); |
485 return scoped_ptr<TextService>(); | 485 return scoped_ptr<TextService>(); |
486 } | 486 } |
487 return scoped_ptr<TextService>(new TextServiceImpl(thread_manager, | 487 return scoped_ptr<TextService>(new TextServiceImpl(thread_manager, |
488 client_id, | 488 client_id, |
489 window_handle, | 489 window_handle, |
490 delegate)); | 490 delegate)); |
491 } | 491 } |
492 | 492 |
493 } // namespace metro_driver | 493 } // namespace metro_driver |
OLD | NEW |