Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(958)

Unified Diff: mojo/services/html_viewer/html_document.h

Issue 1099303002: Move html_viewer from mojo/services to components. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/services/html_viewer/html_document.h
diff --git a/mojo/services/html_viewer/html_document.h b/mojo/services/html_viewer/html_document.h
deleted file mode 100644
index 49b83ba756424a95af3e71a762f028995a741c62..0000000000000000000000000000000000000000
--- a/mojo/services/html_viewer/html_document.h
+++ /dev/null
@@ -1,177 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef MOJO_SERVICES_HTML_VIEWER_HTML_DOCUMENT_H_
-#define MOJO_SERVICES_HTML_VIEWER_HTML_DOCUMENT_H_
-
-#include <set>
-
-#include "base/callback.h"
-#include "base/macros.h"
-#include "mojo/services/html_viewer/ax_provider_impl.h"
-#include "mojo/services/html_viewer/touch_handler.h"
-#include "mojo/services/network/public/interfaces/url_loader.mojom.h"
-#include "third_party/WebKit/public/web/WebFrameClient.h"
-#include "third_party/WebKit/public/web/WebSandboxFlags.h"
-#include "third_party/WebKit/public/web/WebViewClient.h"
-#include "third_party/mojo/src/mojo/public/cpp/application/interface_factory.h"
-#include "third_party/mojo/src/mojo/public/cpp/application/lazy_interface_ptr.h"
-#include "third_party/mojo/src/mojo/public/cpp/application/service_provider_impl.h"
-#include "third_party/mojo/src/mojo/public/cpp/bindings/interface_impl.h"
-#include "third_party/mojo/src/mojo/public/interfaces/application/application.mojom.h"
-#include "third_party/mojo_services/src/content_handler/public/interfaces/content_handler.mojom.h"
-#include "third_party/mojo_services/src/navigation/public/interfaces/navigation.mojom.h"
-#include "third_party/mojo_services/src/view_manager/public/cpp/view_manager_client_factory.h"
-#include "third_party/mojo_services/src/view_manager/public/cpp/view_manager_delegate.h"
-#include "third_party/mojo_services/src/view_manager/public/cpp/view_observer.h"
-
-namespace base {
-class MessageLoopProxy;
-}
-
-namespace media {
-class CdmFactory;
-class MediaPermission;
-class WebEncryptedMediaClientImpl;
-}
-
-namespace mojo {
-class ViewManager;
-class View;
-}
-
-namespace html_viewer {
-
-class AxProviderImpl;
-class WebLayerTreeViewImpl;
-class WebMediaPlayerFactory;
-
-// A view for a single HTML document.
-class HTMLDocument : public blink::WebViewClient,
- public blink::WebFrameClient,
- public mojo::ViewManagerDelegate,
- public mojo::ViewObserver,
- public mojo::InterfaceFactory<mojo::AxProvider> {
- public:
- // Load a new HTMLDocument with |response|.
- //
- // |services| should be used to implement a ServiceProvider which exposes
- // services to the connecting application.
- // Commonly, the connecting application is the ViewManager and it will
- // request ViewManagerClient.
- //
- // |shell| is the Shell connection for this mojo::Application.
- HTMLDocument(mojo::InterfaceRequest<mojo::ServiceProvider> services,
- mojo::URLResponsePtr response,
- mojo::Shell* shell,
- scoped_refptr<base::MessageLoopProxy> compositor_thread,
- WebMediaPlayerFactory* web_media_player_factory,
- bool is_headless);
- ~HTMLDocument() override;
-
- private:
- // Updates the size and scale factor of the webview and related classes from
- // |root_|.
- void UpdateWebviewSizeFromViewSize();
-
- // WebViewClient methods:
- virtual blink::WebStorageNamespace* createSessionStorageNamespace();
-
- // WebWidgetClient methods:
- void initializeLayerTreeView() override;
- blink::WebLayerTreeView* layerTreeView() override;
-
- // WebFrameClient methods:
- virtual blink::WebMediaPlayer* createMediaPlayer(
- blink::WebLocalFrame* frame,
- const blink::WebURL& url,
- blink::WebMediaPlayerClient* client);
- virtual blink::WebMediaPlayer* createMediaPlayer(
- blink::WebLocalFrame* frame,
- const blink::WebURL& url,
- blink::WebMediaPlayerClient* client,
- blink::WebContentDecryptionModule* initial_cdm);
- virtual blink::WebFrame* createChildFrame(
- blink::WebLocalFrame* parent,
- const blink::WebString& frameName,
- blink::WebSandboxFlags sandboxFlags);
- virtual void frameDetached(blink::WebFrame*);
- virtual blink::WebCookieJar* cookieJar(blink::WebLocalFrame* frame);
- virtual blink::WebNavigationPolicy decidePolicyForNavigation(
- blink::WebLocalFrame* frame,
- blink::WebDataSource::ExtraData* data,
- const blink::WebURLRequest& request,
- blink::WebNavigationType nav_type,
- blink::WebNavigationPolicy default_policy,
- bool isRedirect);
- virtual void didAddMessageToConsole(const blink::WebConsoleMessage& message,
- const blink::WebString& source_name,
- unsigned source_line,
- const blink::WebString& stack_trace);
- virtual void didFinishLoad(blink::WebLocalFrame* frame);
- virtual void didNavigateWithinPage(blink::WebLocalFrame* frame,
- const blink::WebHistoryItem& history_item,
- blink::WebHistoryCommitType commit_type);
- virtual blink::WebEncryptedMediaClient* encryptedMediaClient();
-
- // ViewManagerDelegate methods:
- void OnEmbed(mojo::View* root,
- mojo::InterfaceRequest<mojo::ServiceProvider> services,
- mojo::ServiceProviderPtr exposed_services) override;
- void OnViewManagerDisconnected(mojo::ViewManager* view_manager) override;
-
- // ViewObserver methods:
- void OnViewBoundsChanged(mojo::View* view,
- const mojo::Rect& old_bounds,
- const mojo::Rect& new_bounds) override;
- void OnViewDestroyed(mojo::View* view) override;
- void OnViewInputEvent(mojo::View* view, const mojo::EventPtr& event) override;
-
- // mojo::InterfaceFactory<mojo::AxProvider>
- void Create(mojo::ApplicationConnection* connection,
- mojo::InterfaceRequest<mojo::AxProvider> request) override;
-
- void Load(mojo::URLResponsePtr response);
-
- media::MediaPermission* GetMediaPermission();
- media::CdmFactory* GetCdmFactory();
-
- mojo::URLResponsePtr response_;
- mojo::ServiceProviderImpl exported_services_;
- mojo::ServiceProviderPtr embedder_service_provider_;
- mojo::Shell* shell_;
- mojo::LazyInterfacePtr<mojo::NavigatorHost> navigator_host_;
- blink::WebView* web_view_;
- mojo::View* root_;
- mojo::ViewManagerClientFactory view_manager_client_factory_;
- scoped_ptr<WebLayerTreeViewImpl> web_layer_tree_view_impl_;
- scoped_refptr<base::MessageLoopProxy> compositor_thread_;
- WebMediaPlayerFactory* web_media_player_factory_;
-
- // EncryptedMediaClient attached to this frame; lazily initialized.
- scoped_ptr<media::WebEncryptedMediaClientImpl> web_encrypted_media_client_;
-
- scoped_ptr<media::MediaPermission> media_permission_;
- scoped_ptr<media::CdmFactory> cdm_factory_;
-
- // HTMLDocument owns these pointers; binding requests after document load.
- std::set<mojo::InterfaceRequest<mojo::AxProvider>*> ax_provider_requests_;
- std::set<AxProviderImpl*> ax_providers_;
-
- // A flag set on didFinishLoad.
- bool did_finish_load_ = false;
-
- // Set if the content will never be displayed.
- bool is_headless_;
-
- scoped_ptr<TouchHandler> touch_handler_;
-
- float device_pixel_ratio_;
-
- DISALLOW_COPY_AND_ASSIGN(HTMLDocument);
-};
-
-} // namespace html_viewer
-
-#endif // MOJO_SERVICES_HTML_VIEWER_HTML_DOCUMENT_H_
« no previous file with comments | « mojo/services/html_viewer/generate_blink_resource_map.py ('k') | mojo/services/html_viewer/html_document.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698