1 // Copyright 2016 The Chromium Embedded Framework Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be found 3 // in the LICENSE file. 4 5 #ifndef CEF_LIBCEF_BROWSER_VIEWS_FILL_LAYOUT_IMPL_H_ 6 #define CEF_LIBCEF_BROWSER_VIEWS_FILL_LAYOUT_IMPL_H_ 7 #pragma once 8 9 #include "include/views/cef_fill_layout.h" 10 11 #include "libcef/browser/views/layout_impl.h" 12 #include "ui/views/layout/fill_layout.h" 13 14 class CefFillLayoutImpl 15 : public CefLayoutImpl<views::FillLayout, CefFillLayout> { 16 public: 17 // Create a new CefFillLayout insance. |owner_view| must be non-nullptr. 18 static CefRefPtr<CefFillLayout> Create(views::View* owner_view); 19 20 // CefLayout methods: AsFillLayout()21 CefRefPtr<CefFillLayout> AsFillLayout() override { return this; } 22 23 private: 24 CefFillLayoutImpl(); 25 26 views::FillLayout* CreateLayout() override; 27 28 IMPLEMENT_REFCOUNTING_DELETE_ON_UIT(CefFillLayoutImpl); 29 DISALLOW_COPY_AND_ASSIGN(CefFillLayoutImpl); 30 }; 31 32 #endif // CEF_LIBCEF_BROWSER_VIEWS_FILL_LAYOUT_IMPL_H_ 33