Vectorize website settings icons in omnibox
[chromium-blink-merge.git] / components / html_viewer / test_html_viewer_impl.h
blob980101b6de70322e7a36e337bded1df7329b46bc
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
3 // found in the LICENSE file.
5 #ifndef COMPONENTS_HTML_VIEWER_TEST_HTML_VIEWER_IMPL_H_
6 #define COMPONENTS_HTML_VIEWER_TEST_HTML_VIEWER_IMPL_H_
8 #include <set>
10 #include "base/basictypes.h"
11 #include "components/html_viewer/public/interfaces/test_html_viewer.mojom.h"
12 #include "third_party/mojo/src/mojo/public/cpp/bindings/binding.h"
14 namespace blink {
15 class WebLocalFrame;
18 namespace html_viewer {
20 // Caller must ensure that |web_frame| outlives TestHTMLViewerImpl.
21 class TestHTMLViewerImpl : public TestHTMLViewer {
22 public:
23 TestHTMLViewerImpl(blink::WebLocalFrame* web_frame,
24 mojo::InterfaceRequest<TestHTMLViewer> request);
25 ~TestHTMLViewerImpl() override;
27 private:
28 class ExecutionCallbackImpl;
30 void CallbackCompleted(ExecutionCallbackImpl* callback_impl);
32 // TestHTMLViewer:
33 void GetContentAsText(const GetContentAsTextCallback& callback) override;
34 void ExecuteScript(const mojo::String& script,
35 const ExecuteScriptCallback& callback) override;
37 blink::WebLocalFrame* web_frame_;
38 mojo::Binding<TestHTMLViewer> binding_;
39 std::set<ExecutionCallbackImpl*> callbacks_;
41 DISALLOW_COPY_AND_ASSIGN(TestHTMLViewerImpl);
44 } // namespace html_viewer
46 #endif // COMPONENTS_HTML_VIEWER_TEST_HTML_VIEWER_IMPL_H_