Chromium Code Reviews| 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 #ifndef UI_AURA_REMOTE_ROOT_WINDOW_HOST_WIN_H_ | 5 #ifndef UI_AURA_REMOTE_ROOT_WINDOW_HOST_WIN_H_ |
| 6 #define UI_AURA_REMOTE_ROOT_WINDOW_HOST_WIN_H_ | 6 #define UI_AURA_REMOTE_ROOT_WINDOW_HOST_WIN_H_ |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 79 // metro viewer. The on failure callback is invoked on failure. | 79 // metro viewer. The on failure callback is invoked on failure. |
| 80 AURA_EXPORT void HandleSelectFolder(const base::string16& title, | 80 AURA_EXPORT void HandleSelectFolder(const base::string16& title, |
| 81 const SelectFolderCompletion& on_success, | 81 const SelectFolderCompletion& on_success, |
| 82 const FileSelectionCanceled& on_failure); | 82 const FileSelectionCanceled& on_failure); |
| 83 | 83 |
| 84 // RootWindowHost implementaton that receives events from a different | 84 // RootWindowHost implementaton that receives events from a different |
| 85 // process. In the case of Windows this is the Windows 8 (aka Metro) | 85 // process. In the case of Windows this is the Windows 8 (aka Metro) |
| 86 // frontend process, which forwards input events to this class. | 86 // frontend process, which forwards input events to this class. |
| 87 class AURA_EXPORT RemoteRootWindowHostWin : public RootWindowHost { | 87 class AURA_EXPORT RemoteRootWindowHostWin : public RootWindowHost { |
| 88 public: | 88 public: |
| 89 static RemoteRootWindowHostWin* Instance(); | 89 static RemoteRootWindowHostWin* Instance(); |
|
gab
2013/08/26 19:46:03
Document that this will return a RemoteRootWindowH
| |
| 90 static RemoteRootWindowHostWin* Create(const gfx::Rect& bounds); | 90 static RemoteRootWindowHostWin* Create(const gfx::Rect& bounds); |
| 91 | 91 |
| 92 // Called when the remote process has established its IPC connection. | 92 // Called when the remote process has established its IPC connection. |
| 93 // The |host| can be used when we need to send a message to it. | 93 // The |host| can be used when we need to send a message to it. |
|
gab
2013/08/26 19:46:03
Add |remote_window| to this comment.
| |
| 94 void Connected(IPC::Sender* host); | 94 void Connected(IPC::Sender* host, HWND remote_window); |
| 95 // Called when the remote process has closed its IPC connection. | 95 // Called when the remote process has closed its IPC connection. |
| 96 void Disconnected(); | 96 void Disconnected(); |
| 97 | 97 |
| 98 // Called when we have a message from the remote process. | 98 // Called when we have a message from the remote process. |
| 99 bool OnMessageReceived(const IPC::Message& message); | 99 bool OnMessageReceived(const IPC::Message& message); |
| 100 | 100 |
| 101 void HandleOpenFile(const base::string16& title, | 101 void HandleOpenFile(const base::string16& title, |
| 102 const base::FilePath& default_path, | 102 const base::FilePath& default_path, |
| 103 const base::string16& filter, | 103 const base::string16& filter, |
| 104 const OpenFileCompletion& on_success, | 104 const OpenFileCompletion& on_success, |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 196 // invocations we post a synthetic keyboard message directly into the message | 196 // invocations we post a synthetic keyboard message directly into the message |
| 197 // loop. The dispatcher for the nested loop would then decide how this | 197 // loop. The dispatcher for the nested loop would then decide how this |
| 198 // message is routed. | 198 // message is routed. |
| 199 void DispatchKeyboardMessage(ui::EventType type, | 199 void DispatchKeyboardMessage(ui::EventType type, |
| 200 uint32 vkey, | 200 uint32 vkey, |
| 201 uint32 repeat_count, | 201 uint32 repeat_count, |
| 202 uint32 scan_code, | 202 uint32 scan_code, |
| 203 uint32 flags, | 203 uint32 flags, |
| 204 bool is_character); | 204 bool is_character); |
| 205 | 205 |
| 206 HWND remote_window_; | |
| 206 RootWindowHostDelegate* delegate_; | 207 RootWindowHostDelegate* delegate_; |
| 207 IPC::Sender* host_; | 208 IPC::Sender* host_; |
| 208 scoped_ptr<ui::ViewProp> prop_; | 209 scoped_ptr<ui::ViewProp> prop_; |
| 209 | 210 |
| 210 // Saved callbacks which inform the caller about the result of the open file/ | 211 // Saved callbacks which inform the caller about the result of the open file/ |
| 211 // save file/select operations. | 212 // save file/select operations. |
| 212 OpenFileCompletion file_open_completion_callback_; | 213 OpenFileCompletion file_open_completion_callback_; |
| 213 OpenMultipleFilesCompletion multi_file_open_completion_callback_; | 214 OpenMultipleFilesCompletion multi_file_open_completion_callback_; |
| 214 SaveFileCompletion file_saveas_completion_callback_; | 215 SaveFileCompletion file_saveas_completion_callback_; |
| 215 SelectFolderCompletion select_folder_completion_callback_; | 216 SelectFolderCompletion select_folder_completion_callback_; |
| 216 FileSelectionCanceled failure_callback_; | 217 FileSelectionCanceled failure_callback_; |
| 217 | 218 |
| 218 // Set to true if we need to ignore mouse messages until the SetCursorPos | 219 // Set to true if we need to ignore mouse messages until the SetCursorPos |
| 219 // operation is acked by the viewer. | 220 // operation is acked by the viewer. |
| 220 bool ignore_mouse_moves_until_set_cursor_ack_; | 221 bool ignore_mouse_moves_until_set_cursor_ack_; |
| 221 | 222 |
| 222 // Tracking last click event for synthetically generated mouse events. | 223 // Tracking last click event for synthetically generated mouse events. |
| 223 scoped_ptr<ui::MouseEvent> last_mouse_click_event_; | 224 scoped_ptr<ui::MouseEvent> last_mouse_click_event_; |
| 224 | 225 |
| 225 DISALLOW_COPY_AND_ASSIGN(RemoteRootWindowHostWin); | 226 DISALLOW_COPY_AND_ASSIGN(RemoteRootWindowHostWin); |
| 226 }; | 227 }; |
| 227 | 228 |
| 228 } // namespace aura | 229 } // namespace aura |
| 229 | 230 |
| 230 #endif // UI_AURA_REMOTE_ROOT_WINDOW_HOST_WIN_H_ | 231 #endif // UI_AURA_REMOTE_ROOT_WINDOW_HOST_WIN_H_ |
| OLD | NEW |