| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 COMPONENTS_DOM_DISTILLER_CONTENT_BROWSER_DISTILLER_JAVASCRIPT_SERVICE_IM
PL_H_ | 5 #ifndef COMPONENTS_DOM_DISTILLER_CONTENT_BROWSER_DISTILLER_JAVASCRIPT_SERVICE_IM
PL_H_ |
| 6 #define COMPONENTS_DOM_DISTILLER_CONTENT_BROWSER_DISTILLER_JAVASCRIPT_SERVICE_IM
PL_H_ | 6 #define COMPONENTS_DOM_DISTILLER_CONTENT_BROWSER_DISTILLER_JAVASCRIPT_SERVICE_IM
PL_H_ |
| 7 | 7 |
| 8 #include "base/macros.h" |
| 8 #include "components/dom_distiller/content/browser/distiller_ui_handle.h" | 9 #include "components/dom_distiller/content/browser/distiller_ui_handle.h" |
| 9 #include "components/dom_distiller/content/common/distiller_javascript_service.m
ojom.h" | 10 #include "components/dom_distiller/content/common/distiller_javascript_service.m
ojom.h" |
| 10 #include "mojo/public/cpp/bindings/string.h" | 11 #include "mojo/public/cpp/bindings/string.h" |
| 11 #include "mojo/public/cpp/bindings/strong_binding.h" | 12 #include "mojo/public/cpp/bindings/strong_binding.h" |
| 12 | 13 |
| 13 namespace dom_distiller { | 14 namespace dom_distiller { |
| 14 | 15 |
| 15 // This is the receiving end of "distiller" JavaScript object calls. | 16 // This is the receiving end of "distiller" JavaScript object calls. |
| 16 class DistillerJavaScriptServiceImpl | 17 class DistillerJavaScriptServiceImpl |
| 17 : public mojom::DistillerJavaScriptService { | 18 : public mojom::DistillerJavaScriptService { |
| 18 public: | 19 public: |
| 19 DistillerJavaScriptServiceImpl( | 20 DistillerJavaScriptServiceImpl(content::RenderFrameHost* render_frame_host, |
| 20 content::RenderFrameHost* render_frame_host, | 21 DistillerUIHandle* distiller_ui_handle); |
| 21 DistillerUIHandle* distiller_ui_handle, | |
| 22 mojo::InterfaceRequest<mojom::DistillerJavaScriptService> request); | |
| 23 ~DistillerJavaScriptServiceImpl() override; | 22 ~DistillerJavaScriptServiceImpl() override; |
| 24 | 23 |
| 25 // Mojo mojom::DistillerJavaScriptService implementation. | 24 // Mojo mojom::DistillerJavaScriptService implementation. |
| 26 | 25 |
| 27 // Echo implementation, this call does not actually return as it would be | 26 // Echo implementation, this call does not actually return as it would be |
| 28 // blocking. | 27 // blocking. |
| 29 void HandleDistillerEchoCall(const mojo::String& message) override; | 28 void HandleDistillerEchoCall(const mojo::String& message) override; |
| 30 | 29 |
| 31 // Send UMA feedback and start the external feedback reporter if one exists. | 30 // Send UMA feedback and start the external feedback reporter if one exists. |
| 32 void HandleDistillerFeedbackCall(bool good) override; | 31 void HandleDistillerFeedbackCall(bool good) override; |
| 33 | 32 |
| 34 // Make a call into Android to close the overlay panel containing reader mode. | 33 // Make a call into Android to close the overlay panel containing reader mode. |
| 35 void HandleDistillerClosePanelCall(bool animate) override; | 34 void HandleDistillerClosePanelCall(bool animate) override; |
| 36 | 35 |
| 37 // Show the Android view containing Reader Mode settings. | 36 // Show the Android view containing Reader Mode settings. |
| 38 void HandleDistillerOpenSettingsCall() override; | 37 void HandleDistillerOpenSettingsCall() override; |
| 39 | 38 |
| 40 private: | 39 private: |
| 41 mojo::StrongBinding<mojom::DistillerJavaScriptService> binding_; | |
| 42 content::RenderFrameHost* render_frame_host_; | 40 content::RenderFrameHost* render_frame_host_; |
| 43 DistillerUIHandle* distiller_ui_handle_; | 41 DistillerUIHandle* distiller_ui_handle_; |
| 42 |
| 43 DISALLOW_COPY_AND_ASSIGN(DistillerJavaScriptServiceImpl); |
| 44 }; | 44 }; |
| 45 | 45 |
| 46 // static | 46 // static |
| 47 void CreateDistillerJavaScriptService( | 47 void CreateDistillerJavaScriptService( |
| 48 content::RenderFrameHost* render_frame_host, | 48 content::RenderFrameHost* render_frame_host, |
| 49 DistillerUIHandle* distiller_ui_handle, | 49 DistillerUIHandle* distiller_ui_handle, |
| 50 mojo::InterfaceRequest<mojom::DistillerJavaScriptService> request); | 50 mojo::InterfaceRequest<mojom::DistillerJavaScriptService> request); |
| 51 | 51 |
| 52 } // namespace dom_distiller | 52 } // namespace dom_distiller |
| 53 | 53 |
| 54 #endif // COMPONENTS_DOM_DISTILLER_CONTENT_BROWSER_DISTILLER_JAVASCRIPT_SERVICE
_IMPL_H_ | 54 #endif // COMPONENTS_DOM_DISTILLER_CONTENT_BROWSER_DISTILLER_JAVASCRIPT_SERVICE
_IMPL_H_ |
| OLD | NEW |