flutter_flutter/engine/core/html/HTMLIFrameElement.h
Colin Blundell 3dc76a69df Restructure public side of view_manager service.
This CL goes from this:
//mojo/services/public/cpp/view_manager
//mojo/services/public/interfaces/view_manager

to this:
//mojo/services/view_manager/public/cpp
//mojo/services/view_manager/public/interfaces

This CL also makes the Mojo-side changes required to roll this change into
Chromium (for both view_manager and window_manager, which was converted in an
earlier CL but for which these updates were not made):
- Updates rev_sdk.py to pull over the new directory
- Updates //mojo/services/public/mojo_services_public.gyp

TBR=beng

Review URL: https://codereview.chromium.org/790623003
2014-12-10 14:16:27 +01:00

50 lines
1.3 KiB
C++

// 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 SKY_ENGINE_CORE_HTML_HTMLIFRAMEELEMENT_H_
#define SKY_ENGINE_CORE_HTML_HTMLIFRAMEELEMENT_H_
#include "gen/sky/core/HTMLNames.h"
#include "mojo/services/view_manager/public/cpp/view_observer.h"
#include "sky/engine/core/dom/DOMURLUtils.h"
#include "sky/engine/core/dom/Document.h"
#include "sky/engine/core/html/HTMLElement.h"
#include "sky/engine/wtf/OwnPtr.h"
namespace blink {
class RemoteFrame;
class HTMLIFrameElement : public HTMLElement,
public mojo::ViewObserver {
DEFINE_WRAPPERTYPEINFO();
public:
static PassRefPtr<HTMLIFrameElement> create(Document&);
virtual ~HTMLIFrameElement();
mojo::View* contentView() const { return m_contentView; }
private:
explicit HTMLIFrameElement(Document&);
// HTMLElement methods:
virtual RenderObject* createRenderer(RenderStyle* style) override;
virtual void insertedInto(ContainerNode*) override;
virtual void removedFrom(ContainerNode*) override;
// ViewObserver methods:
void OnViewDestroyed(mojo::View* view) override;
private:
void createView();
mojo::View* m_contentView;
};
} // namespace blink
#endif // SKY_ENGINE_CORE_HTML_HTMLIFRAMEELEMENT_H_