Index: ui/keyboard/webui/vk_webui_controller.h |
diff --git a/athena/virtual_keyboard/vk_webui_controller.h b/ui/keyboard/webui/vk_webui_controller.h |
similarity index 65% |
rename from athena/virtual_keyboard/vk_webui_controller.h |
rename to ui/keyboard/webui/vk_webui_controller.h |
index c2c6ecc3a2b8d7bcd257e7f8951ee098101bc666..113ff1438224a2fee1d151fcde708e6d926a6073 100644 |
--- a/athena/virtual_keyboard/vk_webui_controller.h |
+++ b/ui/keyboard/webui/vk_webui_controller.h |
@@ -2,15 +2,24 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef ATHENA_VIRTUAL_KEYBOARD_VK_WEBUI_CONTROLLER_H_ |
-#define ATHENA_VIRTUAL_KEYBOARD_VK_WEBUI_CONTROLLER_H_ |
+#ifndef UI_KEYBOARD_WEBUI_VK_WEBUI_CONTROLLER_H_ |
+#define UI_KEYBOARD_WEBUI_VK_WEBUI_CONTROLLER_H_ |
#include "base/macros.h" |
#include "base/memory/singleton.h" |
+#include "base/memory/weak_ptr.h" |
#include "content/public/browser/web_ui_controller.h" |
#include "content/public/browser/web_ui_controller_factory.h" |
+#include "mojo/public/cpp/system/core.h" |
+#include "ui/keyboard/keyboard_export.h" |
-namespace athena { |
+namespace content { |
+class WebUIDataSource; |
+} |
+ |
+namespace keyboard { |
+ |
+class VKMojoHandler; |
class VKWebUIController : public content::WebUIController { |
public: |
@@ -18,10 +27,19 @@ class VKWebUIController : public content::WebUIController { |
virtual ~VKWebUIController(); |
private: |
+ void CreateAndStoreUIHandler(mojo::ScopedMessagePipeHandle handle_to_api); |
+ |
+ // content::WebUIController: |
+ virtual void RenderViewCreated(content::RenderViewHost* host) OVERRIDE; |
+ |
+ scoped_ptr<VKMojoHandler> ui_handler_; |
+ base::WeakPtrFactory<VKWebUIController> weak_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(VKWebUIController); |
}; |
-class VKWebUIControllerFactory : public content::WebUIControllerFactory { |
+class KEYBOARD_EXPORT VKWebUIControllerFactory |
+ : public content::WebUIControllerFactory { |
public: |
// WebUIControllerFactory: |
virtual content::WebUI::TypeID GetWebUIType( |
@@ -47,6 +65,6 @@ class VKWebUIControllerFactory : public content::WebUIControllerFactory { |
DISALLOW_COPY_AND_ASSIGN(VKWebUIControllerFactory); |
}; |
-} // namespace athena |
+} // namespace keyboard |
-#endif // ATHENA_VIRTUAL_KEYBOARD_VK_WEBUI_CONTROLLER_H_ |
+#endif // UI_KEYBOARD_WEBUI_VK_WEBUI_CONTROLLER_H_ |