blob: bd0555ebc2ac33a4af4559912ab59a50c1cd95f1 [file] [log] [blame]
// Copyright 2016 The Chromium Embedded Framework 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 CEF_LIBCEF_BROWSER_VIEWS_LAYOUT_UTIL_H_
#define CEF_LIBCEF_BROWSER_VIEWS_LAYOUT_UTIL_H_
#pragma once
#include "include/views/cef_layout.h"
#include "ui/views/layout/layout_manager.h"
namespace views {
class View;
}
// The below functions manage the relationship between CefLayout and
// views::LayoutManager instances. See comments in view_impl.h for a usage
// overview.
namespace layout_util {
// Returns the CefLayout object associated with |owner_view|.
CefRefPtr<CefLayout> GetFor(const views::View* owner_view);
// Assign ownership of |layout| to |owner_view|. If a CefLayout is already
// associated with |owner_view| it will be invalidated.
void Assign(CefRefPtr<CefLayout> layout, views::View* owner_view);
} // namespace layout_util
#endif // CEF_LIBCEF_BROWSER_VIEWS_LAYOUT_UTIL_H_